/*	Web Fonts
============================== */
#page-top{
	font-family: "m-plus-1p", sans-serif;
	font-weight: 400;
	font-style: normal;
	/*
	-moz-font-feature-settings: "palt";
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";*/
	overflow:hidden;
	color: #000;
}
h2, h3 {
	font-weight: 700;;
}
@media all and (max-width: 767px) {
	#page-top{ background-size: 1200px auto;}
}

.mgb05em {
  margin-bottom: 0.5em;
}
.mgb1em {
  margin-bottom: 1em;
}

.mgb2em {
  margin-bottom: 2em;
}

.mgb3em {
  margin-bottom: 3em;
}

.mgb4em {
  margin-bottom: 4em;
}

.mgb5em {
  margin-bottom: 5em;
}

.wbr {
  white-space: nowrap;
  display: inline-block;
}

.add {
  font-size: 90%;
  color: #666;
	line-height: 1.5em!important; margin-bottom: 0.5em;
}
.nolink {
  opacity: 0.5;
  cursor: default !important;
}

.underBlue {
  background: linear-gradient(transparent 50%, rgba(118,220,238,0.4) 50%); padding: 3px;text-shadow: 1px 1px 0px rgba(255,255,255,0.5);
}

.emp{
background-image: linear-gradient(to right, rgba(255,173,92,0.8) 0%, rgba(255,132,156,0.8) 100%);
	background-repeat: no-repeat;
	background-size: 100% 40%;
	background-position: bottom;
	 padding: 2px;
}

h2, h3, h4, h5, strong {
	font-weight: 700;;
}
strong {font-size: 1.05em;}
h2 .alpha, h3 .alpha, h4 .alpha, h5 .alpha, strong .alpha {
	font-family: "natom-pro", sans-serif;
	font-weight: 500;
	font-style: normal;
	font-size: 1.1em;
}

@media all and (min-width: 768px) {
  .fs50 {
    font-size: 50%;
  }

  .fs60 {
    font-size: 60%;
  }

  .fs70 {
    font-size: 70%;
  }

  .fs80 {
    font-size: 80%;
  }

  .fs90 {
    font-size: 90%;
  }

  .fs110 {
    font-size: 110%;
  }

  .fs120 {
    font-size: 120%;
  }

  .fs130 {
    font-size: 130%;
  }

  .fs140 {
    font-size: 140%;
  }

  .fs150 {
    font-size: 150%;
  }

  .fs160 {
    font-size: 160%;
  }

  .fs170 {
    font-size: 170%;
  }

  .fs180 {
    font-size: 180%;
  }

  .fs190 {
    font-size: 190%;
  }
	.fs200 {
    font-size: 200%;
  }
.nobr { display:none; }
.nobrSp { display:block; }
}

@media all and (max-width: 767px) {
  .fs50 {
    font-size: 75%;
  }

  .fs60 {
    font-size: 80%;
  }

  .fs70 {
    font-size: 85%;
  }

  .fs80 {
    font-size: 90%;
  }

  .fs90 {
    font-size: 95%;
  }

  .fs110 {
    font-size: 105%;
  }

  .fs120 {
    font-size: 110%;
  }

  .fs130 {
    font-size: 120%;
  }

  .fs140 {
    font-size: 125%;
  }

  .fs150 {
    font-size: 130%;
  }

  .fs160 {
    font-size: 135%;
  }

  .fs170 {
    font-size: 140%;
  }

  .fs180 {
    font-size: 145%;
  }
	.fs190 {
    font-size: 160%;
  }
	.fs200 {
    font-size: 180%;
  }
.nobr { display:block; }
.nobrSp { display:none; }
	.add { font-size: 70%;}
}

.castName {color: #08914B;}
.staffName {color: #7A4D01;}

.blue {color: #01378E;}
.red {color: #b40101;}
.green {color: #08914B;}
.pink {color: #F85679;}

.gray {color: #7b7b7b;}
.black {color: #171717;}
.purple {color: #cc64c2;}
.deepgreen {color: #060;}
.kubotagreen {color: #009fa8;}
.pinkgreen {color: #4eb200;}
.orange {color: #ee9a23;}
.vermilion {color: #ff4e4e;}
.carmine {color: #e09966;}
.magenta {color: #ea33b2;}
.brown {color: #6a3906;}
.gold { color: #c93;}
.silver {color: #b2b2b2;}
.bluegreen {color: #0b9d9b;}
.violet { color: rgba(120, 79, 188, 1);}
.bordeaux { color: rgba(129, 0, 40, 1);}
.emerald {color:#097;}

.center {
  text-align: center;
  /*display: inline-block;*/
  width: 100%;
}

.left {
  text-align: left;
}

.right {
  text-align: right;
}

.bold {
  font-weight: bold;
}

span.super { vertical-align: super; font-size: 0.6em; }

a {
  text-decoration: none;
  color: #08914B;
}
a.castName, a.txtLink {
  text-decoration: none;
  color: #08914B;
font-weight: 700;;
	font-size: 1.05em;
}
a.castName:hover, a.txtLink:hover {}

.txtUnderLine {background: linear-gradient(transparent 70%, #f8badc 70%);}

.no-wrap {
    display: inline-block; /* インラインブロック化 */
}


/*	background
============================== */
body {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
	margin: 0!important;
}
.deco { display: block; position: absolute;}
.deco span{
background-repeat: no-repeat;
background-size: contain;
position: relative;
display: block;
}
.deco span img {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
}

@media all and (min-width: 768px) {
  .pcnone {
    display: none;
  }
}

@media all and (max-width: 767px) {
  .smpnone {
    display: none;
  }
}

/*	wrap
============================== */
@media all and (min-width: 768px) {
  div.wrap {
    width: 1080px;
    margin: 0 auto;
  }
}
@media all and (max-width: 767px) {
   div.wrap {
    width: 95%;
    margin: 0 auto;
  }
}


/*	nav
============================== */
nav#menu {background-color: #FF9C9B;}
nav#menu ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
nav#menu ul li a, nav#menu ul li span.soon { display: block; transition:0.2s; background-position: center center; background-repeat: no-repeat; background-size: contain; background-image: url(../img/navi_def.png);}
nav#menu ul li.caststaff a { background-image: url(../img/navi_l_def.png);}
nav#menu ul li a:hover{background-image: url(../img/navi_ov.png);}
nav#menu ul li.caststaff a:hover { background-image: url(../img/navi_l_ov.png);}
nav#menu ul li a span, nav#menu ul li span.soon span { background-position: center center; background-repeat: no-repeat; background-size: contain; text-indent: -9999px; display: block;}
nav#menu ul li.news a span, nav#menu ul li.news .soon span { background-image: url(../img/navi_01.png);}
nav#menu ul li.about a span { background-image: url(../img/navi_02.png);}
nav#menu ul li.caststaff a span, nav#menu ul li.caststaff .soon span { background-image: url(../img/navi_03.png);}
nav#menu ul li.original a span { background-image: url(../img/navi_04.png);}
nav#menu ul li.story a span { background-image: url(../img/navi_05.png);}
nav#menu ul li.chart a span, nav#menu ul li.chart .soon span  { background-image: url(../img/navi_06.png);}
nav#menu ul li.topics a span { background-image: url(../img/navi_07.png);}
nav#menu ul li.stream a span, nav#menu ul li.stream .soon span  { background-image: url(../img/navi_08.png);}
nav#menu ul li span.soon {opacity:0.9;}
nav#menu ul li span.soon span {opacity:0.4;}
.news nav#menu ul li.news a, .about nav#menu ul li.about a, .original nav#menu ul li.original a, .story nav#menu ul li.story a, .chart nav#menu ul li.chart a { background-image: url(../img/navi_ov.png);}
.caststaff nav#menu ul li.caststaff a { background-image: url(../img/navi_l_ov.png);}

@media all and (min-width: 768px) {
nav#menu {width:100%; padding: 10px 0;}
nav#menu ul { width:100%; padding:0; margin: 0 auto;}
nav#menu ul li {}
nav#menu ul li a, nav#menu ul li span.soon { width:128px; padding: 0 0px;}
nav#menu ul li.caststaff a { width:184px;}
nav#menu ul li a span, nav#menu ul li span.soon span { height: 100px;}
}

@media all and (max-width: 767px) {	
nav#menu {width:100%; padding:4px 0;}
nav#menu ul {}
nav#menu ul li {width:22%; margin: 1% 0.5%;}
nav#menu ul li.caststaff { width:30%;}
nav#menu ul li:nth-child(n+5) { margin: 1% 1%;}
	nav#menu ul li a, nav#menu ul li span.soon { padding:0;}
nav#menu ul li a span, nav#menu ul li span.soon span { display: block; width:100%; height: 0; padding-top: 75.471%;}
	nav#menu ul li.caststaff a span {padding-top: 54.347%;}

}

/*	copyright
============================== */
.copyrightArea { background-repeat: repeat-x; background-position: center top; background-image: url(../img/bg_footarea.png);}
.copyrightArea p {
	color: #000;
	text-align: center;
	padding: 0;
	line-height: 1.5!important;
	position: relative;
	font-family: verveine, sans-serif;
font-weight: 400;
font-style: normal;
	letter-spacing: 0.05em;
}
.copyrightArea p small {}
.copyrightArea p a { color: #000;}

@media all and (min-width: 768px) {
.copyrightArea { padding: 0;}
.copyrightArea p { padding:0 0 30px 0;}
	.copyrightArea p small {font-size: 1.2em!important;}
}
@media all and (max-width: 767px) {
.copyrightArea { padding:0; background-position: right top; background-size: auto 60px;}
.copyrightArea p { padding:4%; }
	.copyrightArea p small {font-size: 1em!important;}
}


/*	footer
============================== */
footer {
  text-align: center;
  vertical-align: top;
  padding: 0px 0 0px;
	width: 100%; position: relative;
	background-color:rgba(192,230,133,0.6);
}
#footerArea { }
#rect { width: 300px; margin: 0 auto; }
@media all and (min-width: 768px) {
	#footerArea { padding: 3em 0;}
}
@media all and (max-width: 767px) {
  #footerArea { padding: 1em 0 0 0;}
}



div.snsbtn {
  margin-left: 60px; margin-top: 40px;
}
@media all and (max-width: 767px) {
  div.snsbtn {
    margin-top: 20px; padding-bottom: 20px;
  }
}

/*	YouTube
============================== */
div.mov-inner {
	position:relative;
	height:0;
	padding-top:56.25%;
}
div.mov-inner iframe {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
}
@media all and (min-width: 768px) {
}
@media all and (max-width: 767px) {
}


/*	ph_cut
============================== */
.ph_cut {
    width: 100%;
    box-sizing: border-box;
  }

.ph_cut span {
    height: 0;
    padding: 66.66666% 0 0;
    position: relative;
	display: block;
	background-size: cover;
  }

@media all and (min-width: 768px) {

  .ph_cut,
  .ph_cut span {
    /*width: 600px;
    height: 400px;*/
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
  }

}

@media all and (max-width: 767px) {
  .ph_cut span img, .ph_cut_l span img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
  }

  .ph_cut {
    width: 100%;
    box-sizing: border-box;
  }

  .ph_cut span {
    height: 0;
    padding: 66.66666% 0 0;
    position: relative;
  }

  .ph_cut_l {
    width: 60%;
    margin: 0.5em auto;
  }

  .ph_cut_l span {
    height: 0;
    padding: 150% 0 0;
    position: relative;
  }
}

ul.kome li:before {
  content: "※";
  float: left;
}

ul.kome li span {
  display: block;
}

.lazy img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

/*	cap
============================== */
.cap {
  text-align: center;
  margin: 0.5em auto 1.0em;
  width: 100%;
  padding: 0 !important;
  font-size: 0.85em;
  line-height: 1.5;
}
.cap span {
  padding: .1em;
}
@media all and (max-width: 767px) {
  .cap {
    width: 100%;
    margin: 0.5em auto 1em; font-size: 0.75em;
  }
}

.cr {
    padding: 1em;
	font-size: 80%;
    color: #000;
    text-align: center;
    line-height: 1.5;
}

.linkBtn { text-align: center;}
.linkBtn a {
    color: #fff; font-weight: bold; font-size: 1.1em;
	background-color: #9f000b; padding: 0.6em 1.5em;
	border-radius: 20px 20px!important; letter-spacing: 0em;
	display: inline-block;
}
.linkBtn a:hover{opacity: 0.85;}
@media all and (min-width: 768px) {
.txtArea .linkBtn { margin-top: -1.5em;}
}
@media all and (max-width: 767px) {
.txtArea .linkBtn { margin-top: -0.5em;}
}

/*--sns-share--*/
div.sns-share {
	text-align:center; background-repeat: no-repeat;
}
.idx div.sns-share { }
div.sns-share section { padding: 0; display:table;}


div.sns-share section h2{ text-align: center; }
div.sns-share section h2, div.sns-share section h3, div.sns-share section div.sns-rig { padding: 5px 0 8px; letter-spacing: 0em; color: #000;}

div.sns-share section ul { letter-spacing: -.4em;}
div.sns-share section ul li {
	/*float:left;*/display:inline-block; vertical-align: middle; letter-spacing: 0em;
}
div.sns-share section ul li a {
	display:block;
}
@media all and (min-width: 768px) {
div.sns-share { padding:0; width: 100%; margin: 0 auto; }
div.sns-share section {padding: 55px 0px; margin: 0 auto;}	

div.sns-share section ul li {
	width:50px;
}
div.sns-share section ul li:not(:last-child) {
	margin-right:10px;
}
div.sns-share section ul li a {
	height:50px;
}
div.sns-share section ul li a img { width: 50px; height:50px; }
}
@media all and (max-width: 767px) {
div.sns-share section {width:100%; padding: 30px 0px 30px; margin: 0 auto;}
	
.topics div.sns-share section h3 {
	width:55%;
}
.topics div.sns-share section div.sns-rig {
	width:45%;
}
div.sns-share section h2, div.sns-share section h3 {
	font-size:75%;
	padding-right:0px!important;
}
div.sns-share section ul li {
	width:40px;
}
div.sns-share section ul li:not(:last-child) {
	margin-right:6px;
}
div.sns-share section ul li a {
	height:40px;
}
div.sns-share section ul li a img { width: 40px; height:40px; }
}
@media all and (max-width: 374px) {
div.sns-share section h3 {
	font-size:62.5%;
}
div.sns-share section ul li:not(:last-child) {
	margin-right:3px;
}
div.sns-share section h2 {
	width:55%;
}
div.sns-share section div.sns-rig {
	width:45%;
}

div.sns-share section h2, div.sns-share section h3, div.sns-share section div.sns-rig {
	display:block; width:100%; text-align: center;
}
}

/*	.pagetop
============================== */
div.pagetop {
	position:fixed;
	transition: right ease 1s;
	display:none;
	z-index:100;
}
div.pagetop a {
	display:block;
	background-size:200% 100%;
	text-indent:110%;white-space:nowrap;overflow:hidden;
	background-repeat:no-repeat;
	background-position:left top;
}
div.pagetop a:hover {
	background-position:right top;
}
@media all and (min-width: 768px) {
div.pagetop {
	bottom:20px;
}
div.pagetop-on {
	right:30px;
}
div.pagetop-off {
	right:-104px;
}
div.pagetop a {
	width:92px;
	height:103px;
}
}
@media all and (max-width: 767px) {
div.pagetop {
	bottom:72px;
}
div.pagetop-on {
	right:8px;
}
div.pagetop-off {
	right:-70px;
}
div.pagetop a {
	width:60px;
	height:67px;
}
}

/*	rectangle banner
============================== */
.bnr-w-rectangle {
    margin: 0 auto;
    overflow: hidden;
    position: relative;
    z-index: 100;
}
#bn_responsive {
    margin: 0 auto 2em;
    overflow: hidden;
    position: relative;
    z-index: 300;
}
.cmn_banner {
    width: 100%;
}

@media all and (max-width: 767px) {
	.bnr-w-rectangle {margin: 1.5em auto 0; padding: 0;}
}	

/*	fadein
============================== */
.fadeinD {
    opacity : 0;
    transform : translate(0, 20px);
    transition:all 1s;
  display:block;
}
.fadeinD.scrollin {
    opacity : 1;
    transform : translate(0, 0);
}


/*	modal customize
============================== */
body.tbs-myt-overlay-on div.tbs-myt-modal div.tbs-myt-overlay {
    background-color: #fff!important;
}
.tbs-myt-inner { position: relative;}
.tbs-myt-inner::after {
    content: '';
    display: block;
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background:rgba(251,238,160,1.00);
    filter: blur(0px);
    transform: translateY(10px) translateX(10px) scale(1.00);
    mix-blend-mode: multiply;
    opacity: 0.5;
}
body.tbs-myt-overlay-on div.tbs-myt-outer div.tbs-myt-footer {
    position: absolute; top:-55px; right: 0;
}
body.tbs-myt-overlay-on div.tbs-myt-outer div.tbs-myt-footer div.tbs-myt-btn {
	background-color: #7B562C;
}
body.tbs-myt-overlay-on div.tbs-myt-outer div.tbs-myt-footer div.tbs-myt-btn span {
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 80%;
    height: 5px;
    border-radius: 2px;
    background-color: #CBE198;
}

@media all and (max-width: 767px) {
	.tbs-myt-inner::after {
    transform: translateY(5px) translateX(5px) scale(1.00);
}
body.tbs-myt-overlay-on div.tbs-myt-outer div.tbs-myt-footer {
    height: 40px; top:-45px;
}
body.tbs-myt-overlay-on div.tbs-myt-outer div.tbs-myt-footer div.tbs-myt-btn {
    width: 40px!important;
    height: 40px!important;
	
}
}


