@charset "UTF-8";


/* ⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎ 共通部分 ⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎*/

.pc {
	display: block;
}

.sp {
	display: none;
}

p {
	color: #333333;
	font-size: 18px;
	font-weight: 400;
	line-height: 2;
}

#subpage_top_pc {
	padding-top: 110px;
}

#subpage_top_pc img {
	width: 100%;
}

.wrapper {
	max-width: 1120px;
	margin-left: auto;
	margin-right: auto;
	padding: 0 3%;
}

/* セクションタイトル */
.contents_title h3 {
	font-size: 42px;
	font-weight: 700;
	letter-spacing: 0.05em;
	background: linear-gradient(90deg, #006cb8, #1bb8ce);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.contents_title h3 span {
	font-size: 27px;
	font-weight: 400;
	font-family: "arial";
	display: block;
	position: relative;
	margin-bottom: 20px;

	background: linear-gradient(90deg, #006cb8, #1bb8ce);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.contents_title h3 span::after {
	content: "";
	position: absolute;
	top: 115%;
	left: -680px;
	width: 1090px;
	height: 1px;
	background-image: url("/mirai/images/title_line.webp");
	transform: translateY(-50%);
}

.contents_title h4 {
	font-size: 25px;
	font-weight: 400;
	position: relative;
	padding-left: 80px;
}

.contents_title h4::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 50px;
	height: 50px;
	background-image: url("/mirai/images/title-icon.webp");
	background-size: contain;
	background-repeat: no-repeat;
	transform: translateY(-50%);
}

/* メッセージ */
.msg_box {
	display: flex;
	justify-content: space-between;
	gap: 100px;
}

.msg_left {
	width: 65%;
}

.msg_right {
	width: 35%;
}

.msg_left h3 {
	font-family: a-otf-ryumin-pr6n, serif;
	font-size: 36px;
	font-weight: 600;
	color: #006cb8;
	margin-bottom: 50px;
}

.msg_left p {
	margin-bottom: 50px;
}

.msg_left .sign_box p {
	font-family: a-otf-ryumin-pr6n, serif;
	font-size: 22px;
	margin-bottom: 0;
}

.msg_left .sign_box .name_box {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	font-size: 22px;
}

.msg_left .sign_box .name_box .name {
	font-size: 39px;
	margin-right: 15px;
}

.msg_left .sign_box .name_box .department {
	margin-right: 30px;
}

.msg_left .sign_box .name_box .department,
.msg_left .sign_box .name_box .furigana {
	font-size: 15px;
	line-height: 1.2;
}

.msg_right img {
	width: 100%;
}

/* カラーBG */
.bg_green {
	background: linear-gradient(90deg, #fdfee7, #e8f4e5);
	padding: 90px 0;
}

.bg_brown {
	background-color: #c6bb9e;
	padding: 75px 0;
}

.bg_brown h4 {
	text-align: center;
	font-size: 30px;
	font-weight: 700;
	color: #333333;
	line-height: 2;
}


/* ⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎Aboutページ ⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎*/

/* ホームについて */

.contents_box {
	display: flex;
	margin: 50px 0 90px 0;
	gap: 40px;
}

.contents_left {
	width: 65%;
}

.contents_right {
	width: 35%;
}

.contents_right img {
	width: 34vw;
	margin-right: calc(50% - 50vw);
}

/* 拠点について */
.base_area .img_box {
	padding-bottom: 45px;
}

.base_area .img_box img {
	width: 100%;
	margin-bottom: 10px;
}

.base_area .img_box p {
	font-size: 14px;
}

/* 学研グループについて */
.bg_white h3 {
	text-align: center;
	font-size: 38px;
	font-weight: 700;
	color: #333333;
	background: none;
	-webkit-text-fill-color: #333333;
	margin-bottom: 80px;
}

.bg_white h4 {
	text-align: center;
	font-size: 30px;
	font-weight: 700;
	color: #333333;
	line-height: 2;
}


/* ⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎Staffページ ⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎*/
/* スタッフの声① */
.staff_voice_area .contents_title h3 span::after {
	top: 115%;
	left: -930px;
	width: 1090px;
	height: 1px;
}

/* スタッフの声② */
.voice_box_01,
.voice_box_02 {
	display: flex;
	justify-content: space-between;
	align-items: start;
	gap: 60px;
}

.voice_box_01 .voice_box_left {
	width: 35%;
	order: 1;
}

.voice_box_01 .voice_box_right {
	width: 65%;
	order: 2;
}

.voice_box_02 .voice_box_left {
	width: 65%;
}

.voice_box_02 .voice_box_right {
	width: 35%;
}

.voice_box_01 img,
.voice_box_02 img {
	width: 100%;
}

.voice_box_01 img,
.voice_box_02 img {
	width: 100%;
}

/* スタッフの声③ */
.feature_area {
	width: 100%;
}

.square_blue {
	margin: 0 auto;
	width: 730px;
	height: 145px;
	background: linear-gradient(0deg, #006ebd, #00bad0);
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 50px;
}

.square_blue h3 {
	font-family: a-otf-ryumin-pr6n, serif;
	font-size: 30px;
	font-weight: 600;
	color: #fff;
	text-align: center;
	background: none;
	-webkit-text-fill-color: #fff;
}

.feature_area h4 {
	font-family: a-otf-ryumin-pr6n, serif;
	font-size: 33px;
	font-weight: 600;
	color: #006cb8;
	text-align: center;
	margin-bottom: 50px;
}

.feature_area p {
	margin: 0 auto;
	width: 70%;
	color: #595757;
	margin-bottom: 50px;
}

.feature_box {
	display: flex;
	justify-content: space-around;
}

.feature_box_left,
.feature_box_right {
	width: 45%;
}

.feature_box_left img,
.feature_box_right img {
	width: 100%;
}

.feature_box_left p,
.feature_box_right p {
	width: 100%;
}

/* 代表の声 */
.executive_voice_area .contents_title h3 span::after {
	top: 115%;
	left: -1005px;
	width: 1090px;
	height: 1px;
}

.recruit_msg_area {
	width: 100%;
}

.gradient_line {
	border: none;
	height: 1px;
	background: linear-gradient(90deg, #0072ff, #00c6ff);
	margin: 0;
}

.recruit_msg {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 150px;
}

.recruit_msg h4 {
	font-family: "Zen Maru Gothic", sans-serif;
	font-size: 48px;
	font-weight: 600;
	color: #18afcb;
	text-align: center;
}

.recruit_CTA {
	display: flex;
	justify-content: center;
	align-items: center;
}

.recruit_CTA p {
	padding: 60px 0;
	text-align: left;
}

.recruit_btn {
	text-align: center;
}

.entry_btn {
	display: inline-block;
	padding: 30px 80px;
	font-size: 23px;
	font-weight: 600;
	color: #fff;
	background: linear-gradient(90deg, #006ebd, #00bad0);
	text-decoration: none;
	border-radius: 6px;
	text-align: center;
	cursor: pointer;
	transition: all 1s ease;
}

.entry_btn:hover,
.entry_btn:focus {
	background: #00bad0;

}



/* ⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎ SPサイズ ⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎*/

@media screen and (max-width: 999px) {

	/* ⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎ 共通部分 ⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎*/

	.pc {
		display: none;
	}

	.sp {
		display: block;
	}

	p {
		color: #333333;
		font-size: 16px;
		font-weight: 400;
		line-height: 2;
	}

	.wrapper {
		width: 92%;
		max-width: 640px;
		margin-left: auto;
		margin-right: auto;
	}

	#subpage_top_sp {
		padding-top: 100px;
	}

	#subpage_top_sp img {
		width: 100%;
	}

	.wrapper {
		max-width: 1120px;
		margin-right: auto;
		margin-left: auto;
		padding: 0 20px;
		/* SP時の左右余白 */
		box-sizing: border-box;
	}

	/* セクションタイトル */
	.contents_title h3 {
		font-size: 24px;
	}

	.contents_title h3 span {
		font-size: 15px;
	}

	.contents_title h3 span::after {
		left: -865px;
	}

	.contents_title h4 {
		font-size: 18px;
		padding-left: 60px;
	}

	.contents_title h4::before {
		content: "";
		position: absolute;
		top: 50%;
		left: 0;
		width: 50px;
		height: 50px;
		background-image: url("/mirai/images/title-icon.webp");
		background-size: contain;
		background-repeat: no-repeat;
		transform: translateY(-50%);
	}

	/* メッセージ */
	.msg_box {
		display: flex;
		flex-wrap: wrap;
		gap: 30px;
	}

	.msg_left {
		width: 100%;
	}

	.msg_right {
		width: 100%;
		max-width: 400px;
		margin: 0 auto;
	}

	.msg_left h3 {
		font-size: 20px;
		margin-bottom: 30px;
	}

	.msg_left .sign_box p {
		font-size: 16px;
		margin-bottom: 10px;
	}

	.msg_left .sign_box .name_box {
		flex-direction: column;
		align-items: flex-start;
		font-size: 18px;
	}

	.msg_left .sign_box .name_box .name {
		font-size: 24px;
		margin-bottom: 0;
	}

	.msg_left .sign_box .name_box .department,
	.msg_left .sign_box .name_box .furigana {
		font-size: 14px;
		letter-spacing: 0.1em;
		margin-bottom: 0;
	}

	.msg_right img {
		width: 100%;
	}

	/* カラーBG */
	.bg_green {
		padding: 75px 0;
	}

	.bg_brown {
		padding: 60px 0;
	}

	.bg_brown h4 {
		text-align: center;
		font-size: 18px;
	}


	/* ⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎Aboutページ ⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎*/

	/* ホームについて */
	.contents_box {
		display: flex;
		flex-wrap: wrap;
		margin: 50px 0 90px 0;
		gap: 40px;
	}

	.contents_left {
		width: 100%;
	}

	.contents_right {
		width: 100%;
		max-width: 500px;
		margin: 0 auto;
	}

	.contents_right img {
		width: 100%;
		margin-right: 0;
	}

	/* 拠点について */
	.base_area .img_box img {
		max-width: 500px;
		margin: 0 auto;
	}

	.base_area .img_box p {
		font-size: 12px;
		margin-top: 20px;
	}

	/* 学研グループについて */
	.bg_white h3 {
		font-size: 24px;
		margin-bottom: 30px;
	}

	.bg_white h4 {
		text-align: center;
		font-size: 18px;
		font-weight: 700;
		color: #333333;
		line-height: 2;
	}


	/* ⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎Staffページ ⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎⬜︎*/
	/* スタッフの声① */
	.staff_voice_area .contents_title h3 span::after {
		top: 115%;
		left: -1000px;
		width: 1090px;
		height: 1px;
	}

	/* スタッフの声② */
	.voice_box_01,
	.voice_box_02 {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		gap: 60px;
	}

	.voice_box_01 .voice_box_left {
		width: 100%;
		max-width: 500px;
		margin-left: auto;
		margin-right: auto;
		order: 2;
	}

	.voice_box_01 .voice_box_right {
		width: 100%;
		order: 1;
	}

	.voice_box_02 .voice_box_left {
		width: 100%;
	}

	.voice_box_02 .voice_box_right {
		width: 100%;
		max-width: 500px;
		margin-left: auto;
		margin-right: auto;
	}

	/* スタッフの声③ */
	.feature_area {
		width: 100%;
	}

	.square_blue {
		width: 90%;
		height: auto;
		padding: 20px;
		margin-bottom: 50px;
	}

	.square_blue h3 {
		font-size: 24px;
		text-align: center;
		
	}

	.feature_area h4 {
		font-size: 20px;
		text-align: center;
	}

	.feature_area p {
		width: 90%;
	}

	.feature_box {
		flex-wrap: wrap;
	}

	.feature_box_left,
	.feature_box_right {
		width: 80%;
	}

	.feature_box_left img,
	.feature_box_right img {
		width: 100%;
		margin-bottom: 20px;
	}

	.feature_box_left p,
	.feature_box_right p {
		width: 90%;
	}

	/* 代表の声 */
	.executive_voice_area .contents_title h3 span::after {
		top: 115%;
		left: -1040px;
		width: 1090px;
		height: 1px;
	}

	.recruit_msg h4 {
		font-size: 24px;
	}

	.recruit_CTA p {
		padding: 60px 0;
		text-align: left;
	}

	.recruit_btn {
		text-align: center;
	}

	.entry_btn {
		padding: 30px 60px;
		font-size: 18px;
	}






}
