@charset "utf-8";
/* /recruit/fresh/message/css/index.css */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');
html {
  /* スムーススクロールを有効にする */
	scroll-behavior: smooth;
	scroll-padding-top: calc(80px + 10px); 
	@media screen and (max-width: 959px) {
		scroll-padding-top: calc(60px + 10px); 
	}
}

/*---------------------*/

.fontNotoSans {
	font-family: "Noto Sans JP", sans-serif;
}
:root{
	--main-color:#E99F0C;
}

a.hover:hover {
	filter: alpha(opacity=70);
	-moz-opacity:0.7;
	opacity:0.7;
	transition-duration: 0.3s;
}

/* -------------------------------------------------------------------- 
/* Clearfix
-------------------------------------------------------------------- */

.clearfix:after { content: ""; display: block; clear: both; }
.clearfix { display: inline-block; }
/*\*/
* html .clearfix { height: 1%; }
.clearfix { display: block; }
/**/


/*-----------------------*/

.pc {
	display: block;
}

.sp {
	display: none;
}

.pcBr {
	display: inline;
}

.spBr {
	display: none;
}

/* =================
Keyvisual
================= */
.Keyvisual {
	position: relative;
	width: 100%;
	height: 450px;
	margin-bottom: 120px;
}

.Kv-title {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	max-width: 1024px;
	width: 100%;
	color: #fff;
	text-align: left;
	z-index: 1;
}

.Kv-title h2 {
	font-size: 6.4rem;
	line-height: 1.2;
}

.Kv-title .Label {
	display: inline-block;
    font-size: 2.2rem;
    color: var(--main-color);
    padding: 6px 13px;
    border-radius: 100px;
    font-weight: 600;
    letter-spacing: 0.1rem;
    line-height: normal;
    background: #fff;
	margin-bottom: 8px;
}

.Keyvisual img {
	width: 100%;
	height: 450px;
	object-fit: cover;
}

.clip-me {
	clip-path: url(#clipshape);
}

/* =================
コンテンツ
================= */
.Heading__h3 {
	position: relative;
    font-size: 3.7rem;
    margin-bottom: 48px;
    padding-bottom: 20px;
    letter-spacing: 0.1rem;
}

.Heading__h3::before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	bottom: 0;
	background: rgb(54, 126, 238);
	background: linear-gradient(90deg, rgba(54, 126, 238, 1) 0%, rgba(139, 207, 210, 1) 100%);
	border-radius: 100px;
	width: 38px;
	height: 7px;
}

.Group__messeage {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.Group__messeage figure {
	border-radius: 16px;
	overflow: hidden;
	width: 50%;
}

.post {
	font-size: 1.8rem;
}

.Caption {
	font-size: 1.8rem;
	font-weight: 400;
	margin-top: 60px;
	margin-bottom: 100px;
	font-family: "Noto Sans JP", sans-serif;
}


@media screen and (max-width: 1023px) {
	.Kv-title {
		padding-left: 1.5rem;
	}
}

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

	/*-----------------------*/

	.pc {
		display: none;
	}
	.sp {
		display: block;
	}
	.pcBr {
		display: none;
	}
	.spBr {
		display: inline;
	}

	/* =================
	Keyvisual
	================= */
	.Keyvisual {
		width: 100%;
		height: 280px;
		margin-bottom: 60px;
	}

	.Kv-title {
		top: calc(50% - 15px);
	}

	.Kv-title h2 {
		font-size: 3.6rem;
		line-height: 1.2;
	}

	.Kv-title .Label {
		font-size: 1.6rem;
		margin-top: 10px;
	}

	.Keyvisual img {
		width: 100%;
		height: 280px;
		object-fit: cover;
	}

	/* =================
	コンテンツ
	================= */
	.Heading__h3 {
		font-size: 2.6rem;
		margin-bottom: 26px;
		padding-bottom: 16px;
	}

	.Group__messeage {
		flex-direction: column-reverse;
	}

	.Group__messeage figure {
		width: 100%;
	}

	.Messeage__text {
		margin-bottom: 32px;
	}

	.Caption {
		font-size: 1.6rem;
	}

	.Group__messeage {
		align-items: flex-start;
	}
}


.sec__detail {
	margin: 120px auto 50px;
}
.sec__group {
	margin: 0 auto 120px;
}
.detail {
	margin-bottom: 60px;
	line-height: 1.3;
}
.detail_ttl {
	font-size: 20px;
	margin-bottom: 10px;
}
.detail_link {
	font-size: 20px;
	font-weight: 500;
	margin-bottom: 10px;
}
.detail_link a {
	transition-duration: 0.3s;
	text-decoration: underline;
	color: var(--main-color);
}
.detail_link a:hover {
	transition-duration: 0.3s;
	text-decoration: inherit;
	color: inherit;
	@media screen and (max-width: 449px) {
		text-decoration: none;
		color: none;
	}
}
.detail_link a:active {
	@media screen and (max-width: 449px) {
		text-decoration: inherit;
		color: inherit;
	}
}
.detail_txt {
	font-size: 16px;
	font-weight: 500;
}
.anchors {
	display: flex;
	justify-content: flex-start;
	gap: 20px 40px;
	flex-wrap: wrap;
	@media screen and (max-width: 767px) {
		flex-direction: column;
	}
}
.anchor a {
	font-size: 18px;
	position: relative;
	height: 60px;
	display: block;
	padding-top: 5px;
	@media screen and (max-width: 767px) {
		padding-top: 0;
		height: auto;
		text-decoration: underline;
	}
}
.anchor a:hover {
	transition-duration: 0.3s;
	text-decoration: underline;
	color: var(--main-color);
	@media screen and (max-width: 767px) {
		text-decoration: inherit;
		color: inherit;
	}
}
.anchor a:active {
	@media screen and (max-width: 767px) {
		text-decoration: none;
		opacity: .5;
	}
}
.anchor a::before {
	content: "";
	border-right: 1px solid #ddd;
	position: absolute;
	right: -20px;
	top: 0;
	height: 60px;
		@media screen and (max-width: 767px) {
			border: none;
		}
}
.anchor:last-of-type a::before {
	border: none;
}

.group {
	margin-bottom: 150px;
	@media screen and (max-width: 959px) {
		margin-bottom: 150px;
	}
}
.group_h {
	background-color: var(--main-color);
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	box-sizing: border-box;
	color: #ffffff;
	line-height: 1.0em;
	font-weight: bold;
	margin-bottom: 30px;
	font-size: 40px;
	padding: 29px 20px;
	border-radius: 24px;
	@media screen and (max-width: 767px) {
		font-size: 30px;
		padding: 20px 10px;
		border-radius: 12px;
	}
}
.categorys {
	
}
.category {
	margin-bottom: 50px;
	
}
.category_ttl {
	line-height: 1.5;
	font-size: 18px;
	margin-bottom: 20px;
}
.category_ttl span {
	display: block;
	font-size: 16px;
	font-weight: 500;
}
.course {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	gap: 32px;
	@media screen and (max-width: 1023px) {
		gap: 2vw;
	}
	@media screen and (max-width: 767px) {
		gap: 3vw;
	}
}
.course_ttl {
	line-height: 1.3;
	font-size: 18px;
	width: 320px;
	height: 67px;
	@media screen and (max-width: 1023px) {
		width: calc((100% - 4vw) / 3);
	}
	@media screen and (max-width: 767px) {
		width: calc((100% - 6vw) / 2);
	}
	@media screen and (max-width: 449px) {
		width: 100%;
	}
}
.course_ttl a {
	border-radius: 12px;
	border: 2px solid var(--main-color);
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	transition-duration: 0.3s;
	text-align: center;
}
.course_ttl:not(:has(> a)) {
	border-radius: 12px;
	border: 2px solid #ddd;
	background-color: #ccc;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	transition-duration: 0.3s;
}
.course_ttl a:hover {
	background-color: var(--main-color);
	color: white;
	transition-duration: 0.3s;
	@media screen and (max-width: 449px) {
		background-color: inherit;
		color: inherit;

	}
}
.course_ttl a:active {
	@media screen and (max-width: 449px) {
		background-color: var(--main-color);
		color: white;
		transition-duration: 0.3s;
	}
}
.category {
	
}
.category_ttl {
	
}
.course {
	
}
.course_ttl {
	
}