/*
Theme Name: ドラマティカ ACT3
*/

@charset "UTF-8";

/* リセット */
/* @import url(reset.css); */


a {		text-decoration: none;		}
a:hover {	text-decoration: underline;	}

body {
/*	background-position: top center;	*/
}
#contWrap {
	background-image: url( 'images/sp_bg.jpg' );
	background-position: top center;
/*	background-attachment: fixed;	*/
}


.info-news {	margin-bottom: 80px;	}

@media (max-width: 949px) {
.info-news {	margin-bottom: 50px;	}
}

.txt-center { text-align: center; }
.txt-bold { font-weight: bold; }

.txt-large	{ font-size: large; }
.txt-small	{ font-size: small; }
.txt-x-large	{ font-size: x-large; }
.txt-xx-large	{ font-size: xx-large; }
.txt12		{ font-size: 12px; }

.txt-interval-l { line-height: 3em; }
.txt-interval-m { line-height: 2em; }
.txt-interval-s { line-height: 1.5em; }

.txt-break { word-break: break-all; }

@media (max-width: 599px) {
	.txt-interval-l { line-height: 2em; }
}

.gold-letter	{ color: #be9c59; }
.red-letter	{ color: #cb2e39; }
.pink-letter	{ color: #EF9BBE; }
.cw-red		{ color: #b93943; }

.btm-line { text-decoration: underline; }
.dis-line { text-decoration: line-through; }

.txt-indent { margin-left: 50px; }

.mb40{ margin-bottom: 40px; }
.mb60{ margin-bottom: 60px; }
.mb65 {
	margin-bottom: 65px !important;
}
.mb75 {
	margin-bottom: 75px !important;
}

li.attention-remark {
	padding-left: 1em;
	text-indent: -1em;
}

/* サイズ調整用 */
section.unit_Wrap .cont .contWrapper .emphasisWrap p,
section.unit_Wrap .cont .contWrapper .emphasisWrap_p2 p {
	margin-bottom: 0;
}

/* メニュー */
br.s-sc {
	display: none;
}
@media screen and (max-width: 1299px) {
	br.s-sc {
		display: block;
	}
	header nav {
		margin-top: 26px;
	}
}

.contWrapper {
	padding-top: 50px;
}
@media screen and (max-width: 767px) {
	.contWrapper {
		padding-top: 0;
	}
}
main #container .contentWrap section.unit_Wrap .cont .title_wrap h1 br {
	display: none;
}
@media screen and (max-width: 429px) {
	main #container .contentWrap section.unit_Wrap .cont .title_wrap h1 br {
		display: block;
	}
}

/* サブメニュー */
#sp-nav-sp {
	position: relative;
}
ul.sp-menu-pc,
ul.sp-menu-sp {
	display: none;
/*	display: block;	*/
	width: 200px;
	background-color: #ffffff;
}
ul.sp-menu-pc {
	position: absolute;
	top: 33px;
	right: 0;
	width: 200px;
}
.spFloatMenu .cont ul.sp-menu-sp {
	position: absolute;
	transform: translate( -50%, 1rem );
}
ul.sp-menu-pc:hover {
	display: block;
}
ul.sp-menu-pc li {
	line-height: 2rem;
}
ul.sp-menu-pc li a.sp-item-pc {
	color: #bf9d5a;
	transform: skewX( 0 );
}
ul.sp-menu-pc li:hover a.sp-item-pc {
	color: #ffffff;
	background-color: #bf9d5a;
	transition: all 0.1s;
}
ul.sp-menu-pc li:after {
	position: absolute;
	content: '';
	width: 100%;
	height: 100%;
	background-color: #efe9dc;
	transform: translateY(-100%);
}
@media screen and ( max-width: 949px ) {
	.spFloatMenu nav ul.sp-menu-sp {
		width: 200px;
	}
	.spFloatMenu nav ul li a.sp-item-sp {
		color: #5dbddd;
	}
}
@media screen and ( max-width: 1399px ) {
	ul.sp-menu-pc {
		top: 38px;
	}
}
@media screen and ( max-width: 1299px ) {
	ul.sp-menu-pc {
		top: 74px;
	}
}

/* POPUP用 */
#erase-modal,
.modal-area {
	display: none;
}
#erase-modal {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba( 255, 255, 255, 0.7 );
	z-index: 20;
	overflow-y: auto;
}
.modal-area {
	position: fixed;
	top: 3%;
	left: 50%;
	transform: translate( -50%, 0 );
	width: 1020px;
	max-height: 94%;
	margin: 0 auto;
	z-index: 21;
	background-color: #ffffff;
	border: 2px solid #5dbddd;
	overflow-y: scroll;
}
.modal-contents {
/*	height: -webkit-fill-available;	*/
	height: calc( 100% - 20px );
	margin: 10px;
}
.modal-article {
	margin: 10px;
}
.modal-close {
	display: inline-block;
	width: 100px;
	padding: 5px;
	background-color: #6f6b64;
	border: 1px solid #6f6b64;
	border-radius: 5px;
	color: white;
	cursor: pointer;
}
.modal-article .full-img {
	width: 960px;
}
.modal-article .full-img img {
	display : block;
	margin: 0 auto;
	max-width: 100%;
}

.align-right {
	width: 100%;
	text-align: right;
}

@media (max-width: 1199px) {
	.modal-area {
		width: 90%;
	}
	.modal-article .full-img {
		width: auto;
	}
}
@media (max-width: 799px) {
	.modal-area {
		width: 92%;
	}
}

/* top **************************************** */

.v-cont {
	width: 1140px;
	margin: 55px auto;
}
.top-visual img {
	width: 100%;
}
@media screen and ( max-width: 1199px ) {
	.v-cont {
		width: 88%;
	}
}
@media screen and ( max-width: 767px ) {
	.v-cont {
		margin-top: 35px;
	}
}

#container section#cont_01 {
	position: relative;
}

#contWrap section#cont_01 .iconWrap .iconHat {
	opacity: 1;
	animation: bounce .5s ease 1.5s;
	animation-fill-mode: both;
}
section#cont_01 .iconWrap .iconHat {
	position: absolute;
	top: -15%;
	left: -15%;
	width: 21%;
}
section#cont_01 .cont .iconWrap .iconHat img {
	animation: iconMoveHat 10s ease infinite;
}

/* Information個別 ***************************** */
.info-img {
	display: block;
	float: left;
	margin: 10px 0;
}
.info-img-h {
	width: 46.5%;
}
.info-img-v {
	width: 33%;
}
.info-img-h img,
.info-img-v img {
	width: 100%;
}
.info-spacer {
	margin-right: 20px;
}
.info-clear {
	clear: both;
}
@media (max-width: 799px) {
	.info-img {
		float: initial;
	}
	.info-img-h {
		width: 100%;
	}
	.info-img-v {
		width: 71%;
		margin: 0 auto;
	}
}
@media (max-width: 429px) {
	.info-column {
		grid-template-columns: 1fr;
	}
}

/* Cast & Staff個別 **************************** */
.arrow-line {
	position: relative;
	width: 50%;
	margin: 0 auto;
}
.arrow-line img {
	width: 70%;
}
.arrow-left,
.arrow-center,
.arrow-right {
	position: absolute;
	top: 0;
}
.arrow-left {
	left: 0;
	text-align: left;
}
.arrow-right {
	right: 0;
	text-align: right;
}
.arrow-center {
	width :90%;
	height: 5px;
	margin :8px auto;
	background-color: #be9c59;
	transform: translate( -50%, 0 );
	left: 50%;
}


/*
.cast-caption {
	font-family: 'Libre Caslon Display', serif;
	font-size: 52pt;
	margin-bottom: 50px;
}
.photo-rows {
	display: grid;
	grid-template-columns: 1fr 1fr;
	margin-bottom: 37px;
}
.photo-triple {
	display: grid;
	grid-template-columns: 12.5% 50% 25% 12.5%;
	margin-bottom: 37px;
}
*/
.cast-photo {
	display: grid;
	margin-bottom: 0px;
}
.cast-one,
.cast-thr {
	grid-template-columns: 1fr 1fr 1fr;
}
.cast-two {
	grid-template-columns: 0.5fr 1fr 1fr 0.5fr;
}
/*
.single-space { display: none; }
.photo-space { width: 90px; }
*/
.photo-frame {
	position: relative;
	margin: 0 0 30px;
}
.photo-one {
/*	width: 33.3333%;	*/
}
.photo-img {
	position: relative;
	margin: 0 30px;
	z-index: 1;
}
.photo-img img.card-rotate {
	animation: face-card-rotate 0.6s linear 0.0s 1 normal;
}
.photo-img::after {
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	z-index: -1;
	left: 0;
	background-image: url( 'images/card_back.png' );
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.photo-back::after {
	animation: back-card-rotate 0.6s linear 0.0s 1 normal;
}
@keyframes face-card-rotate {
	0%	{
		transform: rotateY( 0deg );
		opacity: 1;
	}
	25%	{
		transform: rotateY( 90deg );
		opacity: 1;
	}
	25.1%	{
		transform: rotateY( 90deg );
		opacity: 0;
	}
	50%	{
		transform: rotateY( 180deg );
		opacity: 0;
	}
	74.9%	{
		transform: rotateY( 270deg );
		opacity: 0;
	}
	75%	{
		transform: rotateY( 270deg );
		opacity: 1;
	}
	100%	{
		transform: rotateY( 360deg );
		opacity: 1;
	}
}
@keyframes back-card-rotate {
	0%	{
		transform: rotateY( 180deg );
		opacity: 0;
	}
	25%	{
		transform: rotateY( 90deg );
		opacity: 0;
	}
	25.1%	{
		transform: rotateY( 90deg );
		opacity: 1;
	}
	50%	{
		transform: rotateY( 0deg );
		opacity: 1;
	}
	74.9%	{
		transform: rotateY( 90deg );
		opacity: 1;
	}
	75%	{
		transform: rotateY( 90deg );
		opacity: 0;
	}
	100%	{
		transform: rotateY( 180deg );
		opacity: 0;
	}
}

.photo-img img {
	width: 100%;
	vertical-align: top;
	cursor: pointer;
}
.cast-name {
	margin: 25px 30px 0;
	text-align: center;
}
.cast-role {
	font-size: 14pt;
	line-height: 1.5em;
}
.role-name {
	font-family: 'Libre Caslon Display', "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", 'Noto Serif JP', serif;
	font-weight: bold;
}
@media (max-width: 1199px) {
	.photo-img { margin: 0 20px; }
}
@media (max-width: 1099px) {
	.photo-space { width: 60px; }
	.cast-role { font-size: 14pt; }
}
@media (max-width: 999px) {
	.photo-rows {
		grid-template-columns: 1fr;
		margin-bottom: 0;
	}
	.photo-triple { grid-template-columns: 1fr; }
	.single-space { display: block; }
	.photo-space { width: 40px; }
	.cast-photo { margin-bottom: 0px; }
}
@media (max-width: 899px) {
	.cast-role { font-size: 13pt; }

}
@media (max-width: 699px) {
	.photo-space { width: 20px; }
}
@media (max-width: 659px) {
	.cast-photo { grid-template-columns: 1fr; }
	.photo-frame { margin: 0 80px 40px; }
	.cast-single { grid-template-columns: 1fr; }
	.photo-spacer { display: none; }
	.photo-img { margin: 0 30px; }
	.cast-role { font-size: 14pt; }
}
@media (max-width: 639px) {
	.photo-frame { margin: 0 60px 40px; }
}
@media (max-width: 569px) {
	.photo-frame { margin: 0 40px 40px; }
}
@media (max-width: 499px) {
	.photo-frame { margin: 0 30px 40px; }
}
@media (max-width: 459px) {
	.photo-frame { margin: 0 20px 40px; }
	.cast-role { font-size: 12.6pt; }
}
@media (max-width: 419px) {
	.photo-frame { margin: 0 10px 40px; }
}
@media (max-width: 399px) {
	.photo-frame { margin: 0 5px 40px; }
}

/* CAST POPUP */
.cast-up,
.close-area,
.close-cast  {
	position: fixed;
	display: none;
}
.close-area {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba( 255, 255, 255, 0.8 );
	z-index: 20;
}

.cast-up {
	top: 50%;
	left: calc( 50% - 30px );
	transform: translate( -50%, -50% );
	width: 440px;
	height: auto;
	margin: 0 30px;
	z-index: 21;
}
.cast-up ul li a img {
	max-width: 100%;
}
.close-cast {
	top: 0;
	right: 0;
	width: 64px;
	height: 64px;
	z-index: 21;
	cursor: pointer;
}
.close-bar {
	position: absolute;
	display: block;
	width: 64px;
	height: 6px;
	margin-top: 29px;
	background-color: #be9c59;
}
.close-bar:first-child {
	transform: rotate( 45deg );
}
.close-bar:last-child {
	transform: rotate( -45deg );
}
@media (max-width: 499px) {
	.cast-up {
		width: calc( 100% - 60px );
	}
}
/* Goods個別 ********************************** */
section.unit_Wrap .cont .contWrapper p.goods-price {
	text-align: right;
	margin-top: 8px;
	font-size: 18px;
}
@media screen and ( max-width: 767px ) {
	section.unit_Wrap .cont .contWrapper p.goods-price {
		font-size: 16px;
	}
}

.goods-img {
	margin: 10px 0;
}
.goods-img img { width: 100%; }
.goods-spacer { margin-right: 20px; }

.goods-column-a,
.goods-column-b,
.goods-column-c,
.goods-column-d {
	display: grid;
}
.goods-column-a {
	grid-template-columns: 1fr;
	width: 40%;
}
.goods-column-b {
	grid-template-columns: 1fr 1fr;
	width: 70%;
}
.goods-column-c {
	grid-template-columns: 1fr 1fr 1fr;
	width: 90%;
}
.goods-column-d {
	grid-template-columns: 1fr;
	width: 60%;
}
@media (max-width: 799px) {
	.goods-column-a { width: 60%;}
	.goods-column-b,
	.goods-column-c {
		width: 100%;
	}
	.goods-column-d { width: 80%;}
}
@media (max-width: 639px) {
	.goods-column-a,
	.goods-column-d {
		width: 100%;
	}
	.goods-column-c { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 429px) {
	.goods-column-b,
	.goods-column-c {
		grid-template-columns: 1fr;
	}
	.goods-spacer { margin-right: 0; }
}

.goods-attention-box-col {
	display: grid;
	grid-template-columns: 59% 16% 25.1%;	/* 端数により計100％にならないため */
	border: 1px solid #bf9d5a;
	text-align: left;
}
.goods-attention-box-row {
	height: 100%;
/*	grid-template-rows: auto auto;	*/
}
.subject-box {
	background-color: #bf9d5a;
	line-height: 1.7em;
	height: 3em;
	padding: 10px;
	color: white;
}
.detail-box {
/*	height: calc( 100% - 3em - 48px );	*/
	height: calc( 100% - 3em - 8px );
	padding: 10px;
}
.box-line-purple {
	border-left: 1px solid #bf9d5a;
	border-right: 1px solid #bf9d5a;
}
.box-line-white {
	border-left: 1px solid white;
	border-right: 1px solid white;
}

@media (max-width: 639px) {
	.goods-attention-box-col {
		grid-template-columns: auto;
		grid-template-rows: auto auto auto;
	}
	.goods-attention-box-row {
		display: grid;
		grid-template-columns: 30% 70%;
		grid-template-rows: auto;
	}
	.subject-box {
		line-height: 1.7em;
/*		height: calc( 100% - 22px);	*/
		height: 100%;
		padding: 10px 5px;
	}
	.detail-box {
		height: auto;
		padding: 10px 5px;
	}
	.box-line-purple {
		border-left: 0px solid  #bf9d5a;
		border-right: 0px solid  #bf9d5a;
		border-top: 1px solid  #bf9d5a;
		border-bottom: 1px solid  #bf9d5a;
	}
	.box-line-white {
		border-left: 0px solid white;
		border-right: 0px solid white;
		border-top: 1px solid white;
		border-bottom: 1px solid white;
	}
}


/* Q & A個別 ********************************** */

.qa-spacer {
	margin-top: 60px;
}
@media (max-width: 949px) {
	.qa-spacer {
		display: none;
	}
}

dl.notice {
	margin-top: 30px;
}
.q-notice,
.a-notice {
	position: relative;
}

.q-logo,
.a-logo {
	position: absolute;
	top: 0;
	left: 0;
	font-family: 'Yeseva One', cursive;
	color: #BF9D5A;
	font-size: 50px;
	font-weight: bold;
}

.qa-indent {
	padding: 20px 20px 10px 50px;
}
.q-notice {
/*	margin-bottom: 30px;	*/
	font-size: 16px;
}
.a-notice {
	display: none;
	padding: 60px 0 20px 0;
	margin-top: 10px;
}

.triangle {
	position: absolute;
	display: block;
	width: 30px;
	height: 30px;
	bottom: 15px;
	right: 10px;
	transform: rotate( 45deg );
	transition: ease-in-out 300ms;
}
.triangle img {
	width: 100%;
	height: 100%;
}

.u-triangle {
	transform: rotate( 225deg );
}

/* Movie ************************************** */

.movie-list-box {
	display: grid;
	grid-template-columns: 1fr 1fr;
}
.movie-box {
	box-sizing: border-box;
	padding: 20px;
}
.movie-frame {
	position: relative;
	padding-bottom: 56.25%; /* アスペクト比 16:9の場合の縦幅 */
	height: 0;
	overflow: hidden;
	margin-bottom: 10px;
}
.movie-frame iframe {
 	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

@media (max-width: 768px) {
	.movie-list-box {
		grid-template-columns: 1fr;
	}
}

/* Special ************************************ */

table.special {
	width: 100%;
	border-top: 1px solid #C3C3C3;
	border-collapse: collapse;
}

table.special tr {
	border-bottom: 1px solid #C3C3C3;
}
table.special td.th {
	width: 15%;
}
table.special td {
	position: relative;
	line-height: 1.3rem;
	padding: 15px;
}

table.special td.prefecture:before {
	content: '';
	position: absolute;
	width: 1px;
	height: calc(100% - 20px);
	left: 0;
	top: 10px;
	background-color: #C3C3C3;
}

section.unit_Wrap .cont .contWrapper .subTitleH4 h4.mb00{
	margin-bottom: 0;
}


.wp-block-image {
	margin: 0 0 1em;
}
