@charset "UTF-8";

/*================================================
 *  CSSリセット
 ================================================*/
* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

html,body,div,span,object,iframe,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;vertical-align:baseline;background:transparent;}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}

:-webkit-any(article,aside,nav,section) h1 {
	display: block;
    font-size: 1.8em;
    margin-block-start: 0.67em;
    margin-block-end: 0.67em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    font-weight: bold;
}
/*================================================
 *  一般・共通設定
 ================================================*/
body {
	font-size:14px;
	color:#000;
	font-family: 'Noto Sans JP','Roboto',sans-serif;
	line-height:1.6;
	background:#fff;
	-webkit-text-size-adjust: 100%;
	overflow-x:hidden;
	position: relative;
    -webkit-overflow-scrolling: touch;
}

.inner {
	position:relative;
	width:100%;
	margin:0 auto;
}

header {
	box-sizing:border-box;
	position:relative;
	width:100%;
}

nav {
	width:100%;
	⁄zoom:1;
}
nav:after {
	content:'';
	display:block;
	clear:both;
}

#contents {
	overflow:hidden;
	width:100%;
	margin:20px auto;
	background:#fff;
}
#contents {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
    /*grid-template-columns: calc(75% - 20px) calc(25% - 20px);*/
	/*
	display: -ms-grid;
	display: grid;
	-ms-grid-columns: minmax(auto, 75%) 40px minmax(300px,25%);
	grid-template-columns: minmax(auto, 75%) minmax(300px,25%);
    grid-column-gap: 40px;*/
}

#main {
    box-sizing: border-box;
    overflow: hidden;
    position: relative;

	width :100%;
	max-width: 75%;
    padding-left: 10px;
}


#sub {
	box-sizing:border-box;
	overflow:hidden;
	width: 25%;
    min-width: 300px;
    margin-left: 40px;
    padding-right: 10px;
}

/* Edge */
@supports (-ms-ime-align: auto) {
	#sub{width: 350px;}
}

/* Edge */
_:-ms-lang(x)::backdrop,
	#sub{width: 350px;}

/* IE11 */
_:-ms-lang(x)::-ms-backdrop,
	#sub{width: 350px;}


footer {
	box-sizing:border-box;
	width:100%;
	margin:0 auto;
}

a {
	color: #008ad0;
	text-decoration: none;
}
a:hover {
	color: #008ad0;
	text-decoration: underline;
}
/*
h2 {
	clear: both;
	font-size: 28px;
	color: #000;
	font-weight: bold;
    line-height: 1.2;
}

h3 {
	clear: both;
	font-size: 18px;
	position: relative;
    padding: 5px;
}
h4 {
	margin-bottom:0.25em;
	font-size:15px;
	border-bottom:3px solid #008ad0;
}

h5 {
	position:relative;
	margin-bottom:0.25em;
	padding-left:10px;
	font-size:14px;
	font-weight:bold;
}

h6 {
	margin-bottom:0.25em;
	color:#382400;
	font-size:14px;
	font-weight:bold;
}*/

p {
	margin:0 0 0 0;
}

.small{
	font-size: 11px;
}

img {
	vertical-align:bottom;
	user-select:none;
	-moz-user-select:none;
	-ms-user-select:none;
	-webkit-user-select:none;
	-khtml-user-select:none;
	-webkit-user-drag: none;
	-khtml-user-drag: none;
	-webkit-touch-callout: none;
}

em {
	font-weight:bold;
}

strong {
	font-weight:bold;
}


blockquote {
	margin-bottom:1em;
	padding:1em;
	border:1px dotted #ddd;
	border-left:5px solid #ddd;
}

ul,ol,dl {
	margin:0 0 0 0;
}
ul li {
	list-style: none;
}
ol li {
	list-style:decimal;
}
li {
	list-style: none;
}

dt {
	margin-bottom:0.5em;
	border-bottom:1px dotted #ddd;
}
dt:before {
	content:"\0025a0";
}
dd {
	margin-bottom:1em;
}

table {
	width:100%;

	border-collapse:collapse;
	border: 1px solid #999999;
	background:#fff;
}
th {
    color: #333333;
    padding: 10px;
    border: 1px solid #999999;
    text-align: left;
    vertical-align: middle;
    word-break: break-word;
}
td {
    color: #333333;
    padding: 10px;
    border: 1px solid #999999;
    text-align: left;
    vertical-align: middle;
    word-break: break-word;
}
/*
input{
	-webkit-appearance: none;
    border: 1px solid #ddd;
}*/
input[type="submit"]{
    cursor: pointer;
}
input[type="image"]{
	border: none;
}

.red,
.alert{
	color: red;
	padding-bottom: 10px;
}

.none{
	display: none;
}
.no-border{
	border:none!important;
}

.full{
	width: 100%!important;
}

.label-list{
    float: right;
    width: 80%;
}

/*================================================
 *  ipad 調整
 ================================================*/
body.ipad input[type="button"],input[type="submit"] {
    -webkit-appearance: none;
    border-radius: 0;
}


/*================================================
 *  margin
 ================================================*/
.marginAuto { margin-left:auto; margin-right:auto; }
/* MARGIN-TOP */
.mt_minus01 { margin-top:-1px!important; }
.mt_minus06 { margin-top:-6px!important; }
.mt_minus12 { margin-top:-12px!important; }
.mt_minus18 { margin-top:-18px!important; }
.mt_minus24 { margin-top:-24px!important; }
.mt_minus36 { margin-top:-36px!important; }
.mt_minus48 { margin-top:-48px!important; }
.mt_minus60 { margin-top:-60px!important; }
.mt_minus72 { margin-top:-72px!important; }
.mt00 { margin-top:0px!important; }
.mt01 { margin-top:0px!important; }
.mt02 { margin-top:2px!important; }
.mt04 { margin-top:4px!important; }
.mt05 { margin-top:5px!important; }
.mt06 { margin-top:6px!important; }
.mt08 { margin-top:8px!important; }
.mt10 { margin-top:10px!important; }
.mt12 { margin-top:12px!important; }
.mt14 { margin-top:14px!important; }
.mt15 { margin-top:15px!important; }
.mt16 { margin-top:16px!important; }
.mt18 { margin-top:18px!important; }
.mt20 { margin-top:20px!important; }
.mt24 { margin-top:24px!important; }
.mt30 { margin-top:30px!important; }
.mt36 { margin-top:36px!important; }
.mt48 { margin-top:48px!important; }
.mt60 { margin-top:60px!important; }
.mt72 { margin-top:72px!important; }
.mt90 { margin-top:90px!important; }
.mt100 { margin-top:100px!important; }
.mt125 { margin-top:125px!important; }
.mt150 { margin-top:150px!important; }
/* MARGIN-RIGHT */
.mr00 { margin-right:0px!important; }
.mr02 { margin-right:2px!important; }
.mr04 { margin-right:4px!important; }
.mr06 { margin-right:6px!important; }
.mr08 { margin-right:8px!important; }
.mr10 { margin-right:10px!important; }
.mr12 { margin-right:12px!important; }
.mr20 { margin-right:20px!important; }
.mr24 { margin-right:24px!important; }
.mr32 { margin-right:32px!important; }
.mr36 { margin-right:36px!important; }
.mr48 { margin-right:48px!important; }
.mr60 { margin-right:60px!important; }
.mr72 { margin-right:72px!important; }
.mr300 { margin-right:300px!important; }
.mr320 { margin-right:320px!important; }
.mr340 { margin-right:340px!important; }
.mr380 { margin-right:380px!important; }
.mr400 { margin-right:425px!important; }
/* MARGIN-BOTTOM */
.mb_minus02 { margin-bottom:-2px!important; }
.mb_minus06 { margin-bottom:-6px!important; }
.mb_minus12 { margin-bottom:-12px!important; }
.mb_minus24 { margin-bottom:-24px!important; }
.mb_minus36 { margin-bottom:-36px!important; }
.mb_minus48 { margin-bottom:-48px!important; }
.mb_minus60 { margin-bottom:-60px!important; }
.mb_minus72 { margin-bottom:-72px!important; }
.mb00 { margin-bottom:0!important; }
.mb02 { margin-bottom:2px!important; }
.mb04 { margin-bottom:4px!important; }
.mb05 { margin-bottom:5px!important; }
.mb06 { margin-bottom:6px!important; }
.mb08 { margin-bottom:8px!important; }
.mb10 { margin-bottom:10px!important; }
.mb12 { margin-bottom:12px!important; }
.mb14 { margin-bottom:14px!important; }
.mb15 { margin-bottom:15px!important; }
.mb16 { margin-bottom:16px!important; }
.mb18 { margin-bottom:18px!important; }
.mb20 { margin-bottom:20px!important; }
.mb24 { margin-bottom:24px!important; }
.mb30 { margin-bottom:30px!important; }
.mb36 { margin-bottom:36px!important; }
.mb40 { margin-bottom:40px!important; }
.mb48 { margin-bottom:48px!important; }
.mb50 { margin-bottom:50px!important; }
.mb60 { margin-bottom:60px!important; }
.mb72 { margin-bottom:72px!important; }
.mb90 { margin-bottom:90px!important; }
.mb100 { margin-bottom:100px!important; }
.mb125 { margin-bottom:125px!important; }
.mb150 { margin-bottom:150px!important; }
/* MARGIN-LEFT */
.ml-4 { margin-left:-4px!important; }
.ml-3 { margin-left:-3px!important; }
.ml-2 { margin-left:-2px!important; }
.ml-1 { margin-left:-1px!important; }
.ml00 { margin-left:0px!important; }
.ml02 { margin-left:2px!important; }
.ml04 { margin-left:4px!important; }
.ml06 { margin-left:6px!important; }
.ml10 { margin-left:10px!important; }
.ml12 { margin-left:12px!important; }
.ml18 { margin-left:18px!important; }
.ml20 { margin-left:20px!important; }
.ml24 { margin-left:24px!important; }
.ml30 { margin-left:30px!important; }
.ml36 { margin-left:36px!important; }
.ml42 { margin-left:42px!important; }
.ml44 { margin-left:44px!important; }
.ml48 { margin-left:48px!important; }
.ml50 { margin-left:50px!important; }
.ml52 { margin-left:52px!important; }
.ml54 { margin-left:54px!important; }
.ml56 { margin-left:56px!important; }
.ml60 { margin-left:60px!important; }
.ml72 { margin-left:72px!important; }
.ml100 { margin-left:100px!important; }
.ml110 { margin-left:110px!important; }
.ml120 { margin-left:120px!important; }
.ml130 { margin-left:130px!important; }
.ml150 { margin-left:150px!important; }
.ml160 { margin-left:160px!important; }
/* MARGIN-TOP & MARGIN-BOTTOM */
.mtb06 { margin-top:6px!important; margin-bottom:6px!important; }
.mtb12 { margin-top:12px!important; margin-bottom:12px!important; }
.mtb24 { margin-top:24px!important; margin-bottom:24px!important; }
.mtb36 { margin-top:36px!important; margin-bottom:36px!important; }
.mtb48 { margin-top:48px!important; margin-bottom:48px!important; }
.mtb60 { margin-top:60px!important; margin-bottom:60px!important; }
.mtb72 { margin-top:72px!important; margin-bottom:72px!important; }
/* MARGIN-LEFT & MARGIN-RIGHT */
.mlr06 { margin-left:6px!important; margin-right:6px!important; }
.mlr12 { margin-left:12px!important; margin-right:12px!important; }
.mlr24 { margin-left:24px!important; margin-right:24px!important; }
.mlr36 { margin-left:36px!important; margin-right:36px!important; }
.mlr48 { margin-left:48px!important; margin-right:48px!important; }
/* MARGIN-ALL */
.ma06 { margin:6px!important; }
.ma12 { margin:12px!important; }
.ma20 { margin:20px!important; }
.ma24 { margin:24px!important; }
.ma36 { margin:36px!important; }
.ma48 { margin:48px!important; }
.ma60 { margin:60px!important; }
.ma72 { margin:72px!important; }

/*================================================
 * padding
 ================================================*/

.no-padding {
	padding: 0px!important;
	margin: 0px!important;
	border-width: 0px!important;
}


/* PADDING-TOP */
.pt00 { padding-top:0!important; }
.pt02 { padding-top:2!important; }
.pt04 { padding-top:4!important; }
.pt06 { padding-top:6px!important; }
.pt08 { padding-top:8px!important; }
.pt10 { padding-top:10px!important; }
.pt12 { padding-top:12px!important; }
.pt24 { padding-top:24px!important; }
.pt36 { padding-top:36px!important; }
.pt48 { padding-top:48px!important; }
.pt60 { padding-top:60px!important; }
.pt72 { padding-top:72px!important; }
/* PADDING-BOTTOM */
.pb00 { padding-bottom:0!important; }
.pb06 { padding-bottom:6px!important; }
.pb12 { padding-bottom:12px!important; }
.pb16 { padding-bottom:16px!important; }
.pb24 { padding-bottom:24px!important; }
.pb36 { padding-bottom:36px!important; }
.pb48 { padding-bottom:48px!important; }
.pb60 { padding-bottom:60px!important; }
.pb72 { padding-bottom:72px!important; }
/* PADDING-LEFT */
.pl06 { padding-left:6px!important; }
.pl10 { padding-left:10px!important; }
.pl12 { padding-left:12px!important; }
.pl24 { padding-left:24px!important; }
.pl36 { padding-left:36px!important; }
.pl48 { padding-left:48px!important; }
.pl60 { padding-left:60px!important; }
.pl72 { padding-left:72px!important; }
.pl160 { padding-left:160px!important; }
/* PADDING-RIGHT */

.pr06 { padding-right:6px!important; }
.pr12 { padding-right:12px!important; }
.pr24 { padding-right:24px!important; }
.pr36 { padding-right:36px!important; }
.pr48 { padding-right:48px!important; }
.pr60 { padding-right:60px!important; }
.pr72 { padding-right:72px!important; }
.pr160 { padding-right:160px!important; }
/* PADDING-ALL */
.pa01 { padding:1px!important; }
.pa02 { padding:2px!important; }
.pa06 { padding:6px!important; }
.pa12 { padding:12px!important; }
.pa24 { padding:24px!important; }
.pa36 { padding:36px!important; }
.pa48 { padding:48px!important; }
.pa60 { padding:60px!important; }
.pa72 { padding:72px!important; }

/*================================================
 *  WIDTH
 ================================================*/
.w10 { width:10%!important; }
.w15 { width:15%!important; }
.w20 { width:20%!important; }
.w30 { width:30%!important; }
.w35 { width:35%!important; }
.w40 { width:40%!important; }
.w45 { width:45%!important; }
.w50 { width:50%!important; }

/*================================================
 *  ヘッダー
 ================================================*/
header {}

.header-right{}

.header-login ul{
	float: right;
	margin-bottom: 5px
}
.header-login ul li,
.header-search ul li{
	list-style: none;
	float: right;
	margin-left: 5px;
	position: relative;
}

.header-search input{
    background-color: #ffffff;
    padding-left: 5px;
    width: 230px;
    margin-right: 2px;
    padding: 5px;
    font-size: 13px;
 }

.header-search input[type="image"] {
    width: 24px;
    vertical-align: middle;
    position: absolute;
    background-color: transparent;
    padding: 0;
    margin: 0;
    top: 3px;
    right: 5px;
    border: none;
}
header .button{
	padding: 10px 48px;
}

@media screen and (max-width:767px) {
	.header-right{
		display: none;
	}
}

/*================================================
 *  ロゴ
 ================================================*/
.logo img{
	display: block;
	width: 100%;
	height: auto;
}
.logo h1{
    margin: 0 0 0 0;
    display: block;
    width: 100%;
}

.logo{
    width: 240px;
    max-width: 35%;
    float: left;
    padding: 10px 0;
}
@media screen and (max-width:979px) {
	body.portrait.ipad .logo{
		max-width: 22%;
	}
	body.portrait.ipad #google_translate_element{
		margin-bottom: 0;
	}
	body.portrait.ipad nav.nav ul li a{
		line-height: 1;
		padding: 5px 5px;
	}

}





/*================================================
 *  グローバルナビゲーション
 ================================================*/

nav.nav ul {
	margin:0 0 0 0;
	padding: 0 0 0 0;
}

nav.nav ul li{
	float: left;
	list-style: none;
}

nav.nav ul li a{
	display: block;
	text-decoration: none;
	padding: 5px 15px;
	position: relative;
	z-index: 1;

	cursor: pointer;
}


nav.nav ul li a:hover,
nav.nav ul li a.nav-pref:hover,
nav.nav ul li a.nav-genre:hover,
nav.nav ul li a.nav-season:hover{
	font-weight: bold;
}

#nav-pref-body,
#nav-genre-body,
#nav-season-body{
	display: none;
	position: absolute;
	color: #fff;
	background-color: #008ad0;
	width: 100vw;
	left: 0;
	padding: 10px;
	z-index: 100;
	transition: background-color 0.3s ease;
	z-index: 0;
}


#nav-genre-body nav.visible-nav ul.visible-navigation{
	    left: 56px;
    position: relative;
}


.nav-pref:hover > #nav-pref-body{
	display: block;
	z-index: 100;
}
.nav-genre:hover > #nav-genre-body{
	display: block;
	z-index: 101;
}
.nav-season:hover > #nav-season-body{
	display: block;
	z-index: 102;
}

.visible-nav{
	float: left;
	width: auto;
	position: relative;
}
.header-map{
    float: left;
    margin-right: 15px;
    max-width: 300px;
}


nav.nav ul li a.visible-list{
    position: relative;
    pointer-events: none;
    color: #fff;
    opacity: 0;
    height: 0;
    z-index: -1;
    margin-top: -9px;
}
nav.nav ul.visible-navigation li{
	float: none;
}

nav.nav ul.visible-navigation{

}
nav.nav ul.visible-navigation li a{
	display: block;
	color: #fff;
	pointer-events: auto;
    z-index: 1000;
   padding: 5px 5px;
}

nav.nav ul.visible-navigation li a:hover{
	text-decoration: underline;
}


/*================================================
 *  トピックパス（パンくずリスト）
 ================================================*/
.breadcrumbs{
	word-break: break-word;
	margin:24px 0;
	max-width: 50%;
}
.breadcrumbs p{
	font-size: 12px;
	margin:0 0 0 0;
}
@media screen and (max-width:980px) {

	.breadcrumbs{
		max-width: 100%;
	}
}
/*================================================
 *  SNS
 ================================================*/
.sns-wrapper {

    position: absolute;
    right: 0;
    top: -7px;
    padding-right: 30px;
    z-index: 1;
}

@media screen and (max-width:767px) {
	.sns-wrapper {
	    text-align: right;
	    position: static;
	    margin-bottom: 20px;
	}
}


/*================================================
 *  count
 ================================================*/
.count{
	clear: both;
}

.count p{
    font-size: 18px;
    line-height: 120%;
    font-weight: bold;
}
@media screen and (max-width:979px) {
	.count{
		padding: 12px 0;
	}
}


/*================================================
 *  フッター
 ================================================*/
footer {
	clear:both;
	background:#008ad0;
}


footer #google{
	text-align: center;
	padding: 15px;
}
.copyright {
	clear:both;
	padding: 15px 0;
	font-size:13px;
	text-align:right;
	color:#fff;
	max-width: 980px;
    margin: 0 auto;

}
.copyright a {
	color: #ffffff;
	text-decoration: none;
	line-height: 200%;
}
.copyright a:hover {
	/*color: #008ad0;*/
	color:#fff;
	text-decoration: underline;
}
@media screen and (max-width:979px) {
	.copyright{
		font-size:13px;
		padding: 10px;
		text-align:center;
	}
}

/*================================================
 *  クラス
 ================================================*/
.first-child{
	clear:both;
}
.last-child{
	margin-right: 0!important;
	border-right: none!important;
}
.clearfix:after {
    content:" ";
    display:block;
    clear:both;
}

.img-responsive{
	display: block;
	width: 100%;
	height: auto;
}
.pc{display: block!important;}
.sp{display: none!important;}

.visible-pc{visibility:visible;}
.visible-sp{visibility:hidden;display: none;}
@media screen and (max-width:979px) {
	body{
	    margin: 0;
	    overflow-x: hidden;
	    -webkit-text-size-adjust: none;
	    -ms-text-size-adjust: none;
	    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	}

	.pc{display: none!important;}
	.sp{display: block!important;}
	.visible-pc{visibility:hidden;display: none;}
	.visible-sp{visibility:visible}

	body.portrait.ipad .pc{display: block!important;}
	body.portrait.ipad .sp{display: none!important;}
	body.portrait.ipad .table-contact .sp{display: block!important;}
}
@media screen and (max-width:1024px) {
	body.ipad .table-contact .sp{display: block!important;}

}



/*================================================
 *  タイトル
 ================================================*/
.title-wrapper{
	position: relative;
	margin-bottom: 12px;
}

.title-wrapper-bg{
	color: #fff;
	background-color: #008ad0;
}


.title-wrapper h2,
.title-wrapper h3,
.title-wrapper h4,
.title-wrapper h5,
.title-wrapper h6{
	margin:0 0 0 0;
}
.title-wrapper.title-wrapper-bg h3,
.title-wrapper.title-wrapper-bg h4,
.title-wrapper.title-wrapper-bg h5{
	color: #fff;
	padding:5px;
	margin:0 0 0 0;
}
.search-wrapper{

}
.search-wrapper select{
    margin: 0 6px 0 0;
    padding: 6px 5px;
}
.search-wrapper input[type="submit"]{
    cursor: pointer;
    width: 90px;
    padding: 8px ;
    float: right;
    font-weight: normal;
}
.list-btn{
	position: absolute;
	right: 5px;
	top: 5px;
}


@media screen and (max-width:979px) {
	.title-wrapper h2,
	.title-wrapper h3,
	.title-wrapper h4,
	.title-wrapper h5,
	.title-wrapper h6{
		text-align: left;
	}

	.search-wrapper{
		padding: 0 0 12px 0;
	}
	.search-wrapper select{margin: 0 0 0 0;}
}
/*================================================
 *  NEWS
 ================================================*/
.news-item {
    border-bottom: solid 1px #eeeeee;
    padding: 15px 0;
    margin: 0 0 0 0;
}

.news-thum{
    float: left;
    width:200px;
    margin-right: 30px;
}

.news-thum img{
	width: 100%;
	display: block;
}
.news-thum img {
    -moz-transition: -moz-transform 0.2s linear;
    -webkit-transition: -webkit-transform 0.2s linear;
    -o-transition: -o-transform 0.2s linear;
    -ms-transition: -ms-transform 0.2s linear;
    transition: transform 0.2s linear;
    max-width: 100%;
    max-height: 100%;
    width: auto;
}
.news-thum img:hover {
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -o-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
    filter: brightness(1.2);
}

.news-text{
    float: left;

}

.news-list-btn{
	position: absolute;
	right: 5px;
	top: 5px;
	width: 85px;
}

.news-list-btn a{
	line-height:0.85;
}

@media screen and (max-width:979px) {
	.news-thum{
	    float: left;
	    width: 30%;
	    margin-right: 15px;
	}

	.news-thum img{
		width: 100%;
		display: block;
	}

	.news-text{
	    float: left;
	    width: 65%;
	}

	.news-text p{
	    padding: 0 0 0 0;
	    margin: 0 0 0 0;
	    font-size: 14px;
	    line-height: 1.4;
	}

	.news-text span{
		font-size: 16px;
	}

}
/*================================================
 *  サイドバー
 ================================================*/
#sub .banners ul li{
	margin-bottom: 10px;
}

#sub .banners img{
	max-width: 100%;
}

#sub .program-wrapper h3{
	text-decoration: center;
	background-color: #000;
	margin-bottom: 10px;
}

#sub .program-wrapper .program{
	float: none;
	height: auto;
    width:100%;
    margin:20px 0px 20px 0;
}
#sub .program-wrapper .program .program-thum{
	position: relative;
    overflow: hidden;
    width: 100%;
    min-height: auto;
    height: auto;
    text-align: center;
}

/*
@media screen and (max-width:767px) {
	#sub .banners ul li{
		float: left;
		width: 49%;
	}
	#sub .banners ul li:nth-child(2n){
		margin-left:2%;
	}
	#sub .banners ul li:last-child{
		float: right;
		margin-left:0;
	}
}*/

/*================================================
 *  サイドバー
 ================================================*/
.tab li {
	background-color: #888;
	color: #fff;
	font-weight: bold;
}
.tab li.selected {
	background-color: #000;
	color: #fff;
}

.tab-block {
	padding: 0;
}
.tab-block li {
	float: left;
	width: 50%;
	padding: 5px 0 5px 2%;
	list-style: none;
	cursor: pointer;
	background-color: #bfbfbf;
}
.tab-block li.selected {
	display: block;
	background-color: #000;
	color: #fff;
}
.tab-content.sp.none {
	display: none!important;
}

/*================================================
 *  button
 ================================================*/
.button-wrapper {
    clear: both;
    position: relative;
    max-width: 225px;
    margin-left: auto;
    margin-right: auto;
    padding: 24px 0;
    text-align: center;
}

.button {
  display: block;
  width: 100%;
  padding: 10px;
  font-size: 14px;
  line-height: 1;
  text-align: center;
  color: #fff;
  background-color: #008ad0;

  text-decoration: none;
}
.button:hover {
  background-color: #000;
  color:#fff;
  text-decoration: none;
}


.button-red {
  color: #fff;
  background-color:red;
  border: 1px solid red!important;

}
.button-red:hover {
  background-color:  #262626;
  border:1px solid #262626!important;
  color:#fff;
  text-decoration: none;
}





.button-color {
  display: block;
  width: 100%;
  padding: 10px;
  font-size: 14px;
  line-height: 1;
  text-align: center;
  color: #fff;
  background-color: #008ad0;
  border: 1px solid #008ad0 !important;
  text-decoration: none;
}
.button-color:hover {
  border: 1px solid #000!important;
  background-color: #000;
  color: #fff;
  text-decoration: none;
}

.button-wrapper .button,
.button-wrapper .button-color{
	padding: 12px 40px;
}

.button-wrapper ul li{
	display: inline-block;
    margin: 0 5px;
}

.button-2column{
	max-width: 400px;
}


@media screen and (max-width:979px) {
	.button-wrapper ul li{
		display: block;
		max-width: 60%;
		margin:0 auto 24px auto;
	}
	.button,
	.button-color{
		padding: 12px;
		font-size: 14px;
		font-weight: normal;
	}
	.button:hover,
	.button-color:hover{
		text-decoration: none;
		border: 1px solid #000!important;
	}
}
/*================================================
 *  モーダル
 ================================================*/
.mfp-wrap {
    z-index: 10000;
}


#login h3{
    font-family: 'Noto Sans JP','Roboto',sans-serif;
    font-weight: normal;
    text-align: center;
    line-height: 1.2;
    font-size: 14px;
}

#login .login-wrapper{
	padding: 20px 20px 10px 20px;
}
#login .login-block{
	margin-bottom:12px;
}

#login .login-block input{
    display: block;
    width: 100%;
    font-size: 16px;
    padding: 5px;
}

#login .modal-form{
	padding: 0 12px;
}

#login .login-bottm-block{
	text-align: center;
    border-top: solid 1px #7f7f7f;
    padding-top: 10px;
}

#login .login-bottm-block p{

}

#login .button-wrapper{
	max-width: 150px;
}

.mfp-content{
	margin-top: 40px!important;
	background-color: #fff;
	width: 100%;
	max-width: 500px;
	padding: 0px;
    width: 500px;
    border: solid 1px #7f7f7f;
}

.mfp-bg{
	background:transparent;
}
.mfp-wrap,
.index .mfp-wrap.login-form,
.pages .mfp-wrap.login-form{
	background: rgba(255,255,255,0.9)
}
.index .mfp-wrap,
.pages .mfp-wrap{
	background: rgba(0,0,0,0.9);
}

.index .mfp-content{
	background-color: #000;
	width: 100%;
	max-width: 960px;
	padding: 20px;
	margin-top: 0!important;
	border: none;
}

.pages .mfp-content{
	background-color: transparent;
	border:none;
	width: 100%;
	max-width: 960px;
	padding: 20px;
	margin-top: 0!important;
	border: none;
}
.index .login-form .mfp-content,
.pages .login-form .mfp-content{
	margin-top: 40px!important;
	background-color: #fff;
	width: 100%;
	max-width: 500px;
	padding: 0px;
    width: 500px;
    border: solid 1px #7f7f7f;
}

.pages .mfp-content .mfp-iframe-scaler iframe{
	box-shadow:none;
    background: transparent;
}


.close-button p a {
    color: #9e9e9e;
    outline: none;
}

.mfp-close {
    width: 24px;
    height: 24px;
    padding: 5px;
    background-color: #191919;
    border-radius: 34px;
    -webkit-border-radius: 34px;
    -moz-border-radius: 34px;
    position: absolute;
    top: 20px;
    right: 20px;
    text-align: center;
    font-size: 24px;
}

#iframe-content h1{
    color: #ffffff;
    font-size: 28px;
    margin-bottom: 12px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.iframe-left{
    float: left;
    position: relative;
    width: 690px;
}

.iframe-right{
    float: right;
    width: 200px;
}

.iframe-thum{
	margin-bottom: 80px;
}
.iframe-thum img{
	display: block;
	width: 100%;
	height: auto;
}

.iframe-info a{
	font-size: 15px;
	font-weight: bold;
}

.description{
	clear: both;
	padding-top: 20px;
	padding-bottom: 0px;
}

.description p{
	color: #fff;
	margin:0 0 0 0;
}
.video {
  position: relative;
  height: 0;
  padding: 0px 0 56.25%;
  overflow: hidden;
}
.video iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

.dialog-sns {
	position: absolute;
	top: 0;
	right: 0;
	background-color: #191919;
	padding: 5 10px;
	text-align: center;
	padding: 15px 10px 0 10px;
}
.icon-sns {
	padding-bottom: 15px;
	margin-bottom: 0;
}
.dialog-sns a {
	color: #9e9e9e;
	outline: none;
}
.dialog-sns a:hover {
	color: #eeeeee;
}
.dialog-sns i{
	font-size: 32px;
}
#popup-nav .mfp-close{
    font-size: 24px;
}
#popup-nav .mfp-close {
	color: #9e9e9e;
	outline: none;
}
#popup-nav .mfp-close:hover {
	color: #eeeeee;
	outline: none;
}

.iframe-description{
	clear: both
}

@media screen and (max-width:979px) {
	.mfp-content{
		width: 100%;
	    width:100%;
	    max-width: 500px;
	}

	.index .mfp-bg,
	.pages .mfp-bg{

	}

	.index .mfp-content,
	.pages .mfp-content{
		background-color:transparent;
		width: 100%;
		max-width: 960px;
		padding: 10px;
		margin-top: 0!important;
		border: none;
	}

	#login .login-wrapper{
		padding: 20px 20px 10px 20px;
	}
	#login .login-block{
		margin-bottom:12px;
	}

	#login .login-block input{
	    display: block;
	    width: 100%;
	    font-size: 16px;
	    padding: 5px;
	}

	#login .modal-form{
		padding: 0 12px;
	}

	#login .login-bottm-block{
		text-align: center;
	    border-top: solid 1px #7f7f7f;
	    padding-top: 10px;
	}

	.iframe-left{
	    float: none;
	    position: relative;
	    width: 100%;
	}

	.iframe-right{
	    float: none;
	    width: 100%;
	}
	.iframe-thum{
		display: none;
	}
	.iframe-info{
		max-width: 80%;
		margin: 0 auto;
	}
	.description{
		padding-top: 0;
		padding-bottom: 20px;
	}

	#iframe-content h1{
	    color: #ffffff;
	    font-size: 1.17em;
	}
	.dialog-sns{
		display: none;
	}
}
/*================================================
 *  pagetop
 ================================================*/
#page-top{
    position: fixed;
    z-index: 1000;
    bottom: 25px;
    right: 50px;
    font-size: 30px;
}
#page-top a {
	width: 60px;
	height: 60px;
	background: #fff;
	text-decoration: none;
	color: #dc143c;
	padding: 10px;
	text-align: center;
	display: block;
	border-radius: 50%;
}
#page-top a:hover{
	text-decoration: none;
}
#page-top a i {
    margin-top: 3px;
    display: block;
}

.popup-modal iframe {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
}

@media screen and (max-width:979px) {
	#page-top{
	    bottom: 15px;
	    right: 20px;
	    font-size: 30px;
	}
}
/*================================================
 *  tags
 ================================================*/
.tag,
.tags {
	padding-bottom: 10px;
}
.tag,
.tags ul{
	padding: 0 0 0 0;
	margin:0 0 0 0;
}

.tags ul li {
	list-style: none;
    display: inline-block;
    color: #ffffff;
    padding: 4px 4px 3px 4px;

    background-color: #000;
    margin-bottom: 4px;
}

.tag ul li {
	list-style: none;
    display: inline-block;
    margin-bottom: 4px;
    font-size: 16px;
    line-height: 16px;
}
.tag ul li a.button,
.tag ul li a.button-color{
	font-size: 11px;
	font-weight: normal;
	padding: 4px 8px;
	width: auto;
}

.tag ul li a.button:hover,
.tag ul li a.button-color:hover{
	text-decoration: none;
}
.tags-color{
	margin-bottom: 12px;
}
.tag-keyword ul li{
	font-size: 18px;
	font-weight: bold;
	margin-right: 15px;
}
@media screen and (max-width:979px) {
	.tags {
		padding-bottom: 0px;
	}
}

/*================================================
 *  一覧ページ
 ================================================*/
#program-list{}

.list{}
.list .icon-google{
	margin: 5px 0px 5px 0px;
}

.program{
	float: left;
    width: 230px;
    margin:15px 20px 15px 0;
    position: relative;
}
.program-thum{
	position: relative;
    overflow: hidden;
    width: 230px;
    height: 127px;
    text-align: center;
    cursor: pointer;
}

.program-link a{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    text-indent:-999px;
    z-index: 12;

}

.program-thum img {
    -moz-transition: -moz-transform 0.2s linear;
    -webkit-transition: -webkit-transform 0.2s linear;
    -o-transition: -o-transform 0.2s linear;
    -ms-transition: -ms-transform 0.2s linear;
    transition: transform 0.2s linear;
    width: 100%;
    max-width: 230px;
}
.program-thum:hover > img{
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -o-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
}

.program-thum-new {
    max-width: 50px !important;
    z-index: 10000;
    position: absolute;
    left: 0px;
}

.program-title{}
.program-title{
	clear: both;
    color: #fff;
    background-color: rgba(0, 0, 0, 1);
    padding: 5px;
}

.program-title p{
	margin:0 0 0 0;
	font-size: 14px;
	font-weight: bold;
	line-height: 1.4;
	white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.program-title p em{
	display: block;
	font-size: 12px;
	font-weight: normal;
	font-style: normal;
}

.loader-block {
    text-align: center;
    padding: 40px 0 15px 0;
    clear: both;
}

@media screen and (max-width:979px) {
	.program{
	    width: 48%;
	    margin:15px 2% 15px 0;
	}
	.program-thum{
		position: relative;
	    overflow: hidden;
	    width: 100%;
	    height: auto;
	    text-align: center;
	}
	.program-thum img {

	    max-width: 100%;
	}

}

@media screen and (max-width:767px) {
	.program{
	    width: 100%;
	    height: auto;
	    margin:0 0% 20px 0;
	}
	.program-title{
		padding: 10px;
	}

}
/*================================================
 *  詳細ページ
 ================================================*/
#detail{}


 .detail{
 	position: relative;
 }
 .detail .breadcrumbs{
    margin: 0 0 24px 0;
 }
 .detail .sns-wrapper{
 	padding-top: 0;
 	top: 45px;
 }



.icon-facebook,
.icon-twitter,
.icon-google,
.icon-favarite,
.icon-print,
.icon-reddit,
.icon-pocket,
.icon-mail,
.icon-line{
	 margin: 5px 20px 5px 0px; padding: 0px; float: left;
}

.icon-facebook{
	margin: 3px 20px 0px 0px;
}

.icon-print{
	margin: 5px 0px 5px 0px;
}


.program-detail{
	position: relative;
}
.detail-contact{
	position: absolute;
    top: 35px;
    right: 0;
    width: 150px;
    height: 50px;
}

.detail-contact img{
	display: block;
}



.slide-inner {
	display: table-cell;
	vertical-align: middle;
	width: 750px;
}
/*
    display: flex;
    flex-direction: column; 
    justify-content: center;
    align-items: center;
*/
}
/*
.bx-wrapper .slide{
	display: table;
}
.bx-wrapper .slide-inner img {
	margin: 0 auto;
}

.tv_program_image {
    margin-bottom: 0px;
    text-align: center;
    overflow: hidden;
}
.tv_program_image a{
	position: relative;
	display: block;
}

.play-button{
    position: absolute;
    top: 0px;
    right: 0px;
    bottom: 0px;
    left: 0px;
    margin: auto auto;
    z-index: 1;
}

.play-button img{
	max-width:60px;
    position: absolute;
    left: 50%;
    margin-left: -30px;
    top: 50%;
    margin-top: -30px;
}

.tv_program_image .play-button img{
    position: static;
    max-width: 100%;
    max-height: 100%;
    display: block;
    width: auto!important;
}



.program-copy{
	text-align: center;
}

.program-copy p{
	padding: 10px;
}

.detail-block{
	margin-bottom: 12px;
	line-height: 1.4;
}

.detail-block h3{
	background-color: #000;
	padding: 5px;
	font-size: 14px;
	margin-bottom: 5px;
}

.detail-block p strong span{
	font-weight: bold;
}
*/
#detail .mfp-content{
	width: auto;
	background-color: transparent;
	width: 100%;
}
/*
#detail #iframe-content h1,
#detail .iframe-right,
#detail .iframe-description,
#detail .iframe-info,
#detail .dialog-sns{
	display: none;
}*/
/*
.bx-pager{
		display: none;
}

.movie-slider .bx-pager{
		display: none;
}

.no-slider-wrapper{
	margin-bottom: 40px;
}

.bxslider-wrapper{
	margin-bottom: 40px;
}*/

/*
.bxslider-wrapper.movie-slider{
	padding-bottom: 0;
}

.bxslider-wrapper.movie-slider .bx-wrapper{
	    padding-bottom: 0;
    margin-bottom: 0px;
}
.movie-slider .bx-wrapper .bx-pager,
.movie-slider .bx-wrapper .bx-controls-auto {
    position: absolute;
    bottom: -35px;
    width: 100%;
}*/

.detail-content{
	padding-top: 0px;
	padding-bottom: 24px;
}


/*
@media screen and (max-width:979px) {
	.bxslider-wrapper.movie-slider{
    margin-top: -15px;
    padding-bottom: 30px;
	}

	.bx-wrapper .slide-inner{
		width: 100%;
	}
	.bx-wrapper .slide-inner img {
		width: 100%;
	}
	.movie-slider .bx-pager{
			display: block;
	}
	.detail-content{
		padding-top: 12px;
		padding-bottom: 24px;
	}
	.tv_program_image img{
		display: block;
		width:100%;
		height: auto;
	}
}
@media screen and (max-width:767px) {
	.sns-icon{
		margin-right: 10px;
	}
	.detail-contact{
		position: static!important;
		width:120px!important;
		margin-left: auto;
		margin-right: 0;
	}
	.detail-contact a.button-color{
		padding: 6px;
	}
	.program-detail .sns-wrapper {
	    margin-bottom: 20px;
	}

}*/


/*================================================
 *  rich text editor
 ================================================*/
.rich-text-editor{
	font-size: 16px;
}
.rich-text-editor h1,
.rich-text-editor h2,
.rich-text-editor h3,
.rich-text-editor h4,
.rich-text-editor h5,
.rich-text-editor h6,
.rich-text-editor p,
.rich-text-editor span,
.rich-text-editor strong,
.rich-text-editor em,
.rich-text-editor a{
	line-height: inherit;
    width: initial;
    height:initial;
    padding: initial;
    margin: initial;
    float: initial;
    background-color: initial;
    background: initial;
    border: initial;
    text-decoration: initial;
    outline: initial;
    vertical-align: initial;
    word-break: break-word;
}


.rich-text-editor ul li,
.rich-text-editor ol li{
  list-style-position: inside;
}

.rich-text-editor ul li{
	list-style-type: disc;
}

.rich-text-editor img{
    max-width: 100%;
    height: auto!important;
    max-height: 100%;
}

.rich-text-editor p {
  margin: 0 0 10px 0;
}

.rich-text-editor sup {
  vertical-align: super;
  font-size: smaller;
}

/*================================================
 *  form
 ================================================*/
.table td:first-child{

}
.table td{
	width: 25%;
	word-break: break-all;
}
.table td input{
	padding: 3px;
	font-size: 14px;
}

.table td input.form-control{
	width: 60%;
}

.table td textarea.form-control{
	width: 80%;
	height: 60px;
	resize: vertical;
	border: solid 1px #c5c5c5;
}
.table td img{
	max-width: 120px;
	max-height: 120px;
}
.inline-table{
	border: none;
}

.inline-table td{
    border: none;
    width: 33%;
    padding: 10px 0;
}

.form-textarea {
    width: 80%;
    height: 60px;
}
.member-signin{
	text-align: center;
}

.icon-buyer {
	text-align: center;
	padding-bottom: 24px 0;
}
.icon-buyer img{
	max-width: 75px;
	max-height: 75px;
}

table.no-border,
table.no-border th,
table.no-border td{
	border:none;
}


#openInquiryInputFormDto_email,
#openInquiryInputFormDto_emailConfirm,
#openInquiryInputFormDto_company,
#openInquiryInputFormDto_section,
#openInquiryInputFormDto_phone{
	width: 100%;
	max-width: 350px;
}






@media screen and (max-width:979px) {
	.table {border:none;}
	.table td{
		border: none;
		display: block;
		width: 100%;
		padding: 5px 0;
	}
	.table td span{
		font-weight: bold;
		padding-bottom: 5px;
	}
	.table td input{
	    padding: 5px;
	    border: solid 1px #7f7f7f;
	    width: 100%!important;
	    display: block;
	}
	.table td input[type="file"]{
		border:none;
	}
	.table td input.form-control{
			width: 100%;
	}
	.table td textarea.form-control{
		width: 100%;
		height: 60px;
		resize: vertical;
		border: solid 1px #7f7f7f;
	}
}


/*================================================
 *  Advanced Search
 ================================================*/
.table-search td{
	width: auto;
}
.table-search td:first-child{
	width: 20%;
	text-align: center;
}



.table-search .inline-table td{
	text-align: left;
	width: 33%;
}

.inline-table.year-table{
	width: auto;
}
.inline-table.year-table td{
	text-align: left;
	width: auto;
	}
@media screen and (max-width:979px) {
	.table-search td:first-child{
		width: 100%;
		text-align: left;
		background-color: #000;
		color: #fff;
		padding: 5px;
		}

	.table-search .inline-table{
		margin-bottom: .5em;
	}
	.table-search .inline-table td:first-child{
	    background-color: transparent;
	    color: #000;
	    padding: 5px 0;
	}
	.table-search .inline-table td{
		text-align: left;
		width: 100%;
	}
	.table-search .inline-table td,
	.table-search .inline-table td:first-child{
		padding: 0 0 0 0;
	}
	.table-search .inline-table label{
		font-weight: bold;
	}
	.table-search input[type="text"]{
		width: 100%;
	    background-image: none;
	    padding: .4em;
	    line-height: 1.4;

	}

	.table-search tr td{

	}
	.input-wrapper .input-inner{
		display: block;
	    text-align: left;
	    cursor: pointer;
	    position: relative;
	    margin: .5em 0 0 0 ;
	    padding: 0 .5em;
		border: 1px solid #ccc;
	    background: #eee;
	    font-weight: bold;
	    color: #444;
	    text-shadow: 0 1px 1px #f6f6f6;
	    background-image: -moz-linear-gradient(top, #fefefe, #eeeeee);
	    background-image: -webkit-gradient(linear,left top,left bottom, color-stop(0, #fdfdfd), color-stop(1, #eeeeee));
	    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#fdfdfd', EndColorStr='#eeeeee')";
		border-radius: 15px;
		-webkit-border-radius: 15px;
		-moz-border-radius: 15px;
	}
	.input-wrapper input{
		position: absolute;
	    top: 50%;
	    margin-top: -6px;
	}

	.input-wrapper label{
		padding: .6em 25px;
	    display: block;
	    height: 100%;
	    text-overflow: ellipsis;
	    overflow: hidden;
	    white-space: nowrap;
	    position: relative;
	}
	.input-inner.checked{
	    border: 1px solid #155678;
	    background: #4596ce;
	    font-weight: bold;
	    color: #fff;
	    cursor: pointer;
	    text-shadow: 0 -1px 1px #145072;
	    text-decoration: none;
	    background-image: -moz-linear-gradient(top, #85bae4, #5393c5);
	    background-image: -webkit-gradient(linear,left top,left bottom, color-stop(0, #85bae4), color-stop(1, #5393c5));
	    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#85bae4', EndColorStr='#5393c5')";
	    outline: none;
	}
	.inline-table.year-table{
		width: 100%;
	}
	.select-wrapper .select-inner{
		text-align: center;
		display: block;
	    /*text-align: left;*/
	    cursor: pointer;
	    position: relative;
	    margin: .5em 0 0 0 ;
	    padding: 0 .5em;
		border: 1px solid #ccc;
	    background: #eee;
	    font-weight: bold;
	    color: #444;
	    text-shadow: 0 1px 1px #f6f6f6;
	    background-image: -moz-linear-gradient(top, #fefefe, #eeeeee);
	    background-image: -webkit-gradient(linear,left top,left bottom, color-stop(0, #fdfdfd), color-stop(1, #eeeeee));
	    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorStr='#fdfdfd', EndColorStr='#eeeeee')";
		border-radius: 15px;
		-webkit-border-radius: 15px;
		-moz-border-radius: 15px;
	}
	.select-wrapper .select-inner select{
		-webkit-appearance: none;
	    -moz-appearance: none;
	    appearance: none;
	    border:none;
	    background-color: transparent;

		background-size: 20px, 100%;

	    cursor: pointer;
	    -webkit-appearance: button;
	    left: 0;
	    top: 0;
	    width: 100%;
	    height: 100%;
		padding: .6em 12px;
	    display: block;
	    height: 100%;
	    text-overflow: ellipsis;
	    overflow: hidden;
	    white-space: nowrap;
	    position: relative;
	    text-align: center;
	    font-weight: bold;
	    font-size: 16px;
	    text-align:-webkit-center;
	}

	.select-wrapper .select-inner:after {
	    position: absolute;
	    top: 50%;
	    right: 10px;
	    display: block;
	    margin-top: -15px;
	    width: 24px;
	    height: 24px;
	    content: '\f13a';
	    font-family: FontAwesome;
	    color: #a2a2a2;
	    font-size: 20px;
	}

}

/*================================================
 *  番組コンタクト
 ================================================*/
.table-contact td{
	width: auto;
}
.table-contact td:first-child{
	width: 20%;
	text-align: center;
}



/*================================================
 *  タブレット向けデザイン
 ================================================*/
@media screen and (max-width:979px) {

	/* iOSでのデフォルトスタイルをリセット */
	input[type="submit"],
	input[type="button"] {
	  border-radius: 0;
	  -webkit-box-sizing: content-box;
	  -webkit-appearance: button;
	  appearance: button;
	  border: none;
	  box-sizing: border-box;
	  cursor: pointer;
	}
	input[type="submit"]::-webkit-search-decoration,
	input[type="button"]::-webkit-search-decoration {
	  display: none;
	}
	input[type="submit"]::focus,
	input[type="button"]::focus {
	  outline-offset: -2px;
	}

	.inner {
		width:100%;
	}

	#contents {
		display: block;
	    box-sizing: border-box;
	    width: 100%;
	    padding: 0 0;
	    margin:0 0 0 0;
	}

	.sp-container{
		padding: 0 10px;
	}
/*
	.lock {
	    overflow: hidden;
	}
*/
	footer {
		width:100%;
	}

	.header-right{
		display: none;
	}
	body.portrait.ipad .header-right{display: block!important;}

	body.ipad #nav-pref-body,
	body.ipad #nav-genre-body,
	body.ipad #nav-season-body{
		display: none!important;
	}
	nav ul {
		margin:0;
		padding:0;
		}

	nav .inner > ul {
	    z-index: 2;
	    overflow: auto;
	    position: absolute;
	    top: 44px;
	    top: 0;
	    left: 0;
	    width: 100%;
	    height: 88%;
	    height: -webkit-calc(100% - 53px);
	    height: calc(100% - 53px);
	    min-height:80vh;
	}
	/*
	body.landscape nav .inner > ul {
		top:58px;
	}*/
	nav li {
		position:relative;
		width:100%;
		float:none;
		margin:0;
		text-align:left;
		list-style:none;
		border-bottom:1px solid #ffffff;
		background:#008ad0;
	}

	nav li:first-child {
		border-top:0;
	}
	nav li:last-child {
		border-bottom:0;
	}

	nav li a {
		display:block;
		padding:10px;
		color:#fff;
		text-decoration:none;
		background:#008ad0;
	}
	nav li a:hover {
		color:#fff;
		background:#008ad0;
		text-decoration: none;
	}
	nav ul ul {
		display:none;
		position:relative;
	}
	nav li li a {
	    box-sizing: border-box;
	    width: 100%;
	    padding: 10px;
	    border-top: 1px solid #fff;
	    background-color: #999;
	    text-align: left;
	}
	nav li li a:hover{
		text-decoration: none;
	}

	nav li li li a {
		padding:10px 30px 10px 70px;
	}

/*
	.subnav > a:after {
		display:block;
		content:"\f067";
		font-family: FontAwesome;
		position:absolute;
		top:20px;
		right:16px;
		width:10px;
		height:10px;
		margin-top:-10px;
	}
	.subnav.active > a:after {
		display:block;
		content:"\f068";
		font-family: FontAwesome;
		position:absolute;
		top:20px;
		right:16px;
		width:10px;
		height:10px;
		margin-top:-10px;
	}
*/

	.subnav a{
		position: relative;
	}

	span.icon-subnav{
	    position: absolute;
	    right: 0;
	    top: 50%;
	}


	span.icon-subnav::before,
	span.icon-subnav::after {
	  content: '';
	  display: block;
	  width: 15px;
	  height: 2px;
	  border-radius: 5px;
	  background: #fff;
	  position: absolute;
	  right: 10px;
	  top: 50%;
	  transform: translateY(-50%);
	}

	.subnav a span.icon-subnav::after {
	  background: #fff;
	  transform: translateY(-50%) rotate(90deg);
	  transition: 0.2s;
	}
	.subnav a.active span.icon-subnav::after {
	  transform: rotate(0);
	  transition: 0.2s;
	}



	.gnav {
		display:none;
	}
	#spSearch{
		display:block;
	    z-index: 2;
	    position: absolute;
	    top: 5px;
	    right:55px;
	}

	#spSearch a{
		font-size: 24px;
	}
	#spMenu {
		display:block;
		z-index:2;
		position:absolute;
		top:4px;
		right:0px;
	}
	#spMenu:hover {
		cursor:pointer;
	}

	#navBtn {
	    display: inline-block;
	    position: relative;
	    width: 40px;
	    height: 40px;
	    border-radius: 5%;
	    top: 2px;
	}



	body.landscape.android #navBtn,
	body.landscape.iphone #navBtn{
		top: 8px;
	}



	#navBtnIcon {
		display:block;
		position:absolute;
		top:50%;
		left:35%;
		width:25px;
		height:2px;
		margin:-1px 0 0 -7px;
		background: #008ad0;
		transition:.2s;
	}
	#navBtnIcon:before,
	#navBtnIcon:after {
		display:block;
		content:'';
		position:absolute;
		top:50%;
		left:0;
		width:25px;
		height:2px;
		background: #008ad0;
		transition:0.3s;
	}
	#navBtnIcon:before {
		margin-top:-8px;
	}
	#navBtnIcon:after {
		margin-top:6px;
	}
	#navBtn .close {
		background:transparent;
	}
	#navBtn .close:before,
	#navBtn .close:after {
		margin-top:0;
	}
	#navBtn .close:before {
		transform:rotate(-45deg);
		-webkit-transform:rotate(-45deg);
	}
	#navBtn .close:after {
		transform:rotate(-135deg);
		-webkit-transform:rotate(-135deg);
	}
	#navSubBtn {
	    display: inline-block;
	    position: absolute;
	    width: 30px;
	    height: 30px;
	    border-radius: 5%;
	    right: 5px;
	    top: 5px;
	}
	#navSubBtnIcon {
		display:block;
		position:absolute;
		top:50%;
		left:35%;
		width:15px;
		height:2px;
		margin:-1px 0 0 -7px;
		background: #fff;
		transition:.2s;
	}
	#navSubBtnIcon:before,
	#navSubBtnIcon:after {
		display:block;
		content:'';
		position:absolute;
		top:50%;
		left:0;
		width:15px;
		height:2px;
		background: #fff;
		transition:0.3s;
	}
	#navSubBtn .plus {
		background:transparent;
	}
	#navSubBtn .plus:before,
	#navSubBtn .plus:after {
		margin-top:0;
	}
	#navSubBtn .plus:before {
		transform:rotate(0deg);
		-webkit-transform:rotate(0deg);
	}
	#navSubBtn .plus:after {
		transform:rotate(90deg);
		-webkit-transform:rotate(-90deg);
	}
	#navSubBtn .minus {
		background:transparent;
	}
	#navSubBtn .minus:before,
	#navSubBtn .minus:after {
		margin-top:0;
	}
	#navSubBtn .minus:before {
		transform:rotate(0deg);
		-webkit-transform:rotate(0deg);
	}
	#navSubBtn .minus:after {
		transform:rotate(0);
		-webkit-transform:rotate(0);
	}
	.gnav-sub-menu{
		background-color:#999 !important;
	}




/*

	.sp .gnav {
		position: absolute;
		width: 100%;
		z-index: 10;
		left: 0;
	}

	.sp .gnav-search {
		position: absolute;
		width: 100%;
		z-index: 10;
		display: none;
	}

	.sp .gnav-search .gnav-submenu{
		border-top: 1px solid #fff;
		border-bottom: 1px solid #fff;
	}
	.sp .gnav-search-form{
		background-color: #008ad0;
    	padding: 10px;
    	border-top: 1px solid #fff;
    	position: relative;
	}
	.sp .gnav-search-form input{
		width: 100%;
	    padding:10px;
	    font-size: 14px;
	}*/
	#select-language{
	    position: absolute;
	    right: 80px;
	    top: 13px;
	}
	#select-language a{
		display: block;
	}

	.icon-search{
	    position: absolute;
	    right: 48px;
	    top: 14px;
	}
	body.landscape.android .icon-search,
	body.landscape.iphone .icon-search{
		top: 18px;
	}
	.icon-search i{
		color: #008ad0;
	    font-size: 18px;
	}
		/*
	.sp .gnav .gnav-wrapper{
		padding: 0;
		background-color: #008ad0;
		border-top: 1px solid #fff;
		border-bottom: 1px solid #fff;
	}

	.sp .gnav p{
		font-size: 16px;
		color: #fff;
		font-weight: bold;
		text-align: center;
		margin-bottom: 10px;
	}
	.sp .gnav ul{
	}
	.sp .gnav ul li {
		width: 100%;
		display: block;
		border-bottom: none;
	}*/
	/*
	.sp .gnav ul li:last-child {
		float: right;
	}
	.sp .gnav ul li:last-child a{
		border-right: none;
	}
	.sp .gnav .gnav-submenu p{
		margin-bottom: 0;
		border-bottom: 1px solid #fff;
	}*/

	header {
		z-index:2;
		box-sizing:border-box;
		position:static;
		top:0;
		left:0;
		width:100%;
		padding:15px 10px;
	}

	#main {
	    box-sizing: border-box;
	    overflow: hidden;
	    position: relative;

		width :100%;
		max-width: 100%;
	    padding-left: 0px;
	}

	#sub {
	    float: none;
	    width: 100%;
	    margin-left: 0px;
	    margin-bottom: 48px;
	    padding-right: 0;
	}
	body.portrait.ipad #contents {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
	}

	body.portrait.ipad #main {
	    box-sizing: border-box;
	    overflow: hidden;
	    position: relative;

		width :100%;
		max-width: 75%;
	    padding-left: 10px;
	}

	body.portrait.ipad #sub {
		box-sizing:border-box;
		overflow:hidden;
		width: 25%;
	    min-width: 280px;
	    margin-left: 40px;
	    padding-right: 10px;
	}

	body.portrait.ipad .sp-container{
		padding: 0 0;
	}


    .gnav-sub-menu a{
	    background-color: #999;
	    border-top: 1px solid #fff!important;
	    border-left: none!important;
	    border-right: none!important;
	    border-bottom: none!important;
	    display: block!important;
    }
    .gnav-top-menu a{

	    border-top: 1px solid #fff!important;
	    border-left: none!important;
	    border-right: none!important;
	    border-bottom: none!important;
    }
    .gnav-top-menu a:hover,
    .gnav-sub-menu a:hover{
    	color: #fff!important;
    }

	.buyers-login {
		margin-bottom: 12px;
	}

	.program-list ul li,
	.buyers-login ul li{
		float: left;
		width: 48%;
		list-style-type: none;
	}
	.program-list ul li:nth-child(even),
	.buyers-login ul li:nth-child(even){
		float: right;
	}
	.program-list ul li{
		margin-bottom: 2%;
	}
	.program-list ul li:nth-child(7),
	.program-list ul li:nth-child(8){
		margin-bottom: 0;
	}
	.program-list ul{margin: 0 0 0 0;}
}


/*================================================
 *  program search
 ================================================*/

#advanced_serach_button{
	display: block;
}
#advanced_serach_button:hover{
    background-color: transparent;
}
#advanced_serach_button img{
	display: block;
	width: 100%;
	max-width:20px;
	height: auto;
}
.search_box {
    position: fixed;
    z-index: 150;
    right: -120%;
    top: 0px;
    border: 1px solid #ccc;
    background-color: rgba(255,255,255,0.95);
    transition: 0.5s ease;
    max-width: 400px;
    height: calc(100% - 12px);
    overflow-y: scroll;
}
/*
@media screen and (max-width:400px) {
	.search_box {
		display:none!important;
	}
}*/

.search_box.on{
    top: 50px;
    max-height: none;
    height: calc(100% - 50px);
}

.search_box .search_form{
    padding: 25px 0px;
}

.translated-ltr .search_box {
	top: 118px;
}

.search_box::-webkit-scrollbar{
    display: none;
}

.search_box.active{
    right: 0;
}

.search_close {
	font-size: 0;
    position: absolute;
    right: 10px;
    top:40px;
    cursor: pointer;
    width: 20px;
    height: 20px;

}

.search_close:after {
    display: block;
    width: 20px;
    content: " ";
    background-color: #fff;
    height: 2px;
    transform: rotate(45deg);
    position: relative;
    top: 8px;

}

.search_close:before {
    display: block;
    width: 20px;
    content: " ";
    background-color: #fff;
    height: 2px;
    transform: rotate(-45deg);
    position: relative;
    top: 10px;

}

.search_title {
    font-size: 21px;
    color: #fff;
    background-color: #008ad0;
    margin-bottom: 35px;
    padding:10px 0;
    text-align: center;
}

.search_subtitle {
    font-weight: bold;
    margin-bottom: 15px;
    font-size: 18px;
    padding: 0 15px;
}

.search_form input[type="text"] {
    padding: 7px;
    border: 1px solid #ddd;
    background: #ffffff;
    background: -moz-radial-gradient(center, ellipse cover, #ffffff 56%, #f1f1f1 100%);
    background: -webkit-radial-gradient(center, ellipse cover, #ffffff 56%,#f1f1f1 100%);
    background: radial-gradient(ellipse at center, #ffffff 56%,#f1f1f1 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f1f1f1',GradientType=1 );
    margin-bottom: 40px;
    width: 92%;
    box-sizing: border-box;
    margin-left:15px;
    margin-right:15px;
}

.search_form input::-webkit-input-placeholder{
	color: #ccc;
}

.search_check_area label {
    width: 50%;
    display: block;
    float: left;
    margin-bottom: 15px;
    font-size: 14px;
    position: relative;
}
.search_check_area > label:first-of-type {
    width: 100%;
}

.search_check_area label input {
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    appearance: none;
    width: 15px;
    height: 15px;
    background-color: #aaaaaa;
    position: relative;
    top:-1px;
    margin-right: 15px;
    transition: 0.1s ease;
}
.search_check_area label.width100{
	width: 100%;
}

@media all and (-ms-high-contrast:none){
  *::-ms-backdrop, .search_check_area label input+span { display: none; } /* IE11 */
  *::-ms-backdrop, .search_radio_area label input:checked + span { display: none; }
    /**::-ms-backdrop, .search_select_left::after { background-color: rgba(0,0,0,0) !important; }*/

  *::-ms-backdrop, .search_select_left::after {
    content: "";
    position: absolute;
    z-index: 0;
    right: 0px;
    height: 36px;
    width: 25px;
    background-color: #555;
    text-align: -webkit-center;
    padding-top: 9px;
    box-sizing: border-box;
    color: #008ad0;
    font-size: 13px;
    left: ;
    text-align: center;
}

.search_select_left::after {
    content: "";
    position: absolute;
    z-index: 0;
    right: 0px;
    height: 36px;
    width: 25px;
    background-color: #555;
    text-align: -webkit-center;
    padding-top: 9px;
    box-sizing: border-box;
    color: #008ad0;
    font-size: 13px;
    left: ;
    text-align: center;
}

::-ms-expand {
 display: none;
}



}


@media all and (-ms-high-contrast:none){
	*::-ms-backdrop, .search_close:after {
		top: 6px;
	}

	*::-ms-backdrop, .search_close:before {
		top: 7px;
	}
}


.search_check_area label input+span {
    font-size: 0;
}

.search_check_area label input+span:before {
    content: "";
    border-bottom: 3px solid rgba(255,255,255,0);
    border-right: 3px solid rgba(255,255,255,0);
    width: 3px;
    height: 10px;
    display: inline-block;
    position: absolute;
    left: 8px;
    z-index: 10;
    transition: 0.1s ease;
    transform: rotate(45deg);
    top: 3px;
}

.search_check_area label input:checked+span:before{
    border-bottom: 3px solid rgb(0, 0, 0);
    border-right: 3px solid rgb(0, 0, 0);
}

.search_check_area{
    margin-bottom: 40px;
}

.search_genre_btn {
    display: block;
    width: 95px;
    text-align: center;
    padding: 5px;
    border: 1px solid #008ad0;
    color: #008ad0;
    margin-left: auto;
    clear: both;
    font-size: 11.5px;
    transition: 0.3s ease;
    cursor: pointer;
}

.search_genre_btn:hover{
    background-color: #008ad0;
    color:#fff;
}

.search_select {
    float: left;
    width: 45%;
}

.search_select_center {
    width: 10%;
    float: left;
    text-align: center;
        padding-top: 7px;
}

.search_select {
    width: 100%;
    -webkit-appearance: none;
    -ms-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 7px;
    box-sizing: border-box;
    border:0;
    background-color: rgba(0,0,0,0);
    position: relative;
    z-index: 100;
    font-size:14px;
}

.search_select_left{
    float: left;
    width: 45%;
    margin-bottom: 40px;
    position: relative;
        border: 1px solid #ddd;
    background: #ffffff;
    background: -moz-radial-gradient(center, ellipse cover, #ffffff 56%, #f1f1f1 100%);
    background: -webkit-radial-gradient(center, ellipse cover, #ffffff 56%,#f1f1f1 100%);
    background: radial-gradient(ellipse at center, #ffffff 56%,#f1f1f1 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f1f1f1',GradientType=1 );
    box-sizing: border-box;
        overflow: hidden;
}

.search_select:after {
    display: block;
    position: :absolute;
    content:"";
}

.search_radio_area {
/*    border-top: 1px solid #eee;
    padding-top: 20px;*/
    margin-bottom: 40px;
    padding: 0 15px;
}

.search_select_left:after {
    content: "\25BC";
    position: absolute;
    z-index: 0;
    right: 0;
    height: 36px;
    width: 25px;
    background-color: #555;
    text-align: center;
    padding-top: 9px;
    box-sizing: border-box;
    color: #fff;
    font-size: 13px;
}

_::-webkit-full-page-media, _:future, :root .search_select_left:after{
    padding-top: 9px;
  }

.search_radio_area label {
    width: 50%;
    float: left;
    display: inline-flex;
    position: relative;
}

#categoriesA.search_radio_area label {
    margin-bottom: 15px;
    font-size: 14px;
}

#categoriesA.search_radio_area > label:first-of-type {
    width: 100%;
}

.search_radio_area input {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	-ms-appearance: none;
	width: 20px;
	height: 20px;
	background-color: #aaa;
	border-radius: 100%;
	margin-right: 15px;
	position: relative;
	top: -2px;
}

.search_radio_area label span {
    font-size: 0;
    width: 10px;
    height: 10px;
    background-color: rgba(0,0,0,0);
    display: block;
    position: absolute;
    left: 8px;
    transition: 0.3s ease;
    top: 6px;
    border-radius: 100%;
}
@supports (-ms-ime-align: auto) {
	.search_radio_area label span {
		left: 9px;
	}
}
.search_select_box,
#categoriesA,
#categoriesB,
#categoriesC,
#categoriesD,
#categoriesE{
	padding: 0 15px;
}



_::-webkit-full-page-media, _:future, :root .search_radio_area label span  {
    left:7px !important;
}


@media screen and (-webkit-min-device-pixel-ratio:0) {
  ::i-block-chrome, .search_radio_area label span  {
    left:7px !important;
}
}

@media screen and (min-color-index:0)
   and(-webkit-min-device-pixel-ratio:0) { @media {
    .search_radio_area label span  {
    left:7px !important;
}
}}

/* Hack for Safari 6.1-7.0 */
@media screen and (-webkit-min-device-pixel-ratio:0)
  and (min-color-index:0) {
    .search_radio_area label span  {
        (; left: 7px !important ;)
    }
}

.search_radio_area label input:checked + span{
    background-color: #fff;
}

.search_form .submit_btn {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -ms-appearance: none;

    background-color: #008ad0;
    color: #fff;
    padding: 10px;
    font-size: 16px;
    width: 100%;
    text-align: center;
    margin-bottom: 15px;
    transition: 0.3s ease;
    margin: 0 15px;
    width: 92%;
    display: block;
    border: none;
}

.search_form .submit_btn:hover{
    background-color: #000;
}



/*================================================
 *  並べ替え
 ================================================*/

.left-contents-wrapper{
	position: absolute;
	left: 0;
	top: 0;
}
.item-count-title{
	font-size: 14px;
	font-size: 1.4rem;
}

.c-radio {
  display: none;
}
.btn {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	width: 60px;
	height: 24px;
	margin: 0 0 0 auto;
}
.btn__multi, .btn__single {
  width: 24px;
  height: 24px;
  cursor: pointer;
}
.btn__multi span, .btn__single span {
  display: block;
  background: #ccc;
  border-radius: 2px;
  transition: all 0.3s ease;
}
.btn__multi:hover span, .btn__multi:hover span:after, .btn__single:hover span, .btn__single:hover span:after {
  background: #aaa;
}
.btn__multi {
  position: relative;
}
.btn__multi span {
  display: block;
  width: 11px;
  height: 11px;
}
.btn__multi span:first-child {
  margin-bottom: 2px;
}
.btn__multi span:after {
  content: "";
  position: absolute;
  right: 0;
  width: 11px;
  height: 11px;
  background: #ccc;
  border-radius: 2px;
  transition: all 0.3s ease;
}
.btn__single span {
  wdith: 24px;
  height: 11px;
}
.btn__single span:first-child {
  margin-bottom: 2px;
}

.card {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
	flex-wrap: wrap;
	width: 100%;
	margin:0 auto;
	/*min-width: 980px;*/
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	/*justify-content: space-between;*/
	justify-content: flex-start;
}
.card__item {
    position: relative;
    width: 23.5%;
    height: 100%;
    margin: 0 0 2% 2%;
}
/*
.card__item:before {
  content: "";
  display: block;
  padding-top: 56.25%;
}*/
.card__item:nth-child(4n) {

}
/*
.card__item span {
  position: absolute;
  top: 10px;
  left: 10px;
  display: block;
  font-size: 10px;
  color: #666;
  letter-spacing: 1px;
}*/

#single:checked ~ .card .card__item {
	width: 100%;
	margin: 0 0 0 0;
	border-bottom: 1px solid #ccc;
	padding: 15px 0;
}
#single:checked ~ .card .card__item span {
  top: 20px;
  left: 20px;
  font-size: 16px;
}
#multi:checked ~ .card{
	padding-top: 15px;
}
#multi:checked ~ .btn .btn__multi {
  cursor: default;
}
#multi:checked ~ .btn .btn__multi span {
  background: #3b4144;
}
#multi:checked ~ .btn .btn__multi span:after {
  background: #3b4144;
}

#multi:checked .card__item {
    position: relative;
    min-width: 310px;
    max-height: 100%;
    margin: 0 0 25px 25px;
    width: 25%;
}

#multi:checked ~ .card .card__item .program-thum{
    width: 100%;
    align-items: center;
    justify-content: center;
}


#multi:checked ~ .card .card__item .program-thum {

}
#multi:checked ~ .card .card__item .program-thum img{
	max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
}

#multi:checked ~ .card .card__item .program-thum .new-icon{
  display:none;
}
#multi:checked ~ .card .card__item .program-thum .contents-item-new-block{
  display:block;
}

#multi:checked ~ .card .card__item .arrow{
    display:none;
}

#single:checked ~ .btn .btn__single {
  cursor: default;
}
#single:checked ~ .btn .btn__single span {
  background: #3b4144;
}

.single-program-title{
	display: none;
}

.single-program-title span{
	display: block;
    font-size: 15px!important;
}
.single-program-title p{
	font-size: 14px;
}

.image-single-program-title p{
    font-size: 13px;
    word-break: break-word;
}


#single:checked ~ .card .card__item .program-title{
	display: none;
}


#single:checked ~ .card .card__item .single-program-title{
    display: block;
    /* float: left; */
    /* margin-left: 30px; */
    position: relative;
    /* max-width: 650px; */
    z-index: 0;
}




#single:checked ~ .card .card__item .single-program-title a img{
	display: inline-block;
    position: relative;
    top: 6px;
    width: 40px;
    height: 26px;
}


body#salescompany #single:checked ~ .card .card__item .image-single-program-title{
	text-align: left;
    display: block;
    float: left;
    margin-left: 30px;
    position: relative;
    max-width: 650px;
    max-width: 420px;
}

body#salescompany #single:checked ~ .card .card__item .single-program-title{
	text-align: left;
    max-width: 485px;
}

body#salescompany .program-thum {
    position: relative;
    overflow: hidden;
    width: 230px;
    height: 150px;
    text-align: center;
    cursor: pointer;
    vertical-align: middle;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: center;
    align-items: center;
}

body#salescompany .tags ul{
	text-align:left;
}

body#salescompany .arrow{
  padding:0;
}

#single:checked ~ .card .card__item .program-thum{
    float: left;
}

#single:checked ~ .card .card__item .program-thum .new-icon{
  /*display:block;*/
    position: absolute;
    left: 0;
    top: 0;
}
#single:checked ~ .card .card__item .program-thum .contents-item-new-block{
  display:none;
}

@media all and (-ms-high-contrast:none){
  *::-ms-backdrop, #single:checked ~ .card .card__item .program-thum{display: -ms-flexbox;}/* IE11 */
  *::-ms-backdrop, #multi:checked ~ .card .card__item .program-thum{display: block;}/* IE11 */
}


.single-program-title h4{
    border-bottom: none;
    font-size: 19px;
    font-weight: bold;
    color: #000;
    line-height: 1.8;
    margin-bottom: 5px;
    margin-top: 0;
    font-family: 'Noto Sans JP','Roboto',sans-serif;
    word-break: break-word;

}

.image-single-program-title h4{
    border-bottom: none;
    font-size: 18px;
    font-weight: bold;
    color: #000;
    line-height: 1.8;
}

.single-program-title .sub-subject{
	font-family: 'Noto Sans JP','Roboto',sans-serif;
    color: #ae9364;
    font-size: 13px;
    font-weight: bold;
    margin-bottom: 5px;
    word-break: break-word;
    padding-top: 0;

}
.single-program-title .sub-title{
	font-size: 14px;
	margin-bottom:15px;
	word-break: break-word;
}

.card__item.first_item{
	margin-left: 0;
}
/*

@media screen and (max-width:979px) {
	#multi:checked ~ .card .card__item .program{
	    width: 100%;
	    margin:0 0% 20px 0;
	}
	#single:checked ~ .card .card__item .single-program-title{
		width: 65%;
	}

}
@media screen and (max-width:767px) {
	#single:checked ~ .card .card__item .program {
	    width: 100%;
	    margin:0 0 0 0;
	}
	#single:checked ~ .card .card__item .program-thum{
		position: relative;
	    overflow: hidden;
	    width: 30%;
	    height: auto;
	    text-align: center;
	}
		#single:checked ~ .card .card__item .single-program-title{
	    display: block;
	    float: right;
	    width: 65%;
	    margin-left: 0px;
	}
	.card__item{
		width: 100%;
		margin: 0 0 0 0;
	}

}
*/
.program-thum{
    position: relative;
    overflow: hidden;
    width: 240px;
    /*height: 200px;*/
    text-align: center;
    cursor: pointer;
    vertical-align: middle;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    /* align-items: center; */
    /* justify-content: center; */
    /* margin-right: 15px; */
    z-index: 1;
    margin-right: 15px;
}
/*
.program-link a{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    text-indent:-999px;
    z-index: 12;

}*/

.program-thum img {
    -moz-transition: -moz-transform 0.2s linear;
    -webkit-transition: -webkit-transform 0.2s linear;
    -o-transition: -o-transform 0.2s linear;
    -ms-transition: -ms-transform 0.2s linear;
    transition: transform 0.2s linear;
    max-width: 100%;
    max-height: 220px;
}
.program-thum:hover > img{
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -o-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
    filter: brightness(1.2);
}

.program-thum a img {
    -moz-transition: -moz-transform 0.2s linear;
    -webkit-transition: -webkit-transform 0.2s linear;
    -o-transition: -o-transform 0.2s linear;
    -ms-transition: -ms-transform 0.2s linear;
    transition: transform 0.2s linear;
    max-width: 100%;
    max-height: 100%;
    width: auto;
}
.program-thum:hover > a img{
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -o-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
    filter: brightness(1.2);
}

.program-thum-new {
    max-width: 50px !important;
    z-index: 10000;
    position: absolute;
    left: 0px;
}

.program-title{}
.program-title{
    clear: both;
    color: unset;
    background-repeat: repeat-x;
    background-size: contain;
    padding: 5px;
    background-color: transparent;
    font-family: 'Noto Sans JP','Roboto',sans-serif;
    text-align: center;
    font-size: 12px;

}
.program-title h4{
    padding: 0 0 0 0;
    margin: 0 0 0 0;
}
.program-title em{
	font-family: 'Noto Sans JP','Roboto',sans-serif;
	font-style: normal;
}

.program-title p{
	margin:0 0 0 0;
	font-size: 14px;
	font-weight: bold;
	line-height: 1.4;
	white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.program-title p em{
	display: block;
	font-size: 12px;
	font-weight: normal;
	font-style: normal;
}



/*
@media screen and (max-width:979px) {
	.program{
	    margin:15px 2% 15px 0;
	}
	.program-thum{
		position: relative;
	    overflow: hidden;
	    width: 100%;
	    height: auto;
	    text-align: center;
	}
	.program-thum img {
    max-width: 100%;
    max-height: initial;
    width: 100%;
	}

}

@media screen and (max-width:767px) {
	.program{
	    width: 100%;
	    margin:0 0% 20px 0;
	}
	.program-title{
		padding: 10px;
	}

}
*/
.card__item a{
text-decoration: none;
    z-index: 10;
    display: block;
    width: 100%;
}
.card__item a:hover{
	text-decoration: underline;
}
/*
.card__item h4{
	position: relative;
	z-index: 100;
	cursor: pointer;
}
.card__item h4:hover{
	text-decoration: underline;
}*/
.list-name a,
.card__item h4 a{
	color: #000;
}
.list-name a:hover,
.card__item h4 a:hover{
	text-decoration: underline;
}

.list-name a.salescompany-title{
	color: #000;
	text-decoration: none;
}


.program-time{
	text-align: right;
}
.single-program-title.long-title h4{
	/*
	max-width: 70%;*/

}
.single-program-title.long-synopsis h4{

}

.single-program-title.long-synopsis  p{
	/*
	max-width: 70%;*/
}
.single-program-title .program-time p{
	max-width: 100%;
}
.single-program-title.long-synopsis .program-time{
    width: 28%;
    float: right;
    right: 0;
    top: 0;
    margin-top: -2px;
}
@media screen and (min-width:1400px) {
	.program-time{width: auto;}
}

@media screen and (max-width:1399px) {

}

@media screen and (max-width:1200px) {

}

@media screen and (max-width:768px) {
	.program-thum{
		width: 30%;
		min-height: 60px;
	}

	.card__item{
		width: 48%;

	}

	#multi:checked ~ .card .card__item {
		text-align: center;
	}
	.card__item.third_item{
		margin-left: 0;
	}

	#single:checked ~ .card .card__item .single-program-title{
	    display: block;
	    /* float: left; */
	    /* margin-left: 30px; */
	    position: relative;
	    /* max-width: 650px; */
	    z-index: 0;
	    float: right;
	    width: 65%;
	}

}

/*================================================
 *  cookie-info
 ================================================*/

.cookie-info 
{
	display: none;
    background-color: #333;
    color: #fff;
    /*border-top: solid #fff 2px;*/
    -moz-opacity: .95;
    filter: alpha(opacity=95);
    opacity: .95;
    padding: 10px;
    position: fixed;
    bottom: 0;
    width: 100%;
    z-index: 100;
}
.cookie-info .container {
    position: relative;
    width: 1040px;
    margin: 0 auto;
}

.cookie-info .container p {
    font-size: 13px;
    color: #fff;
    float: left;
    margin-right: 32px;
    margin-top: 7px;
}

.cookie-info a,
.cookie-info a:hover,
.cookie-info a:visited{
	color: #fff;
}
.cookie-info .container .cookie-info-accept .btn-accept {
    -webkit-transition: all .5s;
    transition: all .5s;
    cursor: pointer;
    opacity: 1;
    background: #fff;
    color: #000;
    font-size: 15px !important;
    text-align: center;
    border:none;
    padding: 6px;
    display: inline-block;
    width: 100px;
}
.cookie-info .container .cookie-info-accept .btn-accept:hover{
	color: #fff;
	background: #000;
}
.cookie-info .container .cookie-info-accept .btn-close {
    padding: 4px 15px;
    cursor: pointer;
    background-position: 0 center;
    background: url(/image/jvc/close.png) no-repeat 2px 2px;
    font-size: 12px;
    font-weight: normal;
    border: 0;
    margin: 0;
    text-indent: 12px;
    text-transform: none;
    text-decoration: underline;
    display: inline-block;
    width: 100%;
    clear: both;
    height: 20px;
    color: #fff;
    text-align: left;
}

@media screen and (max-width:979px) {
	.cookie-info{
		padding: 0 0 0 0;
	}
	.cookie-info .container {
	    position: relative;
	    width: 100%;
	    margin: 0 auto;
	}
	.cookie-info .container p{
		font-size: 12px;
	}
	.cookie-info .container p{
		margin-right: 0;
	}
}

