body {
background-image: repeating-linear-gradient(45deg, #1adeff, #1adeff 20px, #00caec 20px, #00caec 31px);
color: #333;
font-size: 1.0em;
line-height: 1.2em;
text-align: center;
width: 100%;
}
*{box-sizing: border-box;margin: 0;padding: 0;}
ul,li,ol, dl,dt,dd{list-style-type: none;}
h1, h2, h3, h4, h5, h6, p{margin: 0;padding: 0;}
a img {border: none;}
a:link {color: #000;text-decoration: underline;}
a:visited {color: #6E6C64;text-decoration: underline;}
a:hover, a:active, a:focus {text-decoration: none;}
a:hover{opacity:0.65;}
.f_mPlus_b{
font-family: m-plus-1c, sans-serif;
font-weight: 700;
font-style: normal;
}
.f_mPlus_r{
font-family: m-plus-1c, sans-serif;
font-weight: 400;
font-style: normal;
}
.f_Seurat_r{
font-family: fot-seurat-pron, sans-serif;
font-weight: 600;
font-style: normal;
}
/*-------------スクリーンリーダー専用（非表示）------------*/
.sr-only {
border: 0;
clip: rect(0, 0, 0, 0);
height: 1px;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute;
white-space: nowrap;
width: 1px;
}

/*パンくずリスト----------------------------------*/
nav.panlist{
background: #00caec;
height: 52px;
overflow: hidden;
padding: 6px 0;
position: relative;
width: 100%;
}
nav.panlist a{
color: #333;
}
nav.panlist strong{
font-weight:normal;
}
nav.panlist ol {
color: #333;
display: flex;
white-space: nowrap;
font-size: min(0.7em,2.4vw);
list-style: none;
line-height:1.5;
margin: 0 auto;
padding: 14px 0;
max-width: 1270px;
width: 98%;
}
nav.panlist li + li::before {
color: #333;
content: ">";
margin: 0 0.5em;
}

/*#lead{
background: #3a3118;
height: 40px;
padding: 5px;
width: 100.2%;
}
#lead h2{
color: #fff;
float:left;
font-size: 0.8em;
line-height: 30px;
margin: 0 0 0 10px;
}
#lead h2 a{
color: #fff;
font-weight: normal;
}
#lead #sns_button_pc{
float: right;
}
#lead #sns_button_pc img{
margin: 0 2px;
height: 26px;
width: 26px;
}*/
/* base -------------------------------------- */

/* #main -------------------------------------- */
#title{
display: block;
margin: -5px 0px;
width: 100%;
}
#main{
clear: both;
margin: 0 auto;
width: 100%;
}
#main #contents{
background: #fff;
margin: 0 auto 40px;
padding: 30px 0;
width: 960px;
}
/*#main #contents h2 {
background: #a62222;
display: inline-block;
font-size: 2em;
line-height: 1.8;
padding: 0 100px;
height: 50px;
margin: 0 auto 0.2em;
}
#main #contents h2::before,
#main #contents h2::after {
background: url(../img/bg_midashi.png) no-repeat;
content: "";
height: 47px;
width: 120px;
}*/
#main #contents h2 {
align-items: center;
display: flex;
font-size: min(2em, 5vw);
line-height: 1.8;
gap: 15px;
justify-content: center;
margin: 0 auto 0.2em;
}
#main #contents h2::before,
#main #contents h2::after {
content: "";
display: block;
height: 47px;
width: 120px;
background: url(../img/bg_midashi.png) no-repeat center;
background-size: contain;
}
#episode, #intro, #cast {
/* padding: 20px; */
margin: 0 auto 3em;
width: 90%;
}
.kv{
position: relative;
width: 100%;
}
.kv img{
height: auto;
width: 100%;
z-index: 1;
}
.kv .time{
font-size: min(1em, 5vw);
position: absolute;
bottom: 330px;
width: 100%;
z-index: 5;
}
.kv .time span {
background: #fdd101;
border-radius: 4px;
color: #000;
font-family: m-plus-1c, sans-serif;
padding: 0.2em 1em;
}
.kv .time1st {
display: block;
font-size: min(0.7em, 2.5vw);
position: absolute;
 /*bottom: 19vw; */
bottom: 260px;
left: 15%;
width: 70%;
z-index: 5;
}
.kv .time1st span {
background: #fdd101;
border-radius: 4px;
color: #000;
display: block;
font-family: m-plus-1c, sans-serif;
line-height: 1.5;
padding: 0.2em 1em;
word-break: auto-phrase;
}
.kv .timeEnd{
position: absolute;
bottom: 5vw;
width: 90%;
z-index: 5;
}
.kv .timeEnd span{
background: #fdd101;
border-radius: 4px;
color: #000;
font-family: m-plus-1c, sans-serif;
padding: 0.2em 1em;
}
/*#episode h3,
#intro h3,
#cast h3{
padding: 0;
margin: 10px 0 30px;
}
#episode .subtitle {
background: #ffe0e2;
display: block;
margin: 20px auto 0;
padding: 12px;
width: 90%;
}
#episode .date {
font-size: 1.2em;
font-weight: bold;
margin: 12px auto;
width: 50%;
}
#episode .text {
background: #fff7e1;
border-radius: 10px;
margin: 0 auto 30px;
line-height: 1.5em;
padding: 20px;
text-align: left;
width: 90%;
}
#episode .photo {
margin: 0 auto 20px;
width: 90%;
}
#episode .photo img {
max-width: 100%;
}
#episode .btn_log {
margin: 0 0 20px;
}
#episode .btn_log select {
-webkit-appearance: none;
appearance: none;
border: none;
background: transparent;
background-color: #facf22;
background-image: none;
box-shadow: none;
border-radius: 6px;
color: #2a3250;
cursor: pointer;
font-size: 1rem;
line-height: 2.5rem;
text-indent: 0.01px;
text-overflow: ellipsis;
outline: none;
padding-left: 1em;
width: 70%;
}
*/
#intro .catch {
color: #88841a;
font-size: min(1.2em, 4vw);
font-weight: bold;
line-height: 1.5;
margin: 0 auto;
padding: 0 0 2em;
text-align: left;
word-break: auto-phrase;
width: 90%;
}
#intro .detail{
line-height: 1.5;
margin: 0 auto;
padding: 0;
text-align: left;
width: 90%;
}
#cast .detail {
line-height: 1.5;
}
.copyright {
color: #111;
font-weight: bold;
text-align: center;
padding: 20px 0;
}
/* #main -------------------------------------- */

/* #footer -------------------------------------- */
#footer {
background: #000;
clear: both;
color: #fff;
font-size: 0.8em;
line-height: 1.5em;
margin: 20px 0 0;
padding: 0 0 10px;
text-align: center;
width:100%;
}
#footer .mx_copyright{}
#footer a{
color: #fff;
text-decoration: none;
}
#footer .foot{
margin: 0 auto;
}
#footer_box select{
font-size:1.2em;
line-height:1.4em;
margin: 30px 0;
width:70%;
}

.nobr_pc{
display: none;
}
/* 良く使う系 -------------------------------------- */
.pc_ad_head{
height: 100px;
}

/* special -------------------------------------- */
.special{
background: #fff;
border-radius: 10px;
border: #0A0 solid 5px;
clear: both;
margin: 10px auto 30px;
font-size: 1.2em; 
line-height: 1.7em;
padding: 20px 25px;
width: 95%;
}
.special strong{
color: #ff8a00;
font-size: 1.4em; 
margin: 0 0 10px;
}
.special p{
font-weight: bold;
}
.special span{
color: #800000;
display: block;
}
.spOnly{
display: none;
}
/* special -------------------------------------- */


/* PC  -------------------------------------------------- */
@media (width > 782px) {
	/* base -------------------------------------- */
	#wapper{
	display: flex;
	margin: 0 auto;
	width: 1280px;
	}
	#left_side{
	margin: 10px 0 0;
	width: 960px;
	}
	#right_side{
	margin: 0 0 0 20px;
}
	/*-- SNS ----------------------*/
	#sns_button_pc {
	margin: 10px auto;
	position: absolute;
	right: 5px;
	top: 0;
	}
	#sns_button_pc .btn_sns img{
	height: 32px;
	width: 32px;
	margin: 0 5px;
	}
	#sns_button_pc .sns{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	height:40px;
	margin: 20px auto;
	width: 30%;
	}
	#sns_button_pc .sns a{
	display:block;
	margin:0 !important;
	height: 26px;
	width: 26px;
	}
	#sns_button_pc .sns img{
	margin:0;
	height: 26px;
	width: 26px;
	}
	#sns_button_sp{
	display: none;
	}
}

/* SP  -------------------------------------------------- */
@media (width < 782px) {/*782px <= */
	#sns_button_pc{
	display: none;
	}
	nav.panlist {
	height: 24px;
	padding: 0;
	}
	nav.panlist ol{
	padding: 0.8em 0;
	}
	
	/* base -------------------------------------- */
	#wapper{
	margin: 0 auto;
	max-width: 640px;
	width: 100%;
	}
	#right_side{
	margin: 0;
	padding:0 0 15px;
	}
	/* base -------------------------------------- */

	/* #main -------------------------------------- */
	#main #contents{
	width: 100%;
	}
	#main #contents h2::before,
	#main #contents h2::after {
	height: 6vw;
	width: 15vw;
	}
	#title{
	display: block;
	margin: 0 0 -8px;
	width: 100%;
	}
/*	.kv .time {
    font-size: min(1em, 4.0vw);
    position: absolute;
    bottom: 32vw;
    width: 100%;
    z-index: 5;
	}*/
	.kv .time {
    bottom: 32vw;
	}
	.kv .time1st {
	display: block;
	font-size: min(0.7em, 2.5vw);
	position: absolute;
	bottom: 26vw;
	/* bottom: max(5vw, 130px); */
	left: 10%;
	width: 80%;
	z-index: 5;
	}
/*	#title h1{
	padding: 30px 0;
	text-align: center;
	width: 100%;
	}
	#title h1 img{
	margin: 0 auto;
	width: 70%;
	}
	#title .time{
	width: 100%;
	}
	#title .kv img,
	#title .time img{
	width: 100%;
	}*/
	#intro,
	#cast{
	/*padding: 20px 20px 0;*/
	/*margin: 0 auto 20px;*/
	width: 95%;
	}
/*
	#episode h3,
	#intro h3,
	#cast h3{
	font-size: 1.2em;
	padding: 0;
	margin: 0 0 20px;
	}
	#episode h3 img,
	#intro h3 img,
	#cast h3 img{
	height: auto;
	max-width: 100%;
	}
	#episode .subtitle {
	background: #ffe0e2;
	display: block;
	margin: 20px auto 0;
	padding: 12px;
	width: 100%;
	}
	#episode .date {
	font-size: 1.0em;
	font-weight: bold;
	margin: 8px auto;
	width: 100%;
	}
	#episode .text {
	background: #fff7e1;
	border-radius: 10px;
	margin: 0 auto 30px;
	line-height: 1.5em;
	padding: 10px;
	text-align: left;
	width: 100%;
	}
	#episode .photo {
	margin: 0 auto 20px;
	width: 90%;
	}
	#episode .photo img {
	max-width: 100%;
	}
	#episode .btn_log {
	margin: 0 0 20px;
	}
	#episode .btn_log select {
	appearance: none;
	border: none;
	background: transparent;
	background-color: #facf22;
	background-image: none;
	box-shadow: none;
	border-radius: 6px;
	color: #2a3250;
	cursor: pointer;
	font-size: 1rem;
	line-height: 2.5rem;
	text-indent: 0.01px;
	text-overflow: ellipsis;
	outline: none;
	padding-left: 1em;
	width: 90%;
	}
*/
	#intro .catch{
	word-break: unset;
	}
/*	#intro .catch{
	color: #88841a;
	font-size: 1.1em;
	font-weight: bold;
	line-height: 1.5em;
	padding: 0 0 20px;
	}
	#intro .detail{
	line-height: 1.5em;
	margin: 0 auto;
	padding: 0;
	text-align: left;
	width: 100%;
	}
*/
	#official{
	margin: 20px auto 0;
	text-align: center;
	width: 90%;
	}
	#official img{
	height: auto;
	width: 100%;
	}
    #cast .detail {
    margin: 0 auto;
    width: 90%;
    word-break: auto-phrase;
    }
/*	.tokuban{
	margin: 0 auto;
	width: 90%;
	}
	.tokuban img{
	height: auto;
	width: 100%;
	}*/
	/* #main -------------------------------------- */
/*	.copyright {
	color: #111;
	font-size: 1.0em;
	padding: 0;
	margin: 30px 0;
	}*/

	/* #footer ---------------------------------------
	#footer {
	background: #000;
	color: #fff;
	font-size: 0.9em;
	line-height: 1.5em;
	padding: 20px 0 10px;
	}
	#footer .mx_copyright{
	color: #fff;
	}
	#footer a{
	color: #fff;
	text-decoration: none;
	}
	#footer_box{
	font-size:1.2em;
	line-height:1.4em;
	margin: 30px 0 10px;
	width: 100%;
	}
	#footer_box div.footer_container{
	font-size:0.5em;
	line-height:1.0em;
	text-align:center;
	padding: 15px 0;
	width:100%;
	}
	.translation{
	padding: 5px 0;
	}
	.translation .link_style{
	display:block;
	font-size: 1.0em;
	line-height: 1.5em;
	padding: 15px 0;
	text-align:center;
	}-- */
	/* #footer ----------------------------------------- */
	/* バナーの箱 */
	.head_banner{
	text-align: center;
	margin: 15px 0;
	width: 100%;
	}
	/* 320幅用 SNSボタン */
	.btn_sns img{}
	.hide_text {
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	}

	/* Facebook Like Box width:100% */
	.fbcomments,.fb_iframe_widget,.fb_iframe_widget[style],.fb_iframe_widget iframe[style],.fbcomments iframe[style],.fb_iframe_widget span{
	width: 100%! important;
	}
	.translation .link_style{
	font-size: 1.0em;
	line-height: 1.5em;
	}
	.btn_sns{
	margin: 0 2px;
	}
	.btn_x img,.btn_facebook img,.btn_line img{height: 40px;width: 40px;}

	/* special ------------------------------------
	.special {
	background: #fff;
	border-radius: 10px;
	border: #0A0 solid 5px;
	clear: both;
	margin: 10px auto 30px;
	line-height: 1.7em;
	padding: 20px 2%;
	width: 95%;
	}
	.special strong{
	color: #ff8a00;
	display: block;
	font-size: 1.1em;
	margin: 0 0 10px;
	}
	.special p{
	font-weight: bold;
	text-align: left;
	margin: 0 auto;
	width: 80%;
	}
	.special span{
	background-color: #eee; 
	color: #800000;
	display: block;
	text-align: center;
	}-- */
	.spOnly{}
	/* special -------------------------------------- */

}