@charset "UTF-8";

/* Layout */

.l-body {
	width: 100%;
	min-width: 1100px;
	overflow: clip;
}

.l-body.is-fixed {
	position: fixed;
}

.l-header {
	position: fixed;
	top: 0;
	left: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 100%;
	height: 70px;
	background: #ffffff;
	padding: 0 15px;
	z-index: 1000;
}

.l-lp-common-wrapper {
	position: relative;
	width: 92%;
	margin-left: auto;
	margin-right: auto;
}

.l-wrapper {
	position: relative;
	width: 84%;
	margin-left: auto;
	margin-right: auto;
}

.l-navi {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(255, 255, 255, 0.95);
	overflow-y: auto;
	z-index: 1000;
}

.l-navi__inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	width: 315px;
	margin-left: auto;
	margin-right: auto;
	padding: 80px 0 10px;
	height: 100%;
}

.header-logo {
	position: relative;
	z-index: 1100;
	width: 118px;
}

.header-buttons {
	position: relative;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0 1px;
	width: 152px;
	height: 44px;
	border-radius: 5px;
	overflow: hidden;
	margin-right: 14px;
	z-index: 1100;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

.header-buttons__item {
	color: #ffffff;
	font-size: 1.1rem;
	font-weight: 700;
	line-height: 1.18;
	text-align: center;
}

.header-buttons__item--green {
	background: #006441;
}

.header-buttons__item--yellow {
	background: #E99600;
}

.header-buttons__item--orange {
	background: #E96E00;
	font-size: 0.9rem;
	font-family: "Roboto", sans-serif;
	line-height: 1.11;
}

.header-buttons__item a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	height: 100%;
	text-decoration: none;
}

.header-buttons__icon {
	display: none;
}

.menu-btn {
	position: relative;
	width: 30px;
	height: 30px;
	background: none;
	border: none;
	z-index: 1100;
}

.menu-btn span {
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	width: 20px;
	height: 1px;
	background: #646464;
	-webkit-transition: 0.4s;
	transition: 0.4s;
}

.menu-btn span:first-child {
	-webkit-transform: translate(-50%, calc(-50% - 8px));
	transform: translate(-50%, calc(-50% - 8px));
}

.menu-btn span:nth-child(2) {
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.menu-btn span:nth-child(3) {
	-webkit-transform: translate(-50%, calc(-50% + 8px));
	transform: translate(-50%, calc(-50% + 8px));
}

.menu-btn.is-open span:first-child {
	-webkit-transform: translate(-50%, -50%) rotate(45deg);
	transform: translate(-50%, -50%) rotate(45deg);
}

.menu-btn.is-open span:nth-child(2) {
	opacity: 0;
}

.menu-btn.is-open span:nth-child(3) {
	-webkit-transform: translate(-50%, -50%) rotate(-45deg);
	transform: translate(-50%, -50%) rotate(-45deg);
}

.header {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.navi-btn {
	display: block;
	font-size: 1.3rem;
	font-weight: 700;
	line-height: 2.23;
	text-align: center;
	background: #06C755;
	color: #ffffff;
	width: 260px;
	padding: 10px 0;
	margin-left: auto;
	margin-right: auto;
	margin-top: 40px;
	text-decoration: none;
}

.navi-btn::before {
	content: "";
	width: 22px;
	aspect-ratio: 1/1;
	display: inline-block;
	background: url(../img/lp-common/icon_line.svg) no-repeat center/contain;
	margin-right: 5px;
	vertical-align: middle;
}

.navi-main-wrap {
	width: 100%;
}

.navi {
	border-top: 1px solid rgba(0, 0, 0, 0.5);
	width: 100%;
	font-size: 1.5rem;
}

.navi:last-child {
	border-bottom: 1px solid rgba(0, 0, 0, 0.5);
}

.navi__item {
	width: 100%;
	font-size: 1.3rem;
	font-weight: 700;
	line-height: 1.46;
}

.navi__item:not(:last-child) {
	border-bottom: 1px dashed rgba(0, 0, 0, 0.5);
}

.navi__item > a {
	padding: 15px 20px 15px 10px;
}

.navi__item > a span {
	display: block;
}

.navi__item a {
	display: block;
	position: relative;
	text-decoration: none;
}

.navi__item a::after {
	position: absolute;
	top: 50%;
	right: 3px;
	-webkit-transform: translateY(-50%) rotate(45deg);
	transform: translateY(-50%) rotate(45deg);
	content: "";
	width: 4px;
	height: 4px;
	display: block;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
}

.navi__strong {
	color: #004d85;
	letter-spacing: 0.05em;
}

.navi__children {
	border-top: 1px solid rgba(0, 0, 0, 0.5);
}

.navi__child {
	font-size: 1.3rem;
	font-weight: 700;
	line-height: 1.46;
}

.navi__child:not(:last-child) {
	border-bottom: 1px dotted rgba(0, 0, 0, 0.5);
}

.navi__child > a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	text-decoration: none;
	padding: 10px 20px 10px 10px;
	gap: 10px;
}

.navi-sub {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 20px 40px;
	margin-top: 30px;
}

.navi-sub__item {
	font-size: 1.5rem;
	font-weight: 700;
	letter-spacing: 0.05em;
}

.navi-sub__item a {
	text-decoration: none;
}

.navi-sub__item a::before {
	content: "";
	display: inline-block;
	width: 10px;
	aspect-ratio: 1/1;
	border-radius: 50%;
	background: #004d85;
	margin: 0 13px 2px 0;
}

.color-blue {
	color: #004d85;
}

.mainvisual {
	position: relative;
	overflow: hidden;
	background: url(../img/bg_mv_1_sp.jpg) no-repeat center/cover;
	color: #FFF;
	margin-top: 70px;
}

.mainvisual__main {
	padding: 48px 0 123px;
	max-width: 440px;
	margin-left: auto;
	margin-right: auto;
}

.mainvisual__title {
	max-width: 375px;
	width: 100vw;
	position: relative;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	aspect-ratio: 751/493;
}

.mainvisual__title span {
	display: block;
}

.mainvisual__title img {
	position: absolute;
	left: 0;
	-webkit-transform: translateX(-1%);
	transform: translateX(-1%);
	top: 0;
	left: 0;
	width: 100%;
	height: auto;
}

.mainvisual__text {
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.72;
	letter-spacing: 0.05em;
	margin-top: -8px;
}

.mainvisual__badge-wrap {
	position: absolute;
	top: 20px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	width: 89%;
}

.mainvisual__badge {
	width: 14rem;
	margin-left: auto;
	aspect-ratio: 1/1;
	border-radius: 50%;
	background: url(../img/bg_mv_badge_sp.png) no-repeat center/contain;
	text-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	gap: 0;
	font-size: 1.3rem;
	font-weight: 700;
	line-height: 1.5;
}

.mainvisual__badge__lg3 {
	font-size: 1.8rem;
}

.bg-dots {
	position: relative;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0, rgba(255, 255, 255, 0)), color-stop(25%, rgba(255, 255, 255, 0)), color-stop(25%, #f0f2f9), to(#f0f2f9)) repeat center top/10px 10px, -webkit-gradient(linear, left top, right top, color-stop(0, #e5eaf5), color-stop(25%, #e5eaf5), color-stop(25%, #f0f2f9), to(#f0f2f9)) repeat center top/10px 10px;
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, 0) 25%, #f0f2f9 25%, #f0f2f9 100%) repeat center top/10px 10px, linear-gradient(to right, #e5eaf5 0, #e5eaf5 25%, #f0f2f9 25%, #f0f2f9 100%) repeat center top/10px 10px;
}

.bg-dots--top::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	-webkit-transform: translate(-50%, -100%);
	transform: translate(-50%, -100%);
	display: block;
	width: 84%;
	height: 50px;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0, rgba(255, 255, 255, 0)), color-stop(25%, rgba(255, 255, 255, 0)), color-stop(25%, #f0f2f9), to(#f0f2f9)) repeat center bottom/10px 10px, -webkit-gradient(linear, left top, right top, color-stop(0, #e5eaf5), color-stop(25%, #e5eaf5), color-stop(25%, #f0f2f9), to(#f0f2f9)) repeat center bottom/10px 10px;
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, 0) 25%, #f0f2f9 25%, #f0f2f9 100%) repeat center bottom/10px 10px, linear-gradient(to right, #e5eaf5 0, #e5eaf5 25%, #f0f2f9 25%, #f0f2f9 100%) repeat center bottom/10px 10px;
}

.bg-sky {
	background: #d5e7f1;
}

.bg-white {
	background: #FFF;
}

.button-primary {
	position: relative;
	background: #000000;
	color: #FFF;
	border: none;
	padding: 0.5em 40px 0.7em;
	-webkit-box-shadow: none;
	box-shadow: none;
	text-decoration: none;
	border-radius: 0;
	font-size: 1.4rem;
	font-weight: 700;
	width: 270px;
	height: 60px;
	border-radius: 6px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	text-align: center;
	line-height: 1.5;
	-webkit-transition: 0.4s;
	transition: 0.4s;
	margin-left: auto;
	margin-right: auto;
}

.button-primary::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 22px;
	width: 1.2rem;
	height: 0.9rem;
	-webkit-mask: url(../img/icon_arrow_right_white.svg) no-repeat center/contain;
	mask: url(../img/icon_arrow_right_white.svg) no-repeat center/contain;
	display: block;
	background: currentColor;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.feature {
	padding-top: 1px;
}

.feature:last-child {
	padding-bottom: 50px;
}

.feature__2col-item:not(:first-child) {
	margin-top: 30px;
}

.feature__label {
	text-align: center;
	margin-top: -31px;
}

.feature__label__inner {
	display: inline-block;
	position: relative;
	font-size: 1.7rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	background: #004d85;
	color: #FFFFFF;
	padding: 1.25em 0.5em;
	min-width: 25.5rem;
}

.feature__label__inner::before,
.feature__label__inner::after {
	content: "";
	display: block;
	width: 10px;
	height: 100%;
	position: absolute;
	top: 0;
}

.feature__label__inner::before {
	left: 0;
	-webkit-transform: translateX(-100%);
	transform: translateX(-100%);
	background: -webkit-gradient(linear, right top, left bottom, color-stop(0, #004d85), color-stop(50%, #004d85), color-stop(50%, transparent), to(transparent));
	background: linear-gradient(to left bottom, #004d85 0, #004d85 50%, transparent 50%, transparent 100%);
}

.feature__label__inner::after {
	right: 0;
	-webkit-transform: translateX(100%);
	transform: translateX(100%);
	background: -webkit-gradient(linear, left top, right bottom, color-stop(0, #004d85), color-stop(50%, #004d85), color-stop(50%, transparent), to(transparent));
	background: linear-gradient(to right bottom, #004d85 0, #004d85 50%, transparent 50%, transparent 100%);
}

.feature__title {
	font-size: 2.4rem;
	letter-spacing: -0.03em;
	line-height: 1.75;
	font-family: YakuHanMP, "Noto Serif JP", serif;
	font-weight: 600;
	color: #004d85;
	margin-top: 20px;
}

.feature__title__strong {
	background: -webkit-gradient(linear, left bottom, left top, from(transparent), color-stop(0.15em, transparent), color-stop(0.15em, #ffe200), color-stop(0.42em, #ffe200), color-stop(0.42em, transparent), to(transparent));
	background: linear-gradient(to top, transparent 0%, transparent 0.15em, #ffe200 0.15em, #ffe200 0.42em, transparent 0.42em, transparent 100%);
}

.feature__title__note {
	font-size: 1.2rem;
	vertical-align: top;
	margin-top: 0.4em;
	display: inline-block;
}

.feature__note-1 {
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.7;
	margin-top: 10px;
	display: block;
}

.feature__text {
	line-height: 1.85;
	color: #004d85;
	margin-top: 20px;
	text-align: justify;
}

.feature__text__strong {
	color: #e95513;
	font-weight: 700;
}

.box-pc-kadomaru {
	width: 100vw;
	position: relative;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.box-pc-kadomaru__inner {
	position: relative;
	width: 84%;
	margin-left: auto;
	margin-right: auto;
}

.box-pc-kadomaru__inner--1 {
	padding: 40px 0 80px;
}

.job-offer-wrap {
	margin-top: 30px;
}

.job-offer__heading {
	font-size: 3rem;
	font-weight: 700;
	line-height: 1.5;
	color: #004d85;
	text-align: center;
}

.job-offer__main {
	margin-top: 24px;
}

.job-offer__description {
	line-height: 1.85;
	color: #004d85;
	text-align: justify;
}

.job-offer__figure {
	margin-top: 16px;
}

.job-offer__figure img {
	width: 305px;
	display: block;
	margin: 0 auto;
}

.job-offer__figure__note {
	font-size: 1rem;
	font-weight: 500;
	text-align: right;
	margin-top: 13px;
}

.job-offer__point {
	border: 1px solid #e95513;
	padding: 9px 9px 15px;
	margin-top: 35px;
}

.job-offer__point__heading {
	background: #e95513;
	color: #FFFFFF;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
	padding: 11px 0;
}

.job-offer__point__content {
	margin-top: 15px;
	padding: 0 10px;
}

.job-offer__point__text {
	font-size: 1.3rem;
	line-height: 1.7;
	text-align: justify;
}

.result {
	background: #FFF;
	padding-top: 1px;
	padding-bottom: 27px;
	margin-top: 40px;
}

.result__head {
	background: #004d85;
	color: #FFF;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: calc(100% - 40px);
	margin-top: -11px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	padding: 13px 0 14px;
}

.result__head::after {
	content: "";
	display: block;
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	height: 20px;
	background: -webkit-gradient(linear, left top, right bottom, color-stop(0, #004d85), color-stop(50%, #004d85), color-stop(50%, transparent), to(transparent)) no-repeat left top/50% 100%, -webkit-gradient(linear, right top, left bottom, color-stop(0, #004d85), color-stop(50%, #004d85), color-stop(50%, transparent), to(transparent)) no-repeat right top/50% 100%;
	background: linear-gradient(to right bottom, #004d85 0, #004d85 50%, transparent 50%, transparent 100%) no-repeat left top/50% 100%, linear-gradient(to left bottom, #004d85 0, #004d85 50%, transparent 50%, transparent 100%) no-repeat right top/50% 100%;
}

.result__heading {
	font-size: 2.4rem;
	font-weight: 700;
}

.result__note {
	font-size: 1.2rem;
	line-height: 1.3;
	position: relative;
	padding: 0 3px 2px 24px;
	margin-left: 20px;
}

.result__note::before {
	content: "";
	display: block;
	width: 2px;
	height: 100%;
	background: radial-gradient(circle, #FFF 1px, transparent 1px) repeat-y center top/100% 5px;
	position: absolute;
	top: 0;
	left: 0;
}

.result__content {
	width: calc(100% - 40px);
	position: relative;
	margin: 33px auto 0;
}

.result__text {
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.666666;
	text-align: justify;
	color: #004d85;
}

.rate {
	margin-top: 25px;
}

.rate__main {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	gap: 22px;
}

.rate__label {
	border-radius: 6px;
	color: #FFF;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.1;
	text-align: center;
	padding: 10px 0;
	background: linear-gradient(135deg, #f08e42 0, #f08e42 50%, #ec6d34 50%, #ec6d34 100%);
}

.rate__label span {
	font-size: 1.3rem;
	font-weight: 500;
}

.rate__figure {
	margin-top: 23px;
	text-align: center;
}

.rate__note {
	font-size: 1.2rem;
	line-height: 1.625;
	text-align: justify;
	margin-top: 26px;
}

.ranking {
	background: #004d85;
	color: #FFF;
	border-radius: 10px;
	padding: 26px 0 24px;
}

.ranking__heading {
	font-weight: 700;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	line-height: 1.4;
}

.ranking__heading__item-1 {
	font-size: 1.8rem;
}

.ranking__heading__item-2 {
	font-size: 2.7rem;
	color: #fff262;
}

.ranking__heading__item-2 span {
	font-size: 1.4rem;
	font-weight: 400;
	vertical-align: top;
	display: inline-block;
	margin-top: 0.3em;
}

.ranking__heading__item-3 {
	font-size: 1.8rem;
	color: #fff262;
}

.ranking__content {
	max-width: 275px;
	margin: 21px auto 0;
}

.reason-head {
	padding: 0 0 50px;
	background: url(../img/bg_reason_head_sp.png) no-repeat center/cover;
}

.reason-head__text {
	text-align: center;
}

.reason-head__text img {
	width: 380px;
}

.reason-content {
	padding-bottom: 50px;
}

.reason {
	position: relative;
}

.reason:not(:first-child) {
	margin-top: 30px;
	padding-top: 30px;
}

.reason:not(:first-child)::before {
	content: "";
	width: 100vw;
	height: 1px;
	position: absolute;
	top: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	background: #3d3b83;
}

.reason__heading {
	font-family: YakuHanMP, "Noto Serif JP", serif;
	font-weight: 600;
	font-size: 2.6rem;
	letter-spacing: -0.05em;
	text-align: center;
	color: #3d3b83;
	line-height: 1.53;
	margin-bottom: 28px;
}

.reason__heading img {
	width: 9.3rem;
	display: block;
	margin: 0 auto 20px;
}

.reason__heading span {
	color: #c0599c;
}

.career-support {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 7px;
	padding-bottom: 34px;
}

.career-support__item {
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 2;
	gap: 13px;
}

.career-support__label {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	font-size: 1.7rem;
	font-weight: 700;
	line-height: 1.41;
	text-align: center;
}

.career-support__label__note {
	font-size: 1.3rem;
	font-weight: 500;
	display: block;
}

.career-support__content {
	display: block;
	text-align: center;
	background: #FFF;
	color: #3d3b83;
	border-radius: 5px;
	padding: 21px 0 10px;
}

.adviser__content {
	background: #FFF;
	width: 100vw;
	position: relative;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	padding: 30px 8vw 25px;
}

.adviser__main__heading {
	position: relative;
	font-size: 2.4rem;
	font-weight: 700;
	text-align: center;
	border-bottom: 1px solid currentColor;
	color: #6a71b3;
	padding-bottom: 15px;
}

.adviser__main__heading::before,
.adviser__main__heading::after {
	content: "";
	display: block;
	width: 4px;
	aspect-ratio: 1/1;
	border-radius: 50%;
	background: currentColor;
	position: absolute;
	bottom: 0;
	-webkit-transform: translateY(50%);
	transform: translateY(50%);
}

.adviser__main__heading::before {
	left: 0;
}

.adviser__main__heading::after {
	right: 0;
}

.adviser__main__text {
	font-size: 1.4rem;
	line-height: 1.85;
	margin-top: 24px;
	text-align: justify;
}

.adviser__main__text strong {
	font-weight: 700;
	color: #c0599c;
	text-decoration: underline;
	text-underline-offset: -0.2em;
	text-decoration-color: #fff262;
	text-decoration-thickness: 0.6em;
}

.adviser__sub {
	position: relative;
	margin-top: 28px;
	padding-top: 33px;
}

.adviser__sub::after {
	content: "";
	display: block;
	background: radial-gradient(circle, #6a71b3 1px, transparent 1px) repeat-x center top/6px 100%;
	width: 100%;
	height: 4px;
	position: absolute;
	top: 0;
	left: 0;
}

.adviser__sub__heading {
	background: #6a71b3;
	color: #FFF;
	font-size: 1.8rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-align: center;
	border-radius: 6px;
	padding: 10px 10px 11px;
}

.adviser__sub__list {
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.625;
	margin-top: 15px;
}

.adviser__sub__list li::before {
	content: "▶︎ ";
	color: #6a71b3;
	font-size: 80%;
	vertical-align: middle;
	display: inline-block;
	margin-top: -0.4em;
	padding-right: 0.2em;
}

.voice {
	background: #6a71b3;
	color: #FFF;
	width: 100vw;
	position: relative;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	padding: 24px 8vw 43px;
}

.voice__info {
	display: grid;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: start;
	grid-template-columns: 140px 1fr;
	grid-template-rows: auto 1fr;
	grid-template-areas: "head head" "image profile";
	gap: 20px 20px;
}

.voice__head {
	grid-area: head;
	position: relative;
	text-align: center;
	padding-bottom: 25px;
}

.voice__head img {
	height: 1.16rem;
}

.voice__head::after {
	content: "";
	display: block;
	width: 100vw;
	height: 1px;
	background: #FFF;
	position: absolute;
	bottom: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.voice__image {
	grid-area: image;
	width: 140px;
	aspect-ratio: 1/1;
	border: 1px solid #FFF;
	border-radius: 50%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.voice__image img {
	display: block;
	width: 130px;
	border-radius: 50%;
}

.voice__profile {
	grid-area: profile;
	margin-top: -5px;
}

.voice__name {
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.6;
}

.voice__name span {
	font-size: 1.8rem;
}

.voice__company {
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.4375;
	border: 1px solid #FFFFFF;
	border-radius: 8px;
	padding: 8px 16px 13px;
	margin-top: 10px;
}

.voice__company span {
	font-size: 50%;
	font-weight: 400;
	display: inline-block;
	vertical-align: middle;
	margin-top: -1em;
}

.voice__note {
	font-size: 1rem;
	font-weight: 500;
	margin-top: 7px;
}

.voice__comment {
	margin-top: 22px;
}

.voice__comment__heading {
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.555555;
}

.voice__comment__text {
	font-size: 1.4rem;
	line-height: 2;
	margin-top: 12px;
	text-align: justify;
}

.school-grade__item {
	padding-bottom: 20px;
}

.school-grade__label {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	gap: 10px;
}

.school-grade__label img {
	height: 2.5rem;
	margin-top: 0.5rem;
}

.school-grade__label::before {
	content: "";
	-ms-flex-negative: 0;
	flex-shrink: 0;
	display: block;
	width: 4rem;
	aspect-ratio: 1/1;
	background-position: center;
	background-size: contain;
}

.school-grade__label--1::before {
	background-image: url(../img/img_schoolgrade_1.svg);
}

.school-grade__label--2::before {
	background-image: url(../img/img_schoolgrade_2.svg);
}

.school-grade__label--3::before {
	background-image: url(../img/img_schoolgrade_3.svg);
}

.school-grade__label--4::before {
	background-image: url(../img/img_schoolgrade_4.svg);
}

.school-grade__content {
	position: relative;
	padding-left: 50px;
	margin-top: 5px;
}

.school-grade__content::before {
	content: "";
	display: block;
	background: radial-gradient(circle, #504c8c 1px, transparent 1px) repeat-y center top/100% 5px;
	width: 4px;
	height: calc(100% - 6px);
	position: absolute;
	top: 3px;
	left: 20px;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.school-grade__text-1 {
	color: #4d4397;
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1.71;
}

.school-grade__text-2 {
	font-size: 1.4rem;
	line-height: 1.85;
	text-align: justify;
	margin-top: 6px;
}

.school-grade__badge {
	position: absolute;
	top: -45px;
	right: 0;
	background: #f1996d;
	color: #FFF;
	border-radius: 50%;
	aspect-ratio: 1/1;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	line-height: 1.38;
	font-size: 1.4rem;
	font-weight: 700;
	text-align: center;
	padding: 12px;
}

.school-grade__badge::after {
	content: "";
	display: block;
	position: absolute;
	bottom: 5px;
	left: 4px;
	width: 0;
	height: 0;
	border-top: 20px solid #f1996d;
	border-left: 10px solid transparent;
	border-right: 10px solid transparent;
	-webkit-transform: rotate(46deg);
	transform: rotate(46deg);
}

.curriculum__item {
	position: relative;
}

.curriculum__item:not(:first-child) {
	margin-top: 30px;
	padding-top: 30px;
}

.curriculum__item:not(:first-child)::before {
	content: "";
	display: block;
	background: radial-gradient(circle, #504c8c 1px, transparent 1px) repeat-x center top/6px 100%;
	width: 100%;
	height: 4px;
	position: absolute;
	top: 0;
	left: 0;
}

.curriculum__label {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	font-size: 1.7rem;
	font-weight: 700;
	line-height: 1.41;
	text-align: center;
	background: -webkit-gradient(linear, left top, right top, color-stop(0, #7b59a2), color-stop(16%, #7b59a2), to(#4a4a9c));
	background: linear-gradient(to right, #7b59a2 0, #7b59a2 16%, #4a4a9c 100%);
	border-radius: 6px;
	color: #FFF;
	padding: 18px 0;
}

.curriculum__main {
	margin-top: 24px;
}

.curriculum__heading {
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.6;
	color: #3d3b83;
}

.curriculum__text {
	margin-top: 22px;
	font-size: 1.4rem;
	line-height: 1.85;
	text-align: justify;
	letter-spacing: -0.01em;
}

.curriculum__image {
	margin-top: 30px;
}

.curriculum__image img {
	display: block;
}

.curriculum__ex {
	margin-top: 30px;
	color: #413992;
}

.curriculum__ex__label {
	font-size: 1.28rem;
	font-weight: 700;
}

.curriculum__ex__text {
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.71;
	text-align: justify;
}

.curriculum__ex__text span {
	font-size: 70%;
}

.curriculum__bottom {
	margin-top: 30px;
}

.scrollin {
	opacity: 0;
	-webkit-transform: translate(0, 70px);
	transform: translate(0, 70px);
}

.scrollin.is-visible {
	opacity: 1;
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0);
	-webkit-transition: 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	transition: 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.js-animation-item {
	opacity: 0;
}

.js-animation-item--zoomout {
	-webkit-transform: scale(1.05);
	transform: scale(1.05);
}

.js-animation-item.is-visible {
	opacity: 1;
	-webkit-transform: none;
	transform: none;
	-webkit-transition: 0.6s ease-in;
	transition: 0.6s ease-in;
}

.js-animation-item--pon {
	-webkit-transform: scale(0.8);
	transform: scale(0.8);
}

.js-animation-item--pon.is-visible {
	-webkit-transition: 0.4s opacity ease-in, 0.4s -webkit-transform cubic-bezier(0.57, 0.16, 0.56, 1.38);
	transition: 0.4s opacity ease-in, 0.4s -webkit-transform cubic-bezier(0.57, 0.16, 0.56, 1.38);
	transition: 0.4s opacity ease-in, 0.4s transform cubic-bezier(0.57, 0.16, 0.56, 1.38);
	transition: 0.4s opacity ease-in, 0.4s transform cubic-bezier(0.57, 0.16, 0.56, 1.38), 0.4s -webkit-transform cubic-bezier(0.57, 0.16, 0.56, 1.38);
}

@media (hover: hover) {

.button-primary:hover {
	background: #3d3b83;
}

}

@media screen and (min-width: 681px) {

.l-header { /* pc */
	height: 80px;
	padding: 0 7px 0 32px;
}

.l-lp-common-wrapper { /* pc */
	max-width: 1100px;
}

.l-wrapper { /* pc */
	width: calc(100% - 50px);
	max-width: 1000px;
}

.l-navi { /* pc */
}

.l-navi__inner { /* pc */
	width: 800px;
	padding: 20px 0;
}

.header-logo { /* pc */
	width: 120px;
}

.header-buttons { /* pc */
	border-radius: 0;
	gap: 0 8px;
	width: auto;
	height: 48px;
	margin-right: 10px;
}

.header-buttons__item { /* pc */
	width: 112px;
	border-radius: 5px;
	font-size: 1.28rem;
	line-height: 1.56;
}

.header-buttons__item--orange { /* pc */
	font-size: 1.6rem;
	line-height: 1;
}

.header-buttons__item a { /* pc */
	-webkit-transition: 0.4s;
	transition: 0.4s;
}

.header-buttons__item a:hover {
	opacity: 0.6;
}

.header-buttons__icon { /* pc */
	display: block;
	width: 24px;
	height: 24px;
	margin-bottom: -3px;
}

.header-buttons__icon--exinfo { /* pc */
	-webkit-transform: translateX(4px);
	transform: translateX(4px);
}

.menu-btn { /* pc */
	width: 80px;
	height: 80px;
}

.menu-btn span { /* pc */
	width: 30px;
}

.menu-btn span:first-child { /* pc */
	-webkit-transform: translate(-50%, calc(-50% - 13px));
	transform: translate(-50%, calc(-50% - 13px));
}

.menu-btn span:nth-child(3) { /* pc */
	-webkit-transform: translate(-50%, calc(-50% + 13px));
	transform: translate(-50%, calc(-50% + 13px));
}

.navi-btn { /* pc */
	font-size: 1.6rem;
	line-height: 2.175;
	width: 440px;
	padding: 11px 0;
	margin-top: 55px;
	-webkit-transition: 0.4s;
	transition: 0.4s;
}

.navi-btn:hover {
	opacity: 0.6;
}

.navi-btn::before { /* pc */
	width: 25px;
}

.navi-main-wrap { /* pc */
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 40px;
}

.navi { /* pc */
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	max-width: 800px;
	margin-left: auto;
	margin-right: auto;
	gap: 0 5%;
	margin-top: 60px;
	border-bottom: 1px solid rgba(0, 0, 0, 0.5);
}

.navi__item { /* pc */
	font-size: 1.5rem;
	line-height: 1.5;
}

.navi__item > a { /* pc */
	padding: 18px 35px 18px 20px;
}

.navi__item a { /* pc */
	-webkit-transition: 0.4s;
	transition: 0.4s;
}

.navi__item a:hover {
	opacity: 0.6;
}

.navi__item a::after { /* pc */
	right: 20px;
	width: 5px;
	height: 5px;
}

.navi__strong { /* pc */
	font-size: 1.6rem;
}

.navi__child { /* pc */
	font-size: 1.5rem;
}

.navi__child > a { /* pc */
	padding: 12px 35px 12px 20px;
	gap: 16px;
}

.navi-sub { /* pc */
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin-top: 40px;
	gap: 20px 30px;
}

.navi-sub__item { /* pc */
	font-size: 1.6rem;
}

.navi-sub__item a::before { /* pc */
	margin-right: 10px;
}

.mainvisual { /* pc */
	margin-top: 80px;
	background: url(../img/bg_mv_2.svg) no-repeat left bottom, url(../img/bg_mv_3.svg) no-repeat right top, url(../img/bg_mv_1_pc.jpg) no-repeat center/cover;
}

.mainvisual__main { /* pc */
	padding: 66px 0 232px;
	max-width: initial;
}

.mainvisual__title { /* pc */
	width: 800px;
	height: 400px;
	max-width: initial;
	aspect-ratio: inherit;
}

.mainvisual__title img { /* pc */
	-webkit-transform: none;
	transform: none;
}

.mainvisual__text { /* pc */
	font-size: 2.1rem;
	text-align: center;
	margin-top: -14px;
}

.mainvisual__badge-wrap { /* pc */
	top: 30px;
	width: calc(100% - 20px);
	max-width: 1340px;
}

.mainvisual__badge { /* pc */
	background-image: url(../img/bg_mv_badge_pc.png);
	width: 220px;
	font-size: 1.6rem;
	letter-spacing: 0.1em;
	line-height: 1;
}

.mainvisual__badge__underline { /* pc */
	line-height: 1.7;
	text-decoration: underline;
	text-underline-offset: 0.5em;
	text-decoration-thickness: 1px;
}

.mainvisual__badge__lg1 { /* pc */
	font-size: 140%;
	letter-spacing: -0.01em;
	padding-left: 0.01em;
}

.mainvisual__badge__lg2 { /* pc */
	font-size: 130%;
	letter-spacing: -0.01em;
}

.mainvisual__badge__lg3 { /* pc */
	font-size: 3.6rem;
	letter-spacing: 0.1em;
	line-height: 1.4;
}

.bg-dots { /* pc */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0, rgba(255, 255, 255, 0)), color-stop(25%, rgba(255, 255, 255, 0)), color-stop(25%, #f0f2f9), to(#f0f2f9)) repeat center top/20px 20px, -webkit-gradient(linear, left top, right top, color-stop(0, #e5eaf5), color-stop(25%, #e5eaf5), color-stop(25%, #f0f2f9), to(#f0f2f9)) repeat center top/20px 20px;
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, 0) 25%, #f0f2f9 25%, #f0f2f9 100%) repeat center top/20px 20px, linear-gradient(to right, #e5eaf5 0, #e5eaf5 25%, #f0f2f9 25%, #f0f2f9 100%) repeat center top/20px 20px;
}

.bg-dots--top::before { /* pc */
	max-width: 1200px;
	width: calc(100% - 60px);
	height: 100px;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0, rgba(255, 255, 255, 0)), color-stop(25%, rgba(255, 255, 255, 0)), color-stop(25%, #f0f2f9), to(#f0f2f9)) repeat center bottom/20px 20px, -webkit-gradient(linear, left top, right top, color-stop(0, #e5eaf5), color-stop(25%, #e5eaf5), color-stop(25%, #f0f2f9), to(#f0f2f9)) repeat center bottom/20px 20px;
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, 0) 25%, #f0f2f9 25%, #f0f2f9 100%) repeat center bottom/20px 20px, linear-gradient(to right, #e5eaf5 0, #e5eaf5 25%, #f0f2f9 25%, #f0f2f9 100%) repeat center bottom/20px 20px;
}

.bg-dots-pc { /* pc */
	position: relative;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0, rgba(255, 255, 255, 0)), color-stop(25%, rgba(255, 255, 255, 0)), color-stop(25%, #f0f2f9), to(#f0f2f9)) repeat center top/20px 20px, -webkit-gradient(linear, left top, right top, color-stop(0, #e5eaf5), color-stop(25%, #e5eaf5), color-stop(25%, #f0f2f9), to(#f0f2f9)) repeat center top/20px 20px;
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, 0) 25%, #f0f2f9 25%, #f0f2f9 100%) repeat center top/20px 20px, linear-gradient(to right, #e5eaf5 0, #e5eaf5 25%, #f0f2f9 25%, #f0f2f9 100%) repeat center top/20px 20px;
}

.bg-dots-pc--top::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	-webkit-transform: translate(-50%, -100%);
	transform: translate(-50%, -100%);
	display: block;
	max-width: 1200px;
	width: calc(100% - 60px);
	height: 100px;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0, rgba(255, 255, 255, 0)), color-stop(25%, rgba(255, 255, 255, 0)), color-stop(25%, #f0f2f9), to(#f0f2f9)) repeat center bottom/20px 20px, -webkit-gradient(linear, left top, right top, color-stop(0, #e5eaf5), color-stop(25%, #e5eaf5), color-stop(25%, #f0f2f9), to(#f0f2f9)) repeat center bottom/20px 20px;
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, 0) 25%, #f0f2f9 25%, #f0f2f9 100%) repeat center bottom/20px 20px, linear-gradient(to right, #e5eaf5 0, #e5eaf5 25%, #f0f2f9 25%, #f0f2f9 100%) repeat center bottom/20px 20px;
}

.bg-white-pc { /* pc */
	background: #FFF;
}

.feature { /* pc */
	padding-top: 0;
}

.feature:not(:first-child) { /* pc */
	margin-top: 100px;
}

.feature:last-child { /* pc */
	padding-bottom: 150px;
}

.feature__2col-wrapper { /* pc */
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 6%;
}

.feature__2col-item:not(:first-child) { /* pc */
	margin-top: 0;
}

.feature__label { /* pc */
	margin-top: 0;
	text-align: left;
}

.feature__label__inner { /* pc */
	font-size: 2.4rem;
	padding: 0.7em 1.05em 0.8em 1.2em;
}

.feature__label__inner::before { /* pc */
	content: none;
}

.feature__label__inner::after { /* pc */
	width: 30px;
}

.feature__title { /* pc */
	font-size: 4.8rem;
	line-height: 1.46;
	letter-spacing: -0.02em;
	margin-top: 17px;
}

.feature__title__note { /* pc */
	font-size: 1.4rem;
	margin-top: 0.7em;
}

.feature__title__narrow { /* pc */
	letter-spacing: -0.1em;
}

.feature__note-1 { /* pc */
	margin-top: 19px;
}

.feature__text { /* pc */
	line-height: 2;
	margin-top: 24px;
}

.box-pc-kadomaru { /* pc */
	width: 100%;
	left: 0;
	-webkit-transform: none;
	transform: none;
	border-radius: 10px;
}

.box-pc-kadomaru__inner { /* pc */
	width: 90%;
}

.box-pc-kadomaru__inner--1 { /* pc */
	padding: 28px 0 50px;
}

.box-pc-kadomaru__inner--2 { /* pc */
	padding: 50px 0 50px;
}

.job-offer-wrap { /* pc */
	margin-top: 47px;
}

.job-offer__heading { /* pc */
	font-size: 4.8rem;
	text-align: left;
}

.job-offer__heading span {
	font-size: 150%;
}

.job-offer__main { /* pc */
	margin-top: 16px;
	display: grid;
	grid-template-columns: 1fr 302px;
	grid-template-rows: auto auto;
	gap: 27px 48px;
}

.job-offer__description { /* pc */
	grid-column: 1;
	grid-row: 1;
	line-height: 2;
}

.job-offer__figure { /* pc */
	margin-top: 0;
	grid-column: 2;
	grid-row: 1/3;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.job-offer__figure__inner { /* pc */
	margin-top: auto;
}

.job-offer__figure img { /* pc */
	width: calc(100% + 3px);
	max-width: initial;
	margin: 0;
}

.job-offer__figure__note { /* pc */
	text-align: center;
	margin-top: 18px;
}

.job-offer__point { /* pc */
	grid-column: 1;
	grid-row: 2;
	margin-top: 0;
}

.job-offer__point__heading { /* pc */
	font-size: 1.9rem;
	padding: 6px 0;
}

.result { /* pc */
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	gap: 30px;
	padding: 0 20px 24px;
	margin-top: 50px;
}

.result__head { /* pc */
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	width: 12rem;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	padding: 28px 0 23px;
}

.result__head::after { /* pc */
	height: 15px;
}

.result__heading { /* pc */
	font-size: 3rem;
	line-height: 1.06;
}

.result__note { /* pc */
	padding: 13px 10px 0;
	margin-left: 0;
	margin-top: 32px;
	font-size: 1.4rem;
	line-height: 1.35;
	text-align: center;
}

.result__note::before { /* pc */
	width: 100%;
	height: 2px;
	background-repeat: repeat-x;
	background-size: 5px 100%;
}

.result__note__range { /* pc */
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	text-orientation: upright;
	vertical-align: middle;
	margin-top: -4px;
	display: inline-block;
}

.result__content { /* pc */
	width: 100%;
	margin: 0;
	padding: 20px 10px 0 0;
}

.result__text { /* pc */
	font-size: 2.1rem;
	line-height: 1.71;
}

.rate { /* pc */
	margin-top: 28px;
}

.rate__main { /* pc */
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	gap: 6%;
}

.rate__item { /* pc */
	width: 50%;
}

.rate__note { /* pc */
	font-size: 1.3rem;
}

.rate__note p { /* pc */
	padding-left: 2.1em;
	text-indent: -2.1em;
}

.ranking { /* pc */
	padding-bottom: 28px;
}

.ranking__heading { /* pc */
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	line-height: 1.3;
}

.ranking__heading__item-1 { /* pc */
}

.ranking__heading__item-2 { /* pc */
	font-size: 2.9rem;
}

.ranking__heading__item-3 { /* pc */
	font-size: 2.4rem;
	font-weight: 500;
}

.ranking__content { /* pc */
	max-width: initial;
	width: calc(100% - 60px);
	margin-top: 31px;
}

.reason-head { /* pc */
	padding: 72px 0 170px;
	background: url(../img/bg_reason_head_1.svg) no-repeat left top/280px auto, url(../img/bg_reason_head_2.svg) no-repeat right top/300px auto, url(../img/bg_reason_head_pc.jpg) no-repeat center/cover;
}

.reason-head__text img { /* pc */
	width: 862px;
}

.reason-content { /* pc */
	padding-bottom: 150px;
}

.reason:not(:first-child) { /* pc */
	margin-top: 50px;
	padding-top: 50px;
}

.reason:not(:first-child)::before { /* pc */
	width: 100%;
}

.reason__heading { /* pc */
	text-align: left;
	font-size: 4.3rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	margin-bottom: 24px;
}

.reason__heading img { /* pc */
	width: 11.1rem;
	margin: 0 1.6rem 0 0;
}

.career-support { /* pc */
	grid-template-columns: repeat(4, 1fr);
	gap: 2.222222%;
	padding-bottom: 28px;
}

.career-support__label { /* pc */
	border-radius: 6px;
	color: #FFF;
	background: -webkit-gradient(linear, left top, right top, color-stop(0, #7b59a2), color-stop(16%, #7b59a2), to(#4a4a9c));
	background: linear-gradient(to right, #7b59a2 0, #7b59a2 16%, #4a4a9c 100%);
	padding: 9px 0;
}

.career-support__content { /* pc */
	background: none;
	padding: 5px 0 0;
}

.adviser { /* pc */
	border: 1px solid #6a71b3;
}

.adviser__content { /* pc */
	left: 0;
	width: 100%;
	padding: 30px 0 25px;
	-webkit-transform: none;
	transform: none;
	display: grid;
	grid-template-columns: 48fr 42fr;
}

.adviser__main { /* pc */
	padding: 0 30px;
}

.adviser__main__heading { /* pc */
	font-size: 2.8rem;
	text-align: left;
	padding-bottom: 20px;
}

.adviser__main__text { /* pc */
	line-height: 2;
	margin-top: 22px;
}

.adviser__sub { /* pc */
	margin-top: 0;
	padding: 0 30px;
}

.adviser__sub::after { /* pc */
	width: 4px;
	height: 100%;
	background: radial-gradient(circle, #6a71b3 1px, transparent 1px) repeat-y center top/100% 5px;
}

.voice { /* pc */
	width: 100%;
	left: 0;
	-webkit-transform: none;
	transform: none;
	padding: 23px 30px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.voice__info { /* pc */
	padding-right: 29px;
	gap: 15px 30px;
	grid-template-areas: "image head" "image profile";
}

.voice__head { /* pc */
	padding-bottom: 6px;
	text-align: left;
}

.voice__head img { /* pc */
	height: auto;
}

.voice__head::after { /* pc */
	width: 100%;
}

.voice__image { /* pc */
}

.voice__profile { /* pc */
}

.voice__company { /* pc */
	margin-top: 12px;
	padding: 12px 10px 13px;
	text-align: center;
}

.voice__note { /* pc */
	text-align: right;
	margin-top: 9px;
}

.voice__comment { /* pc */
	margin-top: 0;
}

.school-grade { /* pc */
	gap: 60px;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
}

.school-grade__item { /* pc */
	padding-bottom: 0;
	position: relative;
}

.school-grade__item:not(:last-child)::after {
	content: "";
	display: block;
	width: 30px;
	height: 148px;
	background: url(../img/img_arrow_schoolgrade.svg) no-repeat center/contain;
	position: absolute;
	top: 42px;
	left: calc(100% + 30px);
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
}

.school-grade__label { /* pc */
	padding-bottom: 10px;
	border-bottom: 1px solid #827fba;
	gap: 14px;
}

.school-grade__label img { /* pc */
	height: auto;
	margin-top: 0;
}

.school-grade__content { /* pc */
	padding-left: 0;
	margin-top: 15px;
}

.school-grade__content::before { /* pc */
	content: none;
}

.school-grade__text-1 { /* pc */
	width: calc(100% + 1em);
}

.school-grade__text-2 { /* pc */
	font-size: 1.3rem;
	line-height: 1.7;
	margin-top: 9px;
}

.school-grade__badge { /* pc */
	top: -135px;
	right: -70px;
}

.curriculum { /* pc */
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 45px;
}

.curriculum__item { /* pc */
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 3;
	gap: 0;
}

.curriculum__item:not(:first-child) { /* pc */
	margin-top: 0;
	padding-top: 0;
}

.curriculum__item:not(:first-child)::before { /* pc */
	width: 4px;
	height: 100%;
	left: -24px;
	background: radial-gradient(circle, #504c8c 1px, transparent 1px) repeat-y center top/100% 5px;
}

.curriculum__label { /* pc */
}

.curriculum__text { /* pc */
	line-height: 2;
}

.curriculum__image { /* pc */
	margin-top: 16px;
}

.curriculum__ex { /* pc */
	margin-top: 15px;
}

.curriculum__ex__label { /* pc */
	font-size: 1.45rem;
}

.curriculum__ex__text { /* pc */
	margin-top: 10px;
}

.curriculum__bottom { /* pc */
	margin-top: 20px;
}

}

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

.l-body { /* sp */
	min-width: initial;
}

.bg-dots-sp { /* sp */
	position: relative;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0, rgba(255, 255, 255, 0)), color-stop(25%, rgba(255, 255, 255, 0)), color-stop(25%, #f0f2f9), to(#f0f2f9)) repeat center top/10px 10px, -webkit-gradient(linear, left top, right top, color-stop(0, #e5eaf5), color-stop(25%, #e5eaf5), color-stop(25%, #f0f2f9), to(#f0f2f9)) repeat center top/10px 10px;
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, 0) 25%, #f0f2f9 25%, #f0f2f9 100%) repeat center top/10px 10px, linear-gradient(to right, #e5eaf5 0, #e5eaf5 25%, #f0f2f9 25%, #f0f2f9 100%) repeat center top/10px 10px;
}

.bg-dots-sp--top::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	-webkit-transform: translate(-50%, -100%);
	transform: translate(-50%, -100%);
	display: block;
	width: 84%;
	height: 50px;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0, rgba(255, 255, 255, 0)), color-stop(25%, rgba(255, 255, 255, 0)), color-stop(25%, #f0f2f9), to(#f0f2f9)) repeat center bottom/10px 10px, -webkit-gradient(linear, left top, right top, color-stop(0, #e5eaf5), color-stop(25%, #e5eaf5), color-stop(25%, #f0f2f9), to(#f0f2f9)) repeat center bottom/10px 10px;
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, 0) 25%, #f0f2f9 25%, #f0f2f9 100%) repeat center bottom/10px 10px, linear-gradient(to right, #e5eaf5 0, #e5eaf5 25%, #f0f2f9 25%, #f0f2f9 100%) repeat center bottom/10px 10px;
}

.ranking__heading__item-1 { /* sp */
	-webkit-box-ordinal-group: 2;
	-ms-flex-order: 1;
	order: 1;
}

.ranking__heading__item-2 { /* sp */
	-webkit-box-ordinal-group: 4;
	-ms-flex-order: 3;
	order: 3;
}

.ranking__heading__item-3 { /* sp */
	-webkit-box-ordinal-group: 3;
	-ms-flex-order: 2;
	order: 2;
}

.reason--bt-none-sp { /* sp */
	margin-top: 0 !important;
}

.reason--bt-none-sp::before {
	content: none !important;
}

.career-support__item { /* sp */
	border-radius: 10px;
	color: #FFF;
	background: -webkit-gradient(linear, left top, right top, color-stop(0, #7b59a2), color-stop(16%, #7b59a2), to(#4a4a9c));
	background: linear-gradient(to right, #7b59a2 0, #7b59a2 16%, #4a4a9c 100%);
	padding: 10px 10px 10px;
}

.career-support__content img { /* sp */
	height: 25px;
}

.career-support__content img[src*="2.svg"],
.career-support__content img[src*="4.svg"] {
	height: 28px;
}

}

