@charset "utf-8";/*ページ用*/
/* ------------------------------------------------ */
#top-link {
	text-align: center;
	background-color: #000;
	padding: 20px 10px;
}
.top-link {
}
.top-link a {
	display: inline-block;
	color: var(--color1);
	font-family: var(--font2);
	text-decoration: none;
	line-height: 1em;
	background-color: var(--white);
	border: 2px solid var(--color1);
	padding: 5px 10px;
}
.top-link a:hover {
	color: var(--white);
	background-color: var(--color1);
	border: 2px solid var(--color2);
}
.top-link a b {
	display: block;
	font-weight: 700;
	line-height: 1.4em;
	margin-bottom: 5px;
}
.top-link a b span {
	display: inline-block;
	font-size: 13px;
	font-weight: 400;
	line-height: 1em;
	padding-left: 10px;
}
.top-link a em {
	display: block;
}
.top-link a em span{
	display: inline-block;
	color: var(--white);
	font-size: 13px;
	line-height: 1em;
	background-color: var(--color1);
	padding: 5px 10px;
}
@media screen and (max-width: 767px) {
	.top-link a b br {
		display: none;
	}
	.top-link a b span {
		display: block;
		padding-left: 0px;
		padding-top: 5px;
	}
}
/* ------------------------------------------------ */
#title {
border: 2px solid #fcc;
	position: relative;
	text-align: center;
	background-color: #ccc;
/*
	background-image: url("https://www.togabito-stage.com/global/reminiscence/img/parts/title.jpg");
	background-repeat: no-repeat_
	background-position: center top;
*/
	background-size: contain;
	background-attachment: fixed;
	padding: 180px 10px 20px 10px;
}
@media screen and (max-width: 767px) {
	#title {
		background-size: cover;
	}
}
/* title------------------------------------------------ */
.title {
	text-align: center;
	line-height: 1em;
	margin-bottom: 50px;
}
.title h2 {
	display: inline-block;
	position: relative;
	font-size: 20px;
	font-family: var(--font2);
	padding: 0px 0px;
}
.title h2 span {
	display: inline-block;
	font-size: 40px;
	font-size: 4vmin;
	font-size: clamp(30px, 4vmin, 40px);
	font-weight: 400;
	line-height: 1em;
	text-transform: capitalize;
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: 100%;
	padding: 0px 50px 10px 50px;
}
#index-cast .title h2 span {background-image: url("../img/parts/ttl_castW.png");}
#page-cast #cast-cast .title h2 span {background-image: url("../img/parts/ttl_castB.png");}
#page-cast #cast-ensemble .title h2 span {background-image: url("../img/parts/ttl_ensemble.png");}
#page-cast #cast-ensemble .title h2 span {
	padding: 0px 80px 10px 80px;
}
#page-cast #cast-staff .title h2 span {background-image: url("../img/parts/ttl_staff.png");}
#index-ticket .title h2 span {background-image: url("../img/parts/ttl_cast.png");}
#page-ticket .title h2 span {background-image: url("../img/parts/ttl_cast.png");}
#index-information .title h2 span {background-image: url("../img/parts/ttl_info.png");}
#page-information .title h2 span {background-image: url("../img/parts/ttl_info.png");}
#index-intro .title h2 span {background-image: url("../img/parts/ttl_intro.png");}
#page-intro .title h2 span {background-image: url("../img/parts/ttl_intro.png");}
#index-schedule .title h2 span {background-image: url("../img/parts/ttl_intro.png");}
#page-schedule .title h2 span {background-image: url("../img/parts/ttl_intro.png");}
#index-comments .title h2 span {background-image: url("../img/parts/ttl_comment.png");}
#index-staff .title h2 span {background-image: url("../img/parts/ttl_staff.png");}
#index-movie .title h2 span {background-image: url("../img/parts/ttl_movie.png");}
#page-goods .title h2 span {background-image: url("../img/parts/ttl_movie.png");}

.title h2 b {
	display: block;
	font-size: 16px;
	font-weight: 700;
	line-height: 1em;
	padding: 0px 50px;
}

@media screen and (max-width: 767px) {
	.title h2 span {
		padding: 0px 30px 10px 30px;
	}
	.title h2 b {
		padding: 0px 30px;
	}
}
.title h2 em {
	display: inline-block;
	font-size: 40px;
	font-weight: 400;
	line-height: 1em;
}
.title h2 {
	color: var(--black);
}
.bloc.red .title h2,
.bloc.black .title h2 {
	color: var(--white);
}
/* ------------------------------------------------ */
#page-single {
	font-family: var(--font2);
	padding: 50px 0px;
}
.entry-title {
	display: block;
	text-align: center;
	font-weight: 700;
	border-bottom: 1px solid #000;
	margin-bottom: 20px;
}
.entry-title h2 {
}
.entry-title h2 b {
	display: block;
	color: var(--color1);
	font-size: 24px;
}
@media screen and (max-width: 767px) {
	.entry-title h2 b {
		font-size: 20px;
	}
}
.entry-title h2 em {
	display: inline-block;
	color: var(--white);
	font-size: 11px;
	line-height: 1em;
	background-color: var(--color1);
	padding: 3px 5px;
}
.entry-title h2 i {
	display: block;
	font-size: 12px;
	font-weight: 400;
	text-align: right;
}

.entry-photo {
	margin-bottom: 30px;
}
.entry-photo img {
	width: auto;
	margin: 0px auto;
}
.entry-content {
	font-size: 16px;
	padding: 10px;
}
.entry-content:last-child {
}
.entry-content img {
	display: inline-block;
}
.entry-content img.aligncenter {
	display: block;
	margin: 0px auto;
}
.entry-content img.alignleft {
	display: block;
	margin: 0px auto 0px 0px;
}
.entry-content img.alignright {
	display: block;
	margin: 0px 0px 0px auto;
}
.entry-content img.alignnone {
}
.entry-content h1 {
	color: #fff;
	font-size: 30px;
	font-weight: 700;
	line-height: 1em;
	background-color: #a21212;
	margin-bottom: 15px;
	padding: 10px 5px;
}
.entry-content h2 {
	color: #000;
	font-size: 26px;
	font-weight: 700;
	line-height: 1em;
	border-bottom: 3px solid #a21212;
	margin-bottom: 15px;
	padding: 5px 5px;
}
.entry-content h3 {
	color: #a21212;
	font-size: 24px;
	font-weight: 700;
	line-height: 1em;
	border-left: 5px solid #a21212;
	margin-bottom: 15px;
	padding: 5px 5px;
}
.entry-content h4 {
	color: #a21212;
	font-size: 22px;
	margin-bottom: 15px;
}
.entry-content h5 {
	font-size: 20px;
	margin-bottom: 15px;
}
.entry-content h6 {
	font-size: 20px;
	margin-bottom: 15px;
}
.entry-content p {
	margin-bottom: 15px;
}
.entry-content p:last-child {
	margin-bottom: 0px;
}
.entry-content p {
	margin-bottom: 20px;
}
.entry-content p:last-child {
	margin-bottom: 0px;
}
.entry-footer {
	display: none;
	font-size: 0.688em;
	text-align: right;
	padding-top: 30px;
}
.entry-content a {
	color: #a21212;
}
.entry-content a:hover {
	color: #d14a4a;
}
/* ------------------------------------------------ */
.bloc {
	position: relative;
	margin: 0px auto;
	padding: 0px;
	padding: 50px 0px;
}
.bloc.red {
	background-color: var(--color1);
}
.bloc.black {
	background-color: var(--black);
}
.bg {
	background-image: url("../img/parts/bg.png");
	background-color:rgba(255,255,255,0.3);
	background-blend-mode:lighten;
	background-repeat: repeat;
	background-position: center top;
}
.bg2 {
	background-image: url("../img/parts/bg2.png");
	background-color:rgba(255,255,255,0.5);
	background-blend-mode:lighten;
	background-repeat: repeat;
	background-position: center top;
}
.bgimg {
	background-image: url("../img/parts/bg.png");
	background-color:rgba(255,255,255,0.3);
	background-blend-mode:lighten;
	background-repeat: repeat;
	background-position: center top;
}
.bgred {
	background-color: var(--color1);
}
@media screen and (min-width: 768px) {
/*
	.bloc {
		min-height:96vh;
	}
*/
}
.bloc::before {
	content: "";
	position: absolute;
	z-index: 0;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	min-width: 100%;
	min-height: 100%;
	background-color: rgba(255,255,255,0);
	-webkit-transition: all 0.2s linear;
	-moz-transition: all 0.2s linear;
	-o-transition: all 0.2s linear;
	transition: all 0.5s linear;
}
.outer {
	position: relative;
	z-index: 1;
}
.bloc .outer {
}
.inner {
}
.inner::after {
	content: "";
	display: block;
	clear: both;
}
.inner:last-child {
	margin-bottom: 0px;
}
@media screen and (max-width: 767px) {
	.inner {
		padding: 0px 10px;
	}
}
.inner p {margin-bottom: 20px;}
.inner p:last-child {margin-bottom: 0px;}
/* ------------------------------------------------ */
#index {
}
/* --------- */
.bloc#index-movie {
}
/* --------- */
.bloc#index-information {
	font-family: var(--font2);
}
.bloc#index-information .outer {
}
.index-information {
}
.index-information ul {
	margin-bottom: 30px;
}
.index-information ul li {
	border-bottom: 1px solid var(--color1);
	padding: 10px;
}
.index-information ul li:last-child {
}
@media screen and (min-width: 768px) {
	.index-information ul::after {
		display: block;
		content: "";
		clear: both;
	}
	.index-information ul li {
	}
}
.index-information ul li a {
	display: block;
	position: relative;
	text-decoration: none;
	padding: 10px 10px;
	padding-right: 90px;
}
@media screen and (max-width: 767px) {
	.index-information ul li a {
		padding-right: 50px;
	}
}
.index-information ul li a::before,
.index-information ul li a::after {
	content: "";
	position: absolute;
	right: 0px;
	bottom: 0px;
	background: #707070;
}
.index-information ul li a::before {
	width: 2px;
	height: 6px;
	margin-right: 4px;
	-webkit-transform: skewX(60deg);
	transform: skewX(60deg);
}
.index-information ul li a::after {
	width: 60px;
	height: 1px;
}
@media screen and (max-width: 767px) {
	.index-information ul li a::before,
	.index-information ul li a::after {
		bottom: 10px;
	}
	.index-information ul li a::after {
		width: 36px;
	}
}
.index-information ul li a div {
	margin-bottom: 5px;
}
.index-information ul li a div img {
	margin: 0px auto;
}
.index-information ul li span {
	display: inline-block;
	color: #717171;
	font-size: 16px;
	line-height: 1.2em;
}
.index-information ul li strong {
	display: block;
	font-weight: 400;
	line-height: 1.2em;
}
@media screen and (max-width: 767px) {
	.index-information ul {
		display: block;
		width: auto;
	}
	.index-information ul li {
		display: block;
		margin-bottom: 10px;
		padding: 0px;
	}
}
#news {
}
.news {
}
.news-list {
	font-family: var(--font2);
}
.news-list ul {
}
.news-list ul li {
	border-bottom: 1px solid #000;
	padding: 15px 5px;
}
.news-list ul li:last-child {
	border-bottom: none;
}
.news-list ul li dl {
	margin-bottom: 15px;
}
.news-list ul li dl dt {
	border-bottom: 1px solid #ccc;
}
.news-list ul li dl dt span {
	display: inline-block;
	font-size: 13px;
	font-weight: 700;
	line-height 1em;
	padding-right: 10px;
}
.news-list ul li dl dt em {
	display: inline-block;
	color: var(--white);
	font-size: 11px;
	line-height: 1em;
	background-color: var(--color1);
	padding: 3px 5px;
}
.news-list ul li dl dt a {
	display: block;
	color: var(--color1);
	font-size: 20px;
	line-height: 1.4em;
	text-decoration: none;
}
.news-list ul li dl dt a:hover {
	color: var(--white);
}
.news-list ul li dl dt a strong {
}
.news-list ul li dl dd {
}
/* ------------------------------------------------ */
.frame {
	position: relative;
	background-color: var(--white);
	border: 2px solid var(--color1);
}
.frame-inner {
	padding: 50px 50px;
}
.frame::before,
.frame::after,
.frame-inner::before,
.frame-inner::after {
	content: "";
	position: absolute;
	width: 73px;
	height: 73px;
	background-image: url("../img/parts/frame.png");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 100%;
}
.frame::before {left:5px;top:5px;}
.frame::after {right:5px;top:5px;transform:rotateZ(90deg);}
.frame-inner::before {left:5px;bottom:5px;transform:rotateZ(270deg);}
.frame-inner::after {right:5px;bottom:5px;transform:rotateZ(180deg);}
@media screen and (max-width: 767px) {
	.frame-inner {
		padding: 30px 30px;
	}
	.frame::before,
	.frame::after,
	.frame-inner::before,
	.frame-inner::after {
		width: 40px;
		height: 40px;
	}
}
/* ------------------------------------------------ */
#index-schedule {
	font-family: var(--font2);
}
.index-sch {
	font-family: var(--font2);
	text-align: center;
	margin-bottom: 30px;
}
.index-sch dl {
	margin-bottom: 20px;
}
.index-sch dl:last-child {
	margin-bottom: 0px;
}
.index-sch dl dt {
	font-size: 1.2em;
	margin-bottom: 10px;
}
.index-sch dl dd {
	font-size: 1.4em;
}
.index-sch dl dd span {
	display: inline-block;
	font-size: 0.8em;
}
.index-sch dl dd span a {
	color: var(--color1);
}
.index-sch-img {
}
.index-sch-img img {
	margin: 0px auto;
}
/* ------------------------------------------------ */
#page-schedule {
	font-family: var(--font2);
}
.sch-top {
	font-family: var(--font2);
	text-align: center;
	margin-bottom: 30px;
}
.sch-top ul {
}
.sch-top ul li {
	text-align: center;
}
@media screen and (max-width: 767px) {
	.sch-top ul li {
		border-bottom: 1px solid var(--gray4);
		margin-bottom: 10px;
	}
	.sch-top ul li:last-child {
		border-bottom: none;
		margin-bottom: 0px;
	}
}
@media screen and (min-width: 768px) {
	.sch-top ul {
	}
	.sch-top ul li {
		display: inline-block;
		width: 350px;
		vertical-align: top;
	}
	.sch-top ul li:last-child {
		border-right: none;
	}
}
.sch-top ul li .frame {
}
.sch-top ul li dl {
}
.sch-top ul li dl dt {
	color: var(--color2);
	font-size: 1.1em;
	line-height: 1em;
	padding: 10px 5px;
}
.sch-top ul li dl dd {
	font-size: 1.4em;
	line-height: 1.4em;
	padding: 10px 5px;
}
.sch-top ul li dl dd b {
	font-weight: 400;
}
.sch-top ul li dl dd span {
	display: inline-block;
	font-size: 0.8em;
}
.sch-top ul li dl dd span a {
	color: var(--color1);
}
.page-sch-star {
	max-width: 700px;
	color: var(--white);
}
.page-sch-star-inner {
	background-color: var(--black);
	padding: 10px;
}
.page-sch-star-inner .frame {
	position: relative;
	background-color: var(--black);
	border: 2px solid var(--color1);
}
.page-sch-star-inner .frame-inner {
	padding: 30px 10px 50px 10px;
}
@media screen and (min-width: 768px) {
	.page-sch-star-inner .frame-inner {
		padding: 30px 20px 50px 20px;
	}
}
.page-sch-star-inner h3 {
	color: var(--white);
	text-align: center;
	text-transform: capitalize;
	margin-bottom: 10px;
}
.page-sch-star-inner h3 span {
	display: inline-block;
	font-size: 30px;
	font-size: 3vmin;
	font-size: clamp(24px, 3vmin, 30px);
	font-weight: 400;
	line-height: 1em;
	text-transform: capitalize;
	background-image: url("../img/parts/ttl_ensemble.png");
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: 100%;
	padding: 0px 50px 10px 50px;
}
.calendar ul {
}
.calendar ul li {
	text-align: center;
}
.calendar ul li dl {
	display: table;
	width: 100%;
	table-layout: fixed;
	border-spacing: 0px;
}
.calendar ul li dl dt,
.calendar ul li dl dd {
	display: table-cell;
	vertical-align: middle;
}
.calendar ul li dl dt {
	position: relative;
	width: 60px;
	color: var(--white);
}
.calendar ul li.cal-date dl dt {
	line-height: 1em;
}
@media screen and (min-width: 768px) {
	.calendar ul li dl dt {
		width: 100px;
	}
}
.calendar ul li dl dd {
	position: relative;
	padding: 5px 0px;
}
.calendar ul li.cal-date dl dd {
	padding: 5px 0px;
}
@media screen and (min-width: 768px) {
	.calendar ul li dl dd {
		padding: 12px 0px;
	}
}
.calendar ul li dl dd::before,
.calendar ul li dl dd::after {
	content: "";
	position: absolute;
	left: 50%;
	top: 0px;
	z-index: 1;
	background-color: var(--white);
}
.calendar ul li dl dd::before {
	left: 50%;
	top: 0px;
	width: 1px;
	height: 100%;
	margin-left: 0px;
}
.calendar ul li dl dd::after {
	left: 0px;
	top: 50%;
	width: 100%;
	height: 1px;
	margin-top: -1px;
}
.calendar ul li:first-child dd::before,
.calendar ul li:first-child dd::after {
	display: none;
}
.calendar ul li dl dt b {
	font-size: 22px;
	font-weight: 400;
}
.calendar ul li dl dt span {
	color: var(--color2);
	font-size: 14px;
}
@media screen and (min-width: 768px) {
	.calendar ul li dl dt b {
		font-size: 30px;
	}
	.calendar ul li dl dt span {
		font-size: 16px;
	}
}
.calendar ul li dl dd b {
	font-size: 16px;
	font-weight: 400;
}
@media screen and (min-width: 768px) {
	.calendar ul li dl dd b {
		font-size: 24px;
	}
}
.calendar ul li.cal-yasumi dl dd i {
	display: inline-block;
	position: absolute;
	z-index: 2;
	left: 0px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 400%;
	color: var(--white);
	font-size: 16px;
	font-weight: 400;
	line-height: 1em;
	text-align: center;
	letter-spacing: 10px;
	/*
	writing-mode: vertical-rl;
	*/
	writing-mode: horizontal-tb;
	background-color: var(--color3);
	background-color: #774f2d;
	border: 2px solid var(--black);
	margin-left: 0px;
	margin-top: 0px;
	padding: 5px 0px;
}
@media screen and (min-width: 768px) {
	.calendar ul li.cal-yasumi dl dd i {
		font-size: 18px;
		padding: 10px 0px;
	}
}
.calendar ul li dl dd.cal-maru img {
	display: inline-block;
	position: absolute;
	z-index: 2;
	left: 50%;
	top: 50%;
	-webkit-transform: translate(-50%,-50%);
	-moz-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	-o-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	width: 30px;
}
@media screen and (min-width: 768px) {
	.calendar ul li dl dd.cal-maru img {
		width: 40px;
	}
}
.page-sch-btm {
	text-align: center;
	font-size: 13px;
	padding-top: 10px;
}
.page-sch-calex {
	text-align: center;
	padding-top: 10px;
}
.page-sch-calex ul {
}
.page-sch-calex ul li {
	display: block;
}
@media screen and (min-width: 768px) {
	.page-sch-calex ul li {
		display: inline-block;
		vertical-align: middle;
		padding: 0px 10px;
	}
}
.page-sch-calex ul li img {
	display: inline-block;
	width: 25px;
	vertical-align: middle;
}
.page-sch-calex ul li span {
	display: inline-block;
	font-size: 13px;
	vertical-align: middle;
}
#page-sch-after {
	font-size: 15px;
}
.page-sch-after {
	background-size: 15px;
	margin-bottom: 20px;
	padding-top: 30px;
}
.page-sch-after h4 {
	text-align: center;
	margin-bottom: 5px;
}
.page-sch-after h4 span {
	display: inline-block;
	position: relative;
	font-size: 1.2em;
	font-weight: 500;
	padding: 0px 40px;
}
.page-sch-after h4 span::before,
.page-sch-after h4 span::after {
	content: "";
	position: absolute;
	top: 50%;
	width: 30px;
	height: 12px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 100%;
	margin-top: -6px;
}
.page-sch-after h4 span::before {
	left: 0px;
	background-image: url("../img/parts/title_left.png");
}
.page-sch-after h4 span::after {
	right: 0px;
	background-image: url("../img/parts/title_right.png");
}
.page-sch-after div {
	border: 1px solid var(--color1);
	margin-bottom: 5px;
	padding: 5px;
}
.page-sch-after dl {
	border-bottom: 1px dashed var(--color1);
}
.page-sch-after dl:last-child {
	border-bottom: none;
}
.page-sch-after dl dt {
	color: var(--color2);
	font-weight: 700;
}
.page-sch-after dl dd {
}
@media screen and (max-width: 767px) {
	.page-sch-after dl {
		text-align: center;
	}
}
@media screen and (min-width: 768px) {
	.page-sch-after dl  {
		display: table;
		width: 100%;
		table-layout: fixed;
		border-spacing: 0px;
	}
	.page-sch-after dl dt,
	.page-sch-after dl dd {
		display: table-cell;
		vertical-align: top;
	}
	.page-sch-after dl dt {
		width: 120px;
	}
}
.page-sch-after ul {
}
.page-sch-after ul li {
	position: relative;
	font-size: 0.85em;
	line-height: 1.1em;
	padding: 5px 0px 5px 20px;
}
.page-sch-after ul li::before {
	content: "※";
	position: absolute;
	left: 0px;
	top: 5px;
}

.page-sch-map {
	max-width: 1500px;
	margin: 0px auto;
	padding: 50px 10px;
}
.page-sch-map p {
	line-height: 1.4em;
	text-align: center;
}
.page-sch-map p b {
	display: block;
	margin-bottom: 10px;
}
.page-sch-map .link {
	text-align: center;
	padding: 20px 0px 30px 0px;
}
.page-sch-map h3 {
	text-align: center;
	text-transform: capitalize;
	margin-bottom: 30px;
}
.page-sch-map h3 span {
	display: inline-block;
	color: var(--color1);
	font-size: 30px;
	font-size: 3vmin;
	font-size: clamp(24px, 3vmin, 30px);
	font-weight: 400;
	line-height: 1em;
	text-transform: capitalize;
	background-image: url("../img/parts/ttl_comment.png");
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: 100%;
	padding: 0px 50px 10px 50px;
}

/* ------------------------------------------------ */
#index-ticket {
}
.ticket-top {
	color: var(--white);
	font-family: var(--font2);
	text-align: center;
	margin-bottom: 30px;
}
.ticket-top h3 {
	font-size: 1.5em;
	margin-bottom: 20px;
}
.ticket-top ul {
}
.ticket-top ul li {
	margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
	.ticket-top ul {
		display: table;
		width: 100%;
		table-layout: fixed;
		border-spacing: 30px 0px;
	}
	.ticket-top ul li {
		display: table-cell;
		vertical-align: top;
		margin-bottom: 0px;
	}
}
.ticket-top ul li dl {
	font-size: 1.2em;
}
.ticket-top ul li dl dt {
	line-height: 1em;
	background-color: var(--black);
	margin-bottom: 10px;
	padding: 10px 5px;
}
.ticket-top ul li dl dd {
	padding: 10px 5px;
}
.ticket-top ul li dl dd b {
	display: block;
	font-size: 1.1em;
	font-weight: 500;
	margin-bottom: 10px;
}
.ticket-top ul li dl dd b strong {
	font-size: 1.4em;
	font-weight: 500;
	padding: 0px 5px 0px 10px;
}
.ticket-top ul li dl dd em {
	display: block;
	font-size: 1em;
}
.ticket-top ul li dl dd span {
	font-size: 0.8em;
}
.ticket-bloc {
	font-family: var(--font2);
	text-align: center;
	padding: 10px 10px;
}
.ticket-bloc .frame-inner {
	padding: 20px 0px;
}
@media screen and (min-width: 768px) {
	.ticket-bloc {
		padding: 10px 50px;
	}
}
.ticket-box {
	-moz-box-shadow: 3px 3px 10px 3px rgba(0,0,0,0.3);
	-webkit-box-shadow: 3px 3px 10px 3px rgba(0,0,0,0.3);
	box-shadow: 3px 3px 10px 3px rgba(0,0,0,0.3);
	margin-bottom: 30px;
}
.ticket-box.end .ticket-box-outer.frame {
	background-color: var(--gray4);
}
.ticket-box.end.close .ticket-box-outer.frame {
	background-color: var(--gray4);
}
.ticket-box h4 {
	color: var(--color1);
	font-size: 1.5em;
	font-weight: 500;
	margin-bottom: 30px;
}
.ticket-box.close b {
	color: var(--color1);
	font-size: 1.5em;
	font-weight: 500;
	margin-bottom: 30px;
}
.ticket-box dl {
	margin-bottom: 30px;
}
.ticket-box dl:last-child {
	margin-bottom: 0px;
}
.ticket-box.end.close dl.ticket-box-date {
	display: none;
}
.ticket-box.end dl.ticket-box-link {
	display: none;
}
.ticket-box-end {
	display: none;
}
.ticket-box.end .ticket-box-end {
	display: block;
	font-size: 1.2em;
	padding-bottom: 20px;
}

.ticket-box dl dt {
	font-size: 1.2em;
	margin-bottom: 10px;
}
.ticket-box dl dd {
}
@media screen and (max-width: 767px) {
	.ticket-box dl dd {
		padding: 0px 10px;
	}
}
.ticket-box dl dd.ticket-date b {
	display: block;
	font-size: 1.4em;
	font-weight: 500;
}
.ticket-box dl dd.ticket-date em {
	display: inline-block;
	color: var(--color1);
	font-size: 1.2em;
	line-height: 1.2em;
	border: 1px solid var(--color1);
	margin-top: 10px;
	padding: 10px 30px;
}
.ticket-box.end dl dd.ticket-date em {
	display: none;
}

.ticket-box dl dd.ticket-date em span {
	font-size: 0.8em;
}
.ticket-box dl dd.ticket-link a {
	display: inline-block;
	text-decoration: none;
}
.ticket-box dl dd.ticket-link .url a {
	color: var(--color1);
}
.ticket-box dl dd.ticket-link .btn a {
	color: var(--white);
	font-size: 1em;
	line-height: 1em;
	background-color: var(--color1);
	border: 1px solid var(--color1);
	border-bottom: 7px solid rgba(0,0,0,0.6);
	margin-top: 10px;
	padding: 20px 50px;
}
@media screen and (max-width: 767px) {
	.ticket-box dl dd.ticket-link .btn {
		padding: 0px 0px 20px 0px;
	}
	.ticket-box dl dd.ticket-link .btn a {
		display: block;
		padding: 20px 10px;
	}
}
.ticket-box dl dd.ticket-link .btn a span {
	display: inline-block;
	font-size: 1.4em;
	vertical-align: middle;
}
.ticket-box dl dd.ticket-link .btn a svg {
	display: inline-block;
	width: 15px;
	vertical-align: middle;
	margin-left: 5px;
}
.ticket-box dl dd.ticket-link .btn a svg {
	fill: var(--white);
}
.ticket-box dl dd.ticket-link p {
	padding-top: 10px;
}
.ticket-box dl dd.ticket-tento {
}
.ticket-box dl dd.ticket-tento b {
	color: var(--color1);
	font-size: 1.4em;
	font-weight: 500;
}
.ticket-box dl dd.ticket-tento p {
}
.ticket-note {
}
.ticket-note-inner {
	color: var(--white);
	font-family: var(--font2);
	background-color: rgba(0,0,0,0.6);
	padding: 10px 10px;
}
@media screen and (min-width: 768px) {
	.ticket-note {
		padding: 0px 50px;
	}
.ticket-note-inner {
	padding: 20px 30px;
}
}
.ticket-note h3 {
	font-size: 1.5em;
	font-weight: 500;
	text-align: center;
	margin-bottom: 20px;
}
.ticket-note ul {
}
.ticket-note ul li {
	position: relative;
	font-size: 0.9em;
	line-height: 1.4em;
	padding: 5px 0px 5px 20px;
}
.ticket-note ul li::before {
	content: "※";
	position: absolute;
	left: 0px;
	top: 5px;
}
/* ------------------------------------------------ */
#index-intro {
}
.index-intro {
}
.index-intro-inner {
	padding: 50px 70px;
}
@media screen and (max-width: 767px) {
	.index-intro-inner {
		padding: 30px 20px 40px 20px;
	}
}
.index-intro-inner dl {
	font-family: var(--font2);
}
.index-intro-inner dl dt {
	text-align: center;
	margin-bottom: 30px;
}
.index-intro-inner dl dt h3 {
	color: var(--color1);
	font-size: 24px;
}
.index-intro-inner dl dt h3 strong {
	display: block;
}
.index-intro-inner dl dt h3 b {
	display: block;
}
.index-intro-inner dl dd {
}
.index-intro-inner dl dd p {
}
.index-intro-inner dl dd p b {
	color: var(--color1);
	font-size: 1.1em;
}
/* ------------------------------------------------ */
#index-comments {
}
.index-comments {
	font-family: var(--font2);
}
.index-comments ul {
}
.index-comments ul li {
}
@media screen and (max-width: 767px) {
	.index-comments ul li:first-child {
		margin-bottom: 30px;
	}
}
@media screen and (min-width: 768px) {
	.index-comments ul {
		display: table;
		width: 100%;
		table-layout: fixed;
		border-spacing: 10px 0px;
	}
	.index-comments ul li {
		display: table-cell;
		vertical-align: top;
	}
}
.index-comments ul li dl {
	padding: 50px 30px;
}
.index-comments ul li dl dt {
	color: var(--color1);
	text-align: center;
	margin-bottom: 15px;
}
.index-comments ul li dl dt span {
	display: inline-block;
	margin-right: 15px;
}
.index-comments ul li dl dt strong {
	display: inline-block;
	font-size: 1.8em;
}
.index-comments ul li dl dt strong em {
	font-size: 0.6em;
	font-weight: 400;
}
.index-comments ul li dl dd {
}
@media screen and (max-width: 767px) {
	.index-comments ul li dl {
		padding: 30px 0px;
	}
	.index-comments ul li dl dt {
		text-align: left;
		margin-bottom: 0px;
		padding: 0px 20px 10px 40px;
	}
	.index-comments ul li dl dt.active {
	}
	.index-comments ul li dl dd {
		padding: 0px 20px;
	}
	.index-comments ul li dl dt span {
		display: block;
		margin-right: 0px;
		margin-bottom: 0px;
	}
	.index-comments ul li dl dt strong {
		display: block;
	}
	.accordionopen {
		position: relative;
		cursor: pointer;
		margin: 0;
	}
	.accordionopen::after {
		content: "Read +";
		position: absolute;
		right: 10px;
		top: 50%;
		-webkit-transform: translateY(-50%);
		-moz-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		-o-transform: translateY(-50%);
		transform: translateY(-50%);
		color: var(--gray2);
	}
	.accordionopen.active::after {
		content: "Close -";
	}
}
/* ------------------------------------------------ */
#index-staff {
}
.index-staff {
	font-family: var(--font2);
}
.index-staff ul {
}
.index-staff ul li dl dt {
	vertical-align: middle;
}
.index-staff ul li dl dd {
	font-weight: 700;
	vertical-align: middle;
}
@media screen and (max-width: 767px) {
	.index-staff ul li {
		padding: 5px 0px;
	}
	.index-staff ul li dl {
		display: table;
		width: 100%;
		table-layout: fixed;
		border-spacing: 0px;
	}
	.index-staff ul li dl dt {
		display: table-cell;
		width: 100px;
		font-size: 13px;
		line-height: 1.4em;
		text-align: right;
		padding-right: 20px;
	}
	.index-staff ul li dl dd {
		display: table-cell;
	}
}
@media screen and (min-width: 768px) {
	.index-staff ul li {
		text-align: center;
		padding: 3px 0px;
	}
	.index-staff ul li dl {
	}
	.index-staff ul li dl dt {
		display: inline-block;
		padding-right: 20px;
	}
	.index-staff ul li dl dd {
		display: inline-block;
		font-weight: 700;
	}
}
/* ------------------------------------------------ */
#index-book {
}
.index-book {
	color: var(--white);
	font-family: var(--font2);
}
.index-book-bloc {
	position: relative;
	max-width: 400px;
	text-align: center;
	margin: 0px auto 50px auto;
}
.index-book-bloc:last-child {
	margin: 0px auto;
}
.index-book-bloc p {
}
.index-book-bloc img {
	display: inline-block;
	margin: 0px auto;
}
@media screen and (min-width: 768px) {
	.index-book-bloc p {
		position: absolute;
		left: 170px;
		top: 0px;
		text-align: left;
	}
	.index-book-bloc.index-book-novel1 .link {
		position: absolute;
		right: 0px;
		bottom: 0px;
		text-align: left;
	}
	.index-book-bloc img {
	display: block;
	margin: 0px auto 0px 0px;
	}
	.index-book-bloc.index-book-novel1 {
		text-align: left;
	}
	.index-book-bloc.index-book-novel1 a {
	display: inline-block;
	}
	.index-book-bloc.index-book-novel1 img {
	width: 148px;
	}
	.index-book-bloc.index-book-comic1 p {
	position: static;
	text-align: center;
	}
}
/* ------------------------------------------------ */
#news {
}
.news {
}
/* ------------------------------------------------ */

#page-intro {
}
.page-intro {
}
.page-intro-inner {
	padding: 50px 70px;
}
@media screen and (max-width: 767px) {
	.page-intro-inner {
		padding: 30px 20px 40px 20px;
	}
}
.page-intro-inner dl {
	font-family: var(--font2);
}
.page-intro-inner dl dt {
	text-align: center;
	margin-bottom: 30px;
}
.page-intro-inner dl dt h3 {
	color: var(--color1);
	font-size: 24px;
}
.page-intro-inner dl dt h3 strong {
	display: block;
}
.page-intro-inner dl dt h3 b {
	display: block;
}
.page-intro-inner dl dd {
}
.page-intro-inner dl dd p {
}
.page-intro-inner dl dd p b {
	color: var(--color1);
	font-size: 1.1em;
}
/* ------------------------------------------------ */
#page-comments {
}
.page-comments {
	font-family: var(--font2);
}
.page-comments ul {
}
.page-comments ul li {
}
@media screen and (max-width: 767px) {
	.page-comments ul li:first-child {
		margin-bottom: 30px;
	}
}
@media screen and (min-width: 768px) {
	.page-comments ul {
		display: table;
		width: 100%;
		table-layout: fixed;
		border-spacing: 10px 0px;
	}
	.page-comments ul li {
		display: table-cell;
		vertical-align: top;
	}
}
.page-comments ul li dl {
	padding: 50px 30px;
}
.page-comments ul li dl dt {
	color: var(--color1);
	text-align: center;
	margin-bottom: 15px;
}
.page-comments ul li dl dt span {
	display: inline-block;
	margin-right: 15px;
}
.page-comments ul li dl dt strong {
	display: inline-block;
	font-size: 1.8em;
}
.page-comments ul li dl dt strong em {
	font-size: 0.6em;
	font-weight: 400;
}
.page-comments ul li dl dd {
}
@media screen and (max-width: 767px) {
	.page-comments ul li dl {
		padding: 30px 0px;
	}
	.page-comments ul li dl dt {
		text-align: left;
		margin-bottom: 0px;
		padding: 0px 20px 10px 40px;
	}
	.page-comments ul li dl dt.active {
	}
	.page-comments ul li dl dd {
		padding: 0px 20px;
	}
	.page-comments ul li dl dt span {
		display: block;
		margin-right: 0px;
		margin-bottom: 0px;
	}
	.page-comments ul li dl dt strong {
		display: block;
	}
	.accordionopen {
		position: relative;
		cursor: pointer;
		margin: 0;
	}
	.accordionopen::after {
		content: "Read +";
		position: absolute;
		right: 10px;
		top: 50%;
		-webkit-transform: translateY(-50%);
		-moz-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		-o-transform: translateY(-50%);
		transform: translateY(-50%);
		color: var(--gray2);
	}
	.accordionopen.active::after {
		content: "Close -";
	}
}
/* ------------------------------------------------ */
#page-book {
}
.page-book {
	color: var(--white);
	font-family: var(--font2);
}
.page-book-bloc {
	position: relative;
	max-width: 400px;
	text-align: center;
	margin: 0px auto 50px auto;
}
.page-book-bloc:last-child {
	margin: 0px auto;
}
.page-book-bloc p {
}
.page-book-bloc img {
	display: inline-block;
	margin: 0px auto;
}
@media screen and (min-width: 768px) {
	.page-book-bloc p {
		position: absolute;
		left: 170px;
		top: 0px;
		text-align: left;
	}
	.page-book-bloc.page-book-novel1 .link {
		position: absolute;
		right: 0px;
		bottom: 0px;
		text-align: left;
	}
	.page-book-bloc img {
	display: block;
	margin: 0px auto 0px 0px;
	}
	.page-book-bloc.page-book-novel1 {
		text-align: left;
	}
	.page-book-bloc.page-book-novel1 a {
	display: inline-block;
	}
	.page-book-bloc.page-book-novel1 img {
	width: 148px;
	}
	.page-book-bloc.page-book-comic1 p {
	position: static;
	text-align: center;
	}
}
/* ------------------------------------------------ */
#index-cast {
}
.index-cast {
	color: var(--white);
	font-family: var(--font2);
	text-align: center;
}
@media screen and (max-width: 767px) {
	.index-cast {
		margin-bottom: 20px;
	}
}
.index-cast ul {
}
.index-cast ul li {
	display: inline-block;
	vertical-align: middle;
}
.index-cast ul {
	margin-bottom: 30px;
}
.index-cast ul:last-child {
	margin-bottom: 0px;
}
.index-cast ul li {
	display: inline-block;
	font-size: 1.2em;
	line-height: 1em;
	vertical-align: middle;
	padding: 0px 15px;
}
.index-cast ul:last-child li:last-child {
	padding: 0px 5px;
}
@media screen and (max-width: 767px) {
	.index-cast ul {
		margin-bottom: 0px;
	}
	.index-cast ul li {
		margin-bottom: 20px;
		padding: 0px 10px;
	}
	.index-cast ul:last-child li:last-child {
	}
}
/* ------------------------------------------------ */
.bloc#cast-cast {
	padding: 50px 0px 0px 0px;
}
.bloc#cast-cast .inner {
	padding: 0px 0px;
}
.cast-bloc {
	color: var(--white);
	font-family: var(--font2);
/*
	text-align: center;
*/
}
.cast-box {
	padding: 10px 10px;
}
.cast-box-open .cast-box-inner {
}
@media screen and (min-width: 768px) {
	.cast-box-open .cast-box-inner {
		min-height: 530px;
	}
}
.cast-box:nth-child(odd) {
	color: var(--white);
	background-color: var(--black);
}
.cast-box:nth-child(even) {
	color: var(--black);
	background-color: var(--white);
}
.cast-box-outer {
}
.cast-box-inner {
}
.cast-box-img {
	display: none;
}
.cast-box-open .cast-box-img {
	display: block;
}
.cast-box#yamagishi3 .cast-box-img2 {
	padding-top: 5px;
}
.cast-box-main {
	padding: 20px 0px;
}
@media screen and (min-width: 768px) {
	.cast-box-inner {
		position: relative;
	}
	.cast-box-img {
		position: absolute;
		z-index: 0;
		width: 380px;
		height: 100%;
		overflow: hidden;
		display: none;
	}
	.cast-box-open .cast-box-img {
		display: block;
	}
	.cast-box:nth-child(odd) .cast-box-img {left: 0px;}
	.cast-box:nth-child(even) .cast-box-img {right: 0px;}
	.cast-box#yamagishi3 .cast-box-img1 {
		right: 390px;
	padding-top: 0px;
	}
	.cast-box#yamagishi3 .cast-box-img2 {
		right: 0px;
	padding-top: 0px;
	}
	.cast-box-main {
		position: relative;
		z-index: 2;
	}
	.cast-box-open .cast-box-main {
		width: 600px;
	}
	.cast-box#yamagishi3 .cast-box-main {
		width: 300px
	}
	.cast-box:nth-child(odd) .cast-box-main {margin: 0px 0px 0px auto;}
	.cast-box:nth-child(even) .cast-box-main {margin: 0px auto 0px 0px;}

}
@media screen and (min-width: 1110px) {
	.cast-box-open .cast-box-main {
		width: 700px;
	}
}
.cast-box-img img {
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
}
@media screen and (min-width: 768px) {
	.cast-box-img img {
		height: 100%;
		min-height: 530px;
	}
}
@media screen and (max-width: 767px) {
	.cast-box-img img {
		margin: 0px auto;
		background-size: cover;
	}
}
.cast-box#kanna .cast-box-img img {background-image: url("../img/cast/cast/kanna.jpg");}
.cast-box#mikage .cast-box-img img {background-image: url("../img/cast/cast/mikage.jpg");}
.cast-box#shigemitsu .cast-box-img img {background-image: url("../img/cast/cast/shigemitsu.jpg");}
.cast-box#shinonome .cast-box-img img {background-image: url("../img/cast/cast/shinonome.jpg");}
.cast-box#takamine .cast-box-img img {background-image: url("../img/cast/cast/takamine.jpg");}
.cast-box#megumu .cast-box-img img {background-image: url("../img/cast/cast/megumu.jpg");}
.cast-box#madoromi .cast-box-img img {background-image: url("../img/cast/cast/madoromi.jpg");}
.cast-box#tokitoh .cast-box-img img {background-image: url("../img/cast/cast/tokitoh.jpg");}
.cast-box#ran .cast-box-img img {background-image: url("../img/cast/cast/ran.jpg");}
.cast-box#yamagishi .cast-box-img img {background-image: url("https://www.togabito-stage.com/global/reminiscence/img/cast/cast/yamagishi.jpg");}
.cast-box#yamagishi2 .cast-box-img img {background-image: url("https://www.togabito-stage.com/global/reminiscence/img/cast/cast/yamagishi2.jpg");}
.cast-box#yamagishi3 .cast-box-img img {background-image: url("https://www.togabito-stage.com/global/reminiscence/img/cast/cast/yamagishi2.jpg");}
.cast-box#yamagishi3 .cast-box-img2 img {background-image: url("https://www.togabito-stage.com/global/reminiscence/img/cast/cast/yamagishi3.jpg");}

.cast-box-name {
}
.cast-box-name strong {
	display: block;
	border-bottom: 1px solid #fff;
}
.cast-box:nth-child(odd) .cast-box-name strong {border-bottom: 1px solid var(--white);}
.cast-box:nth-child(even) .cast-box-name strong {border-bottom: 1px solid var(--black);}
.cast-box-name strong em {
	display: inline-block;
	color: var(--color1);
	font-size: 50px;
	font-weight: 500;
	line-height: 1em;
	vertical-align: bottom;
}
.cast-box-name strong span {
	display: inline-block;
	font-size: 25px;
	font-weight: 400;
	text-transform: capitalize;
	line-height: 1em;
	vertical-align: bottom;
	padding-left: 20px;
}
.cast-box-name b {
	display: block;
	color: var(--color4);
	font-size: 24px;
	font-weight: 400;
	text-align: right;
	border-bottom: 1px solid #fff;
	padding: 5px 0px;
}
.cast-box:nth-child(odd) .cast-box-name b {border-bottom: 1px solid var(--white);}
.cast-box:nth-child(even) .cast-box-name b {border-bottom: 1px solid var(--black);}
.cast-box-tex {
	padding: 10px 0px;
}
.cast-box-tex1 {
	font-size: 16px;
	padding: 0px 0px 10px 0px;
}
.cast-box-tex2 {
	font-size: 14px;
	line-height: 1.6em;
	border-top: 1px dashed #fff;
	padding: 10px 0px 0px 0px;
}
.cast-box:nth-child(odd) .cast-box-tex2 {border-top: 1px dashed var(--white);}
.cast-box:nth-child(even) .cast-box-tex2 {border-top: 1px dashed var(--black);}

.cast-box-sns {
	text-align: right;
	padding-top: 5px;
}
.ensemble-bloc .cast-box-sns {
	text-align: center;
}
.cast-box-sns a {
	display: inline-block;
	width: 20px;
	height: 20px;
	line-height: 20px;
	text-align: center;
	vertical-align: top;
	background-color: var(--black);
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	padding: 12px;
}
.cast-box-sns a.youtube {
}
.cast-box:nth-child(odd) .cast-box-sns a {background-color: var(--white);}
.cast-box:nth-child(even) .cast-box-sns a {background-color: var(--black);}
.cast-box-sns a svg {
	height: 20px;
}
.ensemble-bloc .cast-box-sns a {
	padding: 10px;
}
.ensemble-bloc .cast-box-sns a svg {
	height: 15px;
}

.cast-box-sns a.twitter svg {
}
.cast-box-sns a svg path {
	fill: var(--white);
}
.cast-box:nth-child(odd) .cast-box-sns a svg path {fill: var(--black);}
.cast-box:nth-child(even) .cast-box-sns a svg path {fill: var(--white);}
.cast-box .cast-box-sns a:hover {
	background-color: var(--color1);
}


.ensemble-bloc {
	font-family: var(--font2);
	text-align: center;
}
.ensemble-bloc ul {
	font-size: 0;
}
.ensemble-bloc ul li {
	display: inline-block;
	font-size: 16px;
	line-height: 1em;
	vertical-align: top;
	margin-bottom: 30px;
	padding: 0px;
}
@media screen and (max-width: 767px) {
	.ensemble-bloc ul li {
		width: 50%;
	}
}
@media screen and (min-width: 768px) {
	.ensemble-bloc ul li {
		width: 20%;
	}
}
.ensemble-img {
	padding: 0px 10px;
display: none;
}
.ensemble-bloc.ensemble-open .ensemble-img {
	display: block;
}
.ensemble-img img {
	width: max-180px;
	margin: 0px auto;
}
.ensemble-img img {
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
}
.ensemble-bloc ul li#ense-sakamoto .ensemble-img img {background-image: url("../img/cast/ensemble/sakamoto.jpg");}
.ensemble-bloc ul li#ense-raimu .ensemble-img img {background-image: url("../img/cast/ensemble/raimu.jpg");}
.ensemble-bloc ul li#ense-ootsuka .ensemble-img img {background-image: url("../img/cast/ensemble/ootsuka.jpg");}
.ensemble-bloc ul li#ense-mitsunaga .ensemble-img img {background-image: url("../img/cast/ensemble/mitsunaga.jpg");}
.ensemble-bloc ul li#ense-kanno .ensemble-img img {background-image: url("../img/cast/ensemble/kanno.jpg");}


.ensemble-name {
	padding: 10px 0px;
}
.ensemble-name b {
	display: block;
	font-size: 24px;
	font-weight: 400;
	line-height: 1em;
}
.ensemble-bloc .cast-box-sns {
display: none;
}
/* ------------------------------------------------ */
#cast-staff {
}
.cast-staff {
	color: var(--white);
	font-family: var(--font2);
}
.cast-staff ul {
}
.cast-staff ul li dl dt {
	vertical-align: middle;
}
.cast-staff ul li dl dd {
	vertical-align: middle;
}
@media screen and (max-width: 767px) {
	.cast-staff ul li {
		padding: 5px 0px;
	}
	.cast-staff ul li dl {
		display: table;
		width: 100%;
		table-layout: fixed;
		border-spacing: 0px;
	}
	.cast-staff ul li dl dt {
		display: table-cell;
		width: 100px;
		font-size: 13px;
		line-height: 1.4em;
		text-align: right;
		padding-right: 20px;
	}
	.cast-staff ul li dl dd {
		display: table-cell;
	}
}
@media screen and (min-width: 768px) {
	.cast-staff ul li {
		text-align: center;
		padding: 3px 0px;
	}
	.cast-staff ul li dl {
	}
	.cast-staff ul li dl dt {
		display: inline-block;
		font-weight: 700;
		padding-right: 20px;
	}
	.cast-staff ul li dl dd {
		display: inline-block;
	}
}
/* ------------------------------------------------ */