@media screen and (max-width: 389px) {
	.program-and-course-background {
		width: 100%;
		display: flex;
		justify-content: center;
		background-color: rgba(236, 204, 248, 0.2);
		padding: 15px;
		box-sizing: border-box;
	}

	.program-and-course {
		width: 100%;
		box-sizing: border-box;
		display: flex;
		flex-direction: column;
		gap: 25px;
		text-align: center;
		align-items: center;
		margin-bottom: 24px;
	}

	.course-title {
		width: 100%;
		display: flex;
		margin: 16px 0 16px 16px;
		padding-left: 40px;
	}

	.course-title-p {
		width: 70px;
		height: 14px;
		color: rgba(97, 33, 161, 1);
		font-size: 12px;
		font-weight: 600;
		font-family: 'YuGothic';
		transform: rotate(90deg);
		transform-origin: left center;
		/* 回転の基準を調整 */
		margin: 0;
		letter-spacing: 2.5px;
	}

	.course-title-text {
		font-size: 18px;
		font-weight: 700;
		font-family: 'YuGothic';
		letter-spacing: 1.5px;
		margin: 0 0 0 -55px;
		text-align: left;
	}

	.course-title-text span {
		background: linear-gradient(to top, rgba(255, 217, 143, 1) 50%, transparent 30%);
		display: inline;
		/* 背景を文字サイズにフィットさせる */
	}

	.course-summary {
		font-size: 16px;
		font-weight: 700px;
		text-align: center;
		letter-spacing: 1.05px;
		margin: 0;
	}

	.course-cards-container {
		width: 100%;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}

	.polygon {
		display: block;
		width: 15.75px;
		height: 111.72px;
		transform: rotate(90deg);
		transform-origin: center center;
		margin: -30px auto -20px auto;
	}

	.course-card {
		width: 100%;
		max-width: 340px;
		/* スマホ幅に合わせて */
		height: 360px;
		background-image: url('../../images/index-page/course-image-background-color.png');
		background-size: cover;
		background-position: center;
		background-repeat: no-repeat;
		position: relative;
		box-sizing: border-box;
	}

	.program-card-shadow {
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}

	.number-card {
		background-color: #FFFFFF;
		width: 28px;
		height: 28px;
		border-radius: 10px;
		padding: 10px;
		position: absolute;
		left: 35px;
		top: 25px;
	}

	.program-title {
		font-size: 22px;
		font-weight: 700;
		color: #FFFFFF;
		margin: 0;
		position: absolute;
		left: 100px;
		top: 23px;
	}

	.program-explain {
		font-size: 14px;
		font-weight: 500;
		color: #FFFFFF;
		margin: 0;
		position: absolute;
		top: 58px;
		left: 100px;
	}

	.program-image-background {
		position: absolute;
		width: 285px;
		height: auto;
		left: 45px;
		top: 95px;
	}

	.program-image {
		width: 290px;
		height: auto;
		position: absolute;
		left: 25px;
		top: 110px;
		z-index: 100;
	}

	.program--course-detail {
		margin: 0;
		font-size: 11px;
		text-align: left;
	}

}