@charset "UTF-8";
/*
 各ページ.css（ファイル名変更可）
 本サイト各ページ用CSS
*/
.caststaff-area {
	padding: 50px 0 0;
}
.caststaff-area .d-box-body {
	padding: 20px 0 100px;
	background: url(../images/caststaff/caststaff-bg.png) repeat-y center top transparent;
	background-size: 100% auto;
	position: relative;
}

.caststaff-area .d-box-body-bg {
	width: 100%;
	height: 0;
	margin-bottom: -1.25%;
	padding-top: calc(79 / 1280 * 100%);
	background: url(../images/caststaff/caststaff-bg-top.png) no-repeat center transparent;
	background-size: 100% auto;
}

.caststaff-inner {
	max-width: 100%;
	padding: 0;
}

/*   cast   */

.cast-box {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	color: #4b2500;
	position: relative;
}
.cast-box-title {
	width: 154px;
	height: 0;
	padding-top: 53px;
	margin: 40px auto;
	background-image: url(../images/caststaff/cast-sub-title.png);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: contain;
	text-indent: -9999px;
	overflow: hidden;
	white-space: nowrap;
}

.casts-icon {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	padding: 0 20px;
}
.cast-icon span::before {
	content: "";
	display: block;
	position: absolute;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	z-index: 0;
}

.cast-icon-01::before {
	width: 20%;
	max-width: 53px;
	height: 0;
	padding-top: 7.0%;
	background-image: url(../images/caststaff/cast-icon-01.png);
	top: 10px;
	right: 50px;
}

.cast-box-item {
	padding: 30px;
	margin: 20px auto;
	background-color: #ffffff;
	border-radius: 20px;
	overflow: hidden;
}
.cast-box-item-inner {
	margin-right: 30px;
}
.cast-box-item-img {
	width: 170px;
	height: 0;
	padding-top: 183px;
	margin-right: 30px;
	float: left;
}
.cast-box-item-name {
	padding-bottom: 10px;
	color: #dc7816;
	font-size: 32px;
	font-weight: bold;
	border-bottom: 5px solid gray;
	border-image-source: url(../images/caststaff/cast-underline.png);
	border-image-slice: 10;
	overflow: hidden;
}
.cast-box-item-name .cast-role {
	font-size: 30px;
}
.cast-box-item-name .cast-subname, .cast-box-item-name .cast-slash {
	font-size: 26px;
	color: #4b2500;
}
.cast-box-item-name .cast-slash{
	padding: 0 25px;
}
.cast-box-item-text {
	font-size: 15px;
	margin: 1.8rem 0 0;
	overflow: hidden;
}
.cast-box-item-main .cast-box-item-text{
	overflow: inherit;
}
.cast-box-item-text > div{
	margin: 15px 0;
	line-height: 24px;
}
.cast-box-item-name rt {
	font-size: 10px;
	font-weight: normal;
	ruby-align: center;
}
.cast-question {
	font-weight: bold;
}
.cast-question-icon,.cast-answer-icon {
	font-size: 18px;
	font-weight: bold;
}
.cast-answer-icon {
	color: #dc1c1c;
}

/*   staff   */
.staff-box {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	color: #4b2500;
	position: relative;
}
.staff-box-list {
	padding: 30px;
	margin: 20px auto;
	background-color: #ffffff;
	border-radius: 20px;
	overflow: hidden;
}
.staff-box-title {
	width: 179px;
	height: 0;
	padding-top: 56px;
	margin: 60px auto 40px;
	background-image: url(../images/caststaff/staff-sub-title.png);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: contain;
	text-indent: -9999px;
	overflow: hidden;
	white-space: nowrap;
}
.staff-item {
	color: #dc7816;
	font-size: 26px;
	font-weight: bold;
	display: flex;
	justify-content: center;
}
.staff-position {
	width: 50%;
	text-align: right;
	padding-right: 0.5rem;
}
.staff-person {
	width: 50%;
	padding-left: 0.5rem;
}

/* ---------------------------------
 PC（993px〜）
--------------------------------- */
@media screen and (min-width: 993px) {

}

/* ------------------------------------------------------------------
 SP 〜 tablet（〜992px）
------------------------------------------------------------------ */
@media screen and (max-width: 992px) {
	.caststaff-area {
		padding: 30px 0 0 !important;
	}
	.caststaff-area .d-box-body {
		padding: 20px 0 20px;
		margin: 0;
	}
	.caststaff-area .d-box-body-bg {
		margin-top: 3%;
	}
	.caststaff-inner {}

	.staff-box-list {
		padding: 15px;
		margin: 20px;
	}
	.staff-item {
		font-size: 24px;
	}
}

@media only screen and (min-width: 601px) and (max-width: 992px) {
	.cast-box-list {
		padding: 0 30px;
	}
	.staff-box-list {
		margin: 20px 30px;
	}
}

/* ---------------------------------
 SP（〜600px）
--------------------------------- */
@media only screen and (max-width: 600px) {
	.caststaff-area {
		padding: 20px 0 0;
	}
	.caststaff-inner {}

	.caststaff-area .d-box-body {
		padding: 20px 0 20px;
	}
	.caststaff-img {
		width: 100%;
		height: 0;
		padding-top: 150%;
		margin: 0 auto;
	}
	.cast-box, .staff-box{
		padding-top: 20px;
	}
	.cast-icon-01::before {
		padding-top: 10%;
		top: 20px;
		right: 50px;
	}
	.cast-box-title, .staff-box-title {
		padding-top: 30px;
		margin: 0 auto;
	}
	.cast-box-item {
		padding: 15px;
		margin: 20px;
	}
	.cast-box-item-inner {
		margin-right: 0;
	}
	.cast-box-item-img {
		float: none;
		margin: auto;
	}
	.cast-box-item-name {
		text-align: center;
		border: none;
		margin: 20px 0;
	}
	.cast-subname, .cast-slash {
		display: block;
	}
	.cast-box-item-name .cast-slash {
		width: 70%;
		padding: 0;
		margin: auto;
		font-size: 0;
		border-bottom: 5px solid gray;
		border-image-source: url(../images/caststaff/cast-underline.png);
		border-image-slice: 10;
	}
	.staff-item {
		font-size: 12px;
	}
}
