@charset "UTF-8";
/* -----------------------------------

http://scene-live.com/page.php?page=96
min-width:480px:スマホ横用 (375x667)
min-width:768px:タブレット用 (768x1024)
min-width:992px：ノートPC用
min-width:1250px：デスクトップ用

----------------------------------- */
/* * {border: red solid 1px;} */


[canvas=container] {
	overflow-x: hidden;
}
/* ==========================================
	loading
	========================================== */
#loader-wrap {
	position: fixed;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	width: 100%;
	height: 100%;
	background-color: #fff;
	z-index: 10000000;
	transition: opacity 0.5s ease;
}
#loader-wrap svg {
	width: 60%;
	max-width: 450px;
	height: 40px;
}

.loadingsvg {
	stroke:#231815;
	stroke-dasharray: 2000;
	stroke-dashoffset: 2000;
	stroke-width: 0.3;
	animation: hello 8s ease-in 0s forwards;
}

@-webkit-keyframes hello {
	0% {
		stroke-dashoffset: 2000;
		fill:transparent;
	}
	10% {
		fill:transparent;
	}
	80% {
		stroke-dashoffset: 0;
		fill:#231815;
	}
	100% {
		fill:#231815;
	}
}


/*
.shake {
  animation: shake 1s ease-in-out;
  animation-iteration-count: 1;
}
@keyframes shake {
  0% { transform: translate(1px, 1px) ;filter: blur(0); }
  20% { transform: translate(-2px, 0px) ;filter: blur(1px); }
  40% { transform: translate(1px, -1px) ;filter: blur(1px); }
  60% { transform: translate(-2px, 1px) ;filter: blur(0px); }
  80% { transform: translate(-1px, -1px) ;filter: blur(0px); }
  100% { transform: translate(1px, -2px) ;filter: blur(0px); }
}
*/



/* ==========================================
	Typography
	基本：100% = 1em = 1rem = 16px = 12pt
	========================================== */

html { font-size: 62.5%;}
body,
button,
input,
select,
optgroup,
textarea {
	color: #231815;
	font-family: YuGothic,"Hiragino Kaku Gothic ProN",Meiryo,"MS PGothic",sans-serif;
	font-size: 1.6rem;
	line-height: 1.5;
}
h1,h2,h3,h4,h5,h6 { clear: both;}
h1 {
	margin: 0.67em 0;
	font-size: 3rem;
}
h1:first-letter,h2:first-letter,h3:first-letter,h4:first-letter,h5:first-letter,h6:first-letter,
p:first-letter {font-feature-settings: "palt";}
/* p { margin-bottom: 1.6rem;} */
b,strong { font-weight: bolder;} /* Add the correct font weight in Chrome, Edge, and Safari. */
small { font-size: 75%;} /* Add the correct font size in all browsers. */
sub,sup { /* sup（上付き文字）・sub（下付き文字） */
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}
sub { bottom: -0.25em;}
sup { top: -0.5em;}

dfn,cite,em,i { font-style: italic;}
blockquote { margin: 0 1.5em;}
address { margin: 0 0 1.5em;}

pre,code,kbd,samp {
	font-family: monospace, monospace;	/* 1. Correct the inheritance and scaling of font size in all browsers.*/
	font-size: 1em;											/* 2. Correct the odd `em` font sizing in all browsers. */
}
pre {
	background: #eee;
/* 	font-family: "Courier 10 Pitch", courier, monospace; */
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}
code,kbd,tt,var {
/* 	font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace; */
}

abbr /* 略語要素 */,acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}
abbr[title] {
	border-bottom: none; /* 1. Remove the bottom border in Chrome 57- */
	text-decoration: underline; /* 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. */
	text-decoration: underline dotted;
}
mark,ins {
	background: #fff9c0;
	text-decoration: none;
}


/* ==========================================
	リンク
	========================================== */
a:link	  { color: #231815;}/* #1C3B4F */
a:visited { color: #231815;}/* #1C3B4F */
a:hover	  { color: #7b0000; filter: brightness( 108% ) contrast( 108% ) ; text-decoration: none;}
a:active  { color: #1C3B4F; filter: brightness( 110% ) contrast( 110% ) ;}
a:focus { outline: none;}
a, a:hover { transition: 0.3s;}
a:hover img {
	filter: brightness( 104% ) contrast( 104% ) grayscale(0%) saturate( 100% ) ;	
}
a[href^="tel"] {
  color: #231815; /* 見やすい色に */
/*   text-decoration: none; */
}


/* ==========================================
	youtubeレスポンシブ
============================================= */
.youtube {
  position: relative;
  margin: 0 auto;
  width: 100%;
  padding-top: 56.25%;
}

.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}


/* ==========================================
	汎用class
============================================= */
.hidden,.hdn { display: none !important;}

.mt10  { margin-top: 10px !important;}
.mt20  { margin-top: 20px !important;}
.mt30  { margin-top: 30px !important;}
.mt40  { margin-top: 40px !important;}
.mt50  { margin-top: 50px !important;}
.mt60  { margin-top: 60px !important;}
.mt70  { margin-top: 70px !important;}
.mt80  { margin-top: 80px !important;}
.mt90  { margin-top: 90px !important;}
.mt100 { margin-top: 100px !important;}

.mb10  { margin-bottom: 10px !important;}
.mb20  { margin-bottom: 20px !important;}
.mb30  { margin-bottom: 30px !important;}
.mb40  { margin-bottom: 40px !important;}
.mb50  { margin-bottom: 50px !important;}
.mb60  { margin-bottom: 60px !important;}
.mb70  { margin-bottom: 70px !important;}
.mb80  { margin-bottom: 80px !important;}
.mb90  { margin-bottom: 90px !important;}
.mb100 { margin-bottom: 100px !important;}

.bold { font-weight: bold !important;}
.tel,
.tel a { color: #231815 !important;}

/* ==========================================
	構造
============================================= */
html { -webkit-overflow-scrolling: touch;}


/* ------------------------------------------
	メニュー
	------------------------------------------ */
.modal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  text-align: center;
  z-index: 999;
  opacity: 0;
  visibility: hidden;
  transition: opacity .3s, visibility .3s;
}
.modal .modal-window {
	width: 100%;
	height: 100%;
	background-color: rgba(255,255,255,1);
	display: flex;
	flex-direction: column; 
	justify-content: center; 
	align-items: center;
}
.modal-window .menu-main-container {
	width: calc(100% - 30px);
	height: calc(100% - 30px);
	background-color: #fff;
/*
	display: flex;
	flex-direction: column; 
	justify-content: center; 
	align-items: center;
*/
	overflow-y: scroll;

}
.modal-window .menu-main-container h1 {}
.menu-main-container ul.menu { margin: 0;}
.menu-main-container ul.menu li a {
	display: block;
	padding:.6em .7em;
	color: #231815;
	font-size: 1.9rem;
	font-family: "garamond-atf-subhead", YuMincho, "Hiragino Mincho ProN", Meiryo, serif;
	letter-spacing: 0.05em;
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
	border-top: 1px solid rgba(255, 255, 255, 0.3);
}

.menu-main-container ul.menu li.sns {
	padding: .7em 10%;
	text-align: center;
}
.menu-main-container ul.menu li.sns ul { text-align: center;}
.menu-main-container ul.menu li.sns ul li { display: inline-block;}
.menu-main-container ul.menu li.sns ul li a {
	display: inline-block;
	padding: 0;
	border: none;
	text-align: center;
	transition: all ease-in-out .35s;
}
.menu-main-container ul.menu li.sns a img {
	margin: 10px;
	width: 30px;
	height: 30px;
	filter: brightness( 1004% ) contrast( 106% ) grayscale(100%) ;

}
/* twitter */
/*
.menu-main-container ul.menu li.sns ul li.twitter a img {
filter: invert(100%) sepia(0%) saturate(7456%) hue-rotate(31deg) brightness(92%) contrast(111%);}
*/

/* insta */
.menu-main-container ul.menu li.sns ul li.insta a img {
	filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(93deg) brightness(103%) contrast(103%) opacity(85%);
}
.open-menu .modal {
  opacity: 1;
  visibility: visible;
  height: 100vh;
}




	
	
/* burgermenu
	------------------------------------------ */
.burgermenu {
	display: block;
	position: fixed;
	bottom: 0;
	right: 0;
	width: 75px;
	height: 75px;
	z-index: 999;
	opacity: 0;
	transition: .5s ease-in;

}
.is-fixed .burgermenu {
	opacity: 1;
	transition: .5s ease-in;
}


.burgermenu input.toggle { display: none;}
.burgermenu label.toggle-label {
	position: relative;
	cursor: pointer;
	display: block;
	width: 60px;
	height: 60px;
	background-color: #fff;
	border-radius: 50%;
	box-shadow : 0px 0px 3px 0px rgba(0, 0, 0,0.2);
}

.toggle-label .toggle-icon,
.toggle-label .toggle-icon:before,
.toggle-label .toggle-icon:after {
  position: relative;
  display: block;
  width: 30px;
  height: 3px;
  background: #999;
  transition: all 300ms ease-in-out;

}

.toggle-label .toggle-icon {
	top: 50%;
	left: 50%;
	transform: translate3d(-50%, -1px, 0);
}
.toggle-label .toggle-icon:before {
	content: '';
	transform: translate3d(0, -10px, 0);
}
.toggle-label .toggle-icon:after {
	content: '';
	transform: translate3d(0, 7px, 0);
}


.toggle:checked ~ .toggle-label .toggle-icon {
	background-color: transparent;
	box-shadow :none;
}
.toggle:checked ~ .toggle-label .toggle-icon:before,
.toggle:checked ~ .toggle-label .toggle-icon:after {
	top: 0;
	box-shadow :none;
}
.toggle:checked ~ .toggle-label .toggle-icon:before {
	transform: rotate(45deg);
	box-shadow :none;
}
.toggle:checked ~ .toggle-label .toggle-icon:after {
	transform: translateY(-3px) rotate(-45deg);
	box-shadow :none;
}




/* ------------------------------------------
	slidebarメニュー内
	------------------------------------------ */
	
html,body {
	color: #231815;
	background-color: #fff;
}
body [off-canvas] {
	background-color: #fff;
  box-shadow: -5px 0px 2px -1px rgba(0, 0, 0, 0.2) inset;
}
body .menuslidebars {
  margin: 0 !important;
  margin-left: 0 !important;
  transform: none !important;
}

.header-main h1 {
	margin: 0;
	height: calc((100vw - 30px)*0.5);
	background: url(/shindosan/images/titlemain-shindosan.svg?1) no-repeat center center;
	background-size: contain;
}
.header-main h1 a {
  display: none;
  height:60px;
  background-size:auto 40% ; 
}
.header-main h1 a img { visibility: hidden;}
.header-main #globalnavi ul { padding: 0;}
.header-main #globalnavi ul li {
  padding: 0;
  list-style: none;
  text-indent: 0;
}
.header-main #globalnavi ul li a {
  display: block;
  padding: .7em;
  color: #FFF;
  font-size: 2.25rem;
  font-family: "garamond-atf-subhead",serif;
  letter-spacing: 0.05em;
  text-indent: 1.5em;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.1);
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  border-top: 1px solid rgba(255, 255, 255, 0.3);
}
.header-main #globalnavi ul .tour { text-indent: 1em;}
.header-main #globalnavi ul .tour li a {
  font-size: 1.55rem;
  font-weight: 600;
}

/* twitter */
.header-main #globalnavi ul li.sns {
	margin-top: 4vh;
	padding: .7em 10%;
	text-align: center;
}
.header-main #globalnavi ul li.sns ul { text-align: center;}
.header-main #globalnavi ul li.sns ul li { display: inline-block;}
.header-main #globalnavi ul li.sns ul li a {
	display: inline;
	padding: 0;
	border: none;
	text-align: center;
	transition: all ease-in-out .35s;
}
.header-main #globalnavi ul li.sns a img {
	margin: 10px;
	width: 30px;
	height: 30px;
	filter: brightness( 1004% ) contrast( 106% ) grayscale(100%) ;

}
/* twitter */
.header-main #globalnavi ul li.sns ul li.twitter a img {
filter: invert(100%) sepia(0%) saturate(7456%) hue-rotate(31deg) brightness(92%) contrast(111%);}

/* insta */
.header-main #globalnavi ul li.sns ul li.insta a img {
	filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(93deg) brightness(103%) contrast(103%);
}



.header-main .logomoplays {
  margin-top: 30px;
  padding-bottom: 20px;
  text-align: center;
}
.header-main .logomoplays img {
  width: 60px;
  height: auto;
}

/* メニューボタン */
.menubar {
  position: fixed;
  bottom: 20px;
  right: 20px;
  width: 60px;
  height: 60px;
  margin: 0 auto;
  overflow: hidden;
  animation  : btnAnime 2s ease-in 1 forwards;
  opacity: 0; 
	text-align: center;
  z-index: 1000;
}

@keyframes btnAnime {
	0%   { opacity: 0; }
	20%  { opacity: 0; }
	100% { opacity: 1; background-color: #929292; }
}
.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}
.menu-trigger {
  position: relative;
  width: 44px;
  height: 44px;
}
.menu-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: #231815;
  border-radius: 3px;
}
.menu-trigger span:nth-of-type(1) { top: 14px;}
.menu-trigger span:nth-of-type(2) { top: 28px;}
.menu-trigger span:nth-of-type(3) { top: 42px;}
.menu-trigger.active span:nth-of-type(1) {
  -webkit-transform: translateY(14px) rotate(-45deg);
  transform: translateY(14px) rotate(-45deg);
}
.menu-trigger.active span:nth-of-type(2) { opacity: 0;}
.menu-trigger.active span:nth-of-type(3) {
  -webkit-transform: translateY(-14px) rotate(45deg);
  transform: translateY(-14px) rotate(45deg);
}


/* ------------------------------------------
	メイン画像
	------------------------------------------ */
#body { background-color: #fff;}
#body .maintitle {
	margin: 0 auto;
	width: 100vw;
	min-height: 100vh; /* Fallback */
	min-height: calc(var(--vh, 1vh) * 100);
	height: -moz-available;       
	height: -webkit-fill-available;
	height: fill-available;
	background-color: #fff;
}
#body .maintitle .maintitlepict.anime_open {
	position: relative;
	margin: 0 auto;
	padding: 0;
	width: 100%;
	height: 100vh;
	color: #fff;
	font-size: .1rem;
	text-align: center;
	background-image: url(/shindosan/images/mainpict-shindosan.jpg?123);
	background-repeat: no-repeat;
	background-position: right center;
	background-size: cover;
	animation: anime_mainpict 4s ease-in-out;
	animation-iteration-count: 1;
}
@keyframes anime_mainpict {
  0% { opacity: 0;}
  80% { opacity: 1;transform: translate(0, 0);}
	84% { transform: translate(2px, 0px); filter: blur( 0px ); }
  88% { transform: translate(-2px, 0px); filter: blur( 1px );}
  92% { transform: translate(2px, 0px); filter: blur( 2x );}
  96% { transform: translate(-2px, 0px); filter: blur( 1px );}
  100% { transform: translate(0, 0);filter: blur( 0px ); }
}

#body .maintitle .maintitlepict h1,
#body .maintitle .maintitlepict h2,
#body .maintitle .maintitlepict p.produce {
	margin: 0;
	font-size: .001em;
	text-indent: -9999px;
}
#body .maintitle .maintitlepict .titlearea {
	position: absolute;
	top: 0;
	right: 0;
	width: 10vw;
	height: 100vh;
	max-width: 100px;
}
#body .maintitle .maintitlepict .titlearea1 {background-color: #fff; }

/* ローディング終了後 */
#body .maintitle .maintitlepict.anime_open p.produce {
	position: absolute;
	top: 2vh;
	width: 100%;
	max-width: 100px;
	height: 20vh;
	max-height: 150px;
	background-image: url(/shindosan/images/mainpict-produce.svg?1);
	background-repeat: no-repeat;
	background-position: center center ;
	background-size: contain;
	animation: anime_director 6s ease-in;
	animation-iteration-count: 1;
}
#body .maintitle .maintitlepict.anime_open h2.director {
	position: absolute;
	bottom: 2vh;
	width: 100%;
	max-width: 100px;
	aspect-ratio: 1 / 5.6; /* 横:縦 = 1:6.1 → 高さが幅の6.1倍 */
	background-image: url(/shindosan/images/titlemain-shindosan.svg?1);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	animation: anime_title 5s ease-in;
	animation-iteration-count: 1;
}
#body .maintitle .maintitlepict.anime_open h1.title {
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	padding-bottom:calc( 700% + 100px);
	width: 50%;
	max-width: 100px;
	height: 10vh;
	max-height: 100px;
	background-image: url(/shindosan/images/titlemain-written.svg);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: contain;
	animation: anime_title 6.5s ease-in;
	animation-iteration-count: 1;
}

@keyframes anime_title {
  0% { opacity: 0;}
  75% { opacity: 0;}
  100% { opacity: 1;}
}
@keyframes anime_director {
  0% { opacity: 0;}
  75% { opacity: 0;}
  100% { opacity: 1;}
}

/*
#body .maintitle .maintitlepict img {
  visibility: hidden;
  display: none;
}
*/

@media (min-aspect-ratio: 1.1/1) { /* 正確なアスペクト比。上書きを防ぐために最下部に配置 */
	#body .maintitle .maintitlepict .titlearea1 {
		left: 0;
		right: auto;
		width: 9vh;
	}
	#body .maintitle .maintitlepict.anime_open h1.title {
		position: absolute;
		top: auto;
		bottom: 2vh;
		padding-bottom: 0;
		width: 70%;
		height: 15vh;
		max-height: 150px;
	}
	#body .maintitle .maintitlepict .titlearea2 {
		position: absolute;
		top: 0;
		right: 0;
		width: 9vh;
		height: 100vh;
		max-width: 100px;
		background-color: #fff;
	}
}




/* ------------------------------------------
	0.section 基本構造
	------------------------------------------ */
.content { padding: 0;}
.section {
	margin: 0 auto;
	padding: 0 0;
  font-weight: bold;
}
.section div.frame {
  margin: 0 auto;
  padding: 0;
  width: 95%;
  max-width: 800px;
}
.section h3.title_section {
	margin: 1em 0 5vh;
	color: #231815;
	font-size: 3rem;
	font-family: "garamond-atf-subhead", serif;
	font-weight: bold;
	text-align: center;
	letter-spacing: 0.05em;
}


/* スクロールフェイド 
 --------------------------------------*/
.fadein,
.fadein1,
.fadein2 {
  opacity : 0;
  transition : opacity 1.2s;
}
.fadein.active,
.fadein1.active,
.fadein2.active { opacity : 1;}

.fade,.fadeC,.fadeL {
    opacity: 0;
  transition : all 2s;
}
.fade.fade_on,
.fadeC.fade_on,
.fadeL.fade_on { opacity: 1;}


/* ------------------------------------------
	1.section titlearea 
	------------------------------------------ */
.section.titlearea {
	display: flex;
	flex-direction: column; /* 要素を縦並びに */
	justify-content: center; /* 垂直方向の中央揃え */
	align-items: center;     /* 水平方向の中央揃え */
	padding: 0;
	height: 100vh;           /* 画面全体の高さ */
	text-align: center;      /* テキスト中央寄せ */
	gap:3.5vh;
}
.section.titlearea h3.produce {
	width: 50%;
	max-width: 200px;
	height: auto;
}
.section.titlearea h2.title {
	margin:0 auto;
	width: auto;
	height: 60vh;
}
.section.titlearea h2.title img {
	width: auto;
	height: 100%;
}
.section.titlearea h3 {
	margin:0 auto ;
	color: #231815;
	font-size: 1.5rem;
	font-family: "garamond-atf-subhead", serif;
	letter-spacing: .3em;
}
.section.titlearea h3 strong {
	display: block;
	margin: 0;
	font-size: 1.65em;
	font-weight: 600;
	letter-spacing: .1em;
}


/* ------------------------------------------
	2.section cast
	------------------------------------------ */
.section.cast {
	margin: 0 auto 60px;
	padding-bottom: 120px;
	width: 100%;
}
.section.cast h3.title_section { color: #322e24;}
.section.cast .casts { margin-bottom: 6em;}
.section.cast .casts h4 {
	color: #b1b1b1;
	font-size: 1.95rem;
	font-family: YuGothic,"Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	font-weight: 600;
	text-align: center;
	letter-spacing: .1em;
}

/* キャスト写真 */
.section.cast .prof {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: .45em 4% ;
	width: 92%;
	max-width: 1000px;
	margin: 0 auto;
}
.section.cast .prof > *:last-child:nth-child(odd) {
  grid-column: 1 / -1;       /* 1行にまたがる */
  justify-self: center;      /* 中央寄せにする */
  width: 48%; 
}

.section.cast .prof .item {
	text-align: center;
	opacity: 0;
	transition: opacity 1.4s ease, transform 1.4s ease;
}
.section.cast .prof .item.show { opacity: 1;}
.section.cast .prof .item a {
	display: block;
	width: 100%;
	height: 100%;
	transition: all .75s ease;
}
.section.cast .prof .item a:hover img {
	filter: brightness( 103% ) contrast( 103% ) grayscale(0%) saturate( 100% ) ;	
}


.section.cast .prof .item a:hover { color: #231815;}
.section.cast .prof .item img {
	width:100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
}
.item h4 {
	margin-top: .15em;
	font-size: 2.15rem;
	font-family: "garamond-atf-subhead",serif;
}





.section.cast .attention {
	margin: 1em;
	color: #231815;
	font-size: 1.55rem;
	font-weight: 500;
	text-align: center;
}


/* コメント　ライトボックス lity
	------------------------------------------ */
.section.cast .prof li a {
	display: block;
	width: 100%;
	height: 100%;
}
body .lity {
	background: rgba(0,0,0,0.75);
	z-index: 1000001;
}
.lity .lity_content { overflow-y: scroll;}
.lity .lity-content::after {
  -webkit-box-shadow: 0 0 8px rgba(0,0,0,0.3);
  box-shadow: 0 0 8px rgba(0,0,0,0.3);
 }
.lity .comment_area {
	margin: auto;
	padding: 5vmin;
	width: 91%;
	max-width: 1100px;
	max-height: 85vh;
	background-color:#fff;
	overflow-y: scroll;
}
.lity .comment_area .textarea {
	position: relative;
	padding: 2vmin 3vmin 5vmin;
	color: #231815;
	font-feature-settings: "pkna";
	text-align: justify;
	letter-spacing: .06em;
	z-index: 1000;
}
.lity .comment_area figure { text-align: center;}
.lity .comment_area .textarea h4 {
	margin: 0 auto 2vh;
	font-size: 2.7rem;
	text-align: center;
	font-family: "garamond-atf-subhead", serif;
	clear: none;
}
.lity .comment_area .btn_area {
	clear: both;
	padding: 2vmin 0 3vmin;
}
.lity .comment_area .btn {
	display: block;
	margin: auto ;
	width: 50px;
	height: 50px;
	line-height: 45px;
	color: #b1b1b1;
	text-align: center;
	font-size: 4rem;
	text-indent: -9999px;
	background: url(../images/icon-close.svg?12) #231815 no-repeat center center;
	background-size: 70% auto;
	border: none;
	border-radius: 50%;

}


/* ------------------------------------------
	3.section intro 赤堀雅秋コメント
	------------------------------------------ */
.section.intro {
	padding: 10vh 0 17vh;
	min-height: 100vh;
}
.section.intro .comment {
	position: relative;
	margin: auto;
	padding: 4vmin;
	width: 90%;
	max-width: 800px;
	z-index: 10;
}
.section.intro .comment h3 {
	font-family: "dnp-shuei-nmincho-std", sans-serif;
	font-weight: 500;
}
.section.intro .comment p {
	color: #231815;
	font-size: 2rem;
	text-align: center;
	font-family: "dnp-shuei-nmincho-std", sans-serif;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.55;
}
.section.story p em,
.section.intro p em {
	display: inline-block;
	margin: 0 .04em;
	font-style: normal;
	font-size: 1.5em;
	animation  : myRounds 17s steps(60) infinite;
}
.section.story p em.r2,
.section.intro p em.r2 {animation  : myRounds2 17s steps(60) infinite; }
@keyframes myRounds {
 0%   { transform: rotate(8deg); }
 1%   { transform: rotate(9deg); }
  49% { transform: rotate(-8deg); }
  50% { transform: rotate(-9deg); }
  51% { transform: rotate(-8deg); }
 100% { transform: rotate(9deg); }
}
@keyframes myRounds2 {
 0%   { transform: rotate(-8deg); }
 1%   { transform: rotate(-9deg); }
  49% { transform: rotate(8deg); }
  50% { transform: rotate(7deg); }
  51% { transform: rotate(8deg); }
  100% { transform: rotate(-9deg); }
}


/* ------------------------------------------
	4.section ALL CAST //https://shu-naka-blog.com/css/parallax_css/
	------------------------------------------ */
.parallax-fixed-bg {
	position: relative;
  margin: 0 auto;
  width: 100%;
  padding-top: 56.25%;
	z-index: 2;
	background-size: cover;
}
.parallax-fixed-bg.allcast {
	background-image: url(/shindosan/images/pict-allcast.jpg?123);
	filter: brightness( 106% ) contrast( 106% ) ;	
}


.youtube {
  position: relative;
  margin: 0 auto;
  width: 100%;
  padding-top: 56.25%;
}

.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}



/* ------------------------------------------
	5.section MOVIE YOUTUBE 
	------------------------------------------ */
.section.intro.before_V {
	padding-bottom: 120px;
	min-height: 100vh;
}
.section.video {
	position: relative;
  width: 100%;
	text-align: center;
  background-color: #121212;
}
.section.video .inner {
	display: flex;
	flex-direction: column;      /* 縦方向に並べる */
	justify-content: center;     /* 上下中央 */
	align-items: center;         /* 横中央 */
	margin: auto ;
	padding: 120px 0;
	width: 90%;
	max-width: 860px;
  min-height: 100vh;
}
.section.video .inner h3.title_section {
	position: absolute;
	top: 0;
	left: 50%;							/* 横の中央の位置を基準に */
	margin: 0 auto 60px;
	padding: 120px 0 0;
	transform: translateX(-50%);   /* 自身の幅の半分を左にずらして中央揃え */
	color: #fff;
	text-align: center;
}
.section.video .youtube {
  margin: 100px auto ;
  padding: 0;
  width: 100%;
}
.section.video .youtube .youtubearea {
  position: relative;
  margin: 0 auto;
  padding-top: 56.25%;
  width: 100%;
}
.section.video .textarea h5 {
	color: #815e29;
	font-weight: normal;
	text-align: center;
}

/* 対談 */
#movie.section.video .process_v { padding-bottom: 10vh;}
#movie.section.video .process_v .youtube { padding: 56.3% 0 0;}





/* ------------------------------------------
	5.section＃comment_v COMMET YOUTUBE 
	------------------------------------------ */

#comment_v.video {}

#comment_v.video .process_v {
	margin-bottom: 0;
	padding-bottom: 0;
}
#comment_v.video .click {
	color: #815e29;
  font-size: 1.45rem;
  text-align: center;
	font-weight: normal;
	padding-bottom: 10vh;
}
#comment_v.video .youtube { padding: 56.3% 0 0;}
#comment_v.video .process_v .youtube { padding-top: 56.3%;}


.process_v li {width: 100%;}

.process_v,
.comment_v {margin-top: 10vh;}
.process_v li,.comment_v li { margin: 4vh auto;}
.process_v li figure,.comment_v li figure { position: relative;}
.process_v li figure .btn-modal,.comment_v li figure .btn-modal { display: none;}
.process_v li p,.comment_v li p {
	color: #231815;
	font-size: 1.5rem;
	font-weight:  normal;
	text-align: center;
}

/* ------------------------------------------
	flyerarea
	------------------------------------------ */

section .flyerarea { padding: 4em 0;}
section .flyerarea a {
	display:block;
	text-align: center;
}
section .flyerarea img {
	display: inline-block;
	margin: 10px 20px;
	width: 70%;
	max-width: 300px;
	height: auto;
	filter: brightness( 84% ) contrast( 96% ) grayscale(0%) saturate( 0% ) ;
	transition: all .3s ease-in;
}
section .flyerarea a:hover img {
	filter: brightness( 100% ) contrast( 100% ) grayscale(0%) saturate( 100% ) ;	
}
section .flyerarea a span { color: #777;}


/* ------------------------------------------
	6.section STORY
	------------------------------------------ */
.section.story { padding: 10vh 0;}
.section.story div.frame {
	margin: 0 auto;
	padding: 5vmin;
	width: 90%;
	max-width: 800px;
	
}
.section.story h3.title_section {
  margin: 0 0 5vmin;
  color: #231815;
}
.section.story div.frame p {
  color: #231815;
  font-size: 1.85rem;
	letter-spacing: 0.05em;
	line-height: 1.55;
}


/* ------------------------------------------
	6.section 最新情報
	------------------------------------------ */
.section.news {
	width: 100%;
	height: auto;
	background-color: #121212;
}
.section.news h3.title_section {
	padding-top: 100px;
	color: #fff;
}
.section.news ul.news_area {
	margin: auto;
	width: 90%;
	max-width: 800px;

	overflow-y: scroll;
	
}
.section.news ul.news_area li .a,
.section.news ul.news_area li a {
	display: block;
	padding: 15px;
	font-family: YuGothic,"Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	font-weight: 500;
	border-bottom: 1px dotted #999;
}
.section.news ul.news_area li:last-child .a,
.section.news ul.news_area li:last-child  a{
/* 	border-bottom:none; */
	border-top: 1px dotted #999;
}


.section.news ul.news_area li .date {
	color: #888;
	font-family: "dnp-shuei-nmincho-std", sans-serif;
}
.section.news ul.news_area li h4 {
	margin: .5em 0;
	padding-left: 5px;
	color: #ccc;
	font-size: 1.9rem;
	font-weight: 500;
	font-family: YuGothic,"Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	line-height: 1.4;
	border-left: 5px solid #ccc;
}
.section.news ul.news_area li p {
	color: #ccc;
	font-size: 1.55rem;
	font-weight: 400;
/* 	font-family: YuGothic,"Hiragino Kaku Gothic ProN", Meiryo, sans-serif; */
}
.section.news ul.news_area li a:hover { background-color: #444;}
.section.news ul.news_area li a .link {
	color: #cc8738;
	font-weight: bold;
}


.section.news .sns { margin-top: 5vh;}
.section.news .sns p {
	position: relative;
	display: block;
	margin: auto;
	padding: 25px;
	width: 90%;
	max-width: 450px;
	color:#231815;
	font-weight: 600;
	text-align: center;

	background-color: #ddd;
	border-radius: 5px;
}
.section.news .sns p:before {
	content: '';
	position: absolute;
	display: block;
	z-index: 1;
	border-style: solid;
	border-color: #ddd transparent;
	border-width: 10px 10px 0 10px;
	bottom: -10px;
	left: 50%;
	margin-left: -10px;
}
.section.news .sns ul {
	margin: 25px auto 0;
	text-align: center;
	height: 100px;
}
.section.news .sns ul li {
	display: inline-block;
	height: 100px;
	line-height: 100px;
	vertical-align: middle;
}
.section.news .sns ul li a {
	display: block;
	margin: auto;
	width: 80px;
	height: 100px;
	display: flex;
	flex-direction: column; 
	justify-content: center; 
	align-items: center;
	transition: all ease-in-out .35s;
}
.section.news .sns ul li a img {
	width: 50px;
	height: 50px;

	transition: all ease-in-out .4s;
	filter: brightness( 504% ) grayscale(100%) ;	
}

.section.news .sns ul li a:hover img {
	width: 100px;
	height: 100px;
	filter: brightness( 100% ) grayscale(0%) ;	
}
.section.news .sns ul li.twitter a img {
	width: 27px;
	height: 27px;
	filter: invert(100%) sepia(0%) saturate(7456%) hue-rotate(31deg) brightness(92%) contrast(111%);
}
.section.news .sns ul li.twitter a:hover img {
	width: 44px;
	height: 44px;
}
.section.news .sns ul li.insta a img {
	width: 40px;
	height: 40px;
	filter: brightness( 15004% ) contrast( 1016% ) saturate( 100% ) grayscale(100%) opacity(85%) ;	
	transition: all ease-in-out .35s;
}
.section.news .sns ul li.insta a:hover img {
	width: 70px;
	height: 70px;
}




/* ------------------------------------------
	5.section メディア
	------------------------------------------ */
.section.media ul {
  position: relative;
  margin: 0 auto;
  padding: 0 10px;
  width: 100%;
  max-height: 320px;
  min-height: 60px;
  overflow-y: scroll;
}
.section.media ul li {
  padding: .5em 0;
  font-size: 1.1rem;
  line-height: 1.2;
  background-color: #fff;
  border-bottom: 1px dotted #071530;
}
.section.media ul li h4 {
  display: inline-block;
  margin: .2em 0;
}
.section.media ul li p {
  margin: .2em 0;
  font-size: 1rem;
}


/* ------------------------------------------
	11.section 公演情報
	------------------------------------------ */
.section.info { padding: 5vh 0;}
.section.info .attention {
  margin-bottom: 0px;
  color: #231815;
  font-family: YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "ヒラギノ角ゴ ProN W6", "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "ＭＳ ゴシック", Osaka, sans-serif;
}

.section.info .attention2 {
  margin: 30px auto;
  padding: 20px;
  width: 90%;
  max-width: 700px;
  color: #1c3b4f;
  font-weight: 500;
  text-align: center;
  border: 1px solid #1c3b4f;
}

.section.info .link {
  display: block;
  padding: 30px 0 20px;
}

/* 各会場
	------------------------------------------ */
.section.info .tour {
  position: relative;
  margin: 0 auto;
  padding:120px 30px;
  width: 100%;
  color: #231815;
}
.section.info .tour .inner_area {
	margin: auto;
  width: 100%;
  max-width: 960px;
}
.section.info .tour .inner_area ul {
	margin: .5em auto 0;
	max-width: 820px;
	font-weight: 600;
}
.section.info .tour .inner_area ul li.time {
	margin: 2em auto;
	text-align: center;
}
.section.info .tour .inner_area ul li {
	margin: 1em auto;
	max-width: 940px;
}
.section.info .tour.osaka .inner_area ul.attention li {
	margin: 0;
	max-width: 350px;
}


.section.info .tour li.time { margin-bottom: 1em;}
.section.info .tour h4.place {
	margin-bottom: 0;
	padding-bottom: .2em;
	color: #231815;
	font-size: 3.7rem;
	font-family: "garamond-atf-subhead", serif;
	line-height: 1.2;
	text-align: center;
}
.section.info .tour h4.place::after {
	content: "";
	display: block;
	margin-top: 15px;
	height: 15px;
	background: url(/shindosan/images/icon-diamond.svg) no-repeat center center;
	background-size: contain;
}
.section.info li {
  clear: both;
  padding-bottom: 1em;
}
.section.info li h5 {
  position: relative;
  display: inline-block;
  margin-bottom: 1em;
  padding: 5px 6px 4px;
  min-width: 120px;
  color: #231815;
  font-size: 1.25rem;
  text-align: center;
  background-color: #fff;
/*   border-left: solid 4px #231815; */
  border: solid 1px #231815;
}

.section.info li h5.long { white-space: nowrap;}

.section.info li a {
  padding-bottom: 3px;
  color: #fff;
  word-wrap: break-word;
}
.section.info li a:hover { opacity: 0.7;}

/* 日程(date) */
.section.info .date {
  margin-bottom: 2px;
  padding-bottom: 0;
  font-size: 1.4rem;
	font-weight: normal;
  text-align: center;
}
.section.info .date h4 {
	font-size: 2rem; 
	font-family: "garamond-atf-subhead",serif;
  line-height: 1.1;
}
.section.info .date strong {
  display: inline-block;
  padding: 0 .1em;
  font-size: 1.5em;
}
.section.info .date .time { font-size: 1.2rem;}
.section.info .date .time small {
  display: inline-block;
  padding-left: 0.1em;
  font-size: .6em;
}
.section.info .yobi::before {
	content: "〈";
	margin-left: -.2em;
}
.section.info .yobi::after {
	content: "〉";
	margin-right: -.2em;
}

/* 劇場(place) */
.section.info li.place {
	margin: 1.5em auto 1em !important;
	padding-bottom: 3.2em;
	max-width: 500px;
	font-size: 1.2rem;
	text-align: center;
}
.section.info li.place h4 {
	margin-bottom: .1rem;
	font-size: 3.1rem;
	font-family: "garamond-atf-subhead", serif;
	letter-spacing: 0.05em;
	line-height: 1.2;
	text-align: center;
}
.section.info li.place h4 a { color: #231815;}
.section.info li.place h4 a:hover { color: #7b0000;}
.section.info li.place .subtitle {
  display: block;
  margin-top: .3em;
}
.section.info li.place .access {
  display: inline-block;
  font-weight: 500;
}
.section.info li.place address {
  display: inline-block;
  margin: .5em auto 0;
  width: 100%;
  font-size: 1.55rem;
  letter-spacing: 0.1em;
  word-wrap: break-word;
}
.section.info address a:link,
.section.info address a:visited { color: #231815;}
.section.info address a::after {
	content: '';
	display: inline-block;
	width: 1.3em;
	height: 1.3em;
	margin-left: 0.3em;
	background-image: url(/shindosan/images/icon-map.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	vertical-align: top;
}



.section.info li.place .url {
  margin-bottom: 0;
  font-size: 1.45rem;
  font-weight: 500;
  letter-spacing: 0.1em;
}


/* タイムテーブル(time) */
.section.info li.time .btn a {
	display: inline-block;
	margin-top: 3vh;
	padding: 9px 2em 11px;
	color: #fff;
	font-size: 2.1rem;
	background-color: #231815;
	border-radius: 5px;
}
.section.info li.time .btn a:hover {
	color: #231815;
	background-color: #fff;
	opacity: 1;
	box-shadow : 0px 0px 3px 0px rgba(0,0,0,0.4);
	
}
.section.info li.time .btn a img {
	width: 38px;
	height: 38px;
	vertical-align: -10px;
	filter: invert(100%) sepia(4%) saturate(7463%) hue-rotate(307deg) brightness(107%) contrast(105%);
}
.section.info li.time .btn a:hover img { filter:none;}


.section.info dl.attentions {
	display: inline-block;
	margin: .6em auto 0;
}
.section.info dl.attentions dt {
	margin-bottom: .5em;
	height: auto;
	font-size: 1.3rem;
	line-height: 1.3;
}
.section.info dl.attentions dt::before {content: "";}
.section.info dl.attentions dd {
	margin-bottom: 0;
	font-size: 1.3rem;
	line-height: 1.25;
	font-weight: 600;
	text-align: left;
}


/* 料金(price) */
.section.info li dl dd { margin-bottom: .7em;}
.section.info li dl dd.small { font-size: .8em;}
.section.info li dl dd strong {
  display: inline-block;
  padding: 0 3px;
  font-size: 3.1rem;
	font-family: "garamond-atf-subhead", serif;
  line-height: 1;
  vertical-align: baseline;
}
.section.info li dl dd small {
  display: inline-block;
  padding: 0 .2em;
  line-height: 1.2;
}
.section.info li dl dd small.proof {
	display: inline-block;
	margin-top: 4px;
	padding-left: 1.3em;
	text-indent: -1.3em;
	font-size: 1.12rem;
	line-height: 1.35;
}
.section.info li.price dl dd ul.proof li {
	margin: 0;
	padding: 0;
	padding-left: 1.3em;
	text-indent: -1.3em;
	font-size: 1.35rem;
	line-height: 1.3;
	letter-spacing: .01em;
}
.section.info li.price dl dd ul.proof li::before { content: "＊ ";}

.section.info li dl dd small.proof span { text-indent: 0;}
.section.info li dl dd.attention {
	color: #fff;
	font-size: .75em;
	text-align: left;
}


/* チケット発売日(onsell) */
.section.info .onsell p { font-size: 1.85rem;}
.section.info .onsell p strong { font-size: 1.5em;}

/* タイムテーブル */
.time table {
  display: block;
  margin: 0 auto 0;
  width: 90%;
  max-width: 200px;
  font-family: YuGothic,"Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-weight: 500;
  -webkit-overflow-scrolling: touch;
}
.time table thead {
  display: block;
  float: left;
}
.time table thead th {
	position: relative;
  display: block;
  width: 80px;
  height: 40px;
  line-height: 40px;
  font-size: 1.8rem;
  font-family: "garamond-atf-subhead", serif;
  text-align: center;
  border-bottom: 1px solid #231815;
}
.time table thead th small {
	display: inline-block;
	margin: 0 .2em;
	font-size: 60%;
	vertical-align: 1px;
}
.time table thead th small.month {
	position: absolute;
	top: 0;
	left: 0;
	font-size: 70%;
}

.time table tbody {
  position: relative;
  display: block;
  margin: 0 auto;
  width: auto;
  white-space: nowrap;
}
.time table tbody tr {
  display: inline-block;
  margin: 0 -3px;
}
.time table tbody tr td {
  display: block;
  min-width: 60px;
  max-width: 150px;
  height: 40px;
  line-height: 40px;
  font-size: 1.75rem;
  text-align: center;
  border-bottom: 1px solid #231815;
}
.time table tbody tr td.time {
	font-family: "garamond-atf-subhead",serif;
	font-weight: bold;
}
.time .table2 {
	margin: auto;
	max-width: 500px;
}

.time table.last { margin-bottom: 10px;}




/* 注意事項 */
.section.info ul.attentions {
	display: inline-block;
	margin: .5em auto !important;
	max-width: 500px;
}
.section.info ul.attentions li {
	display: block;
	margin: 0 !important;
	padding-left: 1em;
	padding-bottom: 0;
	text-indent: -1em;
	color: #231815;
	font-size: 1.25rem;
	font-weight: 600;
	line-height: 1.4;
	text-align: justify;
}
.section.info ul.attentions li.nosetting { text-align: left;}
.section.info ul.attentions li::before {
	content: "＊";
	margin-right: .3em;
}
.section.info ul.attentions li::first-letter {
	font-feature-settings: "pkna";
	font-feature-settings: "pwid";
	font-feature-settings: "palt";
}


/* チケット取扱 */
.section.info .shop { padding-bottom: 0;}
.section.info .shop dl { margin-bottom: 2em;}
.section.info .shop dl dt {
  margin: 1.5em 0 .5em;
  font-size: 1.6rem;
}
.section.info .shop dl dt:nth-child(1) { margin-top: .2em;}

.section.info .shop dl dd span,
.section.info .shop dl dd small {
  padding-left: 0em;
  text-indent: 0em;
}

.section.info .shop dl dd a {
  display: inline;
  margin-left: 3px;
  padding-left: 0em;
  text-indent: 0em;
}
.section.info .shop dl dd a:hover { opacity: 0.7;}
.section.info .shop dl dd.web a {
	padding: .45em 2em;
  color: #fff;
	background: #231815 ;
	vertical-align: text-bottom;
}
.section.info .shop dl dd.web a::after {
	content: '';
	display: inline-block;
	width: 1em;
	height: 1em;
	margin-left: 0.3em;
	background-image:url(/shindosan/images/icon-outerlink.svg?12); /* 外部リンクアイコンのSVGパス */
	background-size: contain;
	background-repeat: no-repeat;
	filter: invert(92%) sepia(92%) saturate(34%) hue-rotate(127deg) brightness(108%) contrast(111%);
}
.section.info .shop dl dd.contact {
	margin-top: 1em;
	font-size: 1.4rem;
}
.section.info .shop dl dd.contact a {
	color: #231815;
	text-decoration: underline;
}
/* 注意事項 */
.section.info .shop .notice {
	position: relative;
	margin-top: 1em;
	padding: .75em 1em .75em .75em;
	border: 1px dashed #231815;
}
.section.info .shop .notice h4 {
	position: absolute;
	top: -1em;
	display: inline-block;
	padding: .2em .35em;
	background-color: #fff;
}
.section.info .shop .notice h4::before { content: "・";}
.section.info .shop .notice h4::after { content: "・";}


/* お問い合わせ */
.section.info .contact { padding-bottom: 0;}
.section.info .contact dl { margin-top: 1em;}
.section.info .contact dl dt {
	margin-bottom: .9em;
  line-height: 18px;
}
.section.info .contact dl dd {
  line-height: 20px;
  font-size: 1.75rem;
}
.section.info .contact dl dd small { text-align: left;}
.section.info span.logo {
  display: inline-block;
  padding: 3px 5px;
  line-height: 1;
  background-color: #fff;
/* webkit: Safari, Chrome用 , moz: Firefox用 , CSS3 */
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
}
.section.info span.logo img { vertical-align: bottom;}

/* 主催 */
.section.info .promoter {
  clear: both;
  margin: 70px auto 0;
  padding-top: 30px;
  max-width: 760px;
  color: #231815;
  font-size: 1.55rem;
  font-family: "garamond-atf-subhead", serif;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.3;
  text-align: center;
  border-top: 1px solid #231815;
}


/* ------------------------------------------
	.section 公演についてのお知らせ」（FAQ）
	------------------------------------------ */
.section.faq {
	padding: 5px 0;
	text-align: center;
}
.section.faq .box01 {
	margin: 0 auto;
	padding: 50px 5% 70px;
	max-width: 910px;
	color: #231815;
	text-align: left;
	left: 0.1em;
	background-color:#fff;
/* 	border: 1px solid black; */
	-webkit-box-shadow: 0 0 2px 2px rgba(0,0,0,0.1);
	-moz-box-shadow   : 0 0 2px 2px rgba(0,0,0,0.1);
	box-shadow        : 0 0 2px 2px rgba(0,0,0,0.1);
}
.section.faq .box01 h3.title2 {
	margin-bottom: 1em;
	font-size: 2rem;
	text-align: center;
}
.section.faq .box01 dl dt {
	margin-bottom: .3em;
	padding-left: 1em;
	font-size: 1.55rem;
	text-indent: -1em;
}
.section.faq .box01 dl dt:before {
	content: "◎";
}
.section.faq .box01 dl dd {
	margin-bottom: 1em;
	padding-left: 1em;
	font-size: 1.45rem;
	font-weight: normal;
}
.section.faq .box01 dl dd strong {
	display: block;
	margin: .3em 0;
}
.section.faq .box01 dl dd strong .tel { font-size: 1.3rem;}
.section.faq .box01 ul {
	margin: .5em 0;
	font-size: .9em;
}
.section.faq .box01 ul li {
	padding-left: 1em;
	text-indent: -1.3em;
	font-family: "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}
.section.faq .box01 ul li:before { content: "＊ ";}
.section.faq .box01 ul.web { margin: .5em 0;}
.section.faq .box01 ul.web li {
	padding-left: 1em;
	text-indent: -1.3em;
  font-size: 1.35rem;
  font-weight: 500;
  line-height: 1.5;
  text-align: left;
}

.section.faq .box01 ul.webinfo { padding-left: 1.3em;}
.section.faq .box01 ul.webinfo li { font-size: .9em;} 
.section.faq .box01 ul.webinfo li:before { content: "・ ";}
.section.faq .box01 .btn a {
	display: block;
	margin: 2em auto 3em;
	padding: .3em 2em;
	width: 300px;
	color: #fff;
	font-size: 2rem;
	text-align: center;
	background-color: #30788E;
	border-radius: 5px;	
}







/* ------------------------------------------
  	10.section スタッフ
	 ------------------------------------------ */
.section.staff {
	padding: 20vh 0 0;
	width: 91%;
	max-width: 800px;
	min-height: 100vh;

}
.section.staff ul {
	margin: 0;
	padding-bottom: .4em;
	text-align: center;
}
.section.staff ul li {
  display: inline-block;
  margin: .3em .7em;
  color:#231815 ;
  font-size: 1.2rem;
  letter-spacing: 0.1em;
}
.section.staff ul li strong {
	font-size: 1.55rem;
	font-family: "garamond-atf-subhead", serif;
}
.section.staff ul li strong::before {
	content: "";
	display: inline-block;
	width: 1.3em;
	height: 1em;
	background: url(/shindosan/images/icon-diamond.svg) no-repeat center center;
	background-size: 1em auto;
	vertical-align: -3px;
}
.section.staff ul li strong.noicon::before {
	background: none !important;
	width: 0;
	height: 0;
}

.section.staff ul li small { font-size: 0.7em;}
.section.staff ul.cooperation { margin: .5em 0;}
.section.staff .title_co {
	display: block;
	margin:1.7em auto .7em;
}
.section.staff ul.cooperation strong {
	display: inline-block;
	margin: 0 .4em;
	font-size: 1.55rem;
}


/* ------------------------------------------
  	フッター
	 ------------------------------------------ */
.footer {
	position: relative;
	margin-top: 160px;
  height:100vh; 
  color: #ccc;
  font-size: 1.35rem;
  font-weight: normal;
  text-align: center;
  letter-spacing: 0.1em;
  background: url(/shindosan/images/pict-footer2.jpg?1) no-repeat center center;
  background-size: cover;
}
.footer .copylight {
	position: absolute;
	bottom: 10px;
	width: 100%;
	color: #fff;
	text-align: center;
}




@media screen and (min-width: 480px) {/* スマホ横（480px以上）*/




/* ------------------------------------------
  	11.section 公演情報
	 ------------------------------------------ */
/* 各会場
	 ------------------------------------------ */
/* タイムテーブル */
.time table {
	display: table;
	width: 90%;
	margin: 2em 2em .45em;
	max-width: 100%;
}
.time table thead {
	float: none;
	display: table-header-group;
}
.time table thead th {
	display: table-cell;
	padding-bottom: 5px;
	width: auto;
	line-height: 1.2;
}
.time table.fewdays thead th { min-width:80px;}
.time table thead th.month { vertical-align: middle;}
.time table thead th small {
	display: block;
	padding: 0;
}
.time table tbody { display: table-row-group;}
.time table tbody tr {
	display: table-row;
	margin: 0 -3px;
}
.time table tbody tr td {
	display: table-cell;
	width: auto;
	min-width: 30px;
	height: 35px;
	line-height: 35px;
	border-bottom: 1px solid #231815;
}
.time table tbody tr td.off { border: none;}
/* 開演時間 */
.time span {
	margin-left: 8%;
	font-size: 1.2em;
}
.time span a.add { text-decoration: none;}
.time .attention {
	margin: 0 auto;
	width: 87%;
}


}@media screen and (min-width: 768px) {/* タブレット（768px以上）*/

/* ------------------------------------------
	2.section intro 赤堀雅秋コメント
	------------------------------------------ */
.section.intro .comment p { font-size: 2.55rem;}


/* ------------------------------------------
	2.section cast
	------------------------------------------ */
/* キャスト写真 */
.section.cast .prof {
	grid-template-columns: repeat(3, 1fr);
	gap: .65em 2.6em;
	width: 88%;
}
.section.cast .prof > *:last-child:nth-child(odd) {
    grid-column: auto;
    justify-self: stretch;
    width: 100%;
}



/* ------------------------------------------
  	5.section メディア
	 ------------------------------------------ */
.section.media ul li { clear: both;}
.section.media ul li p.date {
	display: inline-block;
	width: 95px;
}
.section.media ul li p.text {
	padding-left: 10px;
	display: inline-block;
}


/* ------------------------------------------
	5.section MOVIE YOUTUBE 
	------------------------------------------ */

.process_v,
.comment_v {
	margin-top: 10vh;
	display: -webkit-flex;
	display: flex;
	width: auto;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	align-items: stretch;
}
.comment_v li {
	margin: 0 1% 2%;
	width: calc(50% - 2%);
}



/* ------------------------------------------
	6.section 最新情報
	------------------------------------------ */

.section.news ul.news_area li .a,
.section.news ul.news_area li a {
	display: block;
	padding: 20px 15px 15px;
	font-family: YuGothic,"Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	font-weight: 500;
	border-bottom: 1px dotted #999;
}
.section.news ul.news_area li .date {
	float: left;
	margin: .5em 0;
	width: 100px;
}
.section.news ul.news_area li h4 {
	margin: .4em 0;
	clear: none;
	padding-left: 120px;
	border: none;
}
.section.news ul.news_area li p { padding-left: 120px;}


/* ------------------------------------------
  	.section faq
	 ------------------------------------------ */
.section.faq { margin-top: 90px;}


/* ------------------------------------------
  	11.section 公演情報
	 ------------------------------------------ */
.section.info { margin-bottom: 0px;}
.section.info .link { padding: 30px;}

/* 各会場
	 ------------------------------------------ */
	 
.time .tt {
	display: block;
    margin: 0 auto;
    max-width: 450px;
}
.time table.time1days {
    margin: 0 auto;
    width: 26%;
    min-width: 140px;
}

/* 注意事項 */
.section.info ul.attention.line1 li {
	padding-left: 70px;
	text-align: center;
}

/* 料金(price) */
.section.info dl.attentions dd { padding-left: 70px;}

/* 料金(price) */
.section.info li dl { clear: both;}
.section.info li dl dt {
	float: left;
	clear: both;
	margin-right: 1em;
	height: 37px;
	line-height: 37px;
	vertical-align: bottom;
}
.section.info li dl dd {
	padding-left: 200px;
	margin-bottom: .2em;
	font-weight: 500;
}

/* チケット発売日 */
.section.info .onsell h5 { float: left;}
.section.info .onsell p {
	padding-left: 200px;
	font-family: "garamond-atf-subhead",serif;
	line-height: 1;
	letter-spacing: 0.03em;
}

/* MAP */
.section.info .map h5 {float: left;}

.section.info .map P {
	padding-left: 170px;
	padding-top: 20px;
}

/* チケット取扱 */
.section.info .shop dl { margin-bottom: 2em;}
.section.info .shop dl dt {
	margin: 0;
	max-width:180px ;
	line-height: 1.2;
	text-shadow: none;
}
.section.info .shop dl dt.clear { max-width: 100%;}
.section.info .shop dl dd {
	padding-left: 200px;
	text-indent: 0;
	line-height: 1.5;
}
.section.info .shop dl dd.detail { padding-left: 170px;}
.section.info .shop dl dd:before { content: "";}

.section.info .shop .notice { margin-left: 200px;}


/* お問い合わせ */
.section.info .contact dl { text-align: left;}
.section.info dl dt:before {
	content: "◉ ";
}


}@media screen and (min-width: 1200px) {/* ノートPC（992px以上） */

/* ---------------------------------------------
  	メニュー上部固定
	 --------------------------------------------- */

header.header-main {
	position: absolute;
	top: 100vh;
	right: 3.5vw;
	width: 10vw;
	max-width: 100px;
	height: 100vh;
	text-align: right;
	background: none;
	overflow: hidden;
	transition: background ease-in-out .6s;
}
header.header-main .inner {
	margin: auto;
	width: 100%;
	height: 100vh;
}

header.header-main .modal {
	opacity: 1;
	visibility: visible;
	position: absolute;
	right: 0;
	left: auto;
	bottom: 0;
	width: 100%;
	height: 100vh;
}
.menu-main-container .menu_footer { display: none;}
.modal .modal-window {
	display: block;
	height: 100vh;
	background: none;
}
.modal-window .menu-main-container {
	display: flex;
	justify-content: flex-end; 
	flex-direction: column; /* メニューを縦に並べたいとき */
	align-items: center;
	margin: 0 auto;
	padding-bottom: 4vh;
	width: 100%;
	height: 100vh;
	background: none;
	overflow: hidden;
}
.header-main .menu-main-container h1 {
	position: absolute;
	left: 30px;
	top:-400px;
	width: 70px;
	height:  200px;

}

h1.menuchange a {
	position: fixed;
	top:3vh;
	left: 1.2vw;
	display: block;
	width: 10vh;
	max-width: 100px;
	height: 200px;
	background: url(../images/titlemain-shindosanB.svg?a) no-repeat center top ;
	background-size: contain;
	opacity: 0;
	transform: translateY(-400px);
	transition: all 1.2s ease;
	z-index: 1000;
}
h1.menuchange.visible a {
	opacity: 1;
  transform: translateY(0);
	background: url(../images/titlemain-shindosanB.svg?a) no-repeat center top ;
	background-size: contain;
}
h1.menuchange.visible a.over-black {
	background: url(../images/titlemain-shindosanW.svg?1) no-repeat center top ;
	background-size: contain;
}



@keyframes shaketitle {
  0% { transform: translate(0, 0);filter: blur( 5px );}
	20% { transform: translate(2px, 0); filter: blur( 4px ); }
  40% { transform: translate(-2px, 0); filter: blur( 3px );}
  60% { transform: translate(1px, 0); filter: blur( 2x );}
  80% { transform: translate(-1px, 0); filter: blur( 1px );}
  100% { transform: translate(0, 0);filter: blur( 0px ); }
}



.header-main .menu-main-container h1 a {
	display: block;
	padding:0 3vmin;
	height:  200px;
	font-size: 0.001em;
	text-indent: -9999px;
}
.header-main .menu-main-container h1 a img {
	margin-top: 7px;
	visibility: visible;
	filter: invert(15%) sepia(0%) saturate(9%) hue-rotate(335deg) brightness(96%) contrast(84%);

}
.header-main .menu-main-container ul.menu {
	display: block;
	margin: 0 auto;
	padding-right: 0;
	width: auto;
	min-width: 100%;
	max-width: 100px;
	height: auto;
	text-align: center;
}
.header-main .menu-main-container ul.menu li {
	display: block;
	vertical-align: middle;
}
.header-main .menu-main-container ul.menu li a {
	display: block;
	margin: 0 .42em;
	padding: 0;
	height: 60px;
	line-height: 57px;
	color: #231815;
	font-size: 2.1rem;
	font-weight: normal;
	text-indent: 0;
	border: none;
	transition: color ease .15s;
}
.header-main .menu-main-container ul.menu li a:link,
.header-main .menu-main-container ul.menu li a:visited { opacity: .8; color: #231815; cursor: hand !important;}/* #1c3b4f */
.header-main .menu-main-container ul.menu li a:hover   { opacity: 1; cursor: hand !important;}
.header-main .menu-main-container ul.menu li a:active  { color: #1c3b4f; opacity: 0.85;}

.header-main .menu-main-container ul.menu li.sns { padding: 0;}
.header-main .menu-main-container ul.menu li.sns a {margin-right: 0;}

.header-main .menu-main-container ul.menu li.sns ul li.twitter img,
.header-main .menu-main-container ul.menu li.sns ul li.insta img {
	margin: 0;
  width: 23px;
  height: 23px;
	filter: invert(12%) sepia(0%) saturate(55%) hue-rotate(257deg) brightness(121%) contrast(79%);
}
.header-main .menu-main-container ul.menu li.sns ul li.insta img {
	filter: invert(12%) sepia(0%) saturate(55%) hue-rotate(257deg) brightness(121%) contrast(79%) opacity(100%);
}


/* メニュー上部固定(.is-fixed) 
	------------------------------------*/
.header-main.is-fixed {}
header.header-main.is-fixed .modal {
	position: fixed;
	top: 0;
	right: 3.5vw;
	bottom: auto;
	width: 100%;
	max-width: 100px;
	text-align: center;
/* 	box-shadow : 0 2px 2px 0px rgba(28, 59, 79, 0.1); */
	filter: brightness( 114% ) contrast( 116% ) saturate( 120% ) ;
	z-index: 1000000;
}
.header-main.is-fixed .menu-main-container h1 a {
/*
	background: url(/shindosan/images/title-boilerman_en_B.svg) no-repeat center center;
	background-size: contain;
*/
}
.header-main.is-fixed .menu-main-container h1 a img {
	filter: invert(31%) sepia(35%) saturate(517%) hue-rotate(350deg) brightness(100%) contrast(92%);
/* 	filter: invert(70%) sepia(11%) saturate(846%) hue-rotate(5deg) brightness(90%) contrast(85%); */
}
.header-main.is-fixed .menu-main-container ul.menu li a { transition: color 0.15s ease;}
.header-main.is-fixed .menu-main-container ul.menu li a.over-black {color: #fff;}
.header-main.is-fixed .menu-main-container ul.menu li.sns a {margin-right: 0;}
.header-main.is-fixed .menu-main-container ul.menu li.sns ul li.twitter img {
	filter: invert(0%) sepia(4%) saturate(5923%) hue-rotate(340deg) brightness(94%) contrast(86%);
}
.header-main.is-fixed .menu-main-container ul.menu li.sns ul li.twitter a.over-black img {
	filter: invert(92%) sepia(92%) saturate(34%) hue-rotate(127deg) brightness(108%) contrast(111%);
}


.burgermenu {display: none !important;}




body .menuslidebars .fixedmenu .header-main {
	position: relative;
	margin: 0 auto;
	width: 96%;
	height: 60px;
	max-width: 1140px;/* 1340px; */
}
body .menuslidebars .fixedmenu.is-fixed .header-main { border: none;}
body .menuslidebars .fixedmenu.is-fixed {
	position: fixed;
	top: 0;
	bottom: auto;
	width: 100%;
	background-color: #231815;
	box-shadow : 0 2px 2px 0px rgba(28, 59, 79, 0.1);
	z-index: 1000000;
}
body .menuslidebars .fixedmenu img { visibility: visible;}

/* メニュー用タイトルロゴ */
body .menuslidebars .fixedmenu .header-main h1 { 
	position: absolute;
	left: 0;
  margin: 0;
  width: 200px;
  height: 60px;
  background-image: none;	
}
body .menuslidebars .fixedmenu .header-main h1 a {
	height: 60px;
	background: none;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
}
body .menuslidebars .fixedmenu .header-main h1 a img {
	position: absolute;
	top: 10px;
	left: 0;
	width: auto;
	height: 40px;
	z-index: 10000;
	filter: invert(13%) sepia(9%) saturate(15%) hue-rotate(314deg) brightness(101%) contrast(82%);
}



/* メニュー */
.menuslidebars .fixedmenu #globalnavi {
	padding-left: 200px;
	height: 60px;
	text-align: center;
}
.menuslidebars .fixedmenu #globalnavi ul.menu {
	margin: 0 auto;
	padding-right: 0;
	width: 99%;
	min-width: 630px;
	max-width: 1240px;
	height: 60px;
	text-align: center;
}
.menuslidebars #globalnavi ul.menu li {
	display: inline-block;
	text-align: center;
	vertical-align: middle;

}
.menuslidebars #globalnavi ul.menu li a {
	display: block;
	margin: 0 .5em;
	padding: 0;
	height: 60px;
	line-height: 60px;
	color: #231815;
	font-size: 2.5rem;
	font-weight: normal;
	text-indent: 0;
	border: none;
	transition: color ease .15s;
}
.menuslidebars #globalnavi ul.menu li a:after { content: "";}
.menuslidebars #globalnavi ul.menu li a:link,
.menuslidebars #globalnavi ul.menu li a:visited { color: #231815; cursor: hand !important;}/* #1c3b4f */
.menuslidebars #globalnavi ul.menu li a:hover   { color: #fff; cursor: hand !important;}
.menuslidebars #globalnavi ul.menu li a:active  { color: #1c3b4f; opacity: 0.85;}

body .menuslidebars .is-fixed #globalnavi ul.menu li a {
	color: #6f5437;
	filter: brightness( 114% ) contrast( 116% ) saturate( 120% ) ;	
}


body .menuslidebars .fixedmenu.is-fixed .header-main h1 a img{
	filter: invert(36%) sepia(9%) saturate(2858%) hue-rotate(350deg) brightness(97%) contrast(86%);	
}
.menuslidebars .is-fixed #globalnavi ul.menu li a:after { content: "";}
.menuslidebars .is-fixed #globalnavi ul.menu li a:link,
.menuslidebars .is-fixed #globalnavi ul.menu li a:visited { color: #6f5437; cursor: hand !important;}/* #1c3b4f */
.menuslidebars .is-fixed #globalnavi ul.menu li a:hover   { color: #ddd; cursor: hand !important;}
.menuslidebars .is-fixed #globalnavi ul.menu li a:active  { color: #fff; opacity: 0.85;}

.menuslidebars #globalnavi ul.menu li .tour {
	display: inline-block;
	text-align: center;
	width: 100%;
	max-width: 100%;
	height: 57px;
}
.menuslidebars #globalnavi ul.menu li .tour li {
	display: inline-block;
	float: left;
	margin-top: 0;
	padding: 2px 0 0;
	border: none;
}
.menuslidebars #globalnavi ul.menu li .tour li a {
	display: block;
	padding: 0;
	font-size: 1.7rem;
	font-weight: normal;
	border: none;
}

/* twitter */
.menuslidebars .header-main #globalnavi ul.menu li.sns {
	margin: 0;
	padding: 0;
	width: 60px;
	transition: all ease .4s;
}
.menuslidebars .header-main #globalnavi ul.menu li.sns ul {
	display: flex;
	justify-content: center;
	align-items: center;
}
.menuslidebars .header-main #globalnavi ul.menu li.sns ul li {
	display: block;
	margin: 0;
	height: 35px;
	height: 35px;
}
.menuslidebars .header-main #globalnavi ul.menu li.sns ul li a {
	position: relative;
	display: block;
	margin: 0;
	width: 35px;
	height: 35px;
	line-height: 38px;
	text-align: center;
}
.menuslidebars .header-main #globalnavi ul.menu li.sns ul li a img {
	margin: 0;
	width: 63%;
	height: 63%;
	filter: invert(13%) sepia(9%) saturate(15%) hue-rotate(314deg) brightness(111%) contrast(82%);
	vertical-align: baseline;
}
.menuslidebars .is-fixed .header-main #globalnavi ul.menu li.sns ul li a img {
	filter: invert(36%) sepia(9%) saturate(2858%) hue-rotate(350deg) brightness(97%) contrast(86%);
}
.menuslidebars .is-fixed .header-main #globalnavi ul.menu li.sns ul li a:hover img {
	filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(93deg) brightness(103%) contrast(103%);
}

/* インスタ */
.menuslidebars .header-main #globalnavi ul.menu li.sns .insta a::after {
	position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  content: "";
	transition: all ease .4s;
  opacity: 0;
  overflow: hidden;
	background: linear-gradient(238deg, rgba(131,58,180,1) 20%, rgba(255,0,0,1) 50%, rgba(252,176,69,1) 80%); 
}
.menuslidebars .header-main #globalnavi ul.menu li.sns .insta a:hover::after {
  opacity: 1;
}
.menuslidebars .header-main #globalnavi ul.menu li.sns .insta a img {
	position: relative;
	z-index: 10;
}


body .menubar { /* メニューボタン非表示 */
	display: none;
	visibility: hidden;
	height: 1px;
}


/* ------------------------------------------
  	0.section 基本構造
	 ------------------------------------------ */
#container { transform: none !important;}
.section h3.title { margin: 2.5em 0 1.5em;}


/* ------------------------------------------
	0.section cast
	------------------------------------------ */

.section.cast h3.cast { margin-bottom: 2.3em;}
.section.cast .casts {
	text-align: center;
	direction: rtl;
	unicode-bidi: bidi-override;
}
.section.cast .casts h4 {
	display: inline-block;
	width: 1.3em;
	height: 8em;
	margin: 0 .35em;
	padding: 0;
	font-size: 2.5rem;
	text-align: center;
	line-height: 1.35;
	line-break: anywhere;
	vertical-align: top;
}
.section.cast .casts h4:first-letter { text-align: center;}


/* コメント　ライトボックス lity
	------------------------------------------ */
.lity .comment_area figure {
	float: right;
	margin-left: 25px;
	margin-bottom: 25px;
	width: 55%;
}
.lity .comment_area .textarea {
	padding: 0 ;
	width: 100%;
}
.lity .comment_area .textarea h4 { text-align: left;}
.lity .comment_area .textarea p { font-size: 1.65rem;}
.lity .comment_area .btn_area {
	clear: both;
	padding: 30px 0 0;
}



/* ------------------------------------------
	3.section ALL CAST //https://shu-naka-blog.com/css/parallax_css/
	------------------------------------------ */
.parallax-fixed-bg {
	position: relative;
	min-height: 100vh;
	background-size: cover;
	background-attachment: fixed;
	background-repeat: no-repeat;
	background-position: center center;
	z-index: 2;
}


/* ------------------------------------------
  	4.section 最新情報
	 ------------------------------------------ */
.section.news { padding: 10vh 0 0;}
.section.news .box01 {
	margin: 0 auto;
	width: 100%;
}
.section.news h3.title { margin-top: 1em;}

.box01 {
	display: inline-block;
	position: relative;
	overflow: hidden; 
	padding: 6px; 
}
.box01:before,
.box01:after {
	content: "";
	position: absolute;
	z-index: 1;
	width: 50px;
	height: 97px;
	transform: rotate(-50deg);
}

.box01:before {
	top: -44px;
	bottom: auto;
	right: -26px;
	left: auto;

}
.box01:after {
	top: auto;
	bottom: -42px;
	right: auto;
	left: -25px;
}


/* ------------------------------------------
	5.section MOVIE YOUTUBE 
	------------------------------------------ */

.process_v { margin: 5vh auto; }
.comment_v li { width: calc(33.333% - 2%);}
.process_v li figure .btn-modal,
.comment_v li figure .btn-modal,
.comment_v figure .btn-modal {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 6;
  background-color: rgba(255,0,0,.0);
}
.modal-video { background-color: rgba(0,0,0,.9);}


}@media screen and (min-width: 1200px) {/* デスクトップ（1200px以上） */

/* ------------------------------------------
	メニュー
	------------------------------------------ */
.menuslidebars #globalnavi ul.menu li a { margin: 0 1em;}
.header-main .menu-main-container ul.menu li a { margin: 0 .5em;}

/* ------------------------------------------
	メイン画像
	------------------------------------------ */
#body .maintitle { margin: 0 auto;}
#body .maintitle .maintitlepict {
	width: auto;
	max-width: 100%;
	height: 100vh;
/* 	background-color: #add; */
}
#body .maintitle .maintitlepict .cast {
	background-size: 45vmax auto ,45vmax auto ;
	background-position: left bottom,right top ;
}


}

