body {
	font-family: "FOT-筑紫ゴシック Pr5 M" !important;
}

.u-desktop {
	display: none;
}

/* リキッドレイアウト対応 */

html {
	font-size: 16px;
}

/* pcの電話番号発信対応 */

/* ホバー */

a {
	color: inherit;
	text-decoration: none;
	-webkit-transition: opacity 0.3s;
	transition: opacity 0.3s;
}

*,
*::before,
*::after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

/* Remove default padding */

ul,
ol {
	padding: 0;
}

/* Remove default margin */

body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
figure,
blockquote,
dl,
dd {
	margin: 0;
}

/* Set core root defaults */

html {
	scroll-behavior: smooth;
}

/* Set core body defaults */

body {
	letter-spacing: 0.01em;
	line-height: 1.5;
	text-rendering: optimizeSpeed;
}

/* Remove list styles on ul, ol elements with a class attribute */

ul,
ol {
	list-style: none;
}

/* A elements that don't have a class get default styles */

a:not([class]) {
	-webkit-text-decoration-skip: ink;
	text-decoration-skip-ink: auto;
}

/* Make images easier to work with */

img {
	display: block;
	max-width: 100%;
	width: 100%;
}

/* Natural flow and rhythm in articles by default */

article > * + * {
	margin-top: 1em;
}

/* Inherit fonts for inputs and buttons */

input,
button,
textarea,
select {
	font: inherit;
}

/* Blur images when they have no alt attribute */

img:not([alt]) {
	filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feGaussianBlur stdDeviation="10" /></filter></svg>#filter');
	-webkit-filter: blur(10px);
	filter: blur(10px);
}

/* フォームリセット */

input,
button,
select,
textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: transparent;
	border: none;
	border-radius: 0;
	font: inherit;
	outline: none;
}

textarea {
	resize: vertical;
}

input[type=checkbox],
input[type=radio] {
	display: none;
}

input[type=submit],
input[type=button],
label,
button,
select {
	cursor: pointer;
}

select::-ms-expand {
	display: none;
}

.inner {
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
	width: 100%;
}

.section-title {
	color: #fff;
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 700;
	font-weight: bold;
}

.section-title--black {
	color: #1a1a1a;
}

.section-title__en {
	-webkit-background-clip: text;
	text-fill-color: transparent;
	-webkit-text-fill-color: transparent;
	background: -webkit-gradient(linear, left top, right top, from(#cfaf85), color-stop(33%, #f9deba), color-stop(63%, #fff1ce), to(#cfaf85));
	background: linear-gradient(to right, #cfaf85 0%, #f9deba 33%, #fff1ce 63%, #cfaf85 100%);
	background-clip: text;
	color: #fff;
	display: inline-block;
	font-family: "Outfit", sans-serif !important;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 400;
	letter-spacing: 0.03em;
	margin-top: 10px;
	margin-top: 0.625rem;
	text-align: center;
}

.section-title__en.--service-architecture {
	-webkit-background-clip: text;
	text-fill-color: transparent;
	-webkit-text-fill-color: transparent;
	background: -webkit-gradient(linear, left top, right top, from(#CFAF85), color-stop(33%, #EBD0AB), color-stop(63%, #EEE2C3), to(#cfaf85));
	background: linear-gradient(to right, #CFAF85 0%, #EBD0AB 33%, #EEE2C3 63%, #cfaf85 100%);
	background-clip: text;
	padding-right: 0;
}

.jcc-section-title__sub {
	color: #fff;
	font-family: "FOT-筑紫ゴシック Pr5 M" !important;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 400;
	font-weight: 400;
}

.test {
	background-color: red;
	color: #fff;
	font-size: 20px;
	font-size: 1.25rem;
}

.jcc-about-content {
	background-color: #0a0f28;
	color: #fff;
	padding: 160px 0 40px;
	padding: 10rem 0 2.5rem;
}

.jcc-about-content__title {
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1.5;
}

.jcc-about-content__table {
	margin-top: 30px;
	margin-top: 1.875rem;
	width: 100%;
}

.jcc-about-content__button {
	margin: auto;
	margin-top: 80px;
	margin-top: 5rem;
	max-width: 460px;
	max-width: 28.75rem;
	width: 100%;
}

.jcc-about-content__button a {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#bababa));
	background: linear-gradient(to bottom, #fff, #bababa);
	border-radius: 100vh;
	color: #212121;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: bold;
	height: 50px;
	height: 3.125rem;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.jcc-about-content__button a:hover {
	-webkit-transform: scale(1.03);
	transform: scale(1.03);
}

.jcc-about-content__table {
	font-size: 16px;
	font-size: 1rem;
}

.jcc-about-content__table tr:last-child td,
.jcc-about-content__table tr:last-child th {
	border-bottom: none;
}

.jcc-about-content__table td:first-child {
	border-bottom: 1px solid #5b5b5b;
	padding: 20px 0;
	padding: 1.25rem 0;
	width: 25%;
}

.jcc-about-content__table td:last-child {
	border-bottom: 1px solid #5b5b5b;
	padding: 20px 0;
	padding: 1.25rem 0;
	width: 75%;
}

.jcc-about-content__table.--law td:last-child {
	padding: 20px 0 20px 30px;
	padding: 1.25rem 0 1.25rem 1.875rem;
}

.about {
	padding: 40px 0 160px;
	padding: 2.5rem 0 10rem;
	position: relative;
}

.about::before {
	background: url(../images/common/about-bg.svg) no-repeat center center/cover;
	content: "";
	height: 358px;
	height: 22.375rem;
	position: absolute;
	right: 0;
	top: 500px;
	top: 31.25rem;
	width: 308px;
	width: 19.25rem;
}

.about__inner {
	margin: 0 auto;
	max-width: 1180px;
	max-width: 73.75rem;
	padding: 0px 20;
	padding: 0rem 20;
	position: relative;
	width: 100%;
	z-index: 1;
}

.about__title {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 700;
	position: relative;
	z-index: 2;
}

.about__title::before {
	background: url(../images/common/faq__heading--01-bg.svg) no-repeat center center/cover;
	content: "";
	height: 56px;
	height: 3.5rem;
	left: -43px;
	left: -2.6875rem;
	position: absolute;
	top: -23px;
	top: -1.4375rem;
	width: 58px;
	width: 3.625rem;
	z-index: -1;
}

.about__title-sm {
	color: #298c8b;
	display: block;
	font-size: 32px;
	font-size: 2rem;
	font-weight: 700;
}

.about__title-lg {
	color: #298c8b;
	display: block;
	font-size: 48px;
	font-size: 3rem;
	font-weight: 700;
}

/* ---------- プロフィール ---------- */

.about__profiles {
	gap: 32px;
	gap: 2rem;
	border-bottom: 0.5px solid #1F2937;
	border-bottom: 0.03125rem solid #1F2937;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-top: 35px;
	margin-top: 2.1875rem;
	padding-bottom: 30px;
	padding-bottom: 1.875rem;
}

.about__profile {
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
}

.about__bar {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background: #1F2937;
	color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-family: "Zen Kaku Gothic New", sans-serif !important;
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 700;
	height: 38px;
	height: 2.375rem;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	padding: 11px 12px;
	text-align: center;
}

.about__profile-body {
	gap: 16px;
	gap: 1rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.about__person {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 146px;
	flex: 0 0 146px;
	-ms-flex: 0 0 9.125rem;
	flex: 0 0 9.125rem;
	text-align: center;
}

.about__image.--ceo {
	position: relative;
	z-index: 2;
}

.about__image.--ceo::before {
	background: url(../images/common/ceo-bg.png) no-repeat center center/cover;
	content: "";
	height: 166px;
	height: 10.375rem;
	left: -40px;
	left: -2.5rem;
	position: absolute;
	top: -15px;
	top: -0.9375rem;
	width: 190px;
	width: 11.875rem;
	z-index: -1;
}

.about__person-role {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 11px;
	font-size: 0.6875rem;
	font-weight: 500;
	margin-top: 8px;
	margin-top: 0.5rem;
}

.about__person-name {
	border-bottom: 2px solid #298c8b;
	border-bottom: 0.125rem solid #298c8b;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
	margin-left: auto;
	margin-right: auto;
	margin-top: 2px;
	margin-top: 0.125rem;
	padding-bottom: 3px;
	padding-bottom: 0.1875rem;
	width: 85px;
	width: 5.3125rem;
}

.about__person-link {
	border-bottom: 1px solid var(--teal);
	color: var(--teal);
	display: inline-block;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.5;
	margin-top: 4px;
	padding-bottom: 2px;
}

.about__profile--wide .about__person {
	-ms-flex-preferred-size: 282px;
	flex-basis: 282px;
	-ms-flex-preferred-size: 17.625rem;
	flex-basis: 17.625rem;
}

.about__profile--wide .about__image {
	margin: 0 auto;
	width: 146px;
	width: 9.125rem;
}

.about__profile--wide .about__person-role {
	color: #298c8b;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 500;
}

.about__profile--wide .about__person-link {
	border-bottom: 2px solid #298c8b;
	border-bottom: 0.125rem solid #298c8b;
	color: #e35d5d;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 15.5px;
	font-size: 0.96875rem;
	font-weight: 500;
	padding-bottom: 10px;
	padding-bottom: 0.625rem;
}

.about__profile-text {
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.85;
}

.about__profile-text .accent {
	color: #e35d5d;
}

.about__hl {
	color: var(--teal);
	font-weight: 700;
}

/* ---------- 会社概要 ---------- */

.about__company {
	gap: 126px;
	gap: 7.875rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding: 30px 30px 0;
	padding: 1.875rem 1.875rem 0;
}

.about__overview {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 395px;
	flex: 0 0 395px;
	-ms-flex: 0 0 24.6875rem;
	flex: 0 0 24.6875rem;
}

.about__promote {
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
	min-width: 0;
}

.about__subhead {
	color: #298c8b;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 700;
}

.about__dl {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 700;
	margin-top: 16px;
	margin-top: 1rem;
}

.about__dl-row {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.about__dl-row:not(:first-child) {
	margin-top: 10px;
	margin-top: 0.625rem;
}

.about__dl-row dt {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 70px;
	flex: 0 0 70px;
	-ms-flex: 0 0 4.375rem;
	flex: 0 0 4.375rem;
}

.about__dl-row dd {
	color: var(--ink);
}

.about__promote-grid {
	gap: 10px;
	gap: 0.625rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-top: 15px;
	margin-top: 0.9375rem;
}

.about__promo {
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
	min-width: 0;
}

.about__promo-label {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
}

.about__promo-img {
	margin-top: 5px;
	margin-top: 0.3125rem;
}

/* ============================================================
   レスポンシブ（767px以下）
   ============================================================ */

.jcc-achievements {
	background: -webkit-gradient(linear, left top, left bottom, from(#0a0f28), to(#1c314f));
	background: linear-gradient(to bottom, #0a0f28 0%, #1c314f 100%);
	padding: 72px 0 40px;
	padding: 4.5rem 0 2.5rem;
}

.jcc-achievements__grid {
	gap: 53px;
	gap: 3.3125rem;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	margin-top: 58px;
	margin-top: 3.625rem;
}

.jcc-achievements__movie {
	aspect-ratio: 16/9;
}

.jcc-achievements__movie iframe {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.jcc-achievements__text {
	color: #fff;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.8;
	margin-top: 12px;
	margin-top: 0.75rem;
}

.jcc-book-info {
	background: #090e27;
	color: #fff;
	padding: 40px 0;
	padding: 2.5rem 0;
}

.jcc-book-info__flex {
	gap: 63px;
	gap: 3.9375rem;
	background: rgba(255, 255, 255, .1);
	display: grid;
	grid-template-columns: 73.2% 17.5%;
	padding: 24px 54px;
	padding: 1.5rem 3.375rem;
}

.jcc-book-info__content {
	padding-top: 36px;
	padding-top: 2.25rem;
}

.jcc-book-info__title {
	border-bottom: 1px solid #fff;
	border-bottom: 0.0625rem solid #fff;
	display: inline-block;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 700;
}

.jcc-book-info__text {
	line-height: 1.8;
	margin-top: 19px;
	margin-top: 1.1875rem;
}

.jcc-cognitive-science-coaching {
	padding-top: 100px;
	padding-top: 6.25rem;
}

.jcc-cognitive-science-coaching__text {
	color: #ffffff;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.7;
	margin-top: 20px;
	margin-top: 1.25rem;
}

.jcc-cognitive-science-coaching__text:nth-of-type(2) {
	margin-top: 40px;
	margin-top: 2.5rem;
}

.jcc-cognitive-science-coaching__image {
	margin-inline: auto;
	margin-top: 10px;
	margin-top: 0.625rem;
}

.company-slide-section {
	padding: 60px 0 0px;
	padding: 3.75rem 0 0rem;
}

.company-slide-section__heading {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 700;
	text-align: center;
}

.company-slide-section__heading .accent {
	color: #E35D5D;
	font-size: 32px;
	font-size: 2rem;
}

/* スライダー全体 */

.company-slide {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex; /* スライドのグループを横並び */
	overflow: hidden; /* はみ出たスライドを隠す */
}

/* スライド3枚のグループ */

.company-slide__list {
	-webkit-animation: scroll-left 30s infinite linear 0.5s both;
	animation: scroll-left 30s infinite linear 0.5s both;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex; /* スライド3枚を横並び */
	margin-top: 40px;
	margin-top: 2.5rem;
}

/* スライド */

.company-slide__item {
	width: 150px;
	width: 9.375rem;
}

/* スライドの画像 */

.company-slide__item img {
	display: block;
	width: 100%;
}

/* CSSアニメーション */

.cta-button {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background: linear-gradient(9deg, #f46b45 0%, #eea849 100%);
	border-radius: 2.3125rem;
	-webkit-box-shadow: 0px 3px 0px 0px #ad4e36;
	box-shadow: 0px 3px 0px 0px #ad4e36;
	color: #fff;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 700;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	position: relative;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 100%;
}

.cta-button::after {
	border: 3px solid #f46b45;
	border-radius: 2.3125rem;
	content: none;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.cta-button::before {
	background: url(../images/common/line-icon.png) no-repeat center center/cover;
	content: "";
	height: 45px;
	height: 2.8125rem;
	left: 40px;
	left: 2.5rem;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 45px;
	width: 2.8125rem;
}

.cta-button:hover {
	background: #fff;
	color: #f46b45;
}

.cta-button:hover::before {
	background: url(../images/common/line-icon-active.png) no-repeat center center/cover;
	height: 45px;
	height: 2.8125rem;
	width: 45px;
	width: 2.8125rem;
}

.cta-button:hover::after {
	content: "";
}

.header__button.--header {
	padding-left: 20px;
	padding-left: 1.25rem;
}

.header__button.--header::before {
	height: 40px;
	height: 2.5rem;
	left: 18px;
	left: 1.125rem;
	width: 40px;
	width: 2.5rem;
}

.cta-button.--drawer {
	font-size: 16px;
	font-size: 1rem;
	height: 46px;
	height: 2.875rem;
	padding-left: 35px;
	padding-left: 2.1875rem;
	width: 270px;
	width: 16.875rem;
}

.cta-button.--drawer::before {
	height: 40px;
	height: 2.5rem;
	left: 25px;
	left: 1.5625rem;
	width: 40px;
	width: 2.5rem;
}

.cta-button.--present {
	font-size: 24px;
	font-size: 1.5rem;
	height: 74px;
	height: 4.625rem;
	padding-left: 40px;
	padding-left: 2.5rem;
	position: relative;
}

.cta-button.--present::before {
	height: 42px;
	height: 2.625rem;
	left: 20px;
	left: 1.25rem;
	width: 42px;
	width: 2.625rem;
}

.cta-button__link {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background: -webkit-gradient(linear, left top, left bottom, from(#840000), to(#5b0000));
	background: linear-gradient(to bottom, #840000 0%, #5b0000 100%);
	border-radius: 3.125rem;
	color: #fff;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 700;
	height: 66px;
	height: 4.125rem;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin-top: 5px;
	margin-top: 0.3125rem;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 100%;
}

.cta-button__link:hover {
	-webkit-transform: scale(1.03);
	transform: scale(1.03);
}

.cta-button__text::before,
.cta-button__text::after {
	background-color: #fff;
	content: "";
	display: inline-block;
	height: 1.5px;
	height: 0.09375rem;
	position: absolute;
	top: 48%;
	width: 20px;
	width: 1.25rem;
}

.cta-button__text::before {
	left: -44px;
	left: -2.75rem;
	-webkit-transform: rotate(49deg);
	transform: rotate(49deg);
}

.cta-button__text::after {
	right: -44px;
	right: -2.75rem;
	-webkit-transform: rotate(-49deg);
	transform: rotate(-49deg);
}

.cta-button__attention {
	font-size: 12px;
	font-size: 0.75rem;
	margin-top: 5px;
	margin-top: 0.3125rem;
}

.drawer-menu {
	-webkit-transition: all 0.5s;
	background-color: #fff;
	height: 100vh;
	padding: 10px 0;
	padding: 0.625rem 0;
	padding: 80px 32px 0;
	padding: 5rem 2rem 0;
	position: fixed;
	right: -200%;
	top: 0;
	transition: all 0.5s;
	width: 90%;
	z-index: 999;
}

.drawer-menu.open {
	right: 0;
}

.drawer-menu__list {
	gap: 32px;
	gap: 2rem;
	display: grid;
	grid-template-columns: 1fr;
}

.drawer-menu__link {
	color: #1F2937;
	display: block;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
}

.jcc-element {
	padding-top: 86px;
	padding-top: 5.375rem;
}

.jcc-element__lists {
	gap: 26px;
	gap: 1.625rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin-top: 24px;
	margin-top: 1.5rem;
}

.jcc-element__item {
	background-color: #fff;
	-webkit-box-shadow: 0 0 4px #fff;
	box-shadow: 0 0 4px #fff;
	padding: 21px 29px 22px 28px;
	padding: 1.3125rem 1.8125rem 1.375rem 1.75rem;
}

.jcc-element__item-title {
	border-bottom: 0.7px solid #1F2937;
	display: inline-block;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 700;
	padding-bottom: 6px;
	padding-bottom: 0.375rem;
}

.jcc-element__item-title span {
	font-family: "FOT-筑紫ゴシック Pr5 M" !important;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
}

.jcc-element__item-text {
	font-size: 14px;
	font-size: 0.875rem;
	margin-top: 10px;
	margin-top: 0.625rem;
}

.section-radical {
	background: radial-gradient(ellipse closest-side, #1f3656 0%, #090e27 100%);
	padding: 160px 0 139px;
	padding: 10rem 0 8.6875rem;
}

.jcc-emergent-organization__text {
	color: #ffffff;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.7;
	margin-top: 20px;
	margin-top: 1.25rem;
}

.jcc-emergent-organization__image {
	margin-inline: auto;
	margin-top: 50px;
	margin-top: 3.125rem;
	max-width: 100%;
	width: 716px;
	width: 44.75rem;
}

.faq {
	background: #b7cfcf;
	padding: 42px 0;
	padding: 2.625rem 0;
	position: relative;
}

.faq::before {
	background: url(../images/common/faq-bg01-pc.png) no-repeat center center/cover;
	content: "";
	height: 195px;
	height: 12.1875rem;
	left: 0;
	position: absolute;
	top: -195px;
	top: -12.1875rem;
	width: 100%;
}

.faq::after {
	background: url(../images/common/faq-bg02-pc.png) no-repeat center center/cover;
	bottom: -159px;
	bottom: -9.9375rem;
	content: "";
	height: 159px;
	height: 9.9375rem;
	left: 0;
	position: absolute;
	width: 100%;
}

.faq__heading {
	color: #0a0f28;
	font-family: "Zen Kaku Gothic New", sans-serif !important;
	font-size: 40px;
	font-size: 2.5rem;
	font-weight: bold;
	letter-spacing: 0.08em;
	padding: 0 24px;
	text-align: center;
	z-index: 2;
}

.faq__heading .en {
	color: #298c8b;
	display: block;
	font-family: "Outfit", sans-serif !important;
	font-size: 24px;
	font-size: 1.5rem;
	margin-bottom: -12px;
	margin-bottom: -0.75rem;
}

.faq__heading .--01 {
	font-size: 32px;
	font-size: 2rem;
	position: relative;
	z-index: 1;
}

.faq__heading .--01::before {
	background: url(../images/common/faq__heading--01-bg.svg) no-repeat center center/cover;
	content: "";
	height: 56px;
	height: 3.5rem;
	left: -37px;
	left: -2.3125rem;
	position: absolute;
	top: -16px;
	top: -1rem;
	width: 58px;
	width: 3.625rem;
	z-index: -1;
}

.faq__heading .--02 {
	background: linear-gradient(109deg, #A9C4C4 0%, #298c8b 19%, #298c8b 100%);
	color: #fff;
	display: inline-block;
	line-height: 1.4;
	padding: 0px 0 3px;
	padding: 0px 0 0.1875rem;
	width: 256px;
	width: 16rem;
}

.faq__list {
	gap: 30px;
	gap: 1.875rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin: 40px auto 0;
	margin: 2.5rem auto 0;
	padding: 0 20px;
	padding: 0 1.25rem;
	width: min(100%, 920px);
	width: min(100%, 57.5rem);
}

.faq__item {
	background-color: #fff;
	border-radius: 4px;
	padding: 10px;
}

.faq__question,
.faq__answer {
	-moz-column-gap: 16px;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: start;
	-webkit-column-gap: 16px;
	column-gap: 16px;
	display: grid;
	grid-template-columns: 19px 1fr;
	margin: 0;
}

.faq__question {
	border-bottom: 0.6px solid #b4b4b4;
	color: #040000;
	font-size: 15px;
	font-weight: 700;
	padding-bottom: 10px;
	position: relative;
}

.faq__question::before,
.faq__question::after {
	background-color: #111;
	content: "";
	height: 1px;
	position: absolute;
	right: 0;
	top: 7px;
	-webkit-transform-origin: center center;
	transform-origin: center center;
	width: 12px;
}

.faq__question:before {
	height: 12px;
	right: 5px;
	top: 0;
	-webkit-transition: -webkit-transform 0.3s;
	transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
	transition: transform 0.3s, -webkit-transform 0.3s;
	width: 1px;
}

.faq__question-head {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-family: "Zen Kaku Gothic New", sans-serif !important;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
}

.faq__answer {
	color: var(--color-text-muted);
	font-size: 14px;
	height: 0;
	padding-top: 10px;
}

.faq__label {
	border-radius: 50%;
	color: var(--color-label);
	color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 16px;
	font-size: 1rem;
	height: 36px;
	height: 2.25rem;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	line-height: 1;
	padding-top: 10px;
	padding-top: 0.625rem;
	width: 36px;
	width: 2.25rem;
}

.faq__label.question {
	background-color: #1F2937;
	font-family: "Montserrat", sans-serif !important;
	font-weight: 600;
	margin-right: 24px;
	margin-right: 1.5rem;
}

.faq__label.answer {
	background-color: #298c8b;
	font-family: "Montserrat", sans-serif !important;
	margin-right: 24px;
	margin-right: 1.5rem;
}

.faq__question-text {
	width: calc(100% - 2.25rem);
}

.faq__answer-text {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.75;
	width: calc(100% - 2.25rem);
}

.faq__answer-text span {
	display: inline-block;
	padding-left: 1em;
	text-indent: -1em;
}

/* 答えは初期状態で非表示 */

.js-details-content {
	display: none;
}

/* アクティブ時にプラスマークを回転させてバツにする */

.js-details-summary.is-active::before {
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}

.details {
	font-size: 12px;
}

.details-summary {
	background-color: #edf4f3;
	border-radius: 0.5rem;
	cursor: pointer;
	list-style: none;
	padding: 16px 24px;
	padding: 1rem 1.5rem;
	position: relative;
}

.details-summary .btn {
	height: 18px;
	height: 1.125rem;
	position: absolute;
	right: 18px;
	right: 1.125rem;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	-webkit-transform-origin: center center;
	transform-origin: center center;
	-webkit-transition-duration: 0.2s;
	transition-duration: 0.2s;
	width: 18px;
	width: 1.125rem;
}

.details-summary .btn::after,
.details-summary .btn::before {
	background-color: #000;
	content: "";
	height: 2px;
	height: 0.125rem;
	left: 0;
	position: absolute;
	top: 5px;
	top: 0.3125rem;
	-webkit-transform-origin: center center;
	transform-origin: center center;
	width: 12px;
	width: 0.75rem;
}

.details-summary .btn::before {
	height: 12px;
	height: 0.75rem;
	left: 5px;
	left: 0.3125rem;
	top: 0;
	width: 2px;
	width: 0.125rem;
}

.details-summary.is-active .btn {
	right: 24px;
	right: 1.5rem;
	-webkit-transform: rotate(-180deg);
	transform: rotate(-180deg);
}

.details-summary.is-active .btn::after {
	top: 19px;
	top: 1.1875rem;
}

.details-summary.is-active .btn::before {
	content: none;
}

.details-content {
	padding: 24px 24px 0;
	padding: 1.5rem 1.5rem 0;
}

.faq__answer-content {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.fixed-footer {
	bottom: 24px;
	bottom: 1.5rem;
	color: #fff;
	display: block;
	position: fixed;
	right: 24px;
	right: 1.5rem;
	text-align: center;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
	width: 385px;
	width: 24.0625rem;
	z-index: 10000;
}

.fixed-footer:hover {
	opacity: 0.8;
}

.fixed-footer.open {
	display: none;
}

.fixed-footer__note {
	display: inline-block;
	font-size: 16px;
	font-size: 1rem;
	letter-spacing: 0.03em;
	padding-bottom: 8px;
	padding-bottom: 0.5rem;
	position: relative;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.fixed-footer__note span {
	margin-inline: 8px;
	margin-inline: 0.5rem;
	background-color: #fff;
	display: inline-block;
	height: 14px;
	height: 0.875rem;
	width: 1.5px;
	width: 0.09375rem;
}

.fixed-footer__note::before,
.fixed-footer__note::after {
	background-color: #fff;
	content: "";
	display: inline-block;
	height: 1.5px;
	height: 0.09375rem;
	position: absolute;
	top: 37%;
	width: 18px;
	width: 1.125rem;
}

.fixed-footer__note::before {
	left: -35px;
	left: -2.1875rem;
	-webkit-transform: rotate(49deg);
	transform: rotate(49deg);
}

.fixed-footer__note::after {
	right: -35px;
	right: -2.1875rem;
	-webkit-transform: rotate(-49deg);
	transform: rotate(-49deg);
}

.jcc-mv__badges {
	margin-top: 10px;
	margin-top: 0.625rem;
}

/* フッターの色変化 */

.fixed-footer.is-active .fixed-footer__note {
	color: #1F2937;
}

.fixed-footer.is-active .fixed-footer__note span {
	background-color: #1F2937;
}

.fixed-footer.is-active .fixed-footer__note::before,
.fixed-footer.is-active .fixed-footer__note::after {
	background-color: #1F2937;
}

.jcc-flow {
	padding: 157px 0;
	padding: 9.8125rem 0;
}

.jcc-flow__wrap {
	gap: 64px;
	gap: 4rem;
	display: grid;
	grid-template-columns: 20% 73%;
}

.jcc-flow__description {
	font-size: 14px;
	font-size: 0.875rem;
}

.jcc-flow__list {
	gap: 63px;
	gap: 3.9375rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.jcc-flow__item {
	gap: 20px;
	gap: 1.25rem;
	display: grid;
	grid-template-columns: 1.5625rem 33.875rem;
}

.jcc-flow__item:last-child .jcc-flow__step-number::before {
	content: none;
}

.jcc-flow__step-number span {
	font-family: "Outfit", sans-serif !important;
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 500;
	position: relative;
}

.jcc-flow__step-number span::before {
	background: -webkit-gradient(linear, left top, left bottom, from(#375c8f), to(transparent));
	background: linear-gradient(to bottom, #375c8f 0%, transparent 100%);
	content: "";
	height: 107px;
	height: 6.6875rem;
	left: 50%;
	position: absolute;
	top: 27px;
	top: 1.6875rem;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	width: 1px;
	width: 0.0625rem;
}

.jcc-flow__step-number span::after {
	background-image: url(../images/common/number-bg.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	bottom: 0;
	content: "";
	height: 36px;
	height: 2.25rem;
	left: -5px;
	left: -0.3125rem;
	position: absolute;
	width: 36px;
	width: 2.25rem;
}

.jcc-flow__item:last-child .jcc-flow__step-number span::before {
	content: none;
}

.jcc-flow__step-title {
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 700;
}

.jcc-flow__step-text {
	font-size: 14px;
	font-size: 0.875rem;
	margin-top: 10px;
	margin-top: 0.625rem;
}

.footer {
	background: #edf4f3;
	color: #1F2937;
	padding: 30px 0;
	padding: 1.875rem 0;
	position: relative;
}

.footer__inner {
	gap: 110px;
	gap: 6.875rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin: 0 auto;
	max-width: 1184px;
	max-width: 74rem;
	padding: 0 20px;
	padding: 0 1.25rem;
	width: 100%;
}

.footer__left {
	gap: 100px;
	gap: 6.25rem;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.footer__title {
	width: 116px;
	width: 7.25rem;
}

.footer__logo {
	display: block;
	width: 100%;
}

.footer__nav {
	gap: 25px;
	gap: 1.5625rem;
	color: #1F2937;
	font-family: "Noto Sans JP", sans-serif;
	width: 587px;
	width: 36.6875rem;
}

.footer__list {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.footer__link {
	color: #1F2937;
	-webkit-transition: opacity 0.3s ease;
	transition: opacity 0.3s ease;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.footer__link:hover {
	opacity: 0.7;
}

.footer__copyright {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-family: "Inter", sans-serif;
	font-size: 11px;
	font-size: 0.6875rem;
}

.footer__button {
	background: #6F6F6F;
	border: none;
	bottom: 0;
	cursor: pointer;
	height: 67px;
	height: 4.1875rem;
	position: absolute;
	right: 0;
	width: 67px;
	width: 4.1875rem;
}

.footer__button::before {
	background-image: url(../images/common/arrow-top.svg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	height: 33px;
	height: 2.0625rem;
	left: 50%;
	position: absolute;
	top: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 22px;
	width: 1.375rem;
}

.header {
	background-color: transparent;
	height: 80px;
	height: 5rem;
	left: 0;
	position: fixed;
	top: 0;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 100%;
	z-index: 9999;
}

.header.is-active {
	background-color: #fff;
}

.header__inner {
	gap: 344px;
	gap: 21.5rem;
	margin-inline: auto;
	display: grid;
	grid-template-columns: 7.25rem 42.5rem;
	height: inherit;
	max-width: 1180px;
	max-width: 73.75rem;
	padding: 0 20px;
	padding: 0 1.25rem;
	position: relative;
	width: 100%;
}

.header__title {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: inherit;
}

.header__title--black {
	display: none;
}

.header__logo {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: inherit;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 100%;
}

.header__logo:hover {
	opacity: 0.5;
}

.header__nav {
	color: #1F2937;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: inherit;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	list-style: none;
}

.header__list {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	color: #1F2937;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: inherit;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
	width: 332px;
	width: 20.75rem;
}

.header__list li {
	height: inherit;
}

.header__link {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	cursor: pointer;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	height: inherit;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.header__link:hover {
	opacity: 0.7;
}

.header__button-wrapper {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: inherit;
	width: 317px;
	width: 19.8125rem;
}

.header__button {
	color: #fff;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	height: 46px;
	height: 2.875rem;
	width: 100%;
}

.header__hamburger {
	display: none;
	z-index: 10000;
}

.header__hamburger.open::after {
	border: 1px solid #1F2937;
	border-radius: 50%;
	content: "";
	height: 40px;
	height: 2.5rem;
	left: 46%;
	position: absolute;
	top: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 40px;
	width: 2.5rem;
}

.header__hamburger span {
	background-color: #1F2937;
	display: inline-block;
	height: 1.5px;
	height: 0.09375rem;
	left: 50%;
	position: absolute;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 20px;
	width: 1.25rem;
}

.header__hamburger span:nth-child(1) {
	top: 0;
}

.header__hamburger span:nth-child(2) {
	top: 50%;
}

.header__hamburger span:nth-child(3) {
	top: 100%;
}

.header__hamburger.open {
	border-radius: 50%;
}

.jcc-header__hamburger.open span {
	background-color: #1F2937;
}

.header__hamburger.open span:nth-child(1) {
	-webkit-transform: rotate(45deg);
	left: 20%;
	top: 47%;
	transform: rotate(45deg);
}

.header__hamburger.open span:nth-child(2) {
	opacity: 0;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.header__hamburger.open span:nth-child(3) {
	-webkit-transform: rotate(-45deg);
	left: 21%;
	top: 47%;
	transform: rotate(-45deg);
}

.jcc-header__item:hover .jcc-header__heading,
.jcc-header__item:hover .jcc-header__link {
	color: #0066cc;
}

.jcc-header__item:hover .jcc-header__link::after {
	right: -48px;
	right: -3rem;
}

.jcc-header__item--job-seeker:hover::before,
.jcc-header__item--recruiter:hover::before {
	-webkit-transform: scale(1.15);
	transform: scale(1.15);
}

.jcc-header__list--service {
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 500;
	position: relative;
}

.jcc-header__sub-nav-list {
	gap: 40px;
	gap: 2.5rem;
	background-color: #fff;
	display: grid;
	grid-template-columns: 1fr 1fr;
	left: 50%;
	opacity: 0;
	padding: 32px;
	padding: 2rem;
	pointer-events: none;
	position: absolute;
	top: 106px;
	top: 6.625rem;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 800px;
	width: 50rem;
}

.jcc-header__list--service:hover .jcc-header__sub-nav-list {
	opacity: 1;
	pointer-events: auto;
}

.jcc-header__sub-nav-list li a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	display: block;
	height: 150px;
	height: 9.375rem;
	overflow: hidden;
	position: relative;
	-webkit-transition: opacity 0.3s;
	transition: opacity 0.3s;
}

.jcc-header__sub-nav-list--jobseeker a::before {
	background-image: url(../img/front-service01-bg-pc.jpg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	-webkit-transform: scale(1);
	transform: scale(1);
	-webkit-transition: -webkit-transform 0.6s ease;
	transition: -webkit-transform 0.6s ease;
	transition: transform 0.6s ease;
	transition: transform 0.6s ease, -webkit-transform 0.6s ease;
	width: 100%;
	z-index: 0;
}

.jcc-header__sub-nav-list--recruiter a::after {
	background-image: url(../img/front-service02-bg-pc.jpg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	-webkit-transform: scale(1);
	transform: scale(1);
	-webkit-transition: -webkit-transform 0.6s ease;
	transition: -webkit-transform 0.6s ease;
	transition: transform 0.6s ease;
	transition: transform 0.6s ease, -webkit-transform 0.6s ease;
	width: 100%;
	z-index: -1;
}

.jcc-header__sub-nav-content {
	left: 3%;
	position: absolute;
	top: 45%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.jcc-header__sub-nav-heading {
	font-family: "Outfit", sans-serif !important;
	font-size: 32px;
	font-size: 2rem;
	font-weight: 400;
	letter-spacing: 0.001em;
	line-height: 1.1;
}

.jcc-header__sub-nav-heading span {
	font-size: 24px;
	font-size: 1.5rem;
}

.jcc-header__sub-nav-link {
	display: inline-block;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 600;
	letter-spacing: 0.01em;
	line-height: 1;
	position: relative;
}

.jcc-header__sub-nav-link::after {
	background-image: url(../img/view-more-allow.svg);
	background-size: cover;
	content: "";
	height: 24px;
	height: 1.5rem;
	position: absolute;
	right: -25%;
	top: -18%;
	-webkit-transition: right 0.3s;
	transition: right 0.3s;
	width: 24px;
	width: 1.5rem;
}

.jcc-header__sub-nav-list li a:hover .jcc-header__sub-nav-heading {
	color: #0066cc;
}

.jcc-header__sub-nav-list li a:hover .header__sub-nav-link {
	color: #0066cc;
}

.jcc-header__sub-nav-list li a:hover .jcc-header__sub-nav-link::after {
	right: -48px;
	right: -3rem;
}

.jcc-header__sub-nav-list li a:hover::before,
.jcc-header__sub-nav-list li a:hover::after {
	-webkit-transform: scale(1.15);
	transform: scale(1.15);
}

.u-hidden-pc {
	display: none;
}

.interview {
	background: #e7e6e5;
	padding: 120px 0 80px;
	padding: 7.5rem 0 5rem;
	position: relative;
}

.interview::before {
	background: url(../images/common/interview-bg.svg) no-repeat center center/cover;
	content: "";
	height: 204px;
	height: 12.75rem;
	left: 0;
	left: 0px;
	left: 0rem;
	position: absolute;
	top: 0;
	top: 451px;
	top: 28.1875rem;
	width: 196px;
	width: 12.25rem;
}

.interview__inner {
	margin: 0 auto;
	width: min(100%, 1180px);
	width: min(100%, 73.75rem);
}

.interview__heading {
	font-family: "Zen Kaku Gothic New", sans-serif !important;
	font-weight: bold;
	text-align: center;
}

.interview__heading .en {
	color: #298c8b;
	font-family: "Outfit", sans-serif !important;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 400;
}

.interview__heading .--01 {
	font-size: 24px;
	font-size: 1.5rem;
	position: relative;
	z-index: 1;
}

.interview__heading .--01::before {
	background: url(../images/common/faq__heading--01-bg.svg) no-repeat center center/cover;
	content: "";
	height: 50px;
	height: 3.125rem;
	left: -33px;
	left: -2.0625rem;
	position: absolute;
	top: -24px;
	top: -1.5rem;
	width: 52px;
	width: 3.25rem;
	z-index: -1;
}

.interview__heading .--02 {
	background: linear-gradient(154deg, #58c3c2 0%, #298c8b 100%);
	color: #fff;
	display: inline-block;
	font-size: 40px;
	font-size: 2.5rem;
	line-height: 1;
	margin-top: 5px;
	margin-top: 0.3125rem;
	padding: 5px 60px 8px;
	padding: 0.3125rem 3.75rem 0.5rem;
}

.interview__heading .--03 {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 500;
	line-height: 1.8;
	margin-top: 3px;
	margin-top: 0.1875rem;
}

.splide-interview {
	margin-inline: auto;
	margin-top: 20px;
	margin-top: 1.25rem;
	width: min(100%, 1076px);
	width: min(100%, 67.25rem);
}

.splide-interview .splide__track {
	padding-top: 40px;
	padding-top: 2.5rem;
}

.interview__card-label {
	background-color: #e35d5d;
	border-radius: 0.375rem;
	color: #fff;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	height: 52px;
	height: 3.25rem;
	margin-top: 5px;
	margin-top: 0.3125rem;
	padding-left: 47px;
	padding-left: 2.9375rem;
	position: relative;
	width: 100%;
}

.interview__card-label::before {
	background: url(../images/common/interview__card-label-bg.svg) no-repeat center center/cover;
	content: "";
	height: 20px;
	height: 1.25rem;
	left: 20px;
	left: 1.25rem;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 20px;
	width: 1.25rem;
}

.interview__card-tag {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	border: 1.35px solid #298c8b;
	border-radius: 0.375rem;
	color: #298c8b;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	height: 28px;
	height: 1.75rem;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin-top: 10px;
	margin-top: 0.625rem;
	width: 150px;
	width: 9.375rem;
}

.interview__card-title {
	color: #298c8b;
	font-family: "Zen Kaku Gothic New", sans-serif !important;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.5;
	margin-top: 10px;
	margin-top: 0.625rem;
}

.interview__card-title.--no-video {
	font-size: 22px;
	font-size: 1.375rem;
	padding: 0 16px;
	padding: 0 1rem;
	text-align: center;
}

.interview__card-text {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.8;
	margin-top: 5px;
	margin-top: 0.3125rem;
}

.interview__card-text.--no-video {
	text-align: center;
}

.interview__card-text .accent {
	color: #e35d5d;
}

.interview__banner {
	margin: 70px auto 0;
	margin: 4.375rem auto 0;
	padding-left: 100px;
	padding-left: 6.25rem;
	width: min(100%, 1100px);
	width: min(100%, 68.75rem);
}

.interview__card-link {
	display: block;
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.interview__card-link.--no-video {
	background-color: #EEE;
	border: 1px solid #298c8b;
	border: 0.0625rem solid #298c8b;
	border-radius: 0.625rem;
	height: 100%;
	pointer-events: none;
}

.interview__card-link.--no-video:hover {
	opacity: 1;
}

.interview__card-link:hover {
	opacity: 1;
}

.splide-interview .splide__pagination {
	display: none;
}

.splide-interview .splide__pagination__page {
	background: #d9d9d9;
	opacity: 1;
}

.splide-interview .splide__pagination__page.is-active {
	background: #298c8b;
}

.splide-interview .splide__arrows {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 50px;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	left: 0;
	margin: auto;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 100%;
}

.splide-interview .splide__arrow {
	background-color: transparent;
	opacity: 1;
	position: absolute;
	-webkit-transform: none;
	transform: none;
}

.splide-interview .splide__arrow.splide__arrow--prev {
	height: 17px;
	height: 1.0625rem;
	left: -1.3em;
	position: relative;
	width: 9px;
	width: 0.5625rem;
}

.splide-interview .splide__arrow.splide__arrow--prev::before {
	border-left: solid 2px #333;
	border-top: solid 2px #333;
	content: "";
	height: 17px;
	height: 1.0625rem;
	left: 50%;
	position: absolute;
	top: 50%;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	width: 17px;
	width: 1.0625rem;
}

.splide-interview .splide__arrow.splide__arrow--next {
	height: 17px;
	height: 1.0625rem;
	position: relative;
	right: 0em;
	width: 9px;
	width: 0.5625rem;
}

.splide-interview .splide__arrow.splide__arrow--next::before {
	border-right: solid 2px #333;
	border-top: solid 2px #333;
	content: "";
	height: 17px;
	height: 1.0625rem;
	left: 50%;
	position: absolute;
	top: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	width: 17px;
	width: 1.0625rem;
}

.jcc-interview__movie {
	aspect-ratio: 16/9;
}

.jcc-interview__movie iframe {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.jcc-interview__text {
	color: #fff;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.8;
	margin-top: 3px;
	margin-top: 0.1875rem;
}

.swiper-movie {
	margin-top: 46px;
	margin-top: 2.875rem;
	padding-bottom: 48px;
	padding-bottom: 3rem;
}

.swiper-movie .swiper-slide {
	width: 321px;
	width: 20.0625rem;
}

.student__photo {
	aspect-ratio: 16/9;
	position: relative;
}

.student__photo iframe {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.interview__card-label-bg {
	left: 0;
	position: absolute;
	top: -29px;
	top: -1.8125rem;
	width: 61px;
	width: 3.8125rem;
}

.no-video-title {
	margin-inline: auto;
	border-bottom: 1px dotted #298c8b;
	margin-top: 24px;
	margin-top: 1.5rem;
	padding-bottom: 12px;
	padding-bottom: 0.75rem;
	text-align: center;
	width: 85%;
}

.no-video-title .--01 {
	color: #298c8b;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 700;
}

.no-video-title .--02 {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 700;
}

.jcc-inner {
	margin-inline: auto;
	max-width: 1200px;
	max-width: 75rem;
	padding: 0 20px;
	width: 73.28125%;
}

.jcc-lecturer {
	background: #090E27;
	color: #fff;
	padding-bottom: 40px;
	padding-bottom: 2.5rem;
}

.jcc-lecturer__profile {
	gap: 24px;
	gap: 1.5rem;
	display: grid;
	grid-template-columns: 32% 60%;
	margin-top: 24px;
	margin-top: 1.5rem;
}

.jcc-lecturer__profile.--akita {
	position: relative;
}

.jcc-lecturer__profile.--akita::before {
	background: #fff;
	content: "";
	height: 1px;
	height: 0.0625rem;
	left: 0;
	position: absolute;
	top: -39px;
	top: -2.4375rem;
	width: 100%;
}

.jcc-lecturer__company {
	font-size: 13px;
	font-size: 0.8125rem;
}

.jcc-lecturer__name {
	font-size: 22px;
	font-size: 1.375rem;
	font-weight: bold;
}

.jcc-lecturer__name-en {
	font-family: "Outfit", sans-serif !important;
	font-size: 22px;
	font-size: 1.375rem;
	font-weight: 500;
	margin-left: 10px;
	margin-left: 0.625rem;
}

.jcc-lecturer__achievements {
	gap: 5px;
	gap: 0.3125rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin-top: 15px;
	margin-top: 0.9375rem;
	padding-bottom: 20px;
	padding-bottom: 1.25rem;
	position: relative;
}

.jcc-lecturer__achievements ::before {
	background: -webkit-gradient(linear, left top, right top, from(#fff), to(transparent));
	background: linear-gradient(to right, #fff, transparent);
	bottom: 0;
	content: "";
	height: 1px;
	height: 0.0625rem;
	left: 0;
	position: absolute;
	width: 100%;
}

.jcc-lecturer__achievements.--akita ::before {
	content: none;
}

.jcc-lecturer__achievement {
	font-size: 13px;
	font-size: 0.8125rem;
}

.jcc-lecturer__message {
	gap: 20px;
	gap: 1.25rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin-top: 20px;
	margin-top: 1.25rem;
}

.jcc-lecturer__text {
	font-size: 13px;
	font-size: 0.8125rem;
}

.jcc-lecturer__thumbnails {
	gap: 24px;
	gap: 1.5rem;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	margin-top: 40px;
	margin-top: 2.5rem;
}

.jcc-lecturer__thumbnail-video {
	aspect-ratio: 16/9;
}

.jcc-lecturer__thumbnail-video iframe {
	height: 100%;
	width: 100%;
}

.jcc-lecturer__thumbnail-caption {
	font-size: 12px;
	font-size: 0.75rem;
	padding: 16px 0 51px;
	padding: 1rem 0 3.1875rem;
}

.jcc-movie {
	aspect-ratio: 16/9;
	margin: 138px auto 0;
	margin: 8.625rem auto 0;
	position: relative;
	width: min(700px, 100%);
	width: min(43.75rem, 100%);
}

.jcc-movie iframe {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	position: absolute;
	width: 100%;
}

.fv {
	position: relative;
	z-index: 2;
}

.fv__button {
	bottom: 163px;
	bottom: 10.1875rem;
	bottom: 13.8888888889%;
	left: 153px;
	left: 9.5625rem;
	left: 10.625%;
	position: absolute;
}

.fv__button a {
	font-size: 23px;
	font-size: 1.4375rem;
	height: 74px;
	height: 4.625rem;
	padding-left: 50px;
	padding-left: 3.125rem;
	width: 450px;
	width: 28.125rem;
}

.fv::before {
	-webkit-animation: floatLeft 9s ease-in-out infinite;
	animation: floatLeft 9s ease-in-out infinite;
	background: url(../images/common/fv-bg01.svg) no-repeat center center/cover;
	bottom: -189px;
	bottom: -11.8125rem;
	content: "";
	height: 361px;
	height: 22.5625rem;
	left: -251px;
	left: -15.6875rem;
	position: absolute;
	width: 400px;
	width: 25rem;
}

.fv::after {
	-webkit-animation: floatRight 11s ease-in-out infinite;
	animation: floatRight 11s ease-in-out infinite;
	background: url(../images/common/fv-bg02.svg) no-repeat center center/cover;
	bottom: -114px;
	bottom: -7.125rem;
	content: "";
	height: 274px;
	height: 17.125rem;
	position: absolute;
	right: -200px;
	right: -12.5rem;
	width: 300px;
	width: 18.75rem;
}

.swiper-pagination {
	margin-left: calc(46.5% - 50vw);
	width: 100vw;
}

.swiper-pagination-bullet {
	border: 1px solid #fff;
	height: 9px;
	height: 0.5625rem;
	width: 9px;
	width: 0.5625rem;
}

.swiper-pagination-bullet-active {
	background-color: #fff;
}

.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction {
	bottom: 14px;
}

.plan {
	background: #faf7f3;
	overflow: hidden;
	padding: 70px 0 220px;
	padding: 4.375rem 0 13.75rem;
	position: relative;
}

.plan::before {
	background: url(../images/common/plan-bg.svg) no-repeat center center/cover;
	content: "";
	height: 450px;
	height: 28.125rem;
	left: 0;
	position: absolute;
	top: 300px;
	top: 18.75rem;
	width: 452px;
	width: 28.25rem;
}

.plan__inner {
	margin: 0 auto;
	max-width: 1180px;
	max-width: 73.75rem;
	padding: 0 20px;
	padding: 0 1.25rem;
	position: relative;
	text-align: center;
	z-index: 1;
}

.plan__lead {
	font-family: "Zen Kaku Gothic New", sans-serif !important;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 500;
	line-height: 1.7;
	margin: auto;
	position: relative;
	text-align: center;
	width: 470px;
	width: 29.375rem;
}

.plan__lead::before {
	background: url(../images/common/plan__lead-bg.svg) no-repeat center center/cover;
	content: "";
	height: 40px;
	height: 2.5rem;
	height: 56px;
	height: 3.5rem;
	left: 50px;
	left: 3.125rem;
	position: absolute;
	top: 3px;
	top: 0.1875rem;
	width: 58px;
	width: 3.625rem;
	z-index: -1;
}

.plan__heading {
	color: #298c8b;
	font-family: "Zen Kaku Gothic New", sans-serif !important;
	font-size: 40px;
	font-size: 2.5rem;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
}

.plan__question-wrap {
	margin-top: 37px;
	margin-top: 2.3125rem;
	text-align: center;
}

.plan__question {
	background: url(../images/common/plan__question-wrap-bg.svg) no-repeat center center/cover;
	display: inline-block;
	font-family: "Zen Kaku Gothic New", sans-serif !important;
	font-size: 28px;
	font-size: 1.75rem;
	font-weight: 700;
	font-weight: 700;
	height: 92px;
	height: 5.75rem;
	padding: 14px 20px;
	padding: 0.875rem 1.25rem;
	width: 502px;
	width: 31.375rem;
}

.plan__list {
	gap: 30px;
	gap: 1.875rem;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: end;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin-top: 30px;
	margin-top: 1.875rem;
	position: relative;
}

.plan__item {
	background: #fff;
	border-radius: 0.3125rem;
	-webkit-box-shadow: 0.375rem 0.375rem 0.75rem 0 rgba(0, 0, 0, .1);
	box-shadow: 0.375rem 0.375rem 0.75rem 0 rgba(0, 0, 0, .1);
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
	height: 430px;
	height: 26.875rem;
	padding: 10px;
	padding: 0.625rem;
	position: relative;
}

.plan__item--01 {
	background-color: #fff;
	position: relative;
}

.plan__item--01::after {
	background: url(../images/common/plan-item01.svg) no-repeat right bottom/contain;
	bottom: 0;
	content: "";
	height: 172px;
	height: 10.75rem;
	position: absolute;
	right: 0;
	width: 199px;
	width: 12.4375rem;
}

.plan__item--02 {
	background-color: #EDF4F3;
	position: relative;
}

.plan__item--02::after {
	background: url(../images/common/plan-item02.svg) no-repeat right bottom/contain;
	bottom: 0;
	content: "";
	height: 172px;
	height: 10.75rem;
	position: absolute;
	right: 0;
	width: 199px;
	width: 12.4375rem;
}

.plan__item--03 {
	background-color: #fff;
	position: relative;
}

.plan__item--03::after {
	background: url(../images/common/plan-item03.svg) no-repeat right bottom/contain;
	bottom: 0;
	content: "";
	height: 172px;
	height: 10.75rem;
	position: absolute;
	right: 0;
	width: 199px;
	width: 12.4375rem;
}

.plan__item--recommend {
	border: 5px solid #298c8b;
	border: 0.3125rem solid #298c8b;
	height: 450px;
	height: 28.125rem;
	position: relative;
	z-index: 2;
}

.plan__item--recommend::before {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background: url(../images/common/plan-item-recommend-bg.svg) no-repeat center center/cover;
	color: #fff;
	content: "＼ 最も選ばれているコース ／";
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 700;
	height: 31px;
	height: 1.9375rem;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	left: 50%;
	position: absolute;
	top: 0;
	top: -17px;
	top: -1.0625rem;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	width: 271px;
	width: 16.9375rem;
}

.plan__item-label {
	background: #298c8b;
	border-radius: 100vh;
	color: #fff;
	font-family: "Zen Kaku Gothic New", sans-serif !important;
	font-size: 15px;
	font-size: 0.9375rem;
	font-weight: 700;
	left: 50%;
	padding: 8px 20px;
	padding: 0.5rem 1.25rem;
	position: absolute;
	top: -20px;
	top: -1.25rem;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	white-space: nowrap;
	z-index: 3;
}

.plan__item-badge {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	border-radius: 50%;
	color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	height: 64px;
	height: 4rem;
	height: 69px;
	height: 4.3125rem;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	left: 25px;
	left: 1.5625rem;
	position: absolute;
	top: 28px;
	top: 1.75rem;
	width: 69px;
	width: 4.3125rem;
}

.plan__item-badge--01 {
	background: #F3E9E9;
	color: #E35D5D;
}

.plan__item-badge--02 {
	background: #EDF4F3;
	color: #298c8b;
}

.plan__item-badge--03 {
	background: #F0EDF7;
	color: #8d7fcb;
}

.plan__item-badge-text {
	font-family: "Zen Kaku Gothic New", sans-serif !important;
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.05em;
}

.plan__item-badge-number {
	font-family: "Montserrat", sans-serif !important;
	font-size: 32px;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1;
}

.plan__item-body {
	padding: 16px 0 0;
	padding: 1rem 0 0;
	position: relative;
	z-index: 2;
}

.plan__item-tag {
	margin: auto;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.plan__item-title {
	font-family: "Zen Kaku Gothic New", sans-serif !important;
	font-size: 32px;
	font-size: 2rem;
	font-weight: 700;
	font-weight: 700;
}

.plan__item-title--01 {
	color: #E35D5D;
}

.plan__item-title--02 {
	color: #298c8b;
}

.plan__item-title--03 {
	color: #8C7BAF;
}

.plan__item-text {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.6;
	text-align: left;
}

.plan__item-list {
	gap: 5px;
	gap: 0.3125rem;
	border-top: 0.2px solid #1F2937;
	border-top: 0.0125rem solid #1F2937;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin-top: 20px;
	margin-top: 1.25rem;
	padding-top: 10px;
	padding-top: 0.625rem;
	text-align: left;
}

.plan__item-list-item {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.6;
	padding-left: 28px;
	padding-left: 1.75rem;
	position: relative;
}

.plan__item-list--01 .plan__item-list-item::before {
	background: url(../images/common/plan-checkbox01.svg) no-repeat center center/contain;
	content: "";
	height: 18px;
	height: 1.125rem;
	left: 0;
	position: absolute;
	top: 3px;
	top: 0.1875rem;
	width: 18px;
	width: 1.125rem;
}

.plan__item-list--02 .plan__item-list-item::before {
	background: url(../images/common/plan-checkbox02.svg) no-repeat center center/contain;
	content: "";
	height: 18px;
	height: 1.125rem;
	left: 0;
	position: absolute;
	top: 3px;
	top: 0.1875rem;
	width: 18px;
	width: 1.125rem;
}

.plan__item-list--03 .plan__item-list-item::before {
	background: url(../images/common/plan-checkbox03.svg) no-repeat center center/contain;
	content: "";
	height: 18px;
	height: 1.125rem;
	left: 0;
	position: absolute;
	top: 3px;
	top: 0.1875rem;
	width: 18px;
	width: 1.125rem;
	z-index: 1;
}

/* 背景装飾 */

.plan__blob {
	position: absolute;
	z-index: 0;
}

.plan__blob--teal {
	background: #298c8b;
	border-radius: 50% 50% 50% 0/55% 55% 45% 45%;
	bottom: 40px;
	bottom: 2.5rem;
	height: 420px;
	height: 26.25rem;
	left: -120px;
	left: -7.5rem;
	width: 420px;
	width: 26.25rem;
}

.plan__blob--pink {
	background: #f2b4b0;
	border-radius: 40% 60% 60% 40%/60% 40% 60% 40%;
	bottom: -20px;
	bottom: -1.25rem;
	height: 140px;
	height: 8.75rem;
	left: 180px;
	left: 11.25rem;
	width: 140px;
	width: 8.75rem;
}

.plan__blob--purple {
	background: #c9beea;
	border-radius: 50%;
	height: 260px;
	height: 16.25rem;
	right: -80px;
	right: -5rem;
	top: 120px;
	top: 7.5rem;
	width: 260px;
	width: 16.25rem;
}

.present {
	padding: 230px 0 210px;
	padding: 14.375rem 0 13.125rem;
	position: relative;
}

.present::before {
	background: url(../images/common/present-bg01-pc.png) no-repeat center center/cover;
	bottom: 0;
	content: "";
	height: 95px;
	height: 5.9375rem;
	left: 0;
	position: absolute;
	width: 100%;
}

.present__heading {
	font-family: "Zen Kaku Gothic New", sans-serif !important;
	font-size: 40px;
	font-size: 2.5rem;
	text-align: center;
}

.present__heading .accent {
	color: #e35d5d;
}

.present__list {
	gap: 15px;
	gap: 0.9375rem;
	margin-inline: auto;
	color: #298c8b;
	display: grid;
	font-family: "Zen Kaku Gothic New", sans-serif !important;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 700;
	grid-template-columns: 1fr 1fr 1fr;
	line-height: 1.5;
	margin-top: 10px;
	margin-top: 0.625rem;
	text-align: center;
	width: min(100%, 501px);
	width: min(100%, 31.3125rem);
}

.present__image {
	margin-inline: auto;
	margin-top: 60px;
	margin-top: 3.75rem;
	width: min(100%, 864px);
	width: min(100%, 54rem);
}

.present__button {
	margin-inline: auto;
	margin-top: 70px;
	margin-top: 4.375rem;
	position: relative;
	width: min(100%, 500px);
	width: min(100%, 31.25rem);
}

.present__button-text {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background: #fff;
	border: 2px solid #f18e48;
	border: 0.125rem solid #f18e48;
	border-radius: 3.125rem;
	color: #f18648;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	font-family: "Zen Kaku Gothic New", sans-serif !important;
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: 700;
	height: 29px;
	height: 1.8125rem;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	left: 50%;
	position: absolute;
	top: -11px;
	top: -0.6875rem;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	width: 348px;
	width: 21.75rem;
	z-index: 2;
}

.present__button-text-small {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
	margin-top: 5px;
	margin-top: 0.3125rem;
	text-align: center;
}

.jcc-problem {
	background: #ededed;
	padding: 160px 0;
	padding: 10rem 0;
}

.jcc-problem__grid {
	gap: 35px;
	gap: 2.1875rem;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	margin-top: 36px;
	margin-top: 2.25rem;
}

.jcc-problem__item {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background-color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 175px;
	height: 10.9375rem;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.jcc-problem__text {
	font-size: 18px;
	font-size: 1.125rem;
	text-align: center;
}

.jcc-program {
	background: radial-gradient(circle closest-corner, #1f3656 0%, #090e27 100%);
	padding: 160px 0;
	padding: 10rem 0;
}

.jcc-program__grid {
	gap: 36px;
	gap: 2.25rem;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	margin-top: 40px;
	margin-top: 2.5rem;
}

.jcc-program__grid02 {
	gap: 36px;
	gap: 2.25rem;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	margin-top: 36px;
	margin-top: 2.25rem;
}

.jcc-program__item { /* Safari対応 */
	backdrop-filter: blur(4px); /* ぼかし半径 */
	background-color: rgba(70, 62, 62, .15); /* 背景色 FFFFFF, 不透明度 15% */
	background-color: rgba(255, 255, 255, .15);
	-webkit-box-shadow: 0 0 4.54px #fff;
	box-shadow: 0 0 4.54px #fff;
	color: #fff;
	padding: 42px 24px;
	padding: 2.625rem 1.5rem;
}

.jcc-program__item.--top {
	height: 248px;
	height: 15.5rem;
}

.jcc-program__item.--bottom {
	height: 317px;
	height: 19.8125rem;
}

.jcc-program__item.--02 {
	padding: 30px 23px;
	padding: 1.875rem 1.4375rem;
}

.jcc-program__item-title {
	font-size: 18px;
	font-size: 1.125rem;
	font-weight: bold;
	height: 40px;
	height: 2.5rem;
	position: relative;
	text-align: center;
}

.jcc-program__item-title.--02 {
	height: 71px;
	height: 4.4375rem;
}

.jcc-program__item-title.--03 {
	height: 100px;
	height: 6.25rem;
}

.jcc-program__item-title::after {
	background-color: #fff;
	bottom: 0;
	content: "";
	height: 0.5px;
	height: 0.03125rem;
	left: 50%;
	position: absolute;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	width: 100%;
}

.jcc-program__item-text {
	font-size: 14px;
	font-size: 0.875rem;
	margin-top: 17px;
	margin-top: 1.0625rem;
	text-align: center;
}

/* よくある質問 */

.jcc-faq {
	background: radial-gradient(circle closest-side, #1f3656 0%, #090e27 100%);
	padding: 40px 0 80px;
	padding: 2.5rem 0 5rem;
}

.jcc-faq__lists {
	gap: 16px;
	gap: 1rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin-top: 45px;
	margin-top: 2.8125rem;
}

.jcc-faq__item {
	background-color: rgba(255, 255, 255, .15);
	border-radius: 0.5rem;
	color: #fff;
	min-height: 24.32px;
	min-height: 1.52rem;
	padding: 16px 40px 7px;
	padding: 1rem 2.5rem 0.4375rem;
}

.jcc-faq__question,
.jcc-faq__answer {
	gap: 16px;
	gap: 1rem;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	border-bottom: 1px solid #797979;
	display: grid;
	grid-template-columns: 1.1875rem auto;
	padding-bottom: 16px;
	padding-bottom: 1rem;
}

.jcc-faq__answer {
	-webkit-box-align: initial;
	-ms-flex-align: initial;
	align-items: initial;
	border-bottom: none;
}

.jcc-faq__text {
	font-size: 16px;
	font-size: 1rem;
}

.jcc-faq__answer .jcc-faq__text {
	font-size: 14px;
	font-size: 0.875rem;
}

.jcc-faq__answer {
	padding-top: 16px;
	padding-top: 1rem;
}

.jcc-faq__icon {
	font-family: "Outfit", sans-serif !important;
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: bold;
}

.jcc-reason {
	background: #f9f9f9;
	padding: 160px 0 149px;
	padding: 10rem 0 9.3125rem;
	position: relative;
}

.jcc-reason::before {
	background-image: url(../images/common/bg-logo.png);
	background-size: cover;
	content: "";
	height: 313px;
	height: 19.5625rem;
	left: 0;
	position: absolute;
	top: -39px;
	top: -2.4375rem;
	width: 580px;
	width: 36.25rem;
}

.jcc-reason__lists {
	gap: 60px;
	gap: 3.75rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin-top: 50px;
	margin-top: 3.125rem;
}

.jcc-reason__item {
	gap: 40px;
	gap: 2.5rem;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: grid;
	grid-template-columns: 34% 61%;
	position: relative;
}

.jcc-reason__item.--01 {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.jcc-reason__title {
	gap: 12px;
	gap: 0.75rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-weight: 700;
}

.jcc-reason__title .jcc-reason__title-text {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 1.8;
}

.jcc-reason__title .jcc-reason__number {
	font-family: "Outfit", sans-serif !important;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 500;
	margin-top: 3px;
	margin-top: 0.1875rem;
}

.jcc-reason__title.--04 {
	margin-top: 20px;
	margin-top: 1.25rem;
}

.jcc-reason__text {
	font-size: 16px;
	font-size: 1rem;
	margin-top: 12px;
	margin-top: 0.75rem;
}

.jcc-reason__text span {
	font-size: 12px;
	font-size: 0.75rem;
}

.jcc-schedule {
	background-image: url(../images/common/schedule-bg-pc.jpg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	padding: 160px 0 85px;
	padding: 10rem 0 5.3125rem;
	position: relative;
}

.jcc-schedule__scroll {
	margin-top: 40px;
	margin-top: 2.5rem;
	text-align: right;
}

.jcc-schedule__scroll span {
	color: #fff;
	font-size: 12px;
	font-size: 0.75rem;
	padding-right: 72px;
	padding-right: 4.5rem;
	position: relative;
}

.jcc-schedule__scroll span::after {
	background-color: #fff;
	content: "";
	height: 1px;
	height: 0.0625rem;
	position: absolute;
	right: 0;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 56px;
	width: 3.5rem;
}

.schedule-table {
	border-collapse: collapse;
	color: #fff;
	margin-top: 39px;
	margin-top: 2.4375rem;
}

.schedule-table tr {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	padding-bottom: 20px;
	padding-bottom: 1.25rem;
	position: relative;
}

.schedule-table__number {
	font-family: "Outfit", sans-serif !important;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 500;
	padding-bottom: 20px;
	padding-bottom: 1.25rem;
	position: relative;
	width: 4%;
}

.schedule-table__number::after {
	background-image: linear-gradient(to right, rgba(255, 255, 255, .8) 2px, transparent 2px);
	background-position: left bottom;
	background-repeat: repeat-x;
	background-size: 4px 0.5px;
	bottom: 0;
	content: "";
	height: 1px;
	left: 0;
	position: absolute;
	width: 100%;
}

.schedule-table__number.--pre {
	font-size: 16px;
	font-size: 1rem;
}

.schedule-table__date {
	font-size: 16px;
	font-size: 1rem;
	padding-bottom: 20px;
	padding-bottom: 1.25rem;
	position: relative;
	width: 7.5%;
}

.schedule-table__date span {
	font-size: 10px;
	font-size: 0.625rem;
}

.schedule-table__date::after {
	background-image: linear-gradient(to right, rgba(255, 255, 255, .8) 2px, transparent 2px);
	background-position: left bottom;
	background-repeat: repeat-x;
	background-size: 4px 0.5px;
	bottom: 0;
	content: "";
	height: 1px;
	left: 0;
	position: absolute;
	width: 100%;
}

.schedule-table__date.--holiday {
	line-height: 1;
}

.schedule-table__hour {
	font-family: "Outfit", sans-serif !important;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 500;
	padding-bottom: 20px;
	padding-bottom: 1.25rem;
	position: relative;
	width: 10%;
}

.schedule-table__hour::after {
	background-image: linear-gradient(to right, rgba(255, 255, 255, .8) 2px, transparent 2px);
	background-position: left bottom;
	background-repeat: repeat-x;
	background-size: 4px 0.5px;
	bottom: 0;
	content: "";
	height: 1px;
	left: 0;
	position: absolute;
	width: 100%;
}

.schedule-table__hour.half-border::after {
	right: auto;
	right: initial;
	width: 83%;
}

.schedule-table__hour.--ja {
	font-weight: 500;
}

.schedule-table__content {
	font-size: 18px;
	font-size: 1.125rem;
	padding-bottom: 20px;
	padding-bottom: 1.25rem;
	position: relative;
	width: 28%;
}

.schedule-table__content::after {
	background-image: linear-gradient(to right, rgba(255, 255, 255, .8) 2px, transparent 2px);
	background-position: left bottom;
	background-repeat: repeat-x;
	background-size: 4px 0.5px;
	bottom: 0;
	content: "";
	height: 1px;
	left: 0;
	position: absolute;
	width: 100%;
}

.schedule-table__number.--bottom,
.schedule-table__date.--bottom,
.schedule-table__hour.--bottom,
.schedule-table__content.--bottom {
	padding-bottom: 17px;
	padding-bottom: 1.0625rem;
}

tr:not(:first-child) .schedule-table__number,
tr:not(:first-child) .schedule-table__date,
tr:not(:first-child) .schedule-table__hour,
tr:not(:first-child) .schedule-table__content {
	padding-top: 23px;
	padding-top: 1.4375rem;
}

.jcc-schedule__attention {
	color: #fff;
	font-size: 13px;
	font-size: 0.8125rem;
	line-height: 1.6;
	margin-top: 40px;
	margin-top: 2.5rem;
}

.jcc-service-architecture {
	background-color: #ededed;
	padding: 158px 0 141px;
	padding: 9.875rem 0 8.8125rem;
}

.jcc-service-architecture__text {
	letter-spacing: 0.01em;
	line-height: 1.8;
	margin-top: 43px;
	margin-top: 2.6875rem;
}

.jcc-service-architecture__image {
	margin-top: 46px;
	margin-top: 2.875rem;
}

.jcc-service-architecture__scroll {
	margin-top: 40px;
	margin-top: 2.5rem;
	text-align: right;
}

.jcc-service-architecture__scroll span {
	color: #0A0F28;
	font-size: 12px;
	font-size: 0.75rem;
	padding-right: 72px;
	padding-right: 4.5rem;
	position: relative;
}

.jcc-service-architecture__scroll span::after {
	background-color: #0A0F28;
	content: "";
	height: 1px;
	height: 0.0625rem;
	position: absolute;
	right: 0;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 56px;
	width: 3.5rem;
}

.student {
	background: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(40%, #fff), color-stop(40%, #e7e6e5), to(#e7e6e5));
	background: linear-gradient(to bottom, #fff 0%, #fff 40%, #e7e6e5 40%, #e7e6e5 100%);
	overflow: hidden;
	padding: 160px 0 0;
	padding: 10rem 0 0;
	position: relative;
}

.student__bg-wrap {
	-webkit-animation: scroll-left 90s infinite linear 0.5s both;
	animation: scroll-left 90s infinite linear 0.5s both;
	bottom: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	left: 0;
	position: absolute;
	width: 4000px;
}

.student__inner {
	margin: 20px auto 0;
	margin: 1.25rem auto 0;
	max-width: 1080px;
	max-width: 67.5rem;
	padding: 0 20px;
	padding: 0 1.25rem;
	position: relative;
}

.student__heading {
	color: #298c8b;
	font-family: "Zen Kaku Gothic New", sans-serif !important;
	font-size: 40px;
	font-size: 2.5rem;
	font-weight: 700;
	letter-spacing: 0.03em;
	line-height: 1.55;
	text-align: center;
}

/* ---------- 緑のパネル ---------- */

.student__panel {
	background: url(../images/common/student__panel-pc.png) no-repeat center center/cover;
	border-radius: 16px;
	margin-top: 56px;
	margin-top: 3.5rem;
	padding: 40px;
	position: relative;
}

/* ---------- イントロ ---------- */

.student__intro {
	gap: 60px;
	gap: 3.75rem;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.student__intro-head {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;
	position: relative;
}

.student__intro-head::before {
	background: var(--teal);
	border-radius: 14px 14px 14px 3px;
	content: "";
	height: 22px;
	left: -8px;
	position: absolute;
	top: -16px;
	width: 26px;
}

.student__intro-sub {
	font-family: "Zen Kaku Gothic New", sans-serif !important;
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.5;
	position: relative;
	z-index: 2;
}

.student__intro-sub::before {
	background: url(../images/common/student__intro-sub-bg.svg) no-repeat center center/cover;
	content: "";
	height: 44px;
	height: 2.75rem;
	left: -22px;
	left: -1.375rem;
	position: absolute;
	top: -16px;
	top: -1rem;
	top: -20px;
	top: -1.25rem;
	width: 46px;
	width: 2.875rem;
	z-index: -1;
}

.student__intro-banner {
	background: linear-gradient(138deg, #58c3c2 0%, #298c8b 100%);
	color: #fff;
	display: inline-block;
	font-family: "Zen Kaku Gothic New", sans-serif !important;
	font-size: 40px;
	font-size: 2.5rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	padding: 2px 30px;
	padding: 0.125rem 1.875rem;
}

.student__intro-text {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.4;
}

.student__cards {
	gap: 24px;
	gap: 1.5rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-top: 40px;
	margin-top: 2.5rem;
}

.student__name {
	background: #fff;
	border-radius: 2px;
	bottom: 8px;
	color: var(--ink);
	font-size: 13px;
	font-weight: 700;
	left: 8px;
	padding: 3px 10px;
	position: absolute;
}

.student__card-title {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 700;
	margin: 15px 0 0;
	margin: 0.9375rem 0 0;
	text-align: center;
}

.student__card-title-top {
	font-size: 20px;
	font-size: 1.25rem;
}

.student__card-banner {
	background: linear-gradient(138deg, #58c3c2 0%, #298c8b 100%);
	color: #fff;
	display: inline-block;
	font-size: 24px;
	font-size: 1.5rem;
	padding: 1px 16px;
	padding: 0.0625rem 1rem;
}

.student__list {
	gap: 5px;
	gap: 0.3125rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	list-style: none;
	margin-top: 10px;
	margin-top: 0.625rem;
}

.student__item {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 400;
	letter-spacing: 0.07em;
	line-height: 1.4;
	padding-left: 22px;
	padding-left: 1.375rem;
	position: relative;
}

.student__item::before {
	background-image: url("../images/common/check-box.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	height: 14px;
	height: 0.875rem;
	left: 0;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 14px;
	width: 0.875rem;
}

.splide-student {
	display: none;
}

.splide-student .splide__pagination {
	bottom: 36px;
	bottom: 2.25rem;
	bottom: -40px;
	bottom: -2.5rem;
	margin-left: calc(50% - 50vw);
	width: 100vw;
}

.splide-student .splide__pagination__page {
	background: #d9d9d9;
	opacity: 1;
}

.splide-student .splide__pagination__page.is-active {
	background: #298c8b;
}

.splide-student .splide__arrows {
	bottom: -74px;
	bottom: -4.625rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 50px;
	height: 3.125rem;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	left: 50%;
	margin: auto;
	margin: auto;
	position: relative;
	position: absolute;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	width: 150px;
	width: 117px;
	width: 7.3125rem;
}

.splide-student .splide__arrow {
	background-color: transparent;
	opacity: 1;
	position: static;
	-webkit-transform: none;
	transform: none;
}

.splide-student .splide__arrow.splide__arrow--prev {
	background-image: url("../images/common/prev.svg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	height: 17px;
	height: 1.0625rem;
	width: 9px;
	width: 0.5625rem;
}

.splide-student .splide__arrow.splide__arrow--next {
	background-image: url("../images/common/next.svg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	height: 17px;
	height: 1.0625rem;
	width: 9px;
	width: 0.5625rem;
}

.jcc-support {
	background-color: #f9f9f9;
	padding: 160px 0 199px;
	padding: 10rem 0 12.4375rem;
}

.jcc-support__inner {
	width: 69.0625%;
}

.jcc-support__approach {
	gap: 44px;
	gap: 2.75rem;
	color: #fff;
	display: grid;
	grid-template-columns: 27.5rem 22.5rem;
	margin-top: 36px;
	margin-top: 2.25rem;
}

.jcc-support__approach-item {
	background: -webkit-gradient(linear, left top, right bottom, from(#153664), to(#001322));
	background: linear-gradient(to bottom right, #153664 0%, #001322 100%);
	border-radius: 0.25rem;
	padding: 30px 32px 36px;
	padding: 1.875rem 2rem 2.25rem;
}

.jcc-support__approach-title {
	color: #0A0F28;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: bold;
}

.jcc-support__approach-description {
	color: #0A0F28;
	font-size: 14px;
	font-size: 0.875rem;
	margin-top: 26px;
	margin-top: 1.625rem;
}

.jcc-vision {
	background: #F9F9F9;
	padding: 160px 0 152px;
	padding: 10rem 0 9.5rem;
}

.jcc-vision__description {
	margin-top: 22px;
	margin-top: 1.375rem;
}

.jcc-vision__lists {
	gap: 130px;
	gap: 8.125rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin-top: 100px;
	margin-top: 6.25rem;
}

.jcc-vision__item {
	gap: 84px;
	gap: 5.25rem;
	display: grid;
	grid-template-columns: 30% 60%;
	position: relative;
}

.jcc-vision__item:not(:last-child)::before {
	background: #C4C4C4;
	bottom: -62px;
	bottom: -3.875rem;
	content: "";
	height: 1px;
	left: 0;
	position: absolute;
	width: 100%;
}

.jcc-vision__item.--01 {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.jcc-vision__image.--01 {
	padding-left: 42px;
	padding-left: 2.625rem;
}

.jcc-vision__title {
	gap: 12px;
	gap: 0.75rem;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-weight: 700;
}

.jcc-vision__title .jcc-vision__title-text {
	font-size: 15px;
	font-size: 0.9375rem;
	line-height: 1.8;
}

.jcc-vision__title .jcc-vision__number {
	font-family: "Outfit", sans-serif !important;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 400;
}

.jcc-vision__title.--04 {
	margin-top: 20px;
	margin-top: 1.25rem;
}

.jcc-vision__text {
	margin-top: 12px;
	margin-top: 0.75rem;
}

.what-coaching {
	background: radial-gradient(circle closest-side, #1f3656 0%, #090e27 100%);
	color: #fff;
	padding: 150px 0 25px;
	padding: 9.375rem 0 1.5625rem;
}

.what-coaching__description {
	color: #fff;
	font-size: 16px;
	font-size: 1rem;
	letter-spacing: -0.01em;
	line-height: 1.6;
	margin-top: 35px;
	margin-top: 2.1875rem;
}

.what-coaching__description02 {
	color: #fff;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.6;
	margin-top: 13px;
	margin-top: 0.8125rem;
}

.what-coaching__items {
	gap: 64px;
	gap: 4rem;
	display: grid;
	grid-template-columns: 1fr 1fr;
	margin-top: 86px;
	margin-top: 5.375rem;
}

.what-coaching__item {
	gap: 31px;
	gap: 1.9375rem;
	border: 1px solid #fff;
	display: grid;
	grid-row: span 3;
	grid-template-rows: subgrid;
	padding: 20px 26px;
	padding: 1.25rem 1.625rem;
}

.what-coaching__item--03,
.what-coaching__item--04 {
	padding-bottom: 36px;
	padding-bottom: 2.25rem;
}

.what-coaching__item-header {
	gap: 12px;
	gap: 0.75rem;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.what-coaching__number {
	color: #fff;
	font-family: "Outfit", sans-serif !important;
	font-size: 32px;
	font-size: 2rem;
	font-weight: 500;
}

.what-coaching__heading {
	color: #fff;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 700;
}

.what-coaching__text {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.7;
	margin-top: -25px;
	margin-top: -1.5625rem;
}

.what-coaching__summaries {
	gap: 48px;
	gap: 3rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin-top: 98px;
	margin-top: 6.125rem;
}

.why {
	background: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(1%, #fff), color-stop(1%, #e9f2e5), color-stop(90%, #e9f2e5), color-stop(90%, #fff), to(#fff));
	background: linear-gradient(to bottom, #fff 0%, #fff 1%, #e9f2e5 1%, #e9f2e5 90%, #fff 90%, #fff 100%);
	overflow: hidden;
	padding-bottom: 120px;
	padding-bottom: 7.5rem;
	position: relative;
}

.why::before {
	background: url(../images/common/why-bg.svg) no-repeat center center/cover;
	content: "";
	height: 352px;
	height: 22rem;
	position: absolute;
	right: 0;
	top: 194px;
	top: 12.125rem;
	width: 391px;
	width: 24.4375rem;
}

.why__inner {
	margin: 0 auto;
	max-width: 1180px;
	max-width: 73.75rem;
	padding: 0 20px;
	padding: 0 1.25rem;
	position: relative;
	z-index: 2;
}

.why__inner::before {
	background: url(../images/common/why__point-bg01.svg) no-repeat center center/cover;
	content: "";
	height: 217px;
	height: 13.5625rem;
	left: -100px;
	left: -6.25rem;
	left: -128px;
	left: -8rem;
	position: absolute;
	top: -100px;
	top: -6.25rem;
	top: 1000px;
	top: 62.5rem;
	width: 239px;
	width: 14.9375rem;
}

.why__inner::after {
	background: url(../images/common/why__point-bg02.svg) no-repeat center center/cover;
	content: "";
	height: 257px;
	height: 16.0625rem;
	position: absolute;
	right: -148px;
	right: -9.25rem;
	top: 1649px;
	top: 103.0625rem;
	width: 308px;
	width: 19.25rem;
	z-index: -1;
}

.why__head {
	position: relative;
	text-align: center;
	z-index: 3;
}

.why__badge {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background: #298c8b;
	border-radius: 0.5rem;
	color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-family: "Zen Kaku Gothic New", sans-serif !important;
	font-size: 28px;
	font-size: 1.75rem;
	font-weight: 700;
	height: 50px;
	height: 3.125rem;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	left: 50%;
	position: absolute;
	top: 0;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	width: 144px;
	width: 9rem;
}

.why__badge::before {
	background: #298c8b;
	bottom: -19px;
	bottom: -1.1875rem;
	-webkit-clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
	clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
	content: "";
	height: 19px;
	height: 1.1875rem;
	left: 50%;
	position: absolute;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	width: 16px;
	width: 1rem;
}

.why__heading {
	font-family: "Zen Kaku Gothic New", sans-serif !important;
	font-size: 48px;
	font-size: 3rem;
	font-weight: 700;
	line-height: 1.5;
	padding-top: 80px;
	padding-top: 5rem;
}

.why__lead {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 500;
	font-weight: 500;
	margin-top: 16px;
	margin-top: 1rem;
	position: relative;
}

.why__lead::before {
	background: url(../images/common/why__lead-arrows.svg) no-repeat center center/cover;
	bottom: -81px;
	bottom: -5.0625rem;
	content: "";
	height: 58px;
	height: 3.625rem;
	left: 50%;
	position: absolute;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	width: 27px;
	width: 1.6875rem;
}

.why__arrow:last-child {
	border-top-color: #298c8b;
}

.why__catch {
	font-family: "Zen Kaku Gothic New", sans-serif !important;
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 700;
	margin-top: 106px;
	margin-top: 6.625rem;
}

.why__catch-accent {
	color: #e35d5d;
	font-size: 32px;
	font-size: 2rem;
}

.why__label {
	color: #fff;
	display: inline-block;
	font-family: "Zen Kaku Gothic New", sans-serif !important;
	font-size: 40px;
	font-size: 2.5rem;
	font-weight: 700;
	margin-top: 24px;
	margin-top: 1.5rem;
	padding: 8px 36px;
	padding: 0.5rem 2.25rem;
}

.why__label--step {
	background: #298c8b;
	width: 510px;
	width: 31.875rem;
}

.why__label--point {
	background: #7a6e9b;
	margin-top: 5px;
	margin-top: 0.3125rem;
	width: 330px;
	width: 20.625rem;
}

/* ---------- STEPフロー ---------- */

.why__steps-panel {
	margin-top: -17px;
	margin-top: -1.0625rem;
	position: relative;
	z-index: 2;
}

.why__steps-panel::before {
	background: url(../images/common/why__steps-panel-icon.svg) no-repeat center center/cover;
	bottom: -24px;
	bottom: -1.5rem;
	content: "";
	height: 43px;
	height: 2.6875rem;
	left: 50%;
	position: absolute;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	width: 43px;
	width: 2.6875rem;
}

.why__steps {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.why__step {
	color: #0a0f28;
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
	padding: 0 32px 0 48px;
	padding: 0 2rem 0 3rem;
	position: relative;
}

.why__step:first-child {
	padding-left: 0;
}

.why__step::before {
	background: #fff;
	-webkit-clip-path: polygon(0 0, 85% 0, 100% 50%, 85% 100%, 0 100%, 15% 50%);
	clip-path: polygon(0 0, 85% 0, 100% 50%, 85% 100%, 0 100%, 15% 50%);
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 0;
}

.why__step:first-child::before {
	-webkit-clip-path: polygon(0 0, 85% 0, 100% 50%, 85% 100%, 0 100%);
	clip-path: polygon(0 0, 85% 0, 100% 50%, 85% 100%, 0 100%);
}

.why__step--01::before {
	background: #ffffff;
}

.why__step--02::before {
	background: #d9ece7;
}

.why__step--03::before {
	background: #a9d4cb;
}

.why__step--04::before {
	background: #5cb0a4;
}

.why__step--05::before {
	background: #298c8b;
}

.why__step--04,
.why__step--05 {
	color: #fff;
}

.why__step-label,
.why__step-number,
.why__step-title,
.why__step-text {
	position: relative;
	z-index: 1;
}

.why__step-label {
	font-family: "Outfit", sans-serif !important;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 500;
	letter-spacing: 0.05em;
}

.why__step-number {
	font-family: "Outfit", sans-serif !important;
	font-size: 40px;
	font-size: 2.5rem;
	font-weight: 700;
	line-height: 1.1;
}

.why__step-title {
	font-family: "Zen Kaku Gothic New", sans-serif !important;
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.5;
	margin-top: 24px;
	margin-top: 1.5rem;
}

.why__step-text {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 13px;
	font-size: 0.8125rem;
	line-height: 1.7;
	margin-top: 12px;
	margin-top: 0.75rem;
}

.why__u-hidden-sp {
	display: none;
}

/* ---------- + アイコン ---------- */

.why__plus {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background: #fff;
	border: 1px solid #0a0f28;
	border: 0.0625rem solid #0a0f28;
	border-radius: 50%;
	color: #0a0f28;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 20px;
	font-size: 1.25rem;
	height: 40px;
	height: 2.5rem;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin: 40px auto 0;
	margin: 2.5rem auto 0;
	width: 40px;
	width: 2.5rem;
}

.why__head--point {
	margin-top: 48px;
	margin-top: 3rem;
}

.why__sub-lead {
	font-family: "Zen Kaku Gothic New", sans-serif !important;
	font-size: 28px;
	font-size: 1.75rem;
	font-weight: 700;
}

/* ---------- POINTカード ---------- */

.why__points-panel {
	background: #f6f3f8;
	border-radius: 1.875rem;
	margin-top: -21px;
	margin-top: -1.3125rem;
	padding: 50px 108px;
	padding: 3.125rem 6.75rem;
	position: relative;
}

.why__points {
	gap: 36px 24px;
	gap: 2.25rem 1.5rem;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
}

.why__point {
	background: #fff;
	border: 2px solid #bcafd2;
	border: 0.125rem solid #bcafd2;
	border-radius: 0.8125rem;
	height: 290px;
	height: 18.125rem;
	padding: 0px 20px 20px;
	padding: 0rem 1.25rem 1.25rem;
	position: relative;
}

.why__point--center {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.why__point-ribbon {
	background: url(../images/common/why__point-ribbon-bg.svg) no-repeat center center/cover;
	color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	height: 85px;
	height: 5.3125rem;
	left: 12px;
	left: 0.75rem;
	padding: 8px 19px 16px 14px;
	padding: 0.5rem 1.1875rem 1rem 0.875rem;
	position: absolute;
	top: -15px;
	top: -0.9375rem;
	width: 69px;
	width: 4.3125rem;
}

.why__point-ribbon-text {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 7px;
	font-size: 0.4375rem;
	font-weight: 900;
	text-align: center;
}

.why__point-ribbon-number {
	font-family: "Montserrat", sans-serif !important;
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
}

.why__point-title {
	color: #7a6e9b;
	font-family: "Zen Kaku Gothic New", sans-serif !important;
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.5;
	margin-top: 80px;
	margin-top: 5rem;
}

.why__point-title--center {
	text-align: center;
}

.why__point-list {
	gap: 3px;
	gap: 0.1875rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin-top: 16px;
	margin-top: 1rem;
}

.why__point-list-item {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.6;
	position: relative;
}

/* ---------- 背景装飾 ---------- */

.why__blob {
	background: #a9c4c4;
	border-radius: 50%;
	bottom: 200px;
	bottom: 12.5rem;
	-webkit-clip-path: polygon(50% 0%, 90% 20%, 100% 60%, 70% 100%, 20% 90%, 0% 50%);
	clip-path: polygon(50% 0%, 90% 20%, 100% 60%, 70% 100%, 20% 90%, 0% 50%);
	height: 150px;
	height: 9.375rem;
	left: -60px;
	left: -3.75rem;
	opacity: 0.6;
	position: absolute;
	width: 150px;
	width: 9.375rem;
	z-index: 0;
}

@media (min-width: 376px) and (max-width: 767px) {

html {
	font-size: 16px;
}

}

@media (min-width: 768px) and (max-width: 1100px) {

html {
	font-size: 1.4545454545vw;
}

}

@media (min-width: 1100px) {

html {
	font-size: 16px;
}

}

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

.u-desktop {
	display: block;
}

.u-mobile {
	display: none;
}

a[href^="tel:"] {
	pointer-events: none;
}

a:hover {
	opacity: 0.8;
}

.inner {
	max-width: 1150px;
	padding-left: 25px;
	padding-right: 25px;
}

}

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

.jcc-inner.jcc-interview__inner {
	padding: 0 0 0 24px;
}

.section-title {
	font-size: 1.125rem;
}

.section-title__en {
	font-size: 1rem;
}

.jcc-section-title__sub {
	font-size: 0.875rem;
	letter-spacing: -0.02em;
}

.jcc-about-content {
	padding: 7.5rem 0 5rem;
}

.jcc-about-content__title {
	font-size: 1.125rem;
}

.jcc-about-content__table {
	margin-top: 0.75rem;
}

.jcc-about-content__button {
	margin-top: 2.5rem;
	max-width: 21.375rem;
}

.jcc-about-content__button a {
	font-size: 1rem;
}

.jcc-about-content__table {
	font-size: 0.875rem;
}

.jcc-about-content__table td:first-child {
	font-size: 0.75rem;
	padding: 0.8125rem 0;
	width: 22%;
}

.jcc-about-content__table.--law td:first-child {
	font-size: 0.625rem;
}

.jcc-about-content__table td:last-child {
	font-size: 0.84375rem;
	padding: 0.5rem 0;
	width: 78%;
}

.jcc-about-content__table.--law td:last-child {
	font-size: 0.625rem;
	padding: 0.5rem 0 0.5rem 0.7rem;
}

.about::before {
	content: none;
}

.about {
	padding: 5rem 0;
}

.about__inner {
	padding: 0 0.9375rem;
}

.about__title::before {
	height: 2.25rem;
	left: -0.9375rem;
	top: -1.3125rem;
	width: 2.3125rem;
}

.about__title {
	font-size: 0.875rem;
}

.about__title-sm {
	font-size: 1.25rem;
}

.about__title-lg {
	font-size: 2rem;
	line-height: 1.3;
}

.about__profiles {
	gap: 1rem;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin-top: 1.875rem;
	padding-bottom: 2.5rem;
}

.about__bar {
	font-size: 1.125rem;
	height: 2.1875rem;
}

.about__profile-body {
	gap: 0.625rem;
	margin-top: 0.9375rem;
}

.about__image.--ceo {
	margin: 0 auto;
	width: 6.25rem;
}

.about__image.--ceo::before {
	height: 7.9375rem;
	left: -2.1875rem;
	top: -0.625rem;
	width: 9.5rem;
}

.about__person-role {
	font-size: 0.53125rem;
	margin-top: 0.375rem;
}

.about__person-name {
	border-bottom: 0.0625rem solid #298c8b;
	margin-top: 0;
	width: 4.125rem;
}

.about__profile--wide .about__person {
	-ms-flex-preferred-size: auto;
	flex-basis: auto;
}

.about__profile--wide .about__image {
	margin: 0 auto;
	width: 6.25rem;
}

.about__profile--wide .about__person-role:nth-of-type(2) {
	font-size: 1.125rem;
	margin-top: 0rem;
}

.about__profile--wide .about__person-role {
	font-size: 0.875rem;
}

.about__profile--wide .about__person-link {
	border-bottom: 0.0625rem solid #298c8b;
	font-size: 1.125rem;
	margin-top: 0;
}

.about__profile-text {
	font-size: 0.875rem;
	line-height: 1.45;
}

.about__company {
	gap: 2.5rem;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	padding: 0.625rem 0 0;
}

.about__subhead {
	font-size: 1.125rem;
}

.about__dl {
	font-size: 0.6875rem;
	margin-top: 0.625rem;
}

.about__dl-row dt {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 3.5rem;
	flex: 0 0 3.5rem;
}

.about__promo-label {
	font-size: 1rem;
}

.jcc-achievements {
	padding: 5rem 0 1.25rem;
}

.jcc-achievements__grid {
	gap: 2.4375rem;
	grid-template-columns: repeat(1, 1fr);
	margin-top: 2.5rem;
}

.jcc-book-info__flex {
	gap: 1.6875rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	-ms-flex-direction: column-reverse;
	flex-direction: column-reverse;
	padding: 2rem 1.375rem 2.3125rem;
}

.jcc-book-info__content {
	padding-top: 0;
}

.jcc-book-info__title span {
	font-size: 1.125rem;
}

.jcc-book-info__title {
	border-bottom: none;
	display: block;
	font-size: 1rem;
	text-align: center;
}

.jcc-book-info__text {
	font-size: 0.875rem;
	letter-spacing: -0.015em;
	line-height: 1.9;
	margin-top: 0.8125rem;
}

.jcc-book-info__image {
	margin-inline: auto;
	width: 10rem;
}

.jcc-cognitive-science-coaching {
	padding-top: 5.1875rem;
}

.jcc-cognitive-science-coaching__text {
	margin-top: 1.75rem;
}

.jcc-cognitive-science-coaching__text:nth-of-type(2) {
	margin-top: 1.25rem;
}

.jcc-cognitive-science-coaching__image {
	margin-top: 2.375rem;
	width: 100%;
}

.company-slide-section {
	padding: 1.875rem 0 1.25rem;
}

.company-slide-section__heading {
	font-size: 1.25rem;
}

.company-slide-section__heading .accent {
	font-size: 1.5rem;
}

.company-slide__list {
	margin-top: 1.5625rem;
}

.company-slide__item {
	width: 6.25rem;
}

.cta-button::before {
	height: 1.625rem;
	left: 1.6875rem;
	width: 1.625rem;
}

.cta-button {
	font-size: 0.75rem;
}

.cta-button.--present {
	font-size: 1.125rem;
	height: 3.75rem;
	padding-left: 3rem;
}

.cta-button__link {
	font-size: 0.875rem;
	height: 3.0625rem;
	margin-top: 0;
}

.cta-button__text::before,
.cta-button__text::after {
	height: 0.0625rem;
	top: 44%;
	width: 0.8125rem;
}

.cta-button__text::before {
	left: -1.6875rem;
}

.cta-button__text::after {
	right: -1.6875rem;
}

.cta-button__attention {
	font-size: 0.625rem;
}

.jcc-element {
	padding-top: 5rem;
}

.jcc-element__lists {
	margin-top: 2.5rem;
}

.jcc-element__item {
	padding: 1.25rem 1.3125rem 1.5rem;
}

.jcc-element__item-title {
	display: block;
	font-size: 1.125rem;
	line-height: 1.2;
	padding-bottom: 0.75rem;
}

.jcc-element__item-title span {
	font-size: 0.8125rem;
	letter-spacing: 0.1em;
}

.jcc-element__item-text {
	letter-spacing: 0.01em;
	line-height: 1.6;
	margin-top: 1.0625rem;
}

.section-radical {
	padding: 4.4375rem 0 5.75rem;
}

.jcc-emergent-organization__text {
	font-size: 0.875rem;
	letter-spacing: -0.01em;
	line-height: 2;
	margin-top: 1.8125rem;
}

.jcc-emergent-organization__image {
	margin-top: 2.625rem;
	width: 100%;
}

.faq {
	padding: 2rem 0 2.5rem;
}

.faq::before {
	background: url(../images/common/faq-bg01-sp.png) no-repeat center center/cover;
	height: 3.625rem;
	top: -3.375rem;
	top: -54px;
}

.faq::after {
	content: none;
}

.faq__heading .en {
	font-size: 1rem;
	margin-bottom: -0.4375rem;
}

.faq__heading .--01 {
	font-size: 1.25rem;
}

.faq__heading .--01::before {
	height: 2.5rem;
	left: -1.9375rem;
	top: -0.625rem;
	width: 2.5rem;
}

.faq__heading .--02 {
	font-size: 1.75rem;
	width: 11.25rem;
}

.faq__heading {
	font-size: 1.75rem;
}

.faq__list {
	gap: 1.5rem;
	margin-top: 1.5625rem;
	padding: 0 1rem;
}

.faq__label.question {
	font-size: 0.875rem;
	height: 1.8125rem;
	margin-right: 1rem;
	padding-top: 0.4375rem;
	width: 1.8125rem;
}

.faq__label.answer {
	font-size: 0.875rem;
	height: 1.8125rem;
	margin-right: 1rem;
	padding-top: 0.4375rem;
	width: 1.8125rem;
}

.faq__answer-text {
	line-height: 2;
}

.details-summary {
	padding: 0.75rem 3.4375rem 0.75rem 1rem;
}

.details-content {
	padding: 1rem 1rem 0;
}

.fixed-footer {
	bottom: 0.1875rem;
	right: 0.8125rem;
	width: 74.358974359vw;
}

.fixed-footer__note {
	font-size: 0.60625rem;
}

.fixed-footer__note span {
	margin-inline: 0.25rem;
	height: 0.5rem;
	width: 0.0625rem;
}

.fixed-footer__note::before,
.fixed-footer__note::after {
	height: 0.0625rem;
	top: 30%;
	width: 0.625rem;
}

.fixed-footer__note::before {
	left: -1.375rem;
}

.fixed-footer__note::after {
	right: -1.375rem;
}

.jcc-flow {
	padding: 5rem 0 6.25rem;
}

.jcc-flow__wrap {
	grid-template-columns: 1fr;
}

.jcc-flow__list {
	gap: 3.125rem;
}

.jcc-flow__item {
	grid-template-columns: 1.5625rem 17.8125rem;
}

.jcc-flow__step-number.--02 span::before {
	height: 9.4375rem;
}

.jcc-flow__step-number.--03 span::before {
	height: 9.0625rem;
}

.jcc-flow__step-number.--04 span::before {
	height: 9.0625rem;
}

.footer {
	padding: 1.4375rem 0 1rem;
}

.footer__inner {
	display: block;
	padding: 0 0.8125rem;
}

.footer__left {
	gap: 2.5rem;
}

.footer__nav {
	width: 12.5rem;
}

.footer__list {
	gap: 1rem;
	-webkit-box-align: initial;
	-ms-flex-align: initial;
	align-items: initial;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	font-size: 0.875rem;
}

.footer__copyright span {
	display: block;
	text-align: center;
	width: 100%;
}

.footer__copyright {
	margin-top: 2.8125rem;
	text-align: center;
}

.footer__button {
	height: 3rem;
	width: 3rem;
}

.header {
	height: 4.5rem;
}

.header__inner {
	display: block;
	max-width: none;
	max-width: initial;
	padding: 0 1.5rem;
	position: relative;
}

.header__title {
	width: 4.375rem;
}

.header__title--black {
	display: block;
	height: auto;
	margin-left: 1.5625rem;
	width: 3.75rem;
}

.header__nav {
	display: none;
}

.header__hamburger {
	display: block;
	height: 0.9375rem;
	position: absolute;
	right: 1.125rem;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 2.5rem;
}

.u-hidden-pc {
	display: block;
}

.u-hidden-sp {
	display: none;
}

.interview::before {
	content: none;
}

.interview {
	padding: 2.375rem 0 2.5rem;
}

.interview__heading .en {
	display: block;
	font-size: 0.875rem;
	margin-bottom: -2.5rem;
}

.interview__heading .--01 {
	font-size: 1.25rem;
}

.interview__heading .--01::before {
	height: 2.375rem;
	left: -1.5rem;
	top: -1rem;
	width: 2.5rem;
}

.interview__heading .--02 {
	font-size: 2rem;
	padding: 0.25rem 0 0.4375rem;
	width: 92%;
}

.interview__heading .--03 {
	display: block;
	font-size: 1rem;
	padding: 0rem 1rem;
	text-align: left;
}

.splide-interview {
	padding-left: 1.5625rem;
}

.interview__card-label .--01 {
	margin-right: 0.625rem;
}

.interview__card-label {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-orient: initial;
	-webkit-box-direction: initial;
	-ms-flex-direction: initial;
	flex-direction: initial;
	height: 2.1875rem;
}

.interview__card-tag {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-top: 0.25rem;
}

.interview__card-title {
	font-size: 1.375rem;
	margin-top: 0.625rem;
}

.interview__banner {
	margin-top: 7.5rem;
	padding-left: 0;
}

.splide-interview .splide__pagination {
	bottom: -3.375rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.splide-interview .splide__arrows {
	bottom: -17.625rem;
	height: 50px;
	left: 50%;
	margin: auto;
	position: absolute;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	width: 174px;
}

.splide-interview .splide__arrow.splide__arrow--prev {
	background: #298C8B;
	height: 2rem;
	left: 0;
	width: 2rem;
}

.splide-interview .splide__arrow.splide__arrow--prev::before {
	border-left: solid 2px #fff;
	border-top: solid 2px #fff;
	height: 0.625rem;
	left: 56%;
	-webkit-transform: translate(-50%, -50%) rotate(-45deg);
	transform: translate(-50%, -50%) rotate(-45deg);
	width: 0.625rem;
}

.splide-interview .splide__arrow.splide__arrow--next {
	background: #298C8B;
	height: 2rem;
	right: 0;
	width: 2rem;
}

.splide-interview .splide__arrow.splide__arrow--next::before {
	border-right: solid 2px #fff;
	border-top: solid 2px #fff;
	height: 0.625rem;
	left: 46%;
	-webkit-transform: translate(-50%, -50%) rotate(45deg);
	transform: translate(-50%, -50%) rotate(45deg);
	width: 0.625rem;
}

.student__photo.--no-video {
	padding: 0 1.875rem;
}

.jcc-inner {
	max-width: none;
	max-width: initial;
	padding: 0 27px;
	width: 100%;
}

.jcc-lecturer {
	padding-bottom: 0rem;
	padding-top: 0rem;
}

.jcc-lecturer__profile {
	gap: 3.5rem;
	grid-template-columns: 1fr;
	margin-top: 3.0625rem;
}

.jcc-lecturer__inner-sp {
	padding: 0 0 0 27px;
	width: 100%;
}

.jcc-lecturer__achievements {
	margin-top: 0.5rem;
}

.jcc-lecturer__achievement {
	padding-left: 1em;
	text-indent: -1em;
}

.jcc-lecturer__message {
	gap: 1.6875rem;
	margin-top: 1.625rem;
}

.jcc-movie {
	margin-top: 3.75rem;
	width: 88%;
}

.fv__button {
	bottom: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.fv__button a {
	font-size: 1.125rem;
	height: 3.75rem;
	padding-left: 1.875rem;
	width: 20.5rem;
}

.fv::before {
	bottom: -9.75rem;
	bottom: -8.6875rem;
	height: 9.125rem;
	height: 7.375rem;
	left: -4.5rem;
	width: 2.8125rem;
	width: 8.125rem;
}

.fv::after {
	bottom: 1.0625rem;
	height: 7.625rem;
	right: -6.5625rem;
	width: 8.4375rem;
}

.plan {
	padding: 2rem 0 5.625rem;
}

.plan::before {
	content: none;
}

.plan__inner {
	padding: 0 1rem;
}

.plan__lead {
	font-size: 1rem;
	width: 15rem;
}

.plan__lead::before {
	height: 2.375rem;
	left: 0.5625rem;
	top: 1.0625rem;
	width: 2.4375rem;
}

.plan__heading {
	font-size: 1.5rem;
}

.plan__question-wrap {
	margin-top: 1.5rem;
}

.plan__question {
	background: url(../images/common/plan__question-wrap-bg-sp.svg) no-repeat center center/cover;
	font-size: 1.25rem;
	height: 3.4375rem;
	padding: 0.4375rem;
	width: 20.125rem;
}

.plan__list {
	gap: 1.75rem;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin-top: 1rem;
}

.plan__item--01::after {
	height: 10.25rem;
	width: 11.8125rem;
}

.plan__item--02::after {
	height: 10.25rem;
	width: 11.8125rem;
}

.plan__item--03::after {
	height: 10.25rem;
	width: 11.8125rem;
}

.plan__item--recommend::before {
	font-size: 1.125rem;
}

.plan__item-badge {
	left: 1.375rem;
	top: 1.875rem;
}

.plan__item-tag {
	width: 7.9375rem;
}

.plan__item-title {
	font-size: 1.75rem;
}

.plan__item-text {
	font-size: 1.125rem;
	margin-top: 0.3125rem;
}

.plan__item-list-item {
	font-size: 1rem;
	line-height: 1.4;
}

.present::before {
	background: url(../images/common/present-bg01-sp.png) no-repeat center center/cover;
	height: 2.75rem;
}

.present {
	padding: 5rem 0 7.5rem;
}

.present__heading {
	font-size: 1.25rem;
}

.present__heading .accent {
	font-size: 1.5rem;
}

.present__list {
	font-size: 0.75rem;
}

.present__image {
	margin-top: 1.25rem;
	padding-left: 0.625rem;
}

.present__button {
	margin-top: 2.5rem;
	width: min(100%, 20.3125rem);
}

.present__button-text {
	font-size: 0.875rem;
	height: 1.625rem;
	top: -1rem;
	width: 17.75rem;
}

.present__button-text-small {
	font-size: 0.75rem;
	letter-spacing: 0.01em;
}

.jcc-problem {
	padding: 4.5625rem 0 5rem;
}

.jcc-problem__grid {
	gap: 1rem;
	grid-template-columns: 1fr;
	margin-top: 1.5rem;
}

.jcc-problem__item {
	height: auto;
	-webkit-box-pack: initial;
	-ms-flex-pack: initial;
	justify-content: initial;
}

.jcc-problem__text {
	font-size: 0.875rem;
	padding: 0.5625rem 1.5rem;
	text-align: left;
	text-align: initial;
}

.jcc-program {
	padding: 5rem 0 4.5rem;
}

.jcc-program__grid {
	gap: 1.5rem;
	grid-template-columns: 1fr;
}

.jcc-program__grid02 {
	gap: 1.5rem;
	grid-template-columns: 1fr;
	margin-top: 1.5rem;
}

.jcc-program__item {
	padding: 1.3125rem 1.3125rem 1.5625rem;
}

.jcc-program__item.--top {
	height: auto;
}

.jcc-program__item.--bottom {
	height: auto;
}

.jcc-program__item.--02 {
	padding: 1.5rem;
}

.jcc-program__item-title {
	font-size: 1rem;
	height: 2.625rem;
}

.jcc-program__item-title.--02 {
	height: 2.5rem;
}

.jcc-program__item-title.--03 {
	height: 4rem;
}

.jcc-program__item-title::after {
	width: 95%;
}

.jcc-faq {
	background: #090E27;
	padding: 2.5rem 0;
}

.jcc-faq__lists {
	gap: 1.125rem;
}

.jcc-faq__item {
	padding: 1rem 0.625rem 0.3125rem;
}

.jcc-reason {
	padding: 5rem 0;
}

.jcc-reason::before {
	bottom: -0.25rem;
	height: 8.75rem;
	width: 18.0625rem;
}

.jcc-reason__lists {
	gap: 4.1875rem;
	margin-top: 2.375rem;
}

.jcc-reason__item {
	gap: 1.4375rem;
	grid-template-columns: 1fr;
}

.jcc-reason__item.--04 {
	margin-top: 1.625rem;
}

.jcc-reason__image {
	margin-inline: auto;
}

.jcc-reason__image img {
	-webkit-clip-path: inset(0 0 1.6875rem 0);
	clip-path: inset(0 0 1.6875rem 0);
}

.jcc-reason__content {
	margin-top: -1.625rem;
}

.jcc-reason__title {
	gap: 0.3125rem;
}

.jcc-reason__title .jcc-reason__title-text {
	font-size: 1rem;
}

.jcc-reason__title .jcc-reason__number {
	margin-top: 0rem;
}

.jcc-reason__title.--04 {
	margin-top: 0rem;
}

.jcc-reason__text {
	font-size: 0.875rem;
}

.jcc-schedule {
	padding: 4.5625rem 0 6.25rem;
}

.jcc-schedule__table-wrap {
	overflow-x: scroll;
}

.schedule-table {
	margin-top: 0.875rem;
	width: 40.625rem;
}

.schedule-table tr {
	padding-bottom: 2.0625rem;
}

.schedule-table__number::after {
	width: 98%;
}

.schedule-table__number {
	font-size: 1rem;
	padding-bottom: 1.25rem;
	width: 9.5%;
}

.schedule-table__number.--pre {
	font-size: 0.75rem;
}

.schedule-table__date::after {
	width: 98.3%;
}

.schedule-table__date {
	font-size: 0.875rem;
	padding-bottom: 1.25rem;
	width: 16%;
}

.schedule-table__hour {
	font-size: 1.0625rem;
	padding-bottom: 1.25rem;
	width: 19%;
}

.schedule-table__hour.half-border::after {
	width: 88%;
}

.schedule-table__content {
	font-size: 1rem;
	padding-bottom: 1.25rem;
	width: 13.75rem;
}

.schedule-table__number.--bottom,
.schedule-table__date.--bottom,
.schedule-table__hour.--bottom,
.schedule-table__content.--bottom {
	padding-bottom: 1.0625rem;
}

tr:not(:first-child) .schedule-table__number,
tr:not(:first-child) .schedule-table__date,
tr:not(:first-child) .schedule-table__hour,
tr:not(:first-child) .schedule-table__content {
	padding-top: 1.0625rem;
}

.jcc-schedule__attention {
	font-size: 0.625rem;
}

.jcc-service-architecture {
	padding: 4.75rem 0;
}

.jcc-service-architecture__image-wrapper {
	display: block;
	margin-left: calc(50% - 50vw);
	padding-left: 24px;
	width: 100vw;
}

.jcc-service-architecture__text {
	margin-top: 1.3125rem;
}

.jcc-service-architecture__image {
	margin-top: 0.75rem;
	overflow-x: scroll;
	width: 100%;
}

.jcc-service-architecture__image img {
	max-width: none;
	max-width: initial;
	width: 40.1875rem;
}

.jcc-service-architecture__scroll {
	margin-top: 0.3125rem;
}

.student {
	background: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(40%, #fff), color-stop(40%, #e7e6e5), to(#e7e6e5));
	background: linear-gradient(to bottom, #fff 0%, #fff 40%, #e7e6e5 40%, #e7e6e5 100%);
	padding: 5rem 0 0;
}

.student__inner {
	margin: 1rem auto 0;
	padding: 0;
}

.student__heading {
	font-size: 1.75rem;
}

.student__panel {
	background: url(../images/common/student__panel-sp.png) no-repeat center center/cover;
	margin-top: 1rem;
	padding: 2.5rem 0 5.25rem 0;
}

.student__intro {
	margin-bottom: 2rem;
}

.student__intro-sub::before {
	height: 2.375rem;
	left: -1.75rem;
	top: -1.25rem;
	width: 2.5rem;
}

.student__intro-sub {
	font-size: 1.125rem;
}

.student__intro-banner {
	background: none;
	color: #1F2937;
	display: block;
	font-size: 1.75rem;
	padding: 0.125rem 1.25rem;
	text-align: center;
}

.student__intro-text {
	letter-spacing: 0.08em;
	padding: 0 1.5rem;
}

.student__cards {
	display: none;
}

.student__card-title {
	margin-top: 0rem;
}

.student__card-banner {
	font-size: 1.75rem;
	padding: 0 0.8125rem;
	width: 100%;
}

.student__list {
	margin-top: 0.9375rem;
}

.splide-student {
	display: block;
	padding-left: 3rem;
}

.jcc-support {
	padding: 5rem 0;
}

.jcc-support__inner {
	width: 100%;
}

.jcc-support__approach {
	gap: 2.5rem;
	grid-template-columns: 1fr;
	margin-top: 2.5rem;
}

.jcc-support__approach-item {
	padding: 1.875rem 1.25rem 2.25rem;
}

.jcc-support__approach-title {
	font-size: 1rem;
}

.jcc-support__approach-description {
	letter-spacing: -0.01em;
	margin-top: 0.625rem;
}

.jcc-vision {
	padding: 5rem 0;
}

.jcc-vision__description {
	font-size: 0.875rem;
	letter-spacing: -0.01em;
	line-height: 1.8;
	margin-top: 0.875rem;
}

.jcc-vision__lists {
	gap: 5.625rem;
	margin-top: 2.375rem;
}

.jcc-vision__item {
	gap: 1.4375rem;
	grid-template-columns: 1fr;
}

.jcc-vision__item:not(:last-child)::before {
	bottom: -3.1875rem;
}

.jcc-vision__image {
	margin-inline: auto;
}

.jcc-vision__image.--01 {
	padding-left: 0;
	width: 14.25rem;
}

.jcc-vision__image.--02 {
	width: 17.0625rem;
}

.jcc-vision__image.--03 {
	width: 18.4375rem;
}

.jcc-vision__image.--04 {
	width: 17.5rem;
}

.jcc-vision__title {
	gap: 0.3125rem;
}

.jcc-vision__title.--04 {
	margin-top: 0rem;
}

.jcc-vision__text {
	font-size: 0.875rem;
}

.what-coaching {
	background: radial-gradient(ellipse, #1f3656 0%, #090e27 80%, #090e27 100%);
	padding: 4.75rem 0 1.6875rem;
}

.what-coaching__description {
	font-size: 0.875rem;
	line-height: 1.8;
	margin-top: 1.8125rem;
}

.what-coaching__description02 {
	font-size: 0.875rem;
	line-height: 1.6;
	margin-top: 2.4375rem;
}

.what-coaching__items {
	gap: 2.5rem;
	grid-template-columns: 1fr;
	margin-top: 2.8125rem;
}

.what-coaching__item {
	padding: 1.5rem 0.875rem;
}

.what-coaching__item-header {
	gap: 0.5rem;
}

.what-coaching__number {
	font-size: 1.5rem;
}

.what-coaching__heading {
	font-size: 1rem;
}

.what-coaching__text {
	letter-spacing: -0.01em;
	line-height: 1.9;
}

.what-coaching__summaries {
	gap: 2.5625rem;
	margin-top: 2.25rem;
}

.what-coaching__summary-text {
	font-size: 0.875rem;
	line-height: 1.75;
}

.why {
	background: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(0.5%, #fff), color-stop(0.5%, #e9f2e5), color-stop(99%, #e9f2e5), color-stop(99%, #fff), to(#fff));
	background: linear-gradient(to bottom, #fff 0%, #fff 0.5%, #e9f2e5 0.5%, #e9f2e5 99%, #fff 99%, #fff 100%);
	padding-bottom: 0;
}

.why::before {
	content: none;
}

.why__inner::before {
	content: none;
}

.why__inner::after {
	content: none;
}

.why__inner {
	padding: 0 1rem;
}

.why__badge {
	font-size: 1.25rem;
	height: 2.375rem;
	width: 6.1875rem;
}

.why__badge::before {
	bottom: -0.6875rem;
	height: 0.75rem;
	width: 0.6875rem;
}

.why__heading {
	font-size: 1.5rem;
	padding-top: 3.75rem;
}

.why__lead {
	font-size: 1.125rem;
	padding: 0 1.25rem;
}

.why__lead::before {
	bottom: -3.4375rem;
	height: 2.3125rem;
	width: 1.0625rem;
}

.why__catch {
	font-size: 1.25rem;
	margin-top: 4.375rem;
}

.why__catch-accent {
	font-size: 1.75rem;
}

.why__label--step {
	font-size: 1.75rem;
	margin-top: 0.3125rem;
	padding: 0.5rem 1rem;
	width: 19.9375rem;
}

.why__label--point {
	font-size: 1.75rem;
	margin-top: 0.3125rem;
	padding: 0rem 0.375rem 0.1875rem;
	width: 11.5625rem;
}

.why__steps-panel {
	margin-top: 0rem;
}

.why__steps-panel::before {
	bottom: -0.8125rem;
	height: 1.875rem;
	width: 1.875rem;
}

.why__head--point {
	margin-top: 1.25rem;
}

.why__sub-lead {
	font-size: 1.125rem;
}

.why__points-panel {
	margin-top: -0.625rem;
	padding: 2.5rem 1.4375rem;
}

.why__points {
	grid-template-columns: repeat(1, 1fr);
}

.why__point {
	border: 0.0625rem solid #bcafd2;
	height: 15rem;
}

.why__point-ribbon {
	height: 3.5625rem;
	left: 1.125rem;
	padding: 0.3125rem 0.375rem 0.3125rem 0.25rem;
	top: -0.625rem;
	width: 2.875rem;
}

.why__point-ribbon-text {
	font-size: 0.6875rem;
}

.why__point-ribbon-number {
	font-size: 1.125rem;
}

.why__point-title {
	font-size: 1.5rem;
	margin-top: 3.25rem;
}

.why__point-title.--05 {
	text-align: center;
}

.why__point-list {
	margin-top: 0.25rem;
}

}

@media (max-width: 767px) {

.about__head {
	margin-bottom: 30px;
}

.about__bar {
	font-size: 16px;
}

/* カード内を縦積み・写真は上部中央 */

.about__profile-body {
	gap: 18px;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.about__overview {
	-webkit-box-flex: 0;
	-ms-flex: none;
	flex: none;
}

.about__promote-grid {
	gap: 1.25rem;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.student__watermark {
	bottom: 22px;
	font-size: 32px;
}

.student__blob--tl {
	height: 110px;
	left: -30px;
	top: -30px;
	width: 130px;
}

.student__blob--tr {
	height: 110px;
	right: -30px;
	top: -34px;
	width: 120px;
}

.student__intro {
	gap: 16px;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin-bottom: 24px;
}

.student__cards {
	gap: 30px;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.student__item {
	font-size: 14px;
}

}

@media (max-width: 375px) {

html {
	font-size: 4.2666666667vw;
}

}

@-webkit-keyframes scroll-left {

from {
	-webkit-transform: translateX(0);
	transform: translateX(0);
}

to {
	-webkit-transform: translateX(-100%);
	transform: translateX(-100%);
}

}

@keyframes scroll-left {

from {
	-webkit-transform: translateX(0);
	transform: translateX(0);
}

to {
	-webkit-transform: translateX(-100%);
	transform: translateX(-100%);
}

}

@-webkit-keyframes floatLeft {

0% {
	-webkit-transform: translate(0px, 0px) rotate(0deg) scale(1);
	transform: translate(0px, 0px) rotate(0deg) scale(1);
}

50% {
	-webkit-transform: translate(18px, -22px) rotate(4deg) scale(1.03);
	transform: translate(18px, -22px) rotate(4deg) scale(1.03);
}

100% {
	-webkit-transform: translate(0px, 0px) rotate(0deg) scale(1);
	transform: translate(0px, 0px) rotate(0deg) scale(1);
}

}

@keyframes floatLeft {

0% {
	-webkit-transform: translate(0px, 0px) rotate(0deg) scale(1);
	transform: translate(0px, 0px) rotate(0deg) scale(1);
}

50% {
	-webkit-transform: translate(18px, -22px) rotate(4deg) scale(1.03);
	transform: translate(18px, -22px) rotate(4deg) scale(1.03);
}

100% {
	-webkit-transform: translate(0px, 0px) rotate(0deg) scale(1);
	transform: translate(0px, 0px) rotate(0deg) scale(1);
}

}

@-webkit-keyframes floatRight {

0% {
	-webkit-transform: translate(0px, 0px) rotate(0deg) scale(1);
	transform: translate(0px, 0px) rotate(0deg) scale(1);
}

50% {
	-webkit-transform: translate(-16px, -18px) rotate(-3deg) scale(1.04);
	transform: translate(-16px, -18px) rotate(-3deg) scale(1.04);
}

100% {
	-webkit-transform: translate(0px, 0px) rotate(0deg) scale(1);
	transform: translate(0px, 0px) rotate(0deg) scale(1);
}

}

@keyframes floatRight {

0% {
	-webkit-transform: translate(0px, 0px) rotate(0deg) scale(1);
	transform: translate(0px, 0px) rotate(0deg) scale(1);
}

50% {
	-webkit-transform: translate(-16px, -18px) rotate(-3deg) scale(1.04);
	transform: translate(-16px, -18px) rotate(-3deg) scale(1.04);
}

100% {
	-webkit-transform: translate(0px, 0px) rotate(0deg) scale(1);
	transform: translate(0px, 0px) rotate(0deg) scale(1);
}

}


/*# sourceMappingURL=styles.css.map */
