.mainvisual {
	background-image: url(../img/mv-photo.jpg);
}
section > .inner {
	max-width: 980px;
	margin: 0 auto;
	font-size: 1.8rem;
}
h2 {
	text-align: center;
}
.leadText {
	margin: 50px 0 40px;
	line-height: 1.72;
}
.schedulebox {
	background-color: #fff;
	padding: 24px 46px 50px 154px;
	font-weight: bold;
	line-height: 1.22;
}
.schedulebox ol {
	list-style: none;
}
.schedulebox li {
	display: flex;
}
.schedulebox .time {
	flex: 0 0 auto;
	padding-bottom: 8px;
	font-size: 1.7rem;
}
.schedulebox li > .time {
	position: relative;
	z-index: 0;
}
.schedulebox li > .time::before {
	content: "";
	position: absolute;
	z-index: -1;
	left: 36px;
	width: 3px;
	height: 100%;
	background-color: #4f4034;
}
.schedulebox .time span {
	display: inline-block;
	width: 75px;
	background-color: #ff7900;
	border-radius: 10px;
	padding: 4px 0;
	text-align: center;
	color: #fff;
}
_:-ms-lang(x)::-ms-backdrop,
.schedulebox .time span {
	padding: 7px 0 1px;
}
.schedulebox .text {
	flex: 1 0 0%;
	max-width: 100%;
	padding-left: 20px;
	padding-top: 4px;
}
_:-ms-lang(x)::-ms-backdrop,
.schedulebox .text {
	padding-top: 7px;
}
.schedulebox li > .text br {
	display: none;
}
.schedulebox .short {
	flex: 0 0 338px;
	max-width: 338px;
	border-left: 1px dashed #4f4034;
	display: flex;
	flex-wrap: wrap;
}
.schedulebox .short .midashi {
	flex: 0 0 100%;
	flex-basis: calc(100% - 20px);
	margin: 0 auto 11px;
}
.schedulebox .short .midashi > span {
	display: block;
	border-radius: 10px;
	background-color: #0097ff;
	padding: 4px 0;
	text-align: center;
	color: #fff;
}
_:-ms-lang(x)::-ms-backdrop,
.schedulebox .short .midashi > span {
	padding: 7px 0 1px;
}
.schedulebox .short .time {
	padding-left: 10px;
}
.schedulebox .short .time span {
	background-color: #0097ff;
}
.schedulebox .short .text {
	padding-left: 18px;
}
.schedulebox .short + .short .midashi > span {
	background-color: #02c6a5;
}
.schedulebox .short + .short .time span {
	background-color: #02c6a5;
}
.schedulebox li:first-child > .time {
	margin-top: 40px;
}
.schedulebox li:first-child > .text {
	margin-top: 40px;
}
.schedulebox li:first-child .short .time {
	background-color: #def1ff;
	padding-bottom: 32px;
}
.schedulebox li:first-child .short .text {
	background-color: #def1ff;
}
.schedulebox li:first-child .short + .short .time {
	background-color: #def6f2;
}
.schedulebox li:first-child .short + .short .text {
	background-color: #def6f2;
}
.schedulebox li:nth-child(2) > .time,
.schedulebox li:nth-child(2) > .text {
	margin-top: -8px;
}
.schedulebox .time0900 {
	position: relative;
}
.schedulebox .time0900::before {
	content: "";
	position: absolute;
	left: -102px;
	top: 15px;
	transform: translateY(-50%);
	background: url(../img/time-0900.png) 0 0 no-repeat;
	background-size: 76px 76px;
	width: 76px;
	height: 76px;
}
.schedulebox .time0900 .time {
	padding-bottom: 122px;
}
.schedulebox .time0900 .photo {
	position: absolute;
	right: 0;
	top: 1.6em;
}
.schedulebox .time0900 .photo div + div {
	margin-top: 34px;
}
.schedulebox .time1100 {
	position: relative;
}
.schedulebox .time1100::before {
	content: "";
	position: absolute;
	left: -102px;
	top: 15px;
	transform: translateY(-50%);
	background: url(../img/time-1100.png) 0 0 no-repeat;
	background-size: 76px 76px;
	width: 76px;
	height: 76px;
}
.schedulebox .time1100 .time {
	padding-bottom: 2px;
}
.schedulebox .time1100 + li .time {
	padding-bottom: 36px;
}
.schedulebox .time1215 {
	position: relative;
}
.schedulebox .time1215::before {
	content: "";
	position: absolute;
	right: 8px;
	top: 15px;
	transform: translateY(-50%);
	background: url(../img/time-1215.png) 0 0 no-repeat;
	background-size: 76px 76px;
	width: 76px;
	height: 76px;
	display: none;
}
.schedulebox .time1215 .time {
	padding-bottom: 166px;
}
.schedulebox .time1230 {
	position: relative;
}
.schedulebox .time1230::before {
	content: "";
	position: absolute;
	right: 8px;
	top: 15px;
	transform: translateY(-50%);
	background: url(../img/time-1230.png) 0 0 no-repeat;
	background-size: 76px 76px;
	width: 76px;
	height: 76px;
	display: none;
}
.schedulebox .time1230 .time {
	padding-bottom: 138px;
}
.schedulebox .time1615 {
	position: relative;
}
.schedulebox .time1615::before {
	content: "";
	position: absolute;
	left: -102px;
	top: 15px;
	transform: translateY(-50%);
	background: url(../img/time-1615.png) 0 0 no-repeat;
	background-size: 76px 76px;
	width: 76px;
	height: 76px;
}
.schedulebox .time1615 .time {
	padding-bottom: 124px;
}
.schedulebox .time1615 .short .time,
.schedulebox .time1615 .short .text {
	background-color: #def1ff;
}
.schedulebox .time1615 .short + .short .time,
.schedulebox .time1615 .short + .short .text {
	background-color: #def6f2;
}
.schedulebox .time1815 {
	position: relative;
	background-color: #ffedde;
}
.schedulebox .time1815::before {
	content: "";
	position: absolute;
	left: -102px;
	top: 15px;
	transform: translateY(-50%);
	background: url(../img/time-1815.png) 0 0 no-repeat;
	background-size: 76px 76px;
	width: 76px;
	height: 76px;
}
.schedulebox .time1815 .time {
	padding-bottom: 56px;
}
.schedulebox .time1915 {
	position: relative;
	background-color: #ffedde;
	padding-bottom: 12px;
}
.schedulebox .time1915::before {
	content: "";
	position: absolute;
	left: -102px;
	top: 15px;
	transform: translateY(-50%);
	background: url(../img/time-1915.png) 0 0 no-repeat;
	background-size: 76px 76px;
	width: 76px;
	height: 76px;
}
.schedulebox .time1915 .time {
	padding-bottom: 0;
}
.schedulebox .time1915 .time::before {
	display: none;
}
@media screen and (max-width: 767px) {
	section > .inner {
		font-size: 1.5rem;
	}
	.leadText {
		line-height: 1.6;
		margin: 25px 1em 36px;
	}
	.schedulebox {
		padding-left: 12px;
		padding-right: 12px;
	}
	.schedulebox .time {
		font-size: 1.3rem;
	}
	.schedulebox .time span {
		width: 55px;
		border-radius: 7px;
	}
	.schedulebox li > .time::before {
		left: 25px;
	}
	.schedulebox .text {
		padding: 4px 0 12px 8px;
	}
	.schedulebox li > .text br {
		display: inline;
	}
	.schedulebox .short {
		flex-basis: 50.57%;
		display: block;
	}
	.schedulebox .short .midashi {
		font-size: 1.4rem;
		padding-left: 8px;
	}
	.schedulebox .short .midashi > span {
		border-radius: 7px;
	}
	.schedulebox .short .midashi > span span {
		display: inline-block;
		font-size: 1.3rem;
		font-feature-settings: "palt";
		letter-spacing: -0.03em;
	}
	.schedulebox .short .time {
		padding-left: 8px;
	}
	.schedulebox .short .text {
		padding-left: 8px;
	}
	.schedulebox li:first-child > .time,
	.schedulebox li:first-child > .text {
		margin-top: 36px;
	}
	.schedulebox li:first-child .short .time {
		padding-bottom: 0;
	}
	.schedulebox li:first-child .short .text {
		padding-bottom: 25px;
	}
	.schedulebox .time0900 {
		flex-wrap: wrap;
	}
	.schedulebox .time0900::before {
		display: none;
	}
	.schedulebox .time0900 > .time {
		padding-bottom: 16px;
	}
	.schedulebox .time0900 .photo {
		position: static;
		margin-top: 1em;
		display: flex;
		justify-content: space-between;
	}
	.schedulebox .time0900 .photo div {
		flex: 0 0 48%;
	}
	.schedulebox .time0900 .photo div + div {
		margin-top: 0;
	}
	.schedulebox .time1100::before {
		display: none;
	}
	.schedulebox .time1215::before {
		display: block;
	}
	.schedulebox .time1215 .text {
		padding-right: 85px;
	}
	.schedulebox .time1230::before {
		display: block;
	}
	.schedulebox .time1230 .text {
		padding-right: 85px;
	}
	.schedulebox .time1615::before {
		display: none;
	}
	.schedulebox .time1615 .short .time {
		padding-bottom: 0;
	}
	.schedulebox .time1615 .short .text {
		height: 100%;
	}
	.schedulebox .time1815::before {
		display: none;
	}
	.schedulebox .time1915::before {
		left: auto;
		right: 8px;
	}
}
#child {
	position: relative;
	background: url(../../img/line02.png) center 0 no-repeat;
	margin-top: 82px;
	padding: 120px 0 58px;
}
#child::before {
	content: "";
	position: absolute;
	left: 0;
	top: 100px;
	width: calc((100% - 1167px) / 2);
	height: 62px;
	background: url(../../img/line01.png) 0 0 repeat-x;
}
#child::after {
	content: "";
	position: absolute;
	right: 0;
	top: 100px;
	width: calc((100% - 1167px) / 2);
	height: 62px;
	background: url(../../img/line01.png) 0 0 repeat-x;
}
#child .leadText {
	margin-top: 45px;
}
#child .schedulebox {
	padding-left: 130px;
	padding-right: 28px;
}
#child .schedulebox li > .time span {
	background-color: #f61b82;
}
#child .schedulebox li .short {
	flex: 0 0 255px;
	max-width: 255px;
}
#child .schedulebox li .short + .short {
	flex-basis: 245px;
	max-width: 245px;
}
#child .schedulebox li:first-child .short .time {
	padding-bottom: 58px;
}
#child .schedulebox li:nth-child(2) > .time,
#child .schedulebox li:nth-child(2) > .text {
	margin-top: -34px;
}
#child .schedulebox li:nth-child(2) .short .time,
#child .schedulebox li:nth-child(2) .short .text {
	background-color: #fff;
	margin-top: -20px;
}
#child .schedulebox li:nth-child(2) .short + .short .time,
#child .schedulebox li:nth-child(2) .short + .short .text {
	margin-top: 0;
}
#child .schedulebox .time1100 .time {
	padding-bottom: 6px;
}
#child .schedulebox .time1100 + li .time {
	padding-bottom: 60px;
}
#child .schedulebox .time1815 {
	background-color: #fce1ee;
}
#child .schedulebox .time1915 {
	background-color: #fce1ee;
}
@media screen and (max-width: 767px) {
	#child {
		background-size: url(../img/line01-sp.png);
		background-size: 416px auto;
		padding-top: 35px;
	}
	#child::before,
	#child::after {
		width: calc((100% - 416px) / 2);
		background-size: 52px auto;
		top: 45px;
	}
	#child .leadText {
		margin-top: 28px;
		margin-bottom: 35px;
	}
	#child .schedulebox {
		padding-left: 12px;
		padding-right: 12px;
	}
	#child .schedulebox li .short {
		flex-basis: 29.71%;
	}
	#child .schedulebox li .short .midashi {
		padding-right: 8px;
	}
	#child .schedulebox li .short + .short {
		flex-basis: 27.71%;
	}
	#child .schedulebox li .short + .short .midashi {
		padding-right: 0;
	}
	#child .schedulebox li:first-child > .time,
	#child .schedulebox li:first-child > .text {
		margin-top: 53px;
	}
	#child .schedulebox li:first-child .short .time {
		padding-bottom: 0;
	}
	#child .schedulebox li:first-child .short .text {
		padding-bottom: 45px;
	}
	#child .schedulebox li:nth-child(2) > .time,
	#child .schedulebox li:nth-child(2) > .text {
		margin-top: -41px;
	}
	#child .schedulebox li:nth-child(2) .short .time {
		margin-top: -24px;
	}
	#child .schedulebox li:nth-child(2) .short .text {
		margin-top: 0;
	}
}
@media screen and (max-width: 360px) {
	#child .schedulebox .short .midashi > span span {
		font-size: 1.2rem;
	}
}
@media screen and (max-width: 320px) {
	#child .schedulebox .short .midashi > span span {
		font-size: 1.0rem;
	}
}
