.introTxt {
	text-align: left;
}

.reportImg figcaption {
	text-align: left;
}

.titStyle4 .titStyleScene {
	background-color: #85d8c9;
	color: #fff;
	text-align: center;
	font-weight: bold;
	font-family: sans-serif;
	display: inline-block;
}

.endImg {
	background-image: url(/firstguide/report/images/bg_1.png);
	background-repeat: no-repeat;
	background-position: center top;
}
.boxType2{
	border-bottom-right-radius: initial;
	border-bottom-left-radius: initial;
}
.boxType2+.boxType2 {
	border-radius: initial;
}
.boxType2+.boxType2:last-of-type{
	border-bottom-right-radius: 4px;
	border-bottom-left-radius: 4px;
}
@media screen and (min-width: 960px) {
	.keyvisual {
    padding-top: 58px;
	}
	.catchImg {
		margin: 80px 0;
	}
	.reportImg {
		margin: 0 auto;
		width: 630px;
	}
	.reportImg figcaption {
		text-align: left;
		font-size: 14px;
		font-size: 1.4rem;
	}
	.boxType2 .titStyle4 {
		margin-top: 0;
		margin-bottom: 40px;
	}
	.titStyle4 .titStyleScene {
		font-size: 16px;
		font-size: 1.6rem;
		height: 24px;
		line-height: 24px;
		border-radius: 12px;
		vertical-align: top;
		display: block;
		width: 17.5%;
		margin: 0 auto;
	}
	.titStyle4 .titStyleHeading{
		display: block;
		line-height: 1;
		padding-top: 5px;
	}
	.endImg .titStyle1 {
		padding-bottom: 35px;
		font-size: 30px;
		font-size: 3rem;
	}
}

@media screen and (max-width: 959px) {
	.stepBlock {
    padding: 5px 15px 10px;
	}
	.keyvisual {
    padding-top: 25px;
	}
	.contentArea {
    padding: 0 20px;
	}
	.catchImg {
		margin: 20px;
	}
	.reportImg img {
		width: 100%;
	}
	.reportImg figcaption {
		font-size: 12px;
		font-size: 1.2rem;
	}
	.boxType2 .titStyle4 {
		margin-bottom: 20px;
		line-height: 1.3;
	}
	.boxType2:not(:last-of-type) {
    border-bottom: 2px #fff solid;
	}
	.titStyle4 .titStyleScene {
		padding: 0 22px;
		font-size: 12px;
		font-size: 1.3rem;
		height: 20px;
		line-height: 20px;
		border-radius: 10px;
		vertical-align: top;
	}
	.titStyle4 .titStyleHeading{
		display: block;
		line-height: 1;
		padding-top: 5px;
	}
	.boxStep .boxStepTxt p {
		margin-bottom: 0;
	}
	.stepBlock .boxStepTxt p + .linkBtn {
		margin-top: 1em;
	}
	.stepBlock .linkBtn li {
		padding-left: 0;
	}
	.endImg {
		background-size: 760px auto;
	}
	.endImg .reportImg {
		padding: 0 30px;
	}
	.endImg .titStyle1 {
		padding-bottom: 10px;
		font-size: 20px;
		font-size: 2rem;
	}
}


/*
  家族でミュージカル体験！観劇の一日 リニューアル CREATE 25.5
*/
.contentArea-report {
	background-color: #fff8de;;
	background-image: url("../images/bg_note.png");
	background-position: top 950px center;
	background-size: 100%;
	background-repeat: repeat;
}
@media screen and (min-width: 1600px) {
	.contentArea-report {
		background-position: top 1060px center;
	}
}
@media screen and (min-width: 2000px) {
	.contentArea-report {
		background-position: top 26vw center;
	}
}
@media screen and (max-width: 959px) {
	.contentArea-report {
		background-image: url("../images/bg_note_sp.png");
		background-position: top 252vw center;
	}
}


@media screen and (min-width: 960px) {
	#report .keyvisual {
		/* background:#fff8de url("../images/kv.png") center top / cover no-repeat; */
		background-image: url("../images/kv.png");
		background-repeat: no-repeat;
		background-position: top center;
		background-size: cover;
		padding-top: 0;
		min-height: 380px;
		background-color: transparent;
	}
}
@media screen and (min-width: 1600px) {
	#report .keyvisual {
		/* background:#fff8de url("../images/kv.png") center top / 100% no-repeat; */
		background-image: url("../images/kv.png");
		background-repeat: no-repeat;
		background-position: top center;
		background-size: 100%;
		aspect-ratio: 3840 / 944;
		min-height: initial;
	}
}
@media screen and (max-width: 959px) {
	#report .keyvisual {
		padding-top: 0;
		/* background-color: #fff8de; */
		background-image: url("../images/kv_sp.png");
		background-size: 100%;
		/* height: calc(500 / 750 * 100vw); */
		height: calc(536 / 750 * 100vw);
		background-color: transparent;
	}
}

.step-title, .step-title .main_title {
	text-align: center;
}
@media screen and (min-width: 960px) {
	.step-title {
		padding-top: 42px;
	}
	.step-title .main_title {
		padding-top: 24px;
	}
}
@media screen and (min-width: 1600px) {
	.step-title {
		padding-top: max(2.6vw,42px);
	}
	.step-title .main_title {
		padding-top: 1.4vw;
		img {
			width: calc(475 / 1920 * 100vw);
			height: auto;
			min-width: 475px;
		}
	}
}
@media screen and (max-width: 959px) {
	.step-title {
		padding-top: calc(66 / 750 * 100vw);
	}
	.step-title .main_title {
		padding-top: calc(20 / 750 * 100vw);
		img {
			width: calc(409 / 750 * 100vw);
			height: auto;
		}
	}
	.step-title .sub_title {
		img {
			width: calc(274 / 750 * 100vw);
			height: auto;
		}
	}
}

.contentArea-report .inner {
	max-width: 1080px;
	margin: 0 auto;
	padding: 0 20px 120px;
}

main p {
	font-size: 16px;
}

.step-intro {
	font-size: 18px;
	font-weight: bold;
	line-height: calc(70 / 36);
	text-align: center;
	padding-bottom: 30px;
	margin-top: -20px;
}
@media screen and (max-width: 959px) {
	.step-intro {
		font-size: min(calc(15 / 375 * 100vw), 18px);
		margin-top: 0;
	}
}

.step-item {
	background-color: #fff;
	padding: 40px;
	margin-top: 30px;
	position: relative;
}
@media screen and (max-width: 959px) {
	.step-item {
		padding: calc(40 / 750 * 100vw);
	}
}

.step-item:not(:last-child) {
	&::after {
		content: "";
		position: absolute;
		bottom: 0;
		left: 50%;
		transform: translate(-50%,84%);
		width: 33px;
		height: 52px;
		background-image: url("../images/arrow.png");
		background-repeat: no-repeat;
		background-size: contain;
		z-index: 1;
	}
}

.step-item__content {
	display: flex;
}
@media screen and (max-width: 959px) {
	.step-item__content {
		flex-direction: column;
	}
}

/* シーン６用 */
.step-item__content + .step-item__content {
	margin-top: 40px;
}

.step-item__text {
	order: 2;
	width: calc(500 / 960 * 100%);

}
.step-item__image {
	order: 1;
	width: calc(460 / 960 * 100%);
	img {
		width: 100%;
		height: auto;
	}
}
@media screen and (max-width: 959px) {
	.step-item__text {
		width: 100%;
	}
	.step-item__image {
		order: 1;
		width: 100%;
	}
}
.step-item__heading {
	padding-left: 32px;
	padding-bottom: 16px;
	margin-top: 10px;
	margin-bottom: 30px;
	background-image: url(../images/dot.png);
	background-repeat: no-repeat;
	background-position: bottom left;
	background-size: 100%;
}
@media screen and (max-width: 959px) {
	.step-item__heading {
		background-image: url(../images/dot.png);
	}
}
@media screen and (max-width: 700px) {
	.step-item__heading {
		background-image: url(../images/dot_sp.png);
	}
}

@media screen and (min-width: 960px) and (max-width: 1080px) {
	.step-item__heading {
		img {
			width:auto;
			height: calc(25 / 1080 * 100vw);
		}
	}
}
@media screen and (max-width: 959px) {
	.step-item__heading {
		padding-top: 0;
		padding-left: 0;
		padding-bottom: calc(30 / 750 * 100vw);
		margin-top: calc(40 / 750 * 100vw);
		margin-bottom: calc(36 / 750 * 100vw);
		img {
			height: auto;
		}
	}
	.step-item__heading.s1 img {
		width: min(calc(195 / 750 * 100vw), 175px);
	}
	.step-item__heading.s2 img {
		width: min(calc(380 / 750 * 100vw), 342px);
	}
	.step-item__heading.s3 img {
		width: min(calc(565 / 750 * 100vw), 508px);
	}
	.step-item__heading.s4 img {
		width: min(calc(412 / 750 * 100vw), 370px);
	}
	.step-item__heading.s5 img {
		width: min(calc(354 / 750 * 100vw), 318px);
	}
	.step-item__heading.s6 img {
		width: min(calc(253 / 750 * 100vw), 227px);
	}
	.step-item__heading.s7 img {
		width: min(calc(308 / 750 * 100vw), 277px);
	}
	.step-item__heading.s8 img {
		width: min(calc(573 / 750 * 100vw), 515px);
	}
}

.step-item__no {
	position: absolute;
	top: 0;
	left: 25px;
}
@media screen and (max-width: 959px) {
	.step-item__no {
		left: calc(20 / 750 * 100vw);
		width: calc(112 / 750 * 100vw);
	}
	.step-item__no img {
		width: 100%;
		height: auto;
	}
}

.step-item__desc {
	line-height: 1.8!important;
	margin-left: 32px;
}
@media screen and (max-width: 959px) {
	.step-item__desc {
		font-size: min(calc(14 / 375 * 100vw), 16px);
		margin-left: 0;
		margin-top: calc(10 / 750 * 100vw);
	}
}

.step-item__content + .step-item__content .step-item__desc {
	margin-top: 8px;
}

.step-item__link {
	display: inline-block;
	font-weight: 700;
	margin-top: 20px;
}

.step-item__remarks {
	display: block;
	font-size: 14px;
}
@media screen and (max-width: 959px) {
	.step-item__remarks {
		font-size: min(calc(12 / 375 * 100vw), 14px);
		margin-top: 2vw;
	}
}

a {
	transition: .3s;
}
a:hover {
	color: #333;
	opacity: .8;
}
/* END */