body {
	font-family: "Zen Kaku Gothic New", "Hiragino Sans", sans-serif;
}

.u-desktop {
	display: block;
}

.u-mobile {
	display: none;
}

.br-414-less {
	display: none;
}

.br-500-less {
	display: none;
}

.br-768-less {
	display: none;
}

.br-768-more {
	display: block;
}

.br-1000-less {
	display: none;
}

.br-1000-more {
	display: block;
}

.br-1480-more {
	display: block;
}

.br-1920-more {
	display: block;
}

html {
	font-size: 16px;
	scroll-padding-top: 4.375rem;
}

img {
	image-rendering: auto;
}

.content-wrap {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

main {
	flex: 1;
}

iframe {
	border: none;
}

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

ul,
ol {
	padding: 0;
}

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

html {
	scroll-behavior: smooth;
}

body {
	line-height: 1.5;
	min-height: 100vh;
	text-rendering: optimizeLegibility;
}

ul {
	list-style: none;
}

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

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

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

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

img:not([alt]) {
	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;
}

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

html.is-fixed {
	overflow: hidden;
}

.about {
	overflow: hidden;
	padding: 3.75rem 0 5rem;
	position: relative;
}

.about::before {
	background-image: url("../images/common/about-bg-pattern.webp");
	background-position: center;
	background-size: cover;
	bottom: 0;
	content: "";
	left: 0;
	pointer-events: none;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 0;
}

.about__inner {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 2.5rem;
	margin-left: auto;
	margin-right: auto;
	max-width: 78.75rem;
	padding-left: 30px;
	padding-right: 30px;
	position: relative;
	z-index: 1;
}

.about__heading {
	align-items: center;
	display: flex;
	flex-direction: column;
}

.about__label {
	color: #fff;
	font-family: "Montserrat", sans-serif;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.0875rem;
	text-transform: uppercase;
}

.about__titleWrap {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	margin-top: 0.5rem;
}

.about__title {
	color: #fff;
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: 0.04rem;
	text-align: center;
	white-space: nowrap;
}

.about__line {
	background-color: #fff;
	height: 0.125rem;
	width: 2.5rem;
}

.about__card {
	align-items: center;
	background-color: #fff;
	border-radius: 1.5rem;
	display: flex;
	flex-direction: column;
	gap: 3.125rem;
	max-width: 75rem;
	padding: 3.125rem 1.5rem;
	width: 100%;
}

.about__leadText {
	color: #333;
	font-size: 1.75rem;
	font-weight: 700;
	letter-spacing: 0.135rem;
	line-height: 1.8;
	text-align: center;
}

.about__leadStrong {
	background: linear-gradient(#ffefd6, #ffefd6) no-repeat;
	background-position: 1.0625rem 97%;
	background-size: 92% 1rem;
	color: #ff7544;
	font-size: 2.125rem;
	letter-spacing: 0.19125rem;
}

.about__box {
	border: 0.1875rem solid #ff9873;
	border-radius: 0.75rem;
	max-width: 100%;
	padding: 2.5rem 1.25rem;
	position: relative;
	width: 43.8125rem;
}

.about__boxText {
	color: #333;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.6;
	text-align: center;
}

.about__boxText + .about__boxText {
	margin-top: 1.75rem;
}

.about__person {
	aspect-ratio: 217/225;
	bottom: -0.1875rem;
	line-height: 0;
	position: absolute;
	right: -5.375rem;
	width: 13.5625rem;
}

.about__personImg {
	-o-object-fit: cover;
	-o-object-position: bottom center;
	height: 100%;
	object-fit: cover;
	object-position: bottom center;
	width: 100%;
}

.archive-filters {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 0.6875rem;
}

.archive-filters__item {
	align-items: center;
	background-color: #fff;
	border: 1px solid #ff7544;
	border-radius: 6.25rem;
	color: #ff7544;
	display: flex;
	font-size: 0.875rem;
	font-weight: 500;
	justify-content: center;
	letter-spacing: -0.009375rem;
	padding: 0.5625rem 0.5rem;
	transition: background-color 0.3s ease, color 0.3s ease;
	width: 8.75rem;
}

.archive-filters__item.is-active {
	background-color: #ff7544;
	color: #fff;
}

.archive-mv {
	background-color: #ffeae2;
	height: 23.9375rem;
	margin-top: 4.3125rem;
	overflow: hidden;
	position: relative;
}

.archive-mv__photo {
	bottom: 0;
	left: 29%;
	overflow: hidden;
	position: absolute;
	right: 0;
	top: 0;
}

.archive-mv__photo::after {
	background-color: rgba(213, 170, 153, 0.57);
	bottom: 0;
	content: "";
	left: 0;
	mix-blend-mode: overlay;
	position: absolute;
	right: 0;
	top: 0;
}

.archive-mv__photo img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.archive-mv__inner {
	align-items: center;
	display: flex;
	height: 100%;
	justify-content: center;
	position: relative;
	width: 29%;
	z-index: 1;
}

.archive-mv__heading {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	text-shadow: 0 0 0.25rem rgba(255, 255, 255, 0.25);
}

.archive-mv__title {
	color: #333;
	font-size: 2.25rem;
	font-weight: 700;
	letter-spacing: 0.225rem;
	line-height: 1.2;
}

.archive-mv__label {
	color: #ff7544;
	font-family: "Montserrat", sans-serif;
	font-size: 1.625rem;
	font-weight: 700;
	text-transform: uppercase;
}

.community {
	background: linear-gradient(145deg, #FFF 2.97%, #FFF6F1 51.49%, #FFF 100.01%);
	padding: 6.25rem 0 7.5rem;
}

.community__inner {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 3.75rem;
	margin-left: auto;
	margin-right: auto;
	max-width: 66.25rem;
	padding-left: 30px;
	padding-right: 30px;
}

.community__heading {
	align-items: center;
	display: flex;
	flex-direction: column;
}

.community__label {
	color: #ff7544;
	font-family: "Montserrat", sans-serif;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.0875rem;
	text-transform: uppercase;
}

.community__titleWrap {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	margin-top: 0.5rem;
}

.community__title {
	color: #333;
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: 0.04rem;
	text-align: center;
}

.community__line {
	background-color: #ff7544;
	height: 0.125rem;
	width: 2.5rem;
}

.community__sub {
	color: #333;
	font-size: 1rem;
	font-weight: 500;
	margin-top: 1.5rem;
	text-align: center;
}

.community__cards {
	display: flex;
	flex-direction: column;
	gap: 2.5rem;
	width: 100%;
}

.community__card {
	align-items: center;
	background-color: #fff;
	border-radius: 1.5rem;
	box-shadow: 0 0 1.25rem 0 rgba(51, 51, 51, 0.06);
	display: flex;
	overflow: hidden;
	width: 100%;
}

.community__card--reverse {
	flex-direction: row-reverse;
	justify-content: space-between;
}

.community__photo {
	align-items: center;
	display: flex;
	flex-shrink: 0;
	height: 19.0625rem;
	justify-content: center;
	width: 30rem;
}

.community__photo img {
	-o-object-fit: cover;
	border-radius: 0.75rem;
	height: 16.5625rem;
	object-fit: cover;
	transform: rotate(-3.84deg);
	width: 27.5rem;
}

.community__card--reverse .community__photo img {
	transform: rotate(3.84deg);
}

.community__content {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
	padding-left: 3.75rem;
}

.community__card--reverse .community__content {
	padding-left: 5.625rem;
}

.community__numTitle {
	align-items: flex-start;
	display: flex;
	flex-direction: column;
}

.community__num {
	color: #ffede6;
	font-family: "Inter", sans-serif;
	font-size: 5rem;
	font-weight: 700;
	letter-spacing: 0.2rem;
	line-height: 1;
}

.community__cardTitleWrap {
	align-items: flex-start;
	display: flex;
	flex-direction: column;
	gap: 1rem;
	margin-top: -2.75rem;
}

.community__cardTitle {
	color: #333;
	font-size: 1.5rem;
	font-weight: 900;
	letter-spacing: 0.06rem;
	line-height: 1.6;
}

.community__cardLine {
	background-color: #ff7544;
	height: 0.125rem;
	width: 2.5rem;
}

.community__text {
	color: #333;
	font-size: 1rem;
	font-weight: 500;
	letter-spacing: 0.04rem;
	line-height: 1.8;
}

.community__footer {
	color: #333;
	font-size: 1.125rem;
	font-weight: 500;
	line-height: 2;
	text-align: center;
}

.company-vision {
	background-color: #fef9f3;
	padding: 6.25rem 0 7.5rem;
}

.company-vision__block {
	align-items: center;
	display: flex;
	flex-direction: column;
	text-align: center;
}

.company-vision__block + .company-vision__block {
	margin-top: 5rem;
}

.company-vision__label {
	color: #ff7544;
	display: block;
	font-family: "Montserrat", sans-serif;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.0875rem;
	text-align: center;
	text-transform: uppercase;
}

.company-vision__statement {
	color: #333;
	font-size: 2.25rem;
	font-weight: 700;
	letter-spacing: 0.1125rem;
	line-height: 1.7;
	margin-top: 1.5rem;
}

.company-vision__lead {
	color: #333;
	font-size: 1rem;
	font-weight: 500;
	line-height: 2;
	margin-top: 1.5rem;
	max-width: 50rem;
	text-align: left;
}

.company {
	background-color: #fef9f3;
	padding: 6.25rem 0 7.5rem;
}

.company__inner.inner {
	max-width: 60rem;
}

.company__heading {
	align-items: center;
	display: flex;
	flex-direction: column;
}

.company__label {
	color: #ff7544;
	font-family: "Montserrat", sans-serif;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.0875rem;
	text-transform: uppercase;
}

.company__titleWrap {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	margin-top: 0.5rem;
}

.company__title {
	color: #333;
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: 0.04rem;
	text-align: center;
}

.company__line {
	background-color: #ff7544;
	height: 0.125rem;
	width: 2.5rem;
}

.company__table {
	margin-top: 3rem;
	padding: 1rem 2.5rem;
	width: 100%;
}

.company__row {
	border-bottom: 1px solid #ccc;
	display: flex;
}

.company__row:last-child {
	border-bottom: none;
}

.company__th {
	color: #333;
	flex-shrink: 0;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.7;
	padding: 1.5rem 1rem;
	width: 13.75rem;
}

.company__td {
	color: #333;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.7;
	padding: 1.5rem 1rem;
}

.company-message {
	background-color: #fff;
	padding: 6.25rem 0 7.5rem;
}

.company-message__heading {
	align-items: center;
	display: flex;
	flex-direction: column;
}

.company-message__label {
	color: #ff7544;
	font-family: "Montserrat", sans-serif;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.0875rem;
	text-transform: uppercase;
}

.company-message__titleWrap {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	margin-top: 0.5rem;
}

.company-message__title {
	color: #333;
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: 0.04rem;
	text-align: center;
}

.company-message__line {
	background-color: #ff7544;
	height: 0.125rem;
	width: 2.5rem;
}

.company-message__items {
	margin-top: 3.5rem;
}

.company-message__item {
	align-items: flex-start;
	display: flex;
	gap: 3.5rem;
	padding-bottom: 3rem;
	padding-top: 3rem;
}

.company-message__item:first-child {
	padding-top: 0;
}

.company-message__item:last-child {
	padding-bottom: 0;
}

.company-message__item:not(:first-child) {
	border-top: 1px dashed #ccc;
}

.company-message__person {
	align-items: center;
	display: flex;
	flex-direction: column;
	flex-shrink: 0;
	text-align: center;
	width: 11.25rem;
}

.company-message__photo {
	border-radius: 50%;
	height: 9rem;
	line-height: 0;
	overflow: hidden;
	width: 9rem;
}

.company-message__photo img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.company-message__role {
	color: #ff7544;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.035rem;
	margin-top: 1rem;
}

.company-message__name {
	color: #333;
	font-size: 1.25rem;
	font-weight: 700;
	letter-spacing: 0.0625rem;
	margin-top: 0.25rem;
}

.company-message__nickname {
	color: #999;
	font-size: 0.875rem;
	font-weight: 500;
	letter-spacing: 0.03125rem;
	margin-top: 0.125rem;
}

.company-message__body {
	flex: 1;
	min-width: 0;
}

.company-message__headline {
	color: #333;
	font-size: 1.375rem;
	font-weight: 700;
	letter-spacing: 0.03125rem;
	line-height: 1.6;
}

.company-message__text {
	color: #333;
	font-size: 1rem;
	font-weight: 500;
	line-height: 2;
	margin-top: 1.25rem;
}

.company-brand {
	background-color: #fff;
	padding: 6.25rem 0 7.5rem;
}

.company-brand__inner.inner {
	max-width: 60rem;
}

.company-brand__heading {
	align-items: center;
	display: flex;
	flex-direction: column;
}

.company-brand__label {
	color: #ff7544;
	font-family: "Montserrat", sans-serif;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.0875rem;
	text-transform: uppercase;
}

.company-brand__titleWrap {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	margin-top: 0.5rem;
}

.company-brand__title {
	color: #333;
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: 0.04rem;
	text-align: center;
}

.company-brand__line {
	background-color: #ff7544;
	height: 0.125rem;
	width: 2.5rem;
}

.company-brand__block {
	margin-top: 3.5rem;
}

.company-brand__block--logo {
	align-items: center;
	display: flex;
	gap: 3rem;
}

.company-brand__image {
	border-radius: 1rem;
	flex-shrink: 0;
	line-height: 0;
	overflow: hidden;
	width: 20rem;
}

.company-brand__image img {
	height: auto;
	width: 100%;
}

.company-brand__logo {
	align-items: center;
	display: flex;
	flex-shrink: 0;
	justify-content: center;
	line-height: 0;
	width: 20rem;
}

.company-brand__logo img {
	height: auto;
	width: 15rem;
}

.company-brand__body {
	flex: 1;
	min-width: 0;
}

.company-brand__subTitle {
	border-left: 0.25rem solid #ff7544;
	color: #333;
	font-size: 1.25rem;
	font-weight: 700;
	letter-spacing: 0.0375rem;
	line-height: 1.4;
	padding-left: 1rem;
}

.company-brand__text {
	color: #333;
	font-size: 1rem;
	font-weight: 500;
	line-height: 2;
	margin-top: 1.25rem;
}

.company-members {
	background-color: #fef9f3;
	padding: 6.25rem 0 7.5rem;
}

.company-members__heading {
	align-items: center;
	display: flex;
	flex-direction: column;
}

.company-members__label {
	color: #ff7544;
	font-family: "Montserrat", sans-serif;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.0875rem;
	text-transform: uppercase;
}

.company-members__titleWrap {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	margin-top: 0.5rem;
}

.company-members__title {
	color: #333;
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: 0.04rem;
	text-align: center;
}

.company-members__line {
	background-color: #ff7544;
	height: 0.125rem;
	width: 2.5rem;
}

.company-members__list {
	grid-gap: 1.5rem;
	display: grid;
	gap: 1.5rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 3.5rem;
}

.company-members__item {
	align-items: center;
	background-color: #fff;
	border-radius: 1rem;
	box-shadow: 0 0 0.75rem 0 rgba(51, 51, 51, 0.08);
	display: flex;
	gap: 1rem;
	padding: 1.5rem;
}

.company-members__photo {
	border-radius: 50%;
	flex-shrink: 0;
	height: 6rem;
	line-height: 0;
	overflow: hidden;
	width: 6rem;
}

.company-members__photo img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.company-members__body {
	min-width: 0;
}

.company-members__name {
	word-wrap: anywhere;
	color: #333;
	font-size: 1.125rem;
	font-weight: 700;
	letter-spacing: 0.045rem;
	line-height: 1.5;
}

.company-members__role {
	word-wrap: anywhere;
	color: #333;
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.6;
	margin-top: 0.25rem;
}

.cta {
	background-color: #af4a26;
	overflow: hidden;
	padding: 3.125rem 0 3.75rem;
	position: relative;
}

.cta__bg {
	-o-object-fit: cover;
	bottom: 0;
	height: 100%;
	left: 0;
	object-fit: cover;
	opacity: 0.2;
	pointer-events: none;
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
}

.cta__inner {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
	margin-left: auto;
	margin-right: auto;
	max-width: 53.75rem;
	padding-left: 30px;
	padding-right: 30px;
	position: relative;
	z-index: 1;
}

.cta__heading {
	align-items: center;
	display: flex;
	gap: 2.5rem;
	justify-content: center;
}

.cta__deco {
	flex-shrink: 0;
	height: 3.5625rem;
	width: 3.8125rem;
}

.cta__title {
	color: #fff;
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: 0.04rem;
	line-height: 1.4;
	text-align: center;
}

.cta__title--lg {
	font-size: 2.375rem;
}

.cta__titleAccent {
	color: #ffee00;
}

.cta__card {
	align-items: center;
	background-color: #fff;
	border-radius: 1.25rem;
	box-shadow: 0 0.25rem 0.75rem 0 rgba(0, 0, 0, 0.1);
	display: flex;
	gap: 2.875rem;
	justify-content: center;
	padding: 2.5rem;
	width: 100%;
}

.cta__info {
	align-items: center;
	display: flex;
	gap: 2.875rem;
	justify-content: center;
}

.cta__lineIcon {
	flex-shrink: 0;
	height: 5rem;
	line-height: 0;
	width: 5rem;
}

.cta__lineIcon img {
	-o-object-fit: contain;
	height: 100%;
	object-fit: contain;
	width: 100%;
}

.cta__divider {
	flex-shrink: 0;
	height: 5.0625rem;
	width: 0.3125rem;
}

.cta__text {
	flex-shrink: 0;
	text-align: center;
}

.cta__textMain {
	color: #333;
	font-size: 2.25rem;
	font-weight: 700;
}

.cta__textSub {
	color: #787878;
	font-size: 1rem;
	font-weight: 700;
}

.cta__button {
	align-items: center;
	background-image: linear-gradient(to bottom, #00d453, #0db356);
	border-radius: 1.0625rem;
	box-shadow: 0 0.1875rem 0.1875rem 0 rgba(0, 0, 0, 0.25);
	display: flex;
	flex-shrink: 0;
	justify-content: flex-start;
	max-width: 100%;
	min-height: 4.625rem;
	min-width: 17.8125rem;
	padding: 0.625rem 3.5rem 0.625rem 2rem;
	position: relative;
}

.cta__buttonText {
	color: #fff;
	font-size: 1.4375rem;
	font-weight: 700;
	letter-spacing: 0.116875rem;
}

.cta__buttonArrow {
	height: 1.8125rem;
	position: absolute;
	right: 1.125rem;
	top: 50%;
	transform: translateY(-50%);
	width: 1.8125rem;
}

.curriculum {
	background-color: #FEF9F3;
	padding: 6.25rem 0 7.5rem;
}

.curriculum__inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 78.75rem;
	padding-left: 30px;
	padding-right: 30px;
}

.curriculum__heading {
	align-items: center;
	display: flex;
	flex-direction: column;
}

.curriculum__label {
	color: #ff7544;
	font-family: "Montserrat", sans-serif;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.0875rem;
	text-transform: uppercase;
}

.curriculum__titleWrap {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	margin-top: 0.5rem;
}

.curriculum__title {
	color: #333;
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: 0.04rem;
	text-align: center;
}

.curriculum__line {
	background-color: #ff7544;
	height: 0.125rem;
	width: 2.5rem;
}

.curriculum__sub {
	color: #333;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.8;
	margin-top: 1.5rem;
	text-align: center;
}

.curriculum__steps {
	align-items: stretch;
	display: flex;
	gap: 1rem;
	justify-content: center;
	margin-top: 2.5rem;
}

.curriculum__step {
	display: flex;
	flex: 1;
	flex-direction: column;
	max-width: 22.9375rem;
	padding-top: 2.125rem;
	position: relative;
}

.curriculum__badge {
	align-items: center;
	border-radius: 50%;
	color: #fff;
	display: flex;
	flex-direction: column;
	height: 4.5625rem;
	justify-content: center;
	left: 1.5rem;
	position: absolute;
	top: 0;
	width: 4.5625rem;
	z-index: 2;
}

.curriculum__step--1 .curriculum__badge {
	background-color: #f9a782;
}

.curriculum__step--2 .curriculum__badge {
	background-color: #ff9369;
}

.curriculum__step--3 .curriculum__badge {
	background-color: #ff7544;
}

.curriculum__badgeLabel {
	font-size: 0.75rem;
	font-weight: 900;
	letter-spacing: 0.11875rem;
	line-height: 1;
}

.curriculum__badgeNum {
	font-family: "Inter", sans-serif;
	font-size: 1.9375rem;
	font-weight: 700;
	line-height: 1;
}

.curriculum__stepBox {
	background-color: #fff;
	border: 0.25rem solid;
	border-radius: 1rem;
	box-shadow: 0 0 1.5rem 0 rgba(255, 117, 69, 0.08);
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 0.75rem;
	padding: 1.8125rem 1.25rem;
}

.curriculum__step--1 .curriculum__stepBox {
	border-color: #f9a782;
}

.curriculum__step--2 .curriculum__stepBox {
	border-color: #ff9369;
}

.curriculum__step--3 .curriculum__stepBox {
	border-color: #ff7544;
}

.curriculum__stepHead {
	align-items: center;
	display: flex;
	gap: 1.25rem;
}

.curriculum__icon {
	align-items: center;
	background-color: #FEF9F3;
	border-radius: 50%;
	display: flex;
	flex-shrink: 0;
	height: 5.625rem;
	justify-content: center;
	width: 5.625rem;
}

.curriculum__icon img {
	height: auto;
	width: 3.625rem;
}

.curriculum__step--1 .curriculum__icon img {
	width: 3.875rem;
}

.curriculum__step--2 .curriculum__icon img {
	width: 3.4375rem;
}

.curriculum__step--3 .curriculum__icon img {
	width: 3.3125rem;
}

.curriculum__stepTitle {
	color: #333;
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 1.3;
}

.curriculum__stepSubtitle {
	color: #ff7544;
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 1.3;
}

.curriculum__stepDesc {
	color: #333;
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.6;
	margin-top: 1.25rem;
}

.curriculum__lists {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.curriculum__listHead {
	align-items: center;
	border-bottom: 1px solid #f9a782;
	color: #ff7544;
	display: flex;
	font-size: 1.125rem;
	font-weight: 700;
	gap: 0.375rem;
	padding-bottom: 0.25rem;
}

.curriculum__listIcon {
	flex-shrink: 0;
	height: 1.25rem;
	width: 1.25rem;
}

.curriculum__items {
	display: flex;
	flex-direction: column;
	gap: 0.1875rem;
	margin-top: 0.5625rem;
	padding-left: 1rem;
}

.curriculum__items li {
	color: #333;
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.5;
	padding-left: 0.8125rem;
	position: relative;
}

.curriculum__items li::before {
	background-color: #ff7544;
	border-radius: 50%;
	content: "";
	height: 0.3125rem;
	left: 0;
	position: absolute;
	top: 0.5rem;
	width: 0.3125rem;
}

.curriculum__arrow {
	align-self: center;
	border-bottom: 0.9375rem solid transparent;
	border-left: 0.75rem solid #ff7544;
	border-top: 0.9375rem solid transparent;
	flex-shrink: 0;
	height: 0;
	width: 0;
}

.curriculum__cards {
	display: flex;
	gap: 1.25rem;
	margin-top: 2.5rem;
}

.curriculum__card {
	align-items: center;
	background-color: #fffdfb;
	border-radius: 1rem;
	box-shadow: 0 0 1.5rem 0 rgba(255, 117, 69, 0.08);
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 1.25rem;
	padding: 1.5rem;
}

.curriculum__cardHead {
	align-items: center;
	display: flex;
	gap: 0.75rem;
}

.curriculum__cardIcon {
	align-items: center;
	background-color: #FEF9F3;
	border-radius: 50%;
	display: flex;
	flex-shrink: 0;
	height: 3.125rem;
	justify-content: center;
	width: 3.125rem;
}

.curriculum__cardIcon img {
	height: auto;
	width: 2rem;
}

.curriculum__cardTitle {
	color: #333;
	font-size: 1.5rem;
	font-weight: 700;
}

.curriculum__cardText {
	color: #333;
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.8;
	width: 100%;
}

.curriculum__cardImg {
	width: 100%;
}

.curriculum__cardImg picture {
	display: block;
	width: 100%;
}

.curriculum__cardImg img {
	border-radius: 0.75rem;
	display: block;
	height: auto;
	width: 100%;
}

.curriculum__cardImg--support {
	border-radius: 0.75rem;
	overflow: hidden;
}

.curriculum__cardImg--support img {
	border-radius: 0;
}

.error-page {
	background-color: #fff;
	margin-top: 4.3125rem;
	padding: 7.5rem 0 8.75rem;
}

.error-page__inner {
	align-items: center;
	display: flex;
	flex-direction: column;
}

.error-page__code {
	color: #ff7544;
	font-family: "Montserrat", sans-serif;
	font-size: 7.5rem;
	font-weight: 700;
	letter-spacing: 0.375rem;
	line-height: 1;
}

.error-page__title {
	color: #333;
	font-size: 1.75rem;
	font-weight: 700;
	line-height: 1.5;
	margin-top: 1.5rem;
	text-align: center;
}

.error-page__text {
	color: #333;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.8;
	margin-top: 1rem;
	text-align: center;
}

.error-page__btnWrap {
	margin-top: 2.5rem;
}

.faq {
	background-color: #fff;
	padding: 6.25rem 0 7.5rem;
}

.faq__inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 58.75rem;
	padding-left: 30px;
	padding-right: 30px;
}

.faq__heading {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.faq__label {
	color: #ff7544;
	font-family: "Montserrat", sans-serif;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.0875rem;
	text-transform: uppercase;
}

.faq__titleWrap {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

.faq__title {
	color: #333;
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: 0.04rem;
	text-align: center;
}

.faq__line {
	background-color: #ff7544;
	height: 0.125rem;
	width: 2.5rem;
}

.faq__list {
	display: flex;
	flex-direction: column;
	gap: 2rem;
	margin-top: 2.5rem;
}

.faq__q {
	align-items: center;
	background-color: #fef9f3;
	border-radius: 0.625rem;
	cursor: pointer;
	display: flex;
	gap: 1.5rem;
	padding: 1rem 1.5rem;
	transition: background-color 0.3s ease;
}

.faq__badge {
	align-items: center;
	border-radius: 50%;
	display: flex;
	flex-shrink: 0;
	font-family: "Montserrat", sans-serif;
	font-size: 1rem;
	font-weight: 600;
	height: 2.25rem;
	justify-content: center;
	line-height: 1;
	width: 2.25rem;
}

.faq__badge--q {
	background-color: #ff7544;
	color: #fff;
}

.faq__badge--a {
	border: 0.09375rem solid #ff7544;
	color: #ff7544;
}

.faq__question {
	color: #333;
	flex: 1;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.7;
}

.faq__icon {
	flex-shrink: 0;
	height: 1rem;
	position: relative;
	width: 1rem;
}

.faq__icon::before,
.faq__icon::after {
	background-color: #ff7544;
	content: "";
	position: absolute;
}

.faq__icon::before {
	height: 0.125rem;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 100%;
}

.faq__icon::after {
	height: 100%;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
	transition: transform 0.3s ease;
	width: 0.125rem;
}

.faq__q.is-open .faq__icon::after {
	transform: translateX(-50%) scaleY(0);
}

.faq__a {
	display: none;
	padding: 1.5rem 1.625rem 0;
}

.faq__aInner {
	align-items: flex-start;
	display: flex;
	gap: 1.5rem;
}

.faq__answer {
	color: #333;
	flex: 1;
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.8;
	padding-top: 0.375rem;
}

.fixed-cta {
	bottom: 0;
	display: none;
	left: 0;
	opacity: 0;
	pointer-events: none;
	position: fixed;
	right: 0;
	transform: translateY(100%);
	transition: opacity 0.3s ease, transform 0.3s ease;
	z-index: 80;
}

.fixed-cta.is-show {
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0);
}

body.is-active .fixed-cta {
	opacity: 0;
	pointer-events: none;
}

.fixed-cta__button {
	align-items: center;
	background-image: linear-gradient(to bottom, #06c755, #06c755);
	box-shadow: 0 -0.25rem 0.625rem 0 rgba(0, 0, 0, 0.15);
	display: flex;
	gap: 0.625rem;
	justify-content: center;
	padding: 0.625rem 0.9375rem calc(0.625rem + env(safe-area-inset-bottom));
	width: 100%;
}

.fixed-cta__badge {
	background-color: #fff;
	border-radius: 3.125rem;
	color: #20b15b;
	flex-shrink: 0;
	font-size: 0.625rem;
	font-weight: 700;
	letter-spacing: 0.025rem;
	padding: 0.125rem 0.625rem;
	text-align: center;
	white-space: nowrap;
}

.fixed-cta__main {
	align-items: center;
	color: #fff;
	display: flex;
	font-size: 0.9375rem;
	font-weight: 700;
	gap: 0.3125rem;
	letter-spacing: 0.03125rem;
	white-space: nowrap;
}

.flow {
	background-color: #fef9f3;
	padding: 6.25rem 0 7.5rem;
}

.flow__inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 71.25rem;
	padding-left: 30px;
	padding-right: 30px;
}

.flow__heading {
	align-items: center;
	display: flex;
	flex-direction: column;
}

.flow__label {
	color: #ff7544;
	font-family: "Montserrat", sans-serif;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.0875rem;
	text-transform: uppercase;
}

.flow__titleWrap {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	margin-top: 0.5rem;
}

.flow__title {
	color: #333;
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: 0.04rem;
	text-align: center;
}

.flow__line {
	background-color: #ff7544;
	height: 0.125rem;
	width: 2.5rem;
}

.flow__steps {
	align-items: flex-start;
	display: flex;
	justify-content: space-between;
	margin-top: 2.5rem;
	padding-left: 1.9375rem;
	padding-right: 1.9375rem;
	position: relative;
}

.flow__steps::before {
	aspect-ratio: 1077/13;
	background-image: url(../images/common/flow-line.svg);
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	left: 1.125rem;
	position: absolute;
	top: 5.75rem;
	transform: translateY(-50%);
	width: 100%;
	z-index: 0;
}

.flow__step {
	align-items: center;
	display: flex;
	flex-direction: column;
	position: relative;
	width: 10.625rem;
	z-index: 1;
}

.flow__step--debut {
	width: 12.125rem;
}

.flow__circleArea {
	align-items: center;
	display: flex;
	height: 11.5rem;
	justify-content: center;
}

.flow__circle {
	align-items: center;
	background-color: #fff;
	border: 0.125rem solid #FDF2E5;
	border-radius: 50%;
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
	height: 8.875rem;
	justify-content: center;
	width: 8.875rem;
}

.flow__num {
	color: #ff7544;
	font-family: "Inter", sans-serif;
	font-size: 1.5rem;
	font-weight: 900;
	letter-spacing: 0.059375rem;
	line-height: 1;
}

.flow__icon {
	align-items: center;
	display: flex;
	justify-content: center;
	width: 4.5rem;
}

.flow__icon img {
	height: auto;
	width: 100%;
}

.flow__circle--debut {
	background-color: #ff7544;
	height: 11.5rem;
	overflow: visible;
	position: relative;
	width: 11.5rem;
}

.flow__debutImg {
	transform: translateY(0.125rem);
	width: 12.5rem;
}

.flow__circle--debut .flow__num {
	color: #fff;
	left: 50%;
	position: absolute;
	top: 0.75rem;
	transform: translateX(-50%);
	z-index: 2;
}

.flow__card {
	align-items: center;
	display: flex;
	flex-direction: column;
	margin-top: 0.875rem;
	text-align: center;
}

.flow__stepLabel {
	color: #ff7544;
	font-size: 0.875rem;
	font-weight: 900;
	letter-spacing: 0.035rem;
}

.flow__stepTitle {
	color: #333;
	font-size: 1.125rem;
	font-weight: 900;
	letter-spacing: 0.05rem;
	line-height: 1.4;
	margin-top: 0.5rem;
}

.flow__stepTitle--orange {
	color: #ff7544;
}

.flow__stepDesc {
	color: #333;
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.6;
	margin-top: 1.25rem;
	padding-left: 0.3125rem;
	padding-right: 0.3125rem;
	text-align: center;
}

.flow__stepNote {
	color: #666;
	font-size: 0.75rem;
	line-height: 1.6;
	margin-top: 0.75rem;
}

.flow__support {
	margin-top: 5rem;
	padding-left: 30px;
	padding-right: 30px;
}

.flow__supportInner {
	background-color: #fff;
	border-radius: 1.5rem;
	box-shadow: 0 0 1.5rem 0 rgba(255, 117, 69, 0.08);
	margin-left: auto;
	margin-right: auto;
	max-width: 75rem;
	padding: 2rem 2.5rem;
}

.flow__features {
	display: flex;
	gap: 3.4375rem;
	justify-content: center;
	margin-top: 2.5rem;
}

.flow__feature {
	align-items: center;
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 1rem;
	max-width: 15.875rem;
	position: relative;
}

.flow__feature:not(:last-child)::after {
	background-color: #FFD6C7;
	content: "";
	height: 11.625rem;
	position: absolute;
	right: -1.125rem;
	top: 0;
	width: 1px;
}

.flow__featureIcon {
	align-items: center;
	background-color: #FEF9F3;
	border-radius: 50%;
	display: flex;
	height: 10.875rem;
	justify-content: center;
	width: 10.875rem;
}

.flow__featureIcon img {
	height: auto;
	width: 9.375rem;
}

.flow__featurePill {
	align-items: center;
	background-color: #ff7544;
	border-radius: 3.125rem;
	color: #fff;
	display: flex;
	font-size: 1.25rem;
	font-weight: 700;
	justify-content: center;
	letter-spacing: 0.05rem;
	max-width: 100%;
	min-width: 15.875rem;
	padding: 0.25rem 1rem;
	width: -moz-fit-content;
	width: fit-content;
}

.flow__featureList {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.flow__featureList li {
	align-items: center;
	color: #333;
	display: flex;
	font-size: 1rem;
	font-weight: 500;
	gap: 0.375rem;
	letter-spacing: 0.025rem;
}

.flow__check {
	flex-shrink: 0;
	height: 1.25rem;
	width: 1.25rem;
}

.flow__outro {
	margin-top: 5rem;
	padding-left: 30px;
	padding-right: 30px;
}

.flow__outroInner {
	align-items: center;
	display: flex;
	gap: 3.75rem;
	justify-content: space-between;
	margin-left: auto;
	margin-right: auto;
	max-width: 67.5rem;
}

.flow__outroBody {
	flex-shrink: 0;
}

.flow__outroHeading {
	align-items: flex-start;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

.flow__outroTitle {
	color: #333;
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: 0.04rem;
	line-height: 1.4;
}

.flow__outroTitle span {
	color: #ff7544;
}

.flow__outroText {
	color: #333;
	font-size: 1.25rem;
	font-weight: 500;
	line-height: 1.8;
	margin-top: 2.5rem;
}

.flow__outroStrong {
	font-size: 1.375rem;
	font-weight: 700;
	margin-top: 1.8em;
}

.flow__outroStrongDeco {
	display: inline-block;
	height: auto;
	margin-left: 0.125rem;
	transform: translateY(-0.25rem);
	vertical-align: top;
	width: 1.25rem;
}

.flow__outroPhoto {
	flex-shrink: 0;
	line-height: 0;
	max-width: 100%;
	width: 38.25rem;
}

.flow__outroPhoto img {
	border-radius: 1.5rem;
	height: auto;
	width: 100%;
}

.footer {
	background-color: #fef9f3;
	padding: 5rem 0 4.375rem;
}

.footer__inner {
	max-width: 66.25rem;
}

.footer__top {
	align-items: flex-start;
	display: flex;
	gap: 2.5rem;
	justify-content: space-between;
}

.footer__logo {
	flex-shrink: 0;
	line-height: 0;
	width: 10.625rem;
}

.footer__logoLink {
	display: block;
}

.footer__logoLink img {
	height: auto;
	width: 100%;
}

.footer__navList {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem 2rem;
	justify-content: flex-end;
	max-width: 45rem;
}

.footer__navLink {
	color: #333;
	font-size: 0.9375rem;
	font-weight: 500;
	line-height: 1.4;
	transition: color 0.3s ease;
}

.footer__bottom {
	align-items: center;
	display: flex;
	justify-content: space-between;
	margin-top: 4rem;
}

.footer__sub {
	display: flex;
	gap: 2.5rem;
}

.footer__subLink {
	color: #333;
	font-size: 0.8125rem;
	font-weight: 400;
	transition: color 0.3s ease;
}

.footer__copy {
	color: #333;
	font-size: 0.75rem;
	font-weight: 500;
}

.js-fv-pending .fv__title,
.js-fv-pending .fv__titleLine,
.js-fv-pending .fv__lead,
.js-fv-pending .fv__cta,
.js-fv-pending .fv__dots,
.js-fv-pending .fv__images,
.js-fv-pending .fv__stat {
	visibility: hidden;
}

.fv {
	background-color: #fff;
	overflow: hidden;
	position: relative;
}

.fv::before {
	background-image: url("../images/common/fv-blob.svg");
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	height: 57.0833333333vw;
	left: -12.5vw;
	pointer-events: none;
	position: absolute;
	top: -5.5555555556vw;
	width: 54.1666666667vw;
	z-index: 0;
}

.fv__hero {
	align-items: flex-start;
	display: flex;
	position: relative;
	z-index: 1;
}

.fv__body {
	align-items: flex-start;
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 11.1111111111vw 2.7777777778vw 4.1666666667vw 7.9166666667vw;
	position: relative;
	z-index: 2;
}

.fv__dots {
	background-image: radial-gradient(circle at 0.2430555556vw center, #ff7544 0.2222222222vw, transparent 0.2569444444vw);
	background-repeat: repeat-x;
	background-size: 3.0555555556vw 0.4861111111vw;
	height: 0.4861111111vw;
	margin-left: 1.1805555556vw;
	max-width: 100%;
	width: 12.7777777778vw;
}

.fv__title {
	color: #202644;
	font-size: 2.7777777778vw;
	font-weight: 700;
	letter-spacing: 0.0347222222vw;
	line-height: 1.5;
}

.fv__titleLg {
	font-size: 3.0555555556vw;
}

.fv__titleLg.fv__titleLg--ls {
	letter-spacing: -0.08em;
}

.fv__titleLg.fv__titleLg--ml {
	margin-left: 0.25rem;
}

.fv__titleSm {
	font-size: 2.5694444444vw;
	margin-left: 0.75rem;
}

.fv__char {
	display: inline-block;
	margin-left: -0.0625rem;
}

.fv__titleAccent {
	color: #ff7544;
}

.fv__titleLine {
	background-color: #ff7544;
	height: 0.2777777778vw;
	margin-top: 1.6666666667vw;
	width: 4.6527777778vw;
}

.fv__lead {
	color: #202644;
	font-size: 1.25vw;
	font-weight: 700;
	letter-spacing: 0.0625vw;
	line-height: 1.6;
	margin-top: 1.3888888889vw;
}

.fv__cta {
	align-items: center;
	display: flex;
	flex-direction: column;
	margin-top: 2.2222222222vw;
}

.fv__ctaBadge {
	background-color: #fff;
	border: 0.125rem solid #06c755;
	border-radius: 3.125rem;
	color: #20b15b;
	font-size: 1.1111111111vw;
	font-weight: 700;
	letter-spacing: 0.0444444444vw;
	margin-bottom: -0.9027777778vw;
	padding: 0.2083333333vw 1.1111111111vw;
	position: relative;
	z-index: 1;
}

.fv__ctaButton {
	align-items: center;
	background-image: linear-gradient(to bottom, #17c95d, #10b85a);
	border-radius: 6.1875rem;
	box-shadow: 0 0.25rem 0.25rem 0 rgba(0, 0, 0, 0.25);
	display: flex;
	flex-direction: column;
	gap: 0.1388888889vw;
	padding: 0.9722222222vw 3.8888888889vw;
}

.fv__ctaButton::before {
	animation: fv-shine 3.5s ease infinite;
}

.fv__ctaMain {
	color: #fff;
	font-size: clamp(0.875rem, 0.313rem + 1.17vw, 2.188rem);
	font-weight: 700;
	letter-spacing: 0.54px;
}

.fv__ctaNote {
	color: #fff;
	font-size: 0.8333333333vw;
}

.fv__images {
	line-height: 0;
	min-width: 0;
	width: 60.4861111111vw;
}

.fv__images img {
	border-bottom-left-radius: 2.5rem;
	height: auto;
	width: 100%;
}

.fv__stats {
	display: flex;
	gap: 2.5rem;
	justify-content: center;
	padding: 3.125rem 30px 3.75rem;
	position: relative;
	z-index: 1;
}

.fv__stat {
	align-items: center;
	display: flex;
	justify-content: space-between;
	min-width: 12.5rem;
}

.fv__laurel {
	flex-shrink: 0;
	height: 8rem;
	width: 2.375rem;
}

.fv__stat:last-child .fv__laurel:first-of-type {
	margin-right: -0.875rem;
}

.fv__stat:last-child .fv__laurel:last-of-type {
	margin-left: -0.875rem;
}

.fv__statBody {
	align-items: center;
	display: flex;
	flex-direction: column;
	margin-bottom: 0.5rem;
}

.fv__statBody.fv__statBody--teacher {
	margin-bottom: 0.75rem;
}

.fv__statNum {
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	background-image: linear-gradient(to bottom, #ffc997, #ff7544);
	color: transparent;
	font-family: "Inter", sans-serif;
	font-weight: 700;
	line-height: 1;
}

.fv__statNumValue {
	font-size: 4.0625rem;
	letter-spacing: -0.1225rem;
}

.fv__statNumUnit {
	font-family: "Zen Kaku Gothic New", "Hiragino Sans", sans-serif;
	font-size: 2.1875rem;
}

.fv__statNum--text {
	font-family: "Zen Kaku Gothic New", "Hiragino Sans", sans-serif;
	font-size: 2.75rem;
}

.fv__statLabel {
	color: #333;
	font-size: 1.0625rem;
	font-weight: 700;
	line-height: 1.1;
	margin-top: 0.6875rem;
	text-align: center;
}

.fv__statLabel.fv__statLabel--teacher {
	margin-top: 0;
}

.header {
	background-color: #fff;
	box-shadow: 0 0.25rem 0.625rem 0 rgba(79, 79, 79, 0.08);
	height: 4.375rem;
	left: 0;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 100;
}

.header__inner {
	align-items: center;
	display: flex;
	height: 100%;
	padding: 0 3.5rem;
}

.header__logo {
	flex-shrink: 0;
	line-height: 0;
	width: 9.25rem;
}

.header__logoLink {
	display: block;
	position: relative;
	z-index: 110;
}

.header__logoLink img {
	height: auto;
	width: 100%;
}

.pc-nav {
	align-self: stretch;
	margin-left: auto;
}

.pc-nav__items {
	align-items: stretch;
	display: flex;
	gap: 1.5rem;
	height: 100%;
}

.pc-nav__item {
	align-items: center;
	display: flex;
}

.pc-nav__link {
	align-items: center;
	color: #444;
	display: flex;
	font-size: 0.875rem;
	font-weight: 500;
	height: 100%;
	line-height: 1.375rem;
	position: relative;
}

.pc-nav__link::after {
	background-color: #ff7544;
	content: "";
	height: 0.125rem;
	left: 0;
	position: absolute;
	top: calc(50% + 0.8125rem);
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform 0.3s ease;
	width: 100%;
}

.pc-nav__item--contact {
	margin-left: 0.5rem;
}

.pc-nav__contact {
	align-items: center;
	background-color: #06c755;
	border: 0.125rem solid #06c755;
	border-radius: 1.5rem;
	display: inline-flex;
	gap: 0.1875rem;
	justify-content: center;
	padding: 0.3125rem 1.375rem 0.3125rem 0.875rem;
}

.pc-nav__contactIcon {
	flex-shrink: 0;
	height: 2.0625rem;
	width: 2.0625rem;
}

.pc-nav__contactText {
	color: #fff;
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: 0.03rem;
	line-height: 1;
}

.hamburger {
	display: none;
}

.sp-nav {
	display: none;
}

.sp-nav__inner {
	display: flex;
	flex-direction: column;
	min-height: 100%;
	padding: 5.25rem 1.75rem 2.5rem;
}

.sp-nav__items {
	display: flex;
	flex-direction: column;
}

.sp-nav__link {
	color: #333;
	display: block;
	font-size: 0.9375rem;
	font-weight: 500;
	padding: 0.625rem 0;
}

.sp-nav__action {
	margin-top: 1.75rem;
}

.sp-nav__contact {
	align-items: center;
	background-color: #06c755;
	border-radius: 1.875rem;
	display: flex;
	gap: 0.375rem;
	justify-content: center;
	padding: 0.875rem 1.5rem;
	width: 100%;
}

.sp-nav__contactIcon {
	flex-shrink: 0;
	height: 1.875rem;
	width: 1.875rem;
}

.sp-nav__contactText {
	color: #fff;
	font-size: 1rem;
	font-weight: 700;
}

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

.member-profile {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
	margin-top: 1.5rem;
}

.member-profile__head {
	align-items: flex-start;
	display: flex;
	gap: 1.5rem;
}

.member-profile__photo {
	border-radius: 0.5rem;
	flex-shrink: 0;
	height: 8.75rem;
	line-height: 0;
	overflow: hidden;
	width: 8.75rem;
}

.member-profile__photo img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.member-profile__headBody {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 1rem;
	min-width: 0;
}

.member-profile__headBody .voice-article__title {
	margin-top: 0;
}

.member-profile__role {
	color: #ff7544;
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: 0.04rem;
	line-height: 1.7;
}

.member-profile__sns {
	align-items: center;
	display: flex;
	gap: 0.9375rem;
}

.member-profile__sns img {
	-o-object-fit: contain;
	height: 1.75rem;
	object-fit: contain;
	width: 1.75rem;
}

.member-profile__snsLink {
	display: block;
	line-height: 0;
}

.member-profile__sectionTitle {
	border-bottom: 1px solid #ff7544;
	color: #333;
	font-size: 1.125rem;
	font-weight: 700;
	letter-spacing: 0.08rem;
	line-height: 1.7;
	padding-bottom: 0.125rem;
}

.member-profile__career {
	display: flex;
	flex-direction: column;
	gap: 0.25rem;
	margin-top: 0.75rem;
	padding-left: 0.5rem;
}

.member-profile__careerItem {
	word-wrap: anywhere;
	color: #333;
	font-size: 0.9375rem;
	font-weight: 500;
	line-height: 1.7;
	padding-left: 0.8125rem;
	position: relative;
}

.member-profile__careerItem::before {
	background-color: #ff7544;
	border-radius: 50%;
	content: "";
	height: 0.3125rem;
	left: 0;
	position: absolute;
	top: 0.625rem;
	width: 0.3125rem;
}

.member-profile__message {
	word-wrap: anywhere;
	color: #333;
	font-size: 0.9375rem;
	font-weight: 500;
	line-height: 1.8;
	margin-top: 0.75rem;
}

.member {
	background-color: #fff;
	padding: 6.25rem 0 7.5rem;
}

.member__cards {
	grid-gap: 2.5rem 1.875rem;
	align-items: stretch;
	display: grid;
	gap: 2.5rem 1.875rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: 3.75rem;
}

.member-card {
	align-items: stretch;
	background-color: #fff;
	border-radius: 1.25rem;
	box-shadow: 0 0 0.75rem 0 rgba(51, 51, 51, 0.08);
	display: flex;
	gap: 1.5rem;
	padding: 1.5rem;
	position: relative;
	transition: box-shadow 0.3s ease;
}

.member-card__side {
	align-items: center;
	display: flex;
	flex-direction: column;
	flex-shrink: 0;
	width: 12.25rem;
}

.member-card__photo {
	border-radius: 50%;
	height: 12.25rem;
	line-height: 0;
	overflow: hidden;
	width: 12.25rem;
}

.member-card__photo img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.member-card__sns {
	align-items: center;
	display: flex;
	gap: 0.75rem;
	margin-top: 1.625rem;
}

.member-card__sns img {
	-o-object-fit: contain;
	height: 1.5rem;
	object-fit: contain;
	width: 1.5rem;
}

.member-card__snsLink {
	display: block;
	line-height: 0;
	position: relative;
	z-index: 2;
}

.member-card__body {
	align-items: flex-end;
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 1.25rem;
	min-width: 0;
}

.member-card__head {
	width: 100%;
}

.member-card__name {
	word-wrap: anywhere;
	color: #333;
	font-size: 1.625rem;
	font-weight: 700;
	letter-spacing: 0.13rem;
	line-height: 1.4;
}

.member-card__role {
	color: #ff7544;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.035rem;
	line-height: 1.7;
}

.member-card__tags {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 0.625rem;
	margin-top: 0.75rem;
}

.member-card__tag {
	background-color: #ff7544;
	border-radius: 3.125rem;
	color: #fff;
	font-size: 0.875rem;
	font-weight: 500;
	letter-spacing: 0.07rem;
	line-height: 1.7;
	max-width: 100%;
	overflow: hidden;
	padding-left: 0.5rem;
	padding-right: 0.5rem;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.member-card__section {
	width: 100%;
}

.member-card__sectionTitle {
	border-bottom: 1px solid #ff7544;
	color: #333;
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: 0.08rem;
	line-height: 1.7;
	padding-bottom: 0.125rem;
}

.member-card__career {
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	display: -webkit-box;
	margin-top: 0.75rem;
	overflow: hidden;
	padding-left: 0.5rem;
}

.member-card__careerItem {
	word-wrap: anywhere;
	color: #333;
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.5;
	padding-left: 0.8125rem;
	position: relative;
}

.member-card__careerItem + .member-card__careerItem {
	margin-top: 0.1875rem;
}

.member-card__careerItem::before {
	background-color: #FF7544;
	border-radius: 50%;
	content: "";
	height: 0.3125rem;
	left: 0;
	position: absolute;
	top: 0.5rem;
	width: 0.3125rem;
}

.member-card__message {
	-webkit-box-orient: vertical;
	word-wrap: anywhere;
	-webkit-line-clamp: 3;
	color: #333;
	display: -webkit-box;
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.7;
	margin-top: 0.75rem;
	overflow: hidden;
}

.member-card__more {
	align-items: center;
	color: #333;
	display: flex;
	font-size: 0.875rem;
	font-weight: 500;
	gap: 0.75rem;
	letter-spacing: 0.0175rem;
	margin-top: auto;
}

.member-card__more::after {
	border-radius: 1.25rem;
	bottom: 0;
	content: "";
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
}

.member-card__more img {
	height: 1.25rem;
	width: 1.25rem;
}

.member__empty {
	color: #333;
	font-size: 1rem;
	margin-top: 3.75rem;
	text-align: center;
}

.message {
	overflow: hidden;
	padding: 6.25rem 0 7.5rem;
	position: relative;
}

.message::before {
	background-image: url("../images/common/message-bg.webp");
	background-position: center;
	background-size: cover;
	bottom: 0;
	content: "";
	left: 0;
	pointer-events: none;
	position: absolute;
	right: 0;
	top: 0;
}

.message__inner {
	align-items: center;
	display: flex;
	gap: 5rem;
	margin-left: auto;
	margin-right: auto;
	max-width: 71.25rem;
	padding-left: 30px;
	padding-right: 30px;
	position: relative;
	z-index: 1;
}

.message__photo {
	aspect-ratio: 480/781;
	border-radius: 0.875rem;
	box-shadow: 0 0 0.75rem 0 rgba(51, 51, 51, 0.08);
	flex-shrink: 0;
	overflow: hidden;
	width: 30rem;
}

.message__photo img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.message__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 3.75rem;
	min-width: 0;
}

.message__heading {
	align-items: flex-start;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.message__label {
	color: #ff7544;
	font-family: "Montserrat", sans-serif;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.0875rem;
	text-transform: uppercase;
}

.message__titleWrap {
	align-items: flex-start;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

.message__title {
	color: #333;
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: 0.04rem;
	line-height: 1.4;
}

.message__line {
	background-color: #ff7544;
	height: 0.125rem;
	width: 2.5rem;
}

.message__text {
	color: #313131;
	font-size: 1rem;
	font-weight: 500;
	letter-spacing: 0.04rem;
	line-height: 1.6;
}

.message__text p + p {
	margin-top: 1.6em;
}

.message__sign {
	align-items: center;
	display: flex;
	gap: 1.25rem;
}

.message__signRole {
	color: #313131;
	font-size: 1.25rem;
	font-weight: 500;
	letter-spacing: 0.0625rem;
}

.message__signName {
	color: #11121a;
	font-size: 1.5rem;
	font-weight: 500;
}

.more-btn {
	align-items: center;
	background-color: #ff7544;
	border: 1px solid #ff7544;
	border-radius: 2.21875rem;
	color: #fff;
	display: flex;
	font-size: 1.4375rem;
	font-weight: 700;
	height: 4.1875rem;
	justify-content: center;
	letter-spacing: 0.014375rem;
	position: relative;
	transition: background-color 0.3s ease, color 0.3s ease;
	width: 18.75rem;
}

.more-btn::after {
	border-bottom: 0.375rem solid transparent;
	border-left: 0.5625rem solid #fff;
	border-top: 0.375rem solid transparent;
	content: "";
	position: absolute;
	right: 1.75rem;
	top: 50%;
	transform: translateY(-50%);
	transition: border-left-color 0.3s ease;
}

.pager {
	margin-top: 3.75rem;
}

.pager .nav-links {
	align-items: center;
	display: flex;
	gap: 0.625rem;
	justify-content: center;
}

.pager .page-numbers {
	align-items: center;
	border-radius: 50%;
	color: #333;
	display: flex;
	font-family: "Inter", sans-serif;
	font-size: 1.125rem;
	font-weight: 500;
	height: 3.125rem;
	justify-content: center;
	transition: background-color 0.3s ease, color 0.3s ease;
	width: 3.125rem;
}

.pager .page-numbers.current {
	background-color: #ff7544;
	color: #fff;
}

.pager .page-numbers.prev,
.pager .page-numbers.next {
	border-radius: 0;
	font-family: "Zen Kaku Gothic New", "Hiragino Sans", sans-serif;
	width: auto;
}

.price {
	overflow: hidden;
	position: relative;
}

.price::before {
	background-image: url("../images/common/price-bg-pattern.webp");
	background-position: center;
	background-size: cover;
	bottom: 0;
	content: "";
	left: 0;
	pointer-events: none;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 0;
}

.price__inner {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 2.5rem;
	margin-left: auto;
	margin-right: auto;
	max-width: 60rem;
	padding: 3.75rem 30px 5rem;
	position: relative;
	z-index: 1;
}

.price__heading {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.price__label {
	color: #fff;
	font-family: "Montserrat", sans-serif;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.0875rem;
	text-transform: uppercase;
}

.price__titleWrap {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

.price__title {
	color: #fff;
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: 0.04rem;
	text-align: center;
}

.price__line {
	background-color: #fff;
	height: 0.125rem;
	width: 2.5rem;
}

.price__body {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 3.125rem;
	width: 100%;
}

.price__card {
	align-items: center;
	background-color: #fff;
	border-radius: 1.5rem;
	box-shadow: 0 0 0.75rem 0 rgba(51, 51, 51, 0.08);
	display: flex;
	flex-direction: column;
	gap: 1.875rem;
	padding: 1.875rem;
	width: 100%;
}

.price__priceBlock {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 0.625rem;
}

.price__course {
	color: #ff7544;
	font-size: 0.9375rem;
	font-weight: 700;
}

.price__amount {
	align-items: baseline;
	color: #ff7544;
	display: flex;
	justify-content: center;
}

.price__num {
	font-family: "Inter", sans-serif;
	font-size: 3.375rem;
	font-weight: 700;
	line-height: 1;
}

.price__yen {
	font-size: 1rem;
	font-weight: 700;
	margin-left: 0.5rem;
}

.price__note {
	color: #999;
	font-size: 0.8125rem;
	font-weight: 700;
}

.price__divider {
	background-color: #e6e6e6;
	height: 1px;
	width: 100%;
}

.price__features {
	grid-gap: 0.5rem 1.5rem;
	display: grid;
	gap: 0.5rem 1.5rem;
	grid-auto-flow: column;
	grid-template-rows: repeat(3, auto);
}

.price__feature {
	align-items: center;
	color: #333;
	display: flex;
	font-size: 1rem;
	font-weight: 700;
	gap: 0.5rem;
}

.price__check {
	flex-shrink: 0;
	height: 1.125rem;
	width: 1.125rem;
}

.price__lead {
	color: #fff;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 2;
	text-align: center;
}

.price__cta {
	align-items: center;
	display: flex;
	flex-direction: column;
	width: 100%;
}

.price__ctaBadge {
	background-color: #fff;
	border: 0.125rem solid #06c755;
	border-radius: 3.125rem;
	color: #20b15b;
	display: inline-block;
	font-size: 1.125rem;
	font-weight: 700;
	letter-spacing: 0.045625rem;
	margin-bottom: -0.8125rem;
	padding: 0.3125rem 1.25rem;
	position: relative;
	z-index: 1;
}

.price__ctaButton {
	align-items: center;
	background-image: linear-gradient(to bottom, #17c95d, #10b85a);
	border-radius: 4.375rem;
	box-shadow: 0 0.2875rem 0.2875rem 0 rgba(0, 0, 0, 0.25);
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	justify-content: center;
	max-width: 100%;
	min-height: 4.625rem;
	padding: 0.625rem 3.75rem;
	position: relative;
	width: 29.625rem;
}

.price__ctaMain {
	color: #fff;
	font-size: 2.125rem;
	font-weight: 700;
	letter-spacing: 0.25rem;
}

.price__ctaSub {
	color: #fff;
	font-size: 1.125rem;
	font-weight: 700;
}

.price__ctaArrow {
	height: 1.8125rem;
	position: absolute;
	right: 1.375rem;
	top: 50%;
	transform: translateY(-50%);
	width: 1.8125rem;
}

.reason {
	background-color: #fff;
	padding: 6.25rem 0 7.5rem;
}

.reason__inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 78.75rem;
	padding-left: 30px;
	padding-right: 30px;
}

.reason__heading {
	align-items: center;
	display: flex;
	flex-direction: column;
}

.reason__label {
	color: #ff7544;
	font-family: "Montserrat", sans-serif;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.0875rem;
	text-transform: uppercase;
}

.reason__titleWrap {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	margin-top: 0.5rem;
}

.reason__title {
	color: #333;
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: 0.04rem;
	line-height: 1.4;
	text-align: center;
}

.reason__title span {
	color: #ff7544;
}

.reason__line {
	background-color: #ff7544;
	height: 0.125rem;
	width: 2.5rem;
}

.reason__cards {
	display: flex;
	gap: 2rem;
	justify-content: center;
	margin-top: 2.5rem;
}

.reason__card {
	align-items: center;
	background-color: #fff;
	border-radius: 1rem;
	box-shadow: 0 0 0.75rem 0 rgba(51, 51, 51, 0.08);
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 1.25rem;
	padding: 2.25rem 1.375rem 1.5rem;
	position: relative;
}

.reason__point {
	align-items: center;
	color: #fff;
	display: flex;
	flex-direction: column;
	gap: 0.125rem;
	height: 5.125rem;
	left: 1.25rem;
	padding-top: 0.9375rem;
	position: absolute;
	text-align: center;
	top: -1rem;
	width: 5.8125rem;
	z-index: 2;
}

.reason__point::before {
	background-image: url("../images/common/reason-bg.svg");
	background-repeat: no-repeat;
	background-size: 100% 100%;
	content: "";
	height: 5.125rem;
	left: 0;
	position: absolute;
	top: 0;
	width: 6.25rem;
	z-index: -1;
}

.reason__pointLabel {
	font-size: 0.6875rem;
	font-weight: 900;
	letter-spacing: 0.0275rem;
	line-height: 1;
}

.reason__pointNum {
	font-family: "Inter", sans-serif;
	font-size: 1.875rem;
	font-weight: 900;
	letter-spacing: 0.075rem;
	line-height: 1;
}

.reason__imageArea {
	aspect-ratio: 320/195;
	overflow: hidden;
	width: 100%;
}

.reason__imageArea img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.reason__body {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.reason__cardTitle {
	color: #333;
	font-size: 1.375rem;
	font-weight: 900;
	letter-spacing: 0.055rem;
	line-height: 1.6;
	text-align: center;
}

.reason__cardTitle span {
	color: #ff7544;
}

.reason__text {
	color: #333;
	font-size: 1rem;
	font-weight: 500;
	letter-spacing: 0.04rem;
	line-height: 1.6;
	text-align: center;
}

.reason__note {
	color: #666;
	display: block;
	font-size: 0.875rem;
	margin-top: 1.6em;
}

.tokushoho-mv {
	align-items: center;
	background-color: #ffeae2;
	display: flex;
	height: 15rem;
	justify-content: center;
	margin-top: 4.3125rem;
}

.tokushoho-mv__heading {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.tokushoho-mv__title {
	color: #333;
	font-size: 2.25rem;
	font-weight: 700;
	letter-spacing: 0.1125rem;
	line-height: 1.4;
	text-align: center;
}

.tokushoho-mv__label {
	color: #ff7544;
	font-family: "Montserrat", sans-serif;
	font-size: 1.125rem;
	font-weight: 700;
	letter-spacing: 0.0875rem;
	text-transform: uppercase;
}

.tokushoho {
	background-color: #fff;
	padding: 5rem 0 7.5rem;
}

.tokushoho__inner.inner {
	max-width: 60rem;
}

.tokushoho__content h2 {
	background-color: #fef9f3;
	border-left: 0.25rem solid #ff7544;
	color: #333;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.6;
	margin-top: 2.5rem;
	padding: 0.75rem 1.25rem;
}

.tokushoho__content h2:first-child {
	margin-top: 0;
}

.tokushoho__content p {
	color: #333;
	font-size: 1rem;
	font-weight: 500;
	line-height: 2;
	margin-top: 1rem;
	padding-left: 1.5rem;
}

.tokushoho__content ul {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	margin-top: 1rem;
	padding-left: 2rem;
}

.tokushoho__content li {
	color: #333;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.8;
	padding-left: 0.875rem;
	position: relative;
}

.tokushoho__content li::before {
	background-color: #ff7544;
	border-radius: 50%;
	content: "";
	height: 0.3125rem;
	left: 0;
	position: absolute;
	top: 0.75rem;
	width: 0.3125rem;
}

.tokushoho__content a {
	-webkit-text-decoration: underline;
	color: #ff7544;
	text-decoration: underline;
	transition: opacity 0.5s;
	word-break: break-all;
}

.top-member {
	background-color: #fff;
	overflow: hidden;
	padding: 6.25rem 0 7.5rem;
}

.top-member__heading {
	align-items: center;
	display: flex;
	flex-direction: column;
}

.top-member__label {
	color: #ff7544;
	font-family: "Montserrat", sans-serif;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.0875rem;
	text-transform: uppercase;
}

.top-member__titleWrap {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	margin-top: 0.5rem;
}

.top-member__title {
	color: #333;
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: 0.04rem;
	text-align: center;
}

.top-member__line {
	background-color: #ff7544;
	height: 0.125rem;
	width: 2.5rem;
}

.top-member__sub {
	color: #333;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.8;
	margin-top: 1.5rem;
	text-align: center;
}

.top-member__slider {
	margin-top: 3.75rem;
	position: relative;
}

.top-member__slider .swiper {
	margin-left: auto;
	margin-right: auto;
	max-width: 78rem;
	overflow: visible;
	padding-bottom: 1rem;
	padding-top: 1rem;
}

.top-member__slide {
	height: auto;
}

.top-member__card {
	align-items: center;
	background-color: #fff;
	border-radius: 1.5rem;
	box-shadow: 0 0 0.75rem 0 rgba(51, 51, 51, 0.08);
	display: flex;
	gap: 1.875rem;
	height: 100%;
	padding: 1.5rem;
	position: relative;
	transition: box-shadow 0.3s ease;
}

.top-member__cardLink {
	border-radius: 1.5rem;
	bottom: 0;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 1;
}

.top-member__photo {
	border-radius: 50%;
	flex-shrink: 0;
	height: 12.5rem;
	line-height: 0;
	overflow: hidden;
	width: 12.5rem;
}

.top-member__photo img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.top-member__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 1.25rem;
	min-width: 0;
}

.top-member__name {
	word-wrap: anywhere;
	color: #333;
	font-size: 1.5rem;
	font-weight: 700;
	letter-spacing: 0.12rem;
	line-height: 1.8;
}

.top-member__role {
	color: #ff7544;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.035rem;
	line-height: 1.7;
	margin-top: -1.25rem;
}

.top-member__message {
	-webkit-box-orient: vertical;
	word-wrap: anywhere;
	-webkit-line-clamp: 7;
	color: #333;
	display: -webkit-box;
	font-size: 0.875rem;
	font-weight: 500;
	letter-spacing: 0.07rem;
	line-height: 1.7;
	overflow: hidden;
}

.top-member__sns {
	align-items: center;
	display: flex;
	gap: 0.9375rem;
}

.top-member__sns img {
	-o-object-fit: contain;
	height: 1.75rem;
	object-fit: contain;
	width: 1.75rem;
}

.top-member__snsLink {
	display: block;
	line-height: 0;
	position: relative;
	z-index: 2;
}

.top-member__arrow {
	background-color: #ff7544;
	border-radius: 50%;
	box-shadow: 0 0.25rem 0.5rem 0 rgba(51, 51, 51, 0.16);
	cursor: pointer;
	height: 3.125rem;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	transition: opacity 0.5s;
	width: 3.125rem;
	z-index: 2;
}

.top-member__arrow::before {
	border-right: 0.125rem solid #fff;
	border-top: 0.125rem solid #fff;
	content: "";
	height: 0.625rem;
	left: 50%;
	position: absolute;
	top: 50%;
	width: 0.625rem;
}

.top-member__arrow--prev {
	left: max(2.5rem, 50% - 42.5rem);
}

.top-member__arrow--prev::before {
	transform: translate(-30%, -50%) rotate(-135deg);
}

.top-member__arrow--next {
	right: max(2.5rem, 50% - 42.5rem);
}

.top-member__arrow--next::before {
	transform: translate(-70%, -50%) rotate(45deg);
}

.top-member__pagination {
	align-items: center;
	display: flex;
	gap: 0.5rem;
	justify-content: center;
	margin-top: 1rem;
}

.top-member__pagination .swiper-pagination-bullet {
	background-color: #FED6C3;
	border-radius: 50%;
	height: 0.5rem;
	margin: 0;
	opacity: 1;
	transition: background-color 0.3s ease;
	width: 0.5rem;
}

.top-member__pagination .swiper-pagination-bullet-active {
	background-color: #ff7544;
}

.top-member__more {
	display: flex;
	justify-content: center;
	margin-top: 2.5rem;
}

.top-voice {
	background-color: #fff;
	padding: 6.25rem 0 7.5rem;
}

.top-voice__heading {
	align-items: center;
	display: flex;
	flex-direction: column;
}

.top-voice__label {
	color: #ff7544;
	font-family: "Montserrat", sans-serif;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.0875rem;
	text-transform: uppercase;
}

.top-voice__titleWrap {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	margin-top: 0.5rem;
}

.top-voice__title {
	color: #333;
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: 0.04rem;
	text-align: center;
}

.top-voice__line {
	background-color: #ff7544;
	height: 0.125rem;
	width: 2.5rem;
}

.top-voice__cards {
	grid-gap: 2.5rem 3rem;
	display: grid;
	gap: 2.5rem 3rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-left: auto;
	margin-right: auto;
	margin-top: 2.5rem;
	max-width: 67.5rem;
}

.top-voice__card {
	background-color: #fff;
	border-radius: 1rem;
	box-shadow: 0 0 0.75rem 0 rgba(51, 51, 51, 0.08);
	display: flex;
	flex-direction: column;
	gap: 1rem;
	padding: 2rem 1.5rem;
	transition: box-shadow 0.3s ease;
}

.top-voice__photo {
	align-items: center;
	aspect-ratio: 1280/710;
	background-color: #fffcf8;
	border-radius: 0.5rem;
	display: flex;
	justify-content: center;
	overflow: hidden;
}

.top-voice__photo img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.top-voice__personText {
	align-items: flex-start;
	display: flex;
	gap: 0.625rem;
	justify-content: space-between;
}

.top-voice__name {
	word-wrap: anywhere;
	color: #333;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
}

.top-voice__attr {
	word-wrap: anywhere;
	color: #999;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.07rem;
	line-height: 1.5;
}

.top-voice__boxes {
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
}

.top-voice__box {
	border-radius: 0.5rem;
	margin-top: 0.8125rem;
	padding: 1.25rem;
	position: relative;
}

.top-voice__box--before {
	background-color: #f8f8f8;
}

.top-voice__box--after {
	background-color: #fef9f3;
}

.top-voice__boxLabel {
	align-items: center;
	background-color: #fff;
	border: 1px solid #ff7544;
	border-radius: 3.125rem;
	color: #ff7544;
	display: flex;
	font-size: 0.875rem;
	font-weight: 900;
	justify-content: center;
	left: 1rem;
	line-height: 1.6;
	min-width: 5.0625rem;
	padding: 0 0.8125rem 0.125rem;
	position: absolute;
	top: -0.8125rem;
}

.top-voice__boxLabel--after {
	background-color: #ff7544;
	color: #fff;
}

.top-voice__boxText {
	word-wrap: anywhere;
	color: #333;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.6;
}

.top-voice__more {
	align-items: center;
	color: #333;
	display: flex;
	font-size: 0.875rem;
	font-weight: 500;
	gap: 0.75rem;
	justify-content: flex-end;
	letter-spacing: 0.0175rem;
}

.top-voice__more img {
	height: 1.25rem;
	width: 1.25rem;
}

.top-voice__moreWrap {
	display: flex;
	justify-content: center;
	margin-top: 2.5rem;
}

.voice-article {
	background-color: #fff;
	margin-top: 4.3125rem;
	padding: 6.25rem 0 7.5rem;
}

.voice-article__inner {
	margin-left: auto;
	margin-right: auto;
	max-width: 71.25rem;
	padding-left: 30px;
	padding-right: 30px;
}

.voice-article__layout {
	align-items: flex-start;
	display: flex;
	gap: 4.375rem;
}

.voice-article__tocWrap {
	flex-shrink: 0;
	position: sticky;
	top: 5.625rem;
	width: 15.9375rem;
}

.voice-article__tocInline {
	display: none;
}

.voice-article__toc {
	background-color: #fffcf8;
	border-radius: 0.375rem;
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
	padding: 1.5rem;
}

.voice-article__tocHead {
	align-items: center;
	border-bottom: 1px solid #ff7544;
	color: #333;
	display: flex;
	font-size: 1.0625rem;
	font-weight: 700;
	gap: 0.5rem;
	padding-bottom: 0.1875rem;
}

.voice-article__tocHead img {
	height: 1.25rem;
	width: 1.25rem;
}

.voice-article__tocList {
	counter-reset: toc;
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
}

.voice-article__tocGroup {
	counter-increment: toc;
	display: flex;
	flex-direction: column;
	gap: 0.375rem;
}

.voice-article__tocGroup:not(:first-child) {
	border-top: 1px solid #f2d6c6;
	padding-top: 1.25rem;
}

.voice-article__tocLink {
	color: #333;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5;
	transition: color 0.3s ease;
}

.voice-article__tocLink::before {
	color: #ff7544;
	content: counter(toc, decimal-leading-zero) ". ";
}

.voice-article__tocSubList {
	display: flex;
	flex-direction: column;
	gap: 0.375rem;
	padding-left: 1.1875rem;
}

.voice-article__tocSubLink {
	align-items: center;
	color: #333;
	display: flex;
	font-size: 0.875rem;
	font-weight: 500;
	gap: 0.25rem;
	line-height: 1.7;
	transition: color 0.3s ease;
}

.voice-article__tocSubLink::before {
	background-color: #333;
	content: "";
	flex-shrink: 0;
	height: 1px;
	width: 0.375rem;
}

.voice-article__main {
	flex: 1;
	min-width: 0;
}

.voice-article__meta {
	align-items: center;
	display: flex;
	gap: 1rem;
	justify-content: space-between;
}

.voice-article__cats {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.voice-article__cat {
	background-color: #ff7544;
	border-radius: 0.25rem;
	color: #fff;
	font-size: 0.875rem;
	font-weight: 500;
	letter-spacing: 0.07rem;
	line-height: 1.7;
	padding: 0 1rem;
}

.voice-article__date {
	color: #ff7544;
	flex-shrink: 0;
	font-size: 0.875rem;
	font-weight: 700;
}

.voice-article__title {
	color: #333;
	font-size: 1.75rem;
	font-weight: 700;
	letter-spacing: 0.07rem;
	line-height: 1.4;
	margin-top: 0.5rem;
}

.voice-article__eyecatch {
	aspect-ratio: 1280/670;
	border-radius: 0.5rem;
	line-height: 0;
	margin-top: 1.5rem;
	overflow: hidden;
}

.voice-article__eyecatch img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.voice-article__content {
	color: #333;
	margin-top: 1.5rem;
}

.voice-article__content > *:first-child {
	margin-top: 0;
}

.voice-article__content h2 {
	background-color: #fef9f3;
	font-size: 1.5rem;
	font-weight: 700;
	letter-spacing: 0.165rem;
	line-height: 1.4;
	margin-bottom: 1.375rem;
	margin-top: 3.5rem;
	padding: 0.75rem 1.5rem;
	position: relative;
}

.voice-article__content h2::after {
	background-color: #ff7544;
	bottom: -0.375rem;
	content: "";
	height: 0.125rem;
	left: 0;
	position: absolute;
	right: 0;
}

.voice-article__content h3 {
	border-left: 0.25rem solid #ff7544;
	font-size: 1.25rem;
	font-weight: 700;
	letter-spacing: 0.0375rem;
	line-height: 1.4;
	margin-bottom: 1rem;
	margin-top: 2.5rem;
	padding-left: 1rem;
}

.voice-article__content h4 {
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.4;
	margin-bottom: 1rem;
	margin-top: 2rem;
}

.voice-article__content h5 {
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.4;
	margin-bottom: 1rem;
	margin-top: 2rem;
}

.voice-article__content p {
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.5;
	margin-top: 1rem;
}

.voice-article__content ul,
.voice-article__content ol {
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.6;
	margin-top: 1rem;
	padding-left: 1.5rem;
}

.voice-article__content ul li,
.voice-article__content ol li {
	list-style: inherit;
}

.voice-article__content ul li {
	list-style: disc;
}

.voice-article__content ol li {
	list-style: decimal;
}

.voice-article__content img {
	border-radius: 0.5rem;
	height: auto;
	margin-top: 1rem;
}

.voice-article__content a {
	-webkit-text-decoration: underline;
	color: #ff7544;
	text-decoration: underline;
}

.voice-article__content .wp-block-embed {
	margin-top: 1.5rem;
}

.voice-article__content .wp-block-embed iframe {
	aspect-ratio: 16/9;
	border-radius: 0.5rem;
	height: auto;
	width: 100%;
}

.wp-block-group.voice-chat {
	align-items: flex-start;
	display: flex;
	flex-wrap: nowrap;
	gap: 2.3125rem;
	margin-top: 1.75rem;
}

.wp-block-group.voice-chat--right {
	flex-direction: row-reverse;
}

.voice-chat .voice-chat__icon {
	border: 0.125rem solid #ff7544;
	border-radius: 50%;
	flex-shrink: 0;
	height: 4.375rem;
	line-height: 0;
	margin: 0;
	overflow: hidden;
	width: 4.375rem;
}

.voice-chat .voice-chat__icon img {
	-o-object-fit: cover;
	border-radius: 50%;
	height: 100%;
	margin: 0;
	object-fit: cover;
	width: 100%;
}

.voice-chat .voice-chat__bubble {
	background-color: #fef9f3;
	border-radius: 1.25rem;
	color: #333;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.5;
	margin: 0;
	padding: 1.25rem 1.5625rem;
	position: relative;
	width: 30rem;
}

.voice-chat .voice-chat__bubble::before {
	border-bottom: 0.875rem solid transparent;
	border-top: 0.875rem solid transparent;
	content: "";
	position: absolute;
	top: 1.3125rem;
}

.voice-chat--left .voice-chat__bubble::before {
	border-right: 2.6875rem solid #fef9f3;
	left: -1.8125rem;
}

.voice-chat--right .voice-chat__bubble::before {
	border-left: 2.6875rem solid #fef9f3;
	right: -1.8125rem;
}

.voice-article__related {
	margin-top: 5rem;
}

.voice-article__relatedTitle {
	border-bottom: 1px solid #ff7544;
	color: #333;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.3;
	padding-bottom: 0.4375rem;
}

.voice-article__relatedList {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	margin-top: 1.5rem;
}

.voice-article__relatedItem {
	border-bottom: 1px solid #ddd;
	padding-bottom: 1rem;
}

.voice-article__relatedLink {
	align-items: center;
	display: flex;
	gap: 2.5rem;
}

.voice-article__relatedThumb {
	aspect-ratio: 1280/670;
	border-radius: 0.375rem;
	flex-shrink: 0;
	line-height: 0;
	overflow: hidden;
	width: 7.5rem;
}

.voice-article__relatedThumb img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.voice-article__relatedThumb--square {
	aspect-ratio: 1/1;
}

.voice-article__relatedBody {
	min-width: 0;
}

.voice-article__relatedDate {
	color: #ff7544;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.07rem;
}

.voice-article__relatedHeadline {
	color: #333;
	font-size: 1.375rem;
	font-weight: 700;
	letter-spacing: 0.11rem;
	line-height: 1.6;
	margin-top: 0.75rem;
}

.voice-article__back {
	display: flex;
	justify-content: center;
	margin-top: 5rem;
}

.voice-article__backBtn {
	align-items: center;
	background-color: #ff7544;
	border: 0.125rem solid #ff7544;
	border-radius: 3.125rem;
	color: #fff;
	display: flex;
	font-size: 1.25rem;
	font-weight: 700;
	justify-content: center;
	letter-spacing: 0.125rem;
	max-width: 100%;
	min-height: 4.1875rem;
	padding: 1rem 3rem;
	position: relative;
	transition: background-color 0.3s ease, color 0.3s ease;
	width: 18.75rem;
}

.voice-article__backBtn::before {
	border-bottom: 0.375rem solid transparent;
	border-right: 0.6875rem solid #fff;
	border-top: 0.375rem solid transparent;
	content: "";
	left: 1.625rem;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	transition: border-right-color 0.3s ease;
}

.voice {
	background-color: #fff;
	padding: 6.25rem 0 7.5rem;
}

.voice__cards {
	grid-gap: 2.5rem 1.875rem;
	display: grid;
	gap: 2.5rem 1.875rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 3.75rem;
}

.voice-card {
	background-color: #fff;
	border-radius: 1rem;
	box-shadow: 0 0 0.75rem 0 rgba(51, 51, 51, 0.08);
	display: flex;
	flex-direction: column;
	gap: 0.875rem;
	padding: 1.25rem;
	transition: box-shadow 0.3s ease;
}

.voice-card__imageArea {
	align-items: center;
	aspect-ratio: 1280/710;
	background-color: #fffcf8;
	border-radius: 0.5rem;
	display: flex;
	justify-content: center;
	overflow: hidden;
}

.voice-card__imageArea img {
	-o-object-fit: cover;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.voice-card__head {
	align-items: center;
	display: flex;
	gap: 0.5rem;
	justify-content: space-between;
}

.voice-card__name {
	color: #333;
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.5;
	min-width: 50%;
}

.voice-card__attr {
	color: #999;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.07rem;
}

.voice-card__box {
	border-radius: 0.5rem;
	margin-top: 0.375rem;
	padding: 1.125rem 1rem 0.875rem;
	position: relative;
}

.voice-card__box--before {
	background-color: #f8f8f8;
}

.voice-card__box--after {
	background-color: #fef9f3;
}

.voice-card__boxLabel {
	background-color: #fff;
	border: 1px solid #ff7544;
	border-radius: 3.125rem;
	color: #ff7544;
	display: inline-block;
	font-size: 0.875rem;
	font-weight: 900;
	left: 1rem;
	line-height: 1.6;
	padding: 0 0.8125rem 0.125rem;
	position: absolute;
	top: -0.75rem;
}

.voice-card__boxLabel--after {
	background-color: #ff7544;
	color: #fff;
}

.voice-card__boxText {
	color: #333;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.6;
}

.voice-card__more {
	align-items: center;
	align-self: flex-end;
	color: #333;
	display: flex;
	font-size: 0.875rem;
	font-weight: 500;
	gap: 0.75rem;
	letter-spacing: 0.0175rem;
	margin-top: auto;
}

.voice-card__more img {
	height: 1.25rem;
	width: 1.25rem;
}

.voice__empty {
	color: #333;
	font-size: 1rem;
	margin-top: 3.75rem;
	text-align: center;
}

.worry {
	background-color: #fbf9f7;
	margin-top: 3.4722222222vw;
	padding-top: 0.625rem;
	position: relative;
}

.worry::before {
	background-image: url("../images/common/worry-curve.svg");
	background-repeat: no-repeat;
	background-size: 100% 100%;
	bottom: 100%;
	content: "";
	height: 3.4722222222vw;
	left: 0;
	pointer-events: none;
	position: absolute;
	width: 100%;
}

.worry__inner {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 2.5rem;
	margin-left: auto;
	margin-right: auto;
	max-width: 71.25rem;
	padding-left: 30px;
	padding-right: 30px;
}

.worry__heading {
	align-items: center;
	display: flex;
	flex-direction: column;
}

.worry__label {
	color: #ff7544;
	font-family: "Montserrat", sans-serif;
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.0875rem;
	text-transform: uppercase;
}

.worry__titleWrap {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	margin-top: 0.5rem;
}

.worry__title {
	color: #333;
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: 0.04rem;
	text-align: center;
}

.worry__title span {
	color: #ff7544;
}

.worry__line {
	background-color: #ff7544;
	height: 0.125rem;
	width: 2.5rem;
}

.worry__cards {
	display: flex;
	flex-wrap: wrap;
	gap: 1.875rem;
	justify-content: center;
	max-width: 67.5rem;
	width: 100%;
}

.worry__card {
	align-items: center;
	background-color: #fff;
	border-radius: 0.75rem;
	display: flex;
	flex: 1 1 28.4375rem;
	gap: 0.75rem;
	justify-content: center;
	max-width: 32.8125rem;
	min-width: 0;
	padding: 2rem 1.5rem;
}

.worry__cardIcon {
	flex-shrink: 0;
	height: 1.5rem;
	width: 1.5rem;
}

.worry__cardText {
	color: #333;
	font-size: 1.25rem;
	font-weight: 700;
}

.worry__callout {
	align-items: center;
	background-color: rgba(255, 255, 255, 0.45);
	border: 0.125rem solid #d8d3cd;
	border-radius: 0.75rem;
	display: flex;
	margin-top: 2.5rem;
	max-width: 100%;
	min-height: 7.375rem;
	padding: 1.25rem 2.5rem 1.25rem 20.9375rem;
	position: relative;
	width: 50rem;
}

.worry__calloutImg {
	bottom: 0;
	height: auto;
	left: 5.9375rem;
	position: absolute;
	width: 13.5625rem;
}

.worry__calloutText {
	color: #333;
	font-size: 1.375rem;
	font-weight: 700;
	letter-spacing: 0.055rem;
	line-height: 1.6;
}

.worry__arrow {
	height: auto;
	width: 10.6875rem;
}

.u-font14 {
	font-size: 0.875rem;
}

.u-font16 {
	font-size: 1rem;
}

.u-font18 {
	font-size: 1.125rem;
}

.u-font20 {
	font-size: 1.25rem;
}

.u-font22 {
	font-size: 1.375rem;
}

.u-font24 {
	font-size: 1.5rem;
}

.u-font28 {
	font-size: 1.75rem;
}

.u-font32 {
	font-size: 2rem;
}

.u-font40 {
	font-size: 2.5rem;
}

.u-hover {
	transition: opacity 0.5s;
}

.u-lh10 {
	line-height: 1;
}

.u-lh13 {
	line-height: 1.3;
}

.u-lh15 {
	line-height: 1.5;
}

.u-lh16 {
	line-height: 1.6;
}

.u-lh20 {
	line-height: 2;
}

.u-ls05 {
	letter-spacing: 0.05em;
}

.u-ls10 {
	letter-spacing: 0.1em;
}

.u-ls15 {
	letter-spacing: 0.15em;
}

.u-ls20 {
	letter-spacing: 0.2em;
}

.u-mt0 {
	margin-top: 0 !important;
}

.u-mt10 {
	margin-top: 10px !important;
	margin-top: 0.625rem !important;
}

.u-mt20 {
	margin-top: 20px !important;
	margin-top: 1.25rem !important;
}

.u-mt30 {
	margin-top: 30px !important;
	margin-top: 1.875rem !important;
}

.u-mt40 {
	margin-top: 40px !important;
	margin-top: 2.5rem !important;
}

.u-mt50 {
	margin-top: 50px !important;
	margin-top: 3.125rem !important;
}

.u-mt60 {
	margin-top: 60px !important;
	margin-top: 3.75rem !important;
}

.u-mt70 {
	margin-top: 70px !important;
	margin-top: 4.375rem !important;
}

.u-mt80 {
	margin-top: 80px !important;
	margin-top: 5rem !important;
}

.u-mt90 {
	margin-top: 90px !important;
	margin-top: 5.625rem !important;
}

.u-mt100 {
	margin-top: 100px !important;
	margin-top: 6.25rem !important;
}

.u-mt110 {
	margin-top: 110px !important;
	margin-top: 6.875rem !important;
}

.u-mt120 {
	margin-top: 120px !important;
	margin-top: 7.5rem !important;
}

.u-mt130 {
	margin-top: 130px !important;
	margin-top: 8.125rem !important;
}

.u-mt140 {
	margin-top: 140px !important;
	margin-top: 8.75rem !important;
}

.u-mt150 {
	margin-top: 150px !important;
	margin-top: 9.375rem !important;
}

.u-mt160 {
	margin-top: 160px !important;
	margin-top: 10rem !important;
}

.u-mt170 {
	margin-top: 170px !important;
	margin-top: 10.625rem !important;
}

.u-mt180 {
	margin-top: 180px !important;
	margin-top: 11.25rem !important;
}

.u-mt190 {
	margin-top: 190px !important;
	margin-top: 11.875rem !important;
}

.u-mt200 {
	margin-top: 200px !important;
	margin-top: 12.5rem !important;
}

.u-shine {
	overflow: hidden;
	position: relative;
}

.u-shine::before {
	background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.7) 100%);
	content: "";
	height: 100%;
	left: -75%;
	pointer-events: none;
	position: absolute;
	top: 0;
	transform: skewX(-25deg);
	width: 50%;
	z-index: 1;
}

.u-w300 {
	font-weight: 300;
}

.u-w400 {
	font-weight: 400;
}

.u-w500 {
	font-weight: 500;
}

.u-w600 {
	font-weight: 600;
}

.u-w700 {
	font-weight: 700;
}

.u-w900 {
	font-weight: 900;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) and (-webkit-min-device-pixel-ratio: 0), screen and (-webkit-min-device-pixel-ratio: 0) and (min-resolution: 0.001dpcm) {

img {
	image-rendering: -webkit-optimize-contrast;
}

}

@media (hover: hover) {

.archive-filters__item:hover {
	background-color: #fdeae0;
}

.faq__q:hover {
	background-color: #fbeede;
}

.footer__navLink:hover {
	color: #ff7544;
}

.footer__subLink:hover {
	color: #ff7544;
}

.pc-nav__link:hover::after {
	transform: scaleX(1);
}

.member-card:hover {
	box-shadow: 0 0 1.25rem 0 rgba(51, 51, 51, 0.2);
}

.more-btn:hover {
	background-color: #fff;
	color: #ff7544;
}

.more-btn:hover::after {
	border-left-color: #ff7544;
}

.pager a.page-numbers:hover {
	background-color: #fdeae0;
}

.tokushoho__content a:hover {
	opacity: 0.7;
}

.top-member__card:hover {
	box-shadow: 0 0 1.25rem 0 rgba(51, 51, 51, 0.2);
}

.top-member__arrow:hover {
	opacity: 0.7;
}

.top-voice__card:hover {
	box-shadow: 0 0 1.25rem 0 rgba(51, 51, 51, 0.2);
}

.voice-article__tocLink:hover {
	color: #ff7544;
}

.voice-article__tocSubLink:hover {
	color: #ff7544;
}

.voice-article__backBtn:hover {
	background-color: #fff;
	color: #ff7544;
}

.voice-article__backBtn:hover::before {
	border-right-color: #ff7544;
}

.voice-card:hover {
	box-shadow: 0 0 1.25rem 0 rgba(51, 51, 51, 0.2);
}

.u-hover:hover {
	opacity: 0.7;
}

.u-shine:hover::before {
	animation: u-shine 0.7s ease;
}

}

@media screen and (min-width: 1281px) and (max-width: 1390px) {

.header {
	zoom: 0.92;
}

}

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

.br-1920-more {
	display: none;
}

}

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

.br-1480-more {
	display: none;
}

}

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

html {
	scroll-padding-top: 3.75rem;
}

.header {
	height: 3.75rem;
}

.header__inner {
	padding: 0 1.25rem;
}

.header__logo {
	width: 7.75rem;
}

.pc-nav {
	display: none;
}

.hamburger {
	cursor: pointer;
	display: block;
	height: 1.375rem;
	margin-left: auto;
	position: relative;
	width: 2rem;
	z-index: 110;
}

.hamburger span {
	background-color: #333;
	border-radius: 0.125rem;
	height: 0.125rem;
	left: 0;
	position: absolute;
	transition: transform 0.3s ease, opacity 0.3s ease;
	width: 100%;
}

.hamburger span:nth-of-type(1) {
	top: 0.25rem;
}

.hamburger span:nth-of-type(2) {
	bottom: 0.25rem;
}

.hamburger.is-active span {
	background-color: #ff7544;
}

.hamburger.is-active span:nth-of-type(1) {
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
}

.hamburger.is-active span:nth-of-type(2) {
	bottom: auto;
	top: 50%;
	transform: translateY(-50%) rotate(-45deg);
}

body.is-active {
	overflow: hidden;
}

body.is-active::before {
	background-color: rgba(17, 18, 26, 0.4);
	bottom: 0;
	content: "";
	left: 0;
	position: fixed;
	right: 0;
	top: 0;
	z-index: 90;
}

.sp-nav {
	background-color: #fff;
	box-shadow: 0 0 1.25rem 0 rgba(79, 79, 79, 0.12);
	display: block;
	height: 100%;
	overflow-y: auto;
	position: fixed;
	right: 0;
	top: 0;
	transform: translateX(100%);
	transition: transform 0.4s ease;
	width: 100%;
	z-index: 95;
}

.sp-nav.is-active {
	transform: translateX(0);
}

}

@media (max-width: 1260px) {

html {
	font-size: 1.2698412698vw;
}

}

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

.about__person {
	right: -1.25rem;
	width: 9.375rem;
}

.company-members__list {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.member__cards {
	grid-template-columns: 1fr;
}

.message__inner {
	gap: 2.5rem;
}

.message__photo {
	width: 25rem;
}

.voice-article__layout {
	gap: 2.5rem;
}

.voice__cards {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

}

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

.br-1000-less {
	display: block;
}

.br-1000-more {
	display: none;
}

}

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

.u-desktop {
	display: none;
}

.u-mobile {
	display: block;
}

.br-768-less {
	display: block;
}

.br-768-more {
	display: none;
}

html {
	font-size: 16px;
}

.about__inner {
	padding-left: 20px;
	padding-right: 20px;
}

.about__title {
	font-size: 1.5rem;
}

.about__card {
	gap: 2rem;
	padding: 2.5rem 1.25rem;
}

.about__leadText {
	font-size: 1.1875rem;
	letter-spacing: 0.0625rem;
}

.about__leadStrong {
	font-size: 1.375rem;
	letter-spacing: 0.09375rem;
}

.about__box {
	padding: 2rem 1rem;
}

.about__boxText {
	font-size: 0.9375rem;
}

.about__boxText + .about__boxText {
	margin-top: 1.25rem;
}

.about__person {
	right: -0.5rem;
	width: 6.875rem;
}

.archive-filters {
	gap: 0.5rem;
}

.archive-filters__item {
	font-size: 0.8125rem;
	min-width: 6rem;
	padding: 0.4375rem 0.875rem;
	width: auto;
}

.archive-mv {
	height: 13.75rem;
	margin-top: 3.75rem;
}

.archive-mv__photo {
	left: 0;
}

.archive-mv__inner {
	padding-left: 20px;
	padding-right: 20px;
	width: 100%;
}

.archive-mv__heading {
	align-items: center;
	background-color: rgba(255, 234, 226, 0.75);
	border-radius: 0.5rem;
	padding: 0.875rem 1.75rem;
}

.archive-mv__title {
	font-size: 1.625rem;
	letter-spacing: 0.125rem;
}

.archive-mv__label {
	font-size: 1.125rem;
}

.community {
	padding: 3.75rem 0 4.5rem;
}

.community__inner {
	gap: 2.5rem;
	padding-left: 20px;
	padding-right: 20px;
}

.community__title {
	font-size: 1.625rem;
}

.community__sub {
	font-size: 0.875rem;
}

.community__card {
	align-items: stretch;
	flex-direction: column;
	gap: 1rem;
	padding: 1.75rem 0;
}

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

.community__photo {
	height: auto;
	order: 2;
	padding-left: 1.25rem;
	padding-right: 1.25rem;
	width: 100%;
}

.community__photo img {
	aspect-ratio: 16/10;
	height: auto;
	transform: none;
	width: 100%;
}

.community__card--reverse .community__photo img {
	transform: none;
}

.community__content {
	display: contents;
}

.community__numTitle {
	order: 1;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
}

.community__text {
	font-size: 0.9375rem;
	order: 3;
	padding-left: 1rem;
	padding-right: 1rem;
}

.community__footer {
	font-size: 0.875rem;
	line-height: 1.9;
}

.company-vision {
	padding: 3.5rem 0 4.5rem;
}

.company-vision__block + .company-vision__block {
	margin-top: 3.5rem;
}

.company-vision__statement {
	font-size: 1.5rem;
	letter-spacing: 0.0625rem;
	margin-top: 1rem;
}

.company-vision__lead {
	font-size: 0.9375rem;
	line-height: 1.8;
	margin-top: 1rem;
}

.company {
	padding: 3.5rem 0 4.5rem;
}

.company__title {
	font-size: 1.5rem;
}

.company__table {
	margin-top: 2rem;
	padding: 0.5rem 1.25rem;
}

.company__row {
	flex-direction: column;
	gap: 0.25rem;
	padding: 1rem 0.5rem;
}

.company__th {
	padding: 0;
	width: 100%;
}

.company__td {
	font-size: 0.9375rem;
	padding: 0;
}

.company-message {
	padding: 3.5rem 0 4.5rem;
}

.company-message__title {
	font-size: 1.5rem;
}

.company-message__items {
	margin-top: 2rem;
}

.company-message__item {
	align-items: center;
	flex-direction: column;
	gap: 1.5rem;
	padding-bottom: 2rem;
	padding-top: 2rem;
}

.company-message__headline {
	font-size: 1.0625rem;
	text-align: center;
}

.company-message__text {
	font-size: 0.9375rem;
	line-height: 1.8;
}

.company-brand {
	padding: 3.5rem 0 4.5rem;
}

.company-brand__title {
	font-size: 1.5rem;
}

.company-brand__block {
	margin-top: 2.5rem;
}

.company-brand__block--logo {
	flex-direction: column;
	gap: 1.5rem;
}

.company-brand__image {
	max-width: 20rem;
	width: 100%;
}

.company-brand__logo {
	max-width: 20rem;
	width: 100%;
}

.company-brand__subTitle {
	font-size: 1.125rem;
}

.company-brand__text {
	font-size: 0.9375rem;
	line-height: 1.8;
}

.company-members {
	padding: 3.5rem 0 4.5rem;
}

.company-members__title {
	font-size: 1.5rem;
}

.company-members__list {
	gap: 1rem;
	grid-template-columns: 1fr;
	margin-top: 2rem;
}

.company-members__item {
	padding: 1.25rem;
}

.company-members__photo {
	height: 4.5rem;
	width: 4.5rem;
}

.cta {
	padding: 2.5rem 0 3rem;
}

.cta__inner {
	padding-left: 20px;
	padding-right: 20px;
}

.cta__heading {
	gap: 0.75rem;
}

.cta__deco {
	height: 2.25rem;
	width: 2.375rem;
}

.cta__title {
	font-size: 1.375rem;
}

.cta__title--lg {
	font-size: 1.5rem;
}

.cta__card {
	flex-direction: column;
	gap: 1.25rem;
	padding: 1.75rem 1.5rem;
}

.cta__info {
	gap: 1rem;
}

.cta__lineIcon {
	height: 3.5rem;
	width: 3.5rem;
}

.cta__divider {
	height: 3.75rem;
}

.cta__textMain {
	font-size: 1.875rem;
}

.cta__textSub {
	font-size: 0.875rem;
}

.cta__button {
	min-height: 3.75rem;
	padding: 0.5rem 3rem 0.5rem 1.5rem;
}

.cta__buttonText {
	font-size: 1.125rem;
	letter-spacing: 0.0875rem;
}

.cta__buttonArrow {
	height: 1.5rem;
	width: 1.5rem;
}

.curriculum {
	padding: 3.75rem 0 4.5rem;
}

.curriculum__inner {
	padding-left: 20px;
	padding-right: 20px;
}

.curriculum__title {
	font-size: 1.5rem;
}

.curriculum__sub {
	font-size: 0.875rem;
}

.curriculum__steps {
	align-items: stretch;
	flex-direction: column;
	gap: 0.75rem;
}

.curriculum__step {
	max-width: none;
}

.curriculum__stepBox {
	padding: 2.5rem 1rem;
}

.curriculum__stepHead {
	align-items: flex-start;
	gap: 0.75rem;
}

.curriculum__stepTitle {
	font-size: 1.25rem;
}

.curriculum__stepSubtitle {
	font-size: 1.25rem;
}

.curriculum__arrow {
	align-self: center;
	border-bottom-width: 1.375rem;
	border-left-width: 1.125rem;
	border-top-width: 1.375rem;
	transform: rotate(90deg);
}

.curriculum__cards {
	flex-direction: column;
}

.curriculum__cardTitle {
	font-size: 1.25rem;
}

.error-page {
	margin-top: 4rem;
	padding: 4.5rem 0 6rem;
}

.error-page__code {
	font-size: 5.5rem;
}

.error-page__title {
	font-size: 1.375rem;
	margin-top: 1rem;
}

.error-page__text {
	font-size: 0.9375rem;
	text-align: left;
}

.error-page__btnWrap {
	margin-top: 2rem;
}

.faq {
	padding: 4rem 0 5rem;
}

.faq__inner {
	padding-left: 20px;
	padding-right: 20px;
}

.faq__title {
	font-size: 1.625rem;
}

.faq__list {
	gap: 1.25rem;
	margin-top: 2rem;
}

.faq__q {
	gap: 0.875rem;
	padding: 0.875rem 1rem;
}

.faq__question {
	font-size: 0.9375rem;
}

.faq__a {
	padding: 1rem 1rem 0;
}

.faq__aInner {
	gap: 0.875rem;
}

.fixed-cta {
	display: block;
}

.flow {
	padding: 3.75rem 0 4.5rem;
}

.flow__inner {
	padding-left: 20px;
	padding-right: 20px;
}

.flow__title {
	font-size: 1.5rem;
}

.flow__steps::before {
	display: none;
}

.flow__steps {
	align-items: center;
	flex-direction: column;
	gap: 2rem;
	padding-left: 0;
	padding-right: 0;
}

.flow__step {
	align-items: flex-start;
	flex-direction: row;
	gap: 0.625rem;
	max-width: 20rem;
	width: 100%;
}

.flow__step--debut {
	max-width: 20rem;
	width: 100%;
}

.flow__circle {
	height: 6.25rem;
	width: 6.25rem;
}

.flow__num {
	font-size: 1.125rem;
}

.flow__icon {
	width: 3rem;
}

.flow__debutImg {
	transform: translateY(0.5rem);
	width: 7.5rem;
}

.flow__stepDesc {
	padding-left: 0;
	padding-right: 0;
}

.flow__support {
	margin-top: 3.5rem;
	padding-left: 20px;
	padding-right: 20px;
}

.flow__supportInner {
	padding: 2.5rem 1.25rem;
}

.flow__features {
	align-items: center;
	flex-direction: column;
	gap: 2.5rem;
}

.flow__feature {
	max-width: 18.75rem;
}

.flow__feature:not(:last-child)::after {
	display: none;
}

.flow__featurePill {
	min-width: 0;
}

.flow__outro {
	margin-top: 3.5rem;
	padding-left: 20px;
	padding-right: 20px;
}

.flow__outroInner {
	flex-direction: column;
	gap: 2rem;
}

.flow__outroHeading {
	align-items: center;
	gap: 1rem;
}

.flow__outroTitle {
	font-size: 1.625rem;
	text-align: center;
}

.flow__outroText {
	font-size: 1rem;
	text-align: center;
}

.flow__outroStrong {
	font-size: 1.0625rem;
}

.footer {
	padding: 3.5rem 0 3.75rem;
}

.footer__top {
	align-items: center;
	flex-direction: column;
	gap: 2rem;
}

.footer__nav {
	width: 100%;
}

.footer__navList {
	grid-gap: 1rem 1.5rem;
	display: grid;
	gap: 1rem 1.5rem;
	grid-template-columns: repeat(auto-fit, minmax(8.25rem, 1fr));
	justify-content: center;
	margin-left: auto;
	margin-right: auto;
	max-width: none;
}

.footer__bottom {
	flex-direction: column;
	gap: 1rem;
	margin-top: 2.5rem;
}

.footer__sub {
	flex-wrap: wrap;
	gap: 1rem 1.5rem;
	justify-content: center;
}

.footer__copy {
	font-size: 0.6875rem;
	text-align: center;
}

.fv__hero {
	flex-direction: column-reverse;
	padding-top: 3.75rem;
}

.fv__body {
	align-items: center;
	padding: 1rem 0.9375rem;
	text-align: center;
	width: 100%;
}

.fv__dots {
	background-image: radial-gradient(circle at 0.1875rem center, #ff7544 0.15625rem, transparent 0.1875rem);
	background-size: 1.625rem 0.4375rem;
	height: 0.4375rem;
	margin-left: 0;
	transform: translateX(-6.5625rem);
	width: 6.875rem;
}

.fv__title {
	font-size: 1.375rem;
	letter-spacing: 0.03125rem;
	line-height: 1.6;
}

.fv__titleLg {
	font-size: 1.625rem;
}

.fv__titleLg.fv__titleLg--ls {
	letter-spacing: 0;
}

.fv__titleLg.fv__titleLg--ml {
	margin-left: 0rem;
}

.fv__titleSm {
	font-size: 1.125rem;
	margin-left: 0.125rem;
	margin-right: 0.125rem;
}

.fv__titleLine {
	height: 0.125rem;
	margin-top: 1.125rem;
	width: 4.1875rem;
}

.fv__lead {
	font-size: 0.875rem;
	letter-spacing: 0.05625rem;
	margin-top: 0.75rem;
}

.fv__cta {
	margin-top: 1.5rem;
	width: 100%;
}

.fv__ctaBadge {
	font-size: 0.875rem;
	letter-spacing: 0.04rem;
	margin-bottom: -0.8125rem;
	padding: 0.3125rem 1.25rem;
}

.fv__ctaButton {
	display: flex;
	flex-direction: column;
	gap: 0.125rem;
	padding: 0.75rem 1.25rem;
	width: 100%;
}

.fv__ctaMain {
	font-size: 1.25rem;
	letter-spacing: 0.03375rem;
}

.fv__ctaNote {
	font-size: 0.75rem;
}

.fv__images {
	width: 100%;
}

.fv__images img {
	border-bottom-left-radius: 1.5rem;
}

.fv__stats {
	align-items: center;
	gap: 0.5rem;
	padding-bottom: 1.5rem;
	padding-left: 0.9375rem;
	padding-right: 0.9375rem;
	padding-top: 0.5rem;
}

.fv__stat {
	gap: 0.125rem;
	min-width: 0;
	width: 33.3333333333%;
}

.fv__laurel {
	height: 4.25rem;
	width: 1.25rem;
}

.fv__statBody {
	margin-bottom: 0.25rem;
}

.fv__statBody.fv__statBody--teacher {
	margin-bottom: 0.375rem;
}

.fv__statNumValue {
	font-size: 2rem;
	letter-spacing: -0.0825rem;
}

.fv__statNumUnit {
	font-size: 1rem;
}

.fv__statNum--text {
	font-size: 1.5rem;
}

.fv__statLabel {
	font-size: 0.75rem;
	margin-top: 0.25rem;
}

.inner {
	max-width: 37.5rem;
	padding-left: 20px;
	padding-right: 20px;
}

.member-profile {
	gap: 1rem;
	margin-top: 1rem;
}

.member-profile__head {
	gap: 1rem;
}

.member-profile__photo {
	height: 6.25rem;
	width: 6.25rem;
}

.member-profile__headBody {
	gap: 0.75rem;
}

.member-profile__sectionTitle {
	font-size: 1rem;
}

.member {
	padding: 2rem 0 4rem;
}

.member__cards {
	gap: 1.5rem;
	margin-top: 2.5rem;
}

.member-card {
	align-items: center;
	flex-direction: column;
}

.member-card__body {
	flex: none;
	width: 100%;
}

.member-card__name {
	font-size: 1.375rem;
	letter-spacing: 0.0625rem;
}

.message {
	padding: 3.75rem 0 4.5rem;
}

.message__inner {
	flex-direction: column;
	gap: 2rem;
	padding-left: 20px;
	padding-right: 20px;
}

.message__photo {
	aspect-ratio: 3/4;
	max-width: 30rem;
	width: 100%;
}

.message__body {
	gap: 2rem;
	width: 100%;
}

.message__title {
	font-size: 1.625rem;
}

.message__text {
	font-size: 0.875rem;
}

.message__signRole {
	font-size: 1.0625rem;
}

.message__signName {
	font-size: 1.25rem;
}

.more-btn {
	font-size: 1.125rem;
	height: 3.5rem;
	width: 16.25rem;
}

.pager {
	margin-top: 2.5rem;
}

.pager .page-numbers {
	font-size: 1rem;
	height: 2.5rem;
	width: 2.5rem;
}

.price__inner {
	padding: 3rem 20px 3.5rem;
}

.price__title {
	font-size: 1.625rem;
}

.price__body {
	gap: 2.25rem;
}

.price__card {
	gap: 1.5rem;
	padding: 1.5rem 1.25rem;
}

.price__num {
	font-size: 2.75rem;
}

.price__features {
	gap: 0.75rem;
	grid-auto-flow: row;
	grid-template-rows: none;
}

.price__feature {
	font-size: 0.9375rem;
}

.price__lead {
	font-size: 0.875rem;
	line-height: 1.9;
}

.price__ctaBadge {
	font-size: 0.9375rem;
}

.price__ctaButton {
	padding: 0.625rem 2.75rem;
}

.price__ctaMain {
	font-size: 1.75rem;
}

.price__ctaSub {
	font-size: 0.9375rem;
}

.reason {
	padding: 3.75rem 0 4.5rem;
}

.reason__inner {
	padding-left: 20px;
	padding-right: 20px;
}

.reason__title {
	font-size: 1.5rem;
}

.reason__cards {
	align-items: center;
	flex-direction: column;
	gap: 3rem;
}

.reason__card {
	padding: 2.25rem 0.625rem 1.5rem;
}

.reason__point {
	height: 4.125rem;
	left: 1rem;
	padding-top: 0.5rem;
	top: -0.75rem;
	width: 4.625rem;
}

.reason__point::before {
	height: 4.125rem;
	width: 5rem;
}

.reason__cardTitle {
	font-size: 1.25rem;
}

.reason__text {
	font-size: 0.9375rem;
}

.reason__note {
	font-size: 0.8125rem;
}

.tokushoho-mv {
	height: 11.25rem;
	margin-top: 4rem;
}

.tokushoho-mv__title {
	font-size: 1.5rem;
	letter-spacing: 0.0625rem;
}

.tokushoho-mv__label {
	font-size: 0.875rem;
}

.tokushoho {
	padding: 3rem 0 4.5rem;
}

.tokushoho__content h2 {
	font-size: 1rem;
	margin-top: 2rem;
	padding: 0.625rem 1rem;
}

.tokushoho__content p {
	font-size: 0.9375rem;
	line-height: 1.8;
	margin-top: 0.75rem;
	padding-left: 1rem;
}

.tokushoho__content ul {
	margin-top: 0.75rem;
	padding-left: 1.25rem;
}

.tokushoho__content li {
	font-size: 0.9375rem;
}

.top-member {
	padding: 3.5rem 0 4.5rem;
}

.top-member__title {
	font-size: 1.5rem;
}

.top-member__sub {
	font-size: 0.875rem;
	margin-top: 1rem;
	padding-left: 20px;
	padding-right: 20px;
}

.top-member__slider {
	margin-top: 2.5rem;
}

.top-member__card {
	flex-direction: column;
	gap: 1rem;
}

.top-member__photo {
	height: 8.75rem;
	width: 8.75rem;
}

.top-member__body {
	flex: none;
	gap: 0.75rem;
	width: 100%;
}

.top-member__name {
	font-size: 1.25rem;
	letter-spacing: 0.0625rem;
	line-height: 1.5;
	text-align: center;
}

.top-member__role {
	margin-top: -0.75rem;
	text-align: center;
}

.top-member__sns {
	justify-content: center;
}

.top-member__arrow {
	height: 2.5rem;
	width: 2.5rem;
}

.top-member__arrow--prev {
	left: 0.5rem;
}

.top-member__arrow--next {
	right: 0.5rem;
}

.top-member__more {
	margin-top: 2rem;
}

.top-voice {
	padding: 3.5rem 0 4.5rem;
}

.top-voice__title {
	font-size: 1.5rem;
}

.top-voice__cards {
	gap: 1.5rem;
	grid-template-columns: 1fr;
	max-width: 35rem;
}

.top-voice__card {
	padding: 1.5rem 1.25rem;
}

.top-voice__boxText {
	font-size: 0.9375rem;
}

.top-voice__moreWrap {
	margin-top: 2rem;
}

.voice-article {
	margin-top: 4rem;
	padding: 3rem 0 4.5rem;
}

.voice-article__inner {
	padding-left: 20px;
	padding-right: 20px;
}

.voice-article__layout {
	flex-direction: column;
}

.voice-article__tocWrap {
	display: none;
}

.voice-article__tocInline {
	display: block;
	margin-top: 2rem;
}

.voice-article__title {
	font-size: 1.375rem;
}

.voice-article__content h2 {
	font-size: 1.25rem;
	letter-spacing: 0.0625rem;
	padding: 0.625rem 1rem;
}

.voice-article__content h3 {
	font-size: 1.125rem;
}

.voice-article__content h4 {
	font-size: 1.0625rem;
}

.voice-article__content p {
	font-size: 0.9375rem;
}

.wp-block-group.voice-chat {
	gap: 1.5rem;
}

.voice-chat .voice-chat__icon {
	height: 3.25rem;
	width: 3.25rem;
}

.voice-chat .voice-chat__bubble {
	font-size: 0.9375rem;
	padding: 0.875rem 1rem;
	width: 100%;
}

.voice-chat .voice-chat__bubble::before {
	border-bottom-width: 0.625rem;
	border-top-width: 0.625rem;
	top: 0.875rem;
}

.voice-chat--left .voice-chat__bubble::before {
	border-right-width: 1.875rem;
	left: -1.125rem;
}

.voice-chat--right .voice-chat__bubble::before {
	border-left-width: 1.875rem;
	right: -1.125rem;
}

.voice-article__related {
	margin-top: 3.5rem;
}

.voice-article__relatedLink {
	gap: 1rem;
}

.voice-article__relatedThumb {
	width: 6.25rem;
}

.voice-article__relatedHeadline {
	font-size: 1rem;
	letter-spacing: 0.03125rem;
	margin-top: 0.375rem;
}

.voice-article__back {
	margin-top: 3.5rem;
}

.voice-article__backBtn {
	font-size: 1rem;
	min-height: 3.125rem;
	padding: 0.625rem 1.25rem;
}

.voice {
	padding: 2rem 0;
}

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

.worry {
	margin-top: 1.75rem;
}

.worry::before {
	height: 1.75rem;
}

.worry__inner {
	gap: 2rem;
	padding-left: 20px;
	padding-right: 20px;
}

.worry__title {
	font-size: 1.5rem;
}

.worry__cards {
	gap: 1rem;
}

.worry__card {
	align-items: flex-start;
	flex-basis: 100%;
	gap: 1.25rem;
	justify-content: flex-start;
	padding: 1.25rem 1rem;
}

.worry__cardText {
	font-size: 0.9375rem;
}

.worry__callout {
	flex-direction: column;
	gap: 0.5rem;
	margin-top: 3.75rem;
	min-height: 0;
	padding: 2.9375rem 1.25rem 1.25rem 1.25rem;
}

.worry__calloutImg {
	bottom: auto;
	left: 50%;
	top: 0;
	transform: translateX(-50%) translateY(-70%);
	width: 9.375rem;
}

.worry__calloutText {
	font-size: 1rem;
	text-align: center;
}

.worry__arrow {
	width: 6.25rem;
}

.u-mtSp10 {
	margin-top: 10px !important;
	margin-top: 0.625rem !important;
}

.u-mtSp20 {
	margin-top: 20px !important;
	margin-top: 1.25rem !important;
}

.u-mtSp30 {
	margin-top: 30px !important;
	margin-top: 1.875rem !important;
}

.u-mtSp40 {
	margin-top: 40px !important;
	margin-top: 2.5rem !important;
}

.u-mtSp50 {
	margin-top: 50px !important;
	margin-top: 3.125rem !important;
}

.u-mtSp60 {
	margin-top: 60px !important;
	margin-top: 3.75rem !important;
}

.u-mtSp70 {
	margin-top: 70px !important;
	margin-top: 4.375rem !important;
}

.u-mtSp80 {
	margin-top: 80px !important;
	margin-top: 5rem !important;
}

.u-mtSp90 {
	margin-top: 90px !important;
	margin-top: 5.625rem !important;
}

.u-mtSp100 {
	margin-top: 100px !important;
	margin-top: 6.25rem !important;
}

.u-mtSp110 {
	margin-top: 110px !important;
	margin-top: 6.875rem !important;
}

.u-mtSp120 {
	margin-top: 120px !important;
	margin-top: 7.5rem !important;
}

.u-mtSp130 {
	margin-top: 130px !important;
	margin-top: 8.125rem !important;
}

.u-mtSp140 {
	margin-top: 140px !important;
	margin-top: 8.75rem !important;
}

.u-mtSp150 {
	margin-top: 150px !important;
	margin-top: 9.375rem !important;
}

.u-mtSp160 {
	margin-top: 160px !important;
	margin-top: 10rem !important;
}

.u-mtSp170 {
	margin-top: 170px !important;
	margin-top: 10.625rem !important;
}

.u-mtSp180 {
	margin-top: 180px !important;
	margin-top: 11.25rem !important;
}

.u-mtSp190 {
	margin-top: 190px !important;
	margin-top: 11.875rem !important;
}

.u-mtSp200 {
	margin-top: 200px !important;
	margin-top: 12.5rem !important;
}

}

@media (max-width: 600px) {

.about__box {
	padding: 2rem 1rem 6.125rem;
}

}

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

.br-500-less {
	display: block;
}

}

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

.br-414-less {
	display: block;
}

}

@media (max-width: 375px) {

html {
	font-size: 4.2666666667vw;
}

}

@keyframes fv-shine {

0% {
	left: -75%;
}

30% {
	left: 125%;
}

100% {
	left: 125%;
}

}

@keyframes u-shine {

100% {
	left: 125%;
}

}


/*# sourceMappingURL=style.css.map */
