@charset "UTF-8";

@media screen and (min-width: 768px),print {
body#course {
	background: #fff;
}

.p-course__fv {
	margin-bottom: 107px;
	position: relative;
}

.p-course__fv::before {
	background: #000;
	content: "";
	top: 0;
	left: 0;
	width: 100%;
	height: 99%;
	opacity: 0.45;
	position: absolute;
}

.p-course__fv-ttl {
	content: "";
	left: calc(50% - 46px);
	position: absolute;
	top: 95px;
	aspect-ratio: 603/250;
}

.p-course__fv-ttl img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.p-course__fv-ttl2 {
	bottom: 285px;
	content: "";
	position: absolute;
	right: calc(50% + 162px);
}

.p-course__fv-ttl2 img {
	width: 202px;
}

.p-course__fv-ttl3 {
	bottom: 56px;
	content: "";
	left: 50%;
	position: absolute;
	transform: translateX(-50%);
	aspect-ratio: 689/228;
}

.p-course__fv-ttl3 img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.p-course__special-ttl2-wrap {
	display: grid;
	grid-template-columns: repeat(1,1fr);
	gap: 29px 0;
	place-items: center;
}

.p-course__fv-video {
	aspect-ratio: 1920/747;
}

.p-course__fv-video video {
	height: 100%;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.p-course__special {
	margin-bottom: 140px;
}

.l-inner.course-special {
	margin-inline: auto;
	max-width: 1400px;
	width: 100%;
}

.p-course__special-ttl {
	text-align: center;
}

.p-course__special-ttl img {
	height: auto;
	width: 618px;
}

.p-course__special-img {
	left: -117px;
	position: relative;
	text-align: end;
	top: -200px;
	margin-bottom: -218px;
}

.p-course__special-img img {
	height: 323px;
	width: 194px;
	object-fit: cover;
}

.p-course-special__items {
	display: grid;
	gap: 105px 0;
	grid-template-columns: repeat(1, minmax(0, 1fr));
}

.p-course-special__item {
	background: #F2F2F2;
	border: 4px solid #100100;
	padding: 62px 0 116px;
	position: relative;
}

.p-course-special__item-wrap::after {
	background: #fff;
	content: "";
	height: 130%;
	max-width: 940px;
	position: absolute;
	right: -20px;
	top: 50%;
	transform: translateY(-50%);
	width: 95%;
	z-index: 1;
}

.p-course-special__item-wrap.reverse::after {
	left: -20px;
}

.p-course-special__item.item01:before {
	background: url(../images/course/kikaku.svg) no-repeat center center/contain;
	content: "";
	height: 86px;
	left: 50%;
	position: absolute;
	top: -40px;
	transform: translateX(-50%);
	width: 249px;
}

.p-course-special__item.item02:before {
	background: url(../images/course/satuei.svg) no-repeat center center/contain;
	content: "";
	height: 86px;
	left: 50%;
	position: absolute;
	top: -40px;
	transform: translateX(-50%);
	width: 249px;
}

.p-course-special__item.item03:before {
	background: url(../images/course/hensyu.svg) no-repeat center center/contain;
	content: "";
	height: 86px;
	left: 50%;
	position: absolute;
	top: -40px;
	transform: translateX(-50%);
	width: 249px;
}

.p-course-special__item.item04:before {
	background: url(../images/course/bunseki.svg) no-repeat center center/contain;
	content: "";
	height: 86px;
	left: 50%;
	position: absolute;
	top: -40px;
	transform: translateX(-50%);
	width: 249px;
}

.p-course-special__item-ttl {
	margin-bottom: 36px;
	position: relative;
	text-align: center;
	z-index: 2;
}

.p-course-special__item-wrap {
	max-width: 1240px;
	width: 95%;
	margin-inline: auto;
	display: grid;
	gap: 0 15px;
	grid-template-columns: 640px 565px;
	place-items: center;
	position: relative;
}

.p-course-special__item-wrap.reverse {
	grid-template-columns: 565px 640px;
	gap: 0 73px;
}

.p-course-special__item-wrap.item04.reverse {
	grid-template-columns: 565px 640px;
	gap: 0 73px;

}

.p-course-special__item-img.reverse {
	order: 2;
}

.p-course-special__item-img {
	position: relative;
	left: -16px;
	z-index: 2;
}

.p-course-special__item-img img {
	height: auto;
	width: 100%;
}

.p-course-special__item-txt {
	font-size: 16px;
	font-weight: 400;
	letter-spacing: 1.28px;
	line-height: 2;
	position: relative;
	z-index: 2;
}

.p-course-special__item-txt.reverse {
	order: 1;
	padding-left: 40px;
}

.p-course-special__item-txt2 {
	font-size: 16px;
	font-weight: 400;
	letter-spacing: 1.28px;
	line-height: 2;
}

.p-course-special__item-more {
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 1.44px;
	line-height: 2;
	margin-top: 8px;
}

.p-course-special__item-more2 {
	margin-bottom: 40px;
}

.p-course-special__item-more2 li {
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 1.28px;
	line-height: 2.125;
	padding-left: 16px;
	position: relative;
}

.p-course-special__item-more2 li:before {
	content: "・";
	position: absolute;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 1.28px;
	line-height: 2.125;
	top: 0;
	left: 0;
}

.p-course__works-items-wrap {
	background: #F2F2F2;
	height: 490px;
	padding: 40px 0 0;
	width: 100%;
}

.p-course__works-items {
	margin: auto;
	max-width: 1524px;
	width: 90%;
}

.p-course__works-item {
	padding: 0 10px;
}

.p-course__works-item-link img {
	height: auto;
	margin-bottom: 3px;
	width: 100%;
}

.p-course__works-item-area {
	background: #929292;
	color: #fff;
	display: block;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 1.68px;
	line-height: 1.5714285714;
	margin-bottom: 20px;
	padding: 9px 0;
	text-align: center;
}

.p-course__works-item-name {
	font-size: 17px;
	font-weight: 700;
	letter-spacing: 1.2px;
	line-height: 1.5882352941;
	margin-bottom: 16px;
}

.p-course__works-item-txt {
	font-size: 14px;
	font-weight: 400;
	letter-spacing: 1.12px;
	line-height: 2;
}

.slide-arrow.next-arrow.course {
	position: absolute;
	right: -56px;
	top: 102px;
	z-index: 1;
	width: 52px;
	aspect-ratio: 1;
}

.slide-arrow.prev-arrow.course {
	left: -56px;
	position: absolute;
	top: 102px;
	z-index: 1;
	width: 52px;
	aspect-ratio: 1;
}

}

@media screen and (min-width:768px) and ( max-width:1600px) {
.p-course__fv-ttl {
	top: 42px;
}
.p-course__fv-ttl img {
	width: 37vw;
	height: auto;
}
.p-course__fv-ttl2 {
	bottom: 13.7vw;
}
.p-course__fv-ttl2 img {
	width: 12vw;
	height: auto;
}
.p-course__fv-ttl3 {
	bottom: 12px;
}
.p-course__fv-ttl3 img {
	width: 43vw;
	height: auto;
}
}

@media screen and (min-width:768px) and ( max-width:1300px) {
.p-course__special-img img {
	height: auto;
	width: 14.9vw;
}
.p-course__special-img {
	left: -3vw;
}
.p-course-special__item-img.reverse {
	left: -50px;
}
}

@media screen and (min-width:768px) and ( max-width:1100px) {
.p-course-special__item-wrap {
	grid-template-columns: 400px 1fr;
}
.p-course-special__item-wrap.reverse {
	grid-template-columns: 1fr 400px;
	gap: 0 15px;
}
.p-course-special__item-wrap.item04.reverse {
	grid-template-columns: 1fr 400px;
	gap: 0 15px;
}
.p-course-special__item-ttl img {
	width: 60%;
	height: auto;
}
.p-course-special__item-img {
	left: 0;
}
.p-course-special__item-img.reverse {
	left: 0;
}
.p-course-special__item-wrap::after {
	width: 70%;
	height: 110%;
}
.p-course-special__item-wrap.item04.reverse::after {
	height: 110%;
}
.slide-arrow.next-arrow.course {
	right: -36px;
	width: 40px;
}
.slide-arrow.prev-arrow.course {
	left: -36px;
	width: 40px;
}
.p-course__special-ttl2-wrap {
	max-width: 700px;
	width: 95%;
	margin-inline: auto;
}
.p-course__special-ttl img {
	height: auto;
	width: 400px;
}
.p-course__special-ttl2 img {
	height: auto;
	width: 500px;
}
.p-course__special-img {
	margin-bottom: -130px;
	top: -120px;
}

}



@media screen and (max-width: 767px) {

	body#course {
		background: #fff;
	}
	
	.p-course__fv {
		position: relative;
		margin-bottom: 17.9vw;
	}
	
	.p-course__fv::before {
		background: #000;
		content: "";
		inset: 0;
		width: 100%;
		height: 119.5vw;
		opacity: 0.45;
		position: absolute;
	}
	
	.p-course__fv-ttl {
		content: "";
		left: 5.314vw;
		position: absolute;
		top: 7.246vw;
	}
	
	.p-course__fv-ttl img {
		width: 63.7vw;
	}
	
	.p-course__fv-ttl2 {
		left: 4.1vw;
		bottom: 25.7vw;
		content: "";
		position: absolute;
	}
	
	.p-course__fv-ttl2 img {
		width: 43.9vw;
	}

	.p-course__fv-ttl3 {
		left: 15.1vw;
		bottom: 6vw;
		content: "";
		position: absolute;
	}
	
	.p-course__fv-ttl3 img {	
		width: 74.6vw;
	}
	
	.p-course__fv-video {
		aspect-ratio: 414/495;
	}
	
	.p-course__fv-video video {
		height: 100%;
		width: 100%;
		-o-object-fit: cover;
		object-fit: cover;
	}
	
	.p-course__special {
		margin-bottom: 24.9vw;
	}
	
	.l-inner.course-special {
		margin-inline: auto;
		max-width: 94.203vw;
		width: 95%;
	}

	.p-course__special-ttl2-wrap {
		display: grid;
		grid-template-columns: repeat(1,1fr);
		gap: 2.1vw 0;
		padding-left: 3.3vw;
	}
	
	.p-course__special-ttl {
		
	}
	
	.p-course__special-ttl img {
		height: auto;
		width: 68.8vw;
	}

	.p-course__special-ttl2 {
		
	}
	
	.p-course__special-ttl2 img {
		height: auto;
		width: 61vw;
	}
	
	.p-course__special-img {
		left: -2.3vw;
		position: relative;
		text-align: end;
		top: -19.8vw;
		margin-bottom: -29vw;
	}
	
	.p-course__special-img img {
		height: auto;
		width: 21.498vw;
	}
	
	.p-course-special__items {
		display: grid;
		gap: 13.3vw 0;
		grid-template-columns: repeat(1, 1fr);
	}
	
	.p-course-special__item {
		background: #F2F2F2;
		border: 4px solid #100100;
		padding: 14.9vw 6vw 8.6vw;
		position: relative;
	}
	
	.p-course-special__item::after {
		background: #fff;
		bottom: 6.8vw;
		content: "";
		height: 140vw;
		left: 50%;
		max-width: 82.1vw;
		position: absolute;
		transform: translateX(-50%);
		width: 95%;
		z-index: 1;
	}

	.p-course-special__item.item02 {
		padding: 14.9vw 6vw 14.6vw;
	}

	.p-course-special__item.item02::after {
		bottom: 14.8vw;
	}

	.p-course-special__item.item04 {
		padding: 16.9vw 6vw 12.6vw;
	}

	.p-course-special__item.item04::after {
		bottom: 6.8vw;
		height: 204vw;
	}
	
	.p-course-special__item.item01:before {
		background: url(../images/course/kikaku.svg) no-repeat center center/contain;
		content: "";
		height: 12.3vw;
		left: 50%;
		position: absolute;
		top: -4.6vw;
		transform: translateX(-50%);
		width: 35.5vw;
	}

	.p-course-special__item.item02:before {
		background: url(../images/course/satuei.svg) no-repeat center center/contain;
		content: "";
		height: 12.3vw;
		left: 50%;
		position: absolute;
		top: -4.6vw;
		transform: translateX(-50%);
		width: 35.5vw;
	}
	
	.p-course-special__item.item03:before {
		background: url(../images/course/hensyu.svg) no-repeat center center/contain;
		content: "";
		height: 12.3vw;
		left: 50%;
		position: absolute;
		top: -4.6vw;
		transform: translateX(-50%);
		width: 35.5vw;
	}

	.p-course-special__item.item04:before {
		background: url(../images/course/bunseki.svg) no-repeat center center/contain;
		content: "";
		height: 12.3vw;
		left: 50%;
		position: absolute;
		top: -4.6vw;
		transform: translateX(-50%);
		width: 35.5vw;
	}
	
	.p-course-special__item-ttl {
		text-align: center;
		margin-bottom: 6.5vw;
	}
	
	.p-course-special__item-wrap {
		display: grid;
		gap: 0;
		grid-template-columns: repeat(1, 1fr);
		place-items: center;
		width: 70vw;
		margin: auto;
	}	

	.p-course-special__item-img {
		margin-bottom: 4.7vw;
	}

	.p-course-special__item-img img {
		height: auto;
		width: 100%;
		position: relative;
		z-index: 2;	
	}
	
	.p-course-special__item-txt {
		font-size: 3.382vw;
		font-weight: 400;
		letter-spacing: 0.271vw;
		line-height: 2.1428571429;
		position: relative;
		z-index: 2;
		text-align: justify;
	}

	.special_txt_item03 {
		display: block;
		content: "";
		margin: 4vw 0;
	}

	.p-course-special__item.item03 {
		padding: 14.9vw 6vw 18.6vw;
	}
	
	.p-course__works-items-wrap {
		background: #F2F2F2;
		height: 103.6vw;
		padding: 7.488vw 0 0;
		width: 100%;
	}
	
	.p-course__works-items {
		margin: auto;
		max-width: 82.126vw;
		width: 95%;
	}
	
	.p-course__works-item {
		padding: 0;
	}
	
	.p-course__works-item-link img {
		height: auto;
		margin-bottom: 0.725vw;
		width: 100%;
	}
	
	.p-course__works-item-area {
		background: #929292;
		color: #fff;
		display: block;
		font-size: 3.382vw;
		font-weight: 700;
		letter-spacing: 0.406vw;
		line-height: 1.5714285714;
		margin-bottom: 4.8vw;
		padding: 1.1vw 0;
		text-align: center;
	}
	
	.p-course__works-item-name {
		font-size: 4.106vw;
		font-weight: 700;
		letter-spacing: 0.29vw;
		line-height: 1.5882352941;
		margin-bottom: 0.8vw;
	}
	
	.p-course__works-item-txt {
		font-size: 3.382vw;
		font-weight: 400;
		letter-spacing: 0.271vw;
		line-height: 2;
	}

	.p-course-special__item-txt2 {
		font-size: 3.382vw;
		font-weight: 400;
		letter-spacing: 0.271vw;
		line-height: 2;
		margin-bottom: 8.4vw;
	}

	.p-course-special__item-txt2.item04 {
		margin-bottom: 9.4vw;
	}
	
	.p-course-special__item-more2 {	
		margin-bottom: 12vw;
	}

	.p-course-special__item-more{
		font-size: 4.348vw;
		font-weight: bold;
		letter-spacing: 0.348vw;		
		line-height: 2;
		margin-bottom: -0.6vw;
	}

	.p-course-special__item-more2 li {
		font-size: 3.865vw;
		font-weight: bold;
		letter-spacing: 0.309vw;
		line-height: 1.75;
		padding-left: 4.8vw;
		position: relative;
		margin-bottom: 2.8vw;
	}

	.p-course-special__item-more2 li:before {
		content: "・";
		position: absolute;
		font-size: 3.865vw;
		line-height: 2;
		letter-spacing: 0.309vw;
		top: 0;
		left: 0;
	}
	
	.p-course-special__item-txt3 {
		font-size: 3.382vw;
		font-weight: 400;
		letter-spacing: 0.271vw;
		line-height: 2;
		margin-bottom: 8.4vw;	
	}
	
	.slide-arrow.next-arrow.course {
		aspect-ratio: 1;
		position: absolute;
		right: -7.2vw;
		top: 19.4vw;
		width: 6vw;
		z-index: 1;
	}
	
	.slide-arrow.prev-arrow.course {
		aspect-ratio: 1;
		left: -7.2vw;
		position: absolute;
		top: 19.4vw;
		width: 6vw;
		z-index: 1;
	}
	
}
	