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

.display-sp {
	display: none;
}

.display-pc {
	display: none;
}

html {
	scroll-padding-top: 90px;
}

body {
	color: #231815;
	font-family: "Noto Sans JP", sans-serif;
}

main {
	overflow: hidden;
}

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

/* ホバー */

a {
	color: inherit;
	text-decoration: none;
}

.mt-header {
	margin-top: 90px;
}

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

/* Remove default padding */

ul,
ol {
	padding: 0;
}

/* Remove default margin */

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

/* Set core root defaults */

html {
	scroll-behavior: smooth;
}

/* Set core body defaults */

body {
	line-height: 1.5;
	text-rendering: optimizeSpeed;
}

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

ul,
ol {
	list-style: none;
}

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

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

/* Make images easier to work with */

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

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

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

/* Inherit fonts for inputs and buttons */

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

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

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

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

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

textarea {
	resize: vertical;
}

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

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

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

/* Q&Aのアコーディオンで使うクラスが書かれているファイル */

.c-accordion .accordion__items {
	gap: 40px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-top: 100px;
}

.c-accordion .accordion__item {
	background-color: #fff;
	border-radius: 10px;
	-webkit-box-shadow: 0 9px 18px rgba(30, 30, 30, .17);
	box-shadow: 0 9px 18px rgba(30, 30, 30, .17);
	height: -moz-fit-content;
	height: -webkit-fit-content;
	height: fit-content;
	padding: 20px;
	width: 100%;
}

.c-accordion .accordion__item:not(:first-child) .answer {
	display: none;
}

.c-accordion .accordion__item:first-child .answer {
	display: block;
}

.c-accordion .accordion__item .question,
.c-accordion .accordion__item .layout {
	gap: 20px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: grid;
	grid-template-columns: 40px 1fr 44px;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	width: 100%;
}

.c-accordion .accordion__item .question .alphabet,
.c-accordion .accordion__item .layout .alphabet {
	color: #FFB400;
	font-size: 35px;
	font-weight: 500;
	-webkit-transform: translateY(-4px);
	transform: translateY(-4px);
}

.c-accordion .accordion__item .question .title,
.c-accordion .accordion__item .layout .title {
	font-size: 18px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.6666666667;
}

.c-accordion .accordion__item .question .icon,
.c-accordion .accordion__item .layout .icon {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background-color: #EEEEEE;
	border-radius: 50%;
	cursor: pointer;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 44px;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	position: relative;
	width: 44px;
}

.c-accordion .accordion__item .question .icon::before,
.c-accordion .accordion__item .question .icon::after,
.c-accordion .accordion__item .layout .icon::before,
.c-accordion .accordion__item .layout .icon::after {
	background-color: #FFB400;
	content: "";
	display: block;
	height: 3px;
	position: absolute;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 20px;
}

.c-accordion .accordion__item .question .icon::before,
.c-accordion .accordion__item .layout .icon::before {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.c-accordion .accordion__item .question .icon::after,
.c-accordion .accordion__item .layout .icon::after {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.c-accordion .accordion__item .layout {
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	border-top: 1px solid #C9CACA;
	grid-template-columns: 40px 1fr;
	margin-top: 20px;
	padding-top: 20px;
}

.c-accordion .accordion__item .layout .alphabet {
	color: #FF8200;
}

.c-accordion .accordion__item .layout .title {
	font-size: 16px;
	font-weight: 400;
	line-height: 1.75;
	padding-top: 10px;
}

.c-accordion .accordion__item .js-icon-rotate .icon::before {
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}

.c-accordion .accordion__item .js-icon-rotate .icon::after {
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
}

/* ページ共通のボタンで使うクラスが書かれているファイル */

.c-button-contact a {
	gap: 16px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background-color: #fff;
	border-radius: 10px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 16px;
	height: 60px;
	letter-spacing: 0.05em;
	line-height: 1.75;
	padding: 16px;
	position: relative;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 280px;
}

.c-button-contact a:hover {
	background-color: #231815;
}

.c-button-contact a:hover .icon img:nth-child(1) {
	opacity: 0;
}

.c-button-contact a:hover .icon img:nth-child(2) {
	opacity: 1;
}

.c-button-contact a:hover p {
	color: #fff;
}

.c-button-contact a:hover .circle {
	background-color: #fff;
	-webkit-transform: translateY(-50%) scale(1.5);
	transform: translateY(-50%) scale(1.5);
}

.c-button-contact a .icon {
	height: 11px;
	position: relative;
	width: 15px;
}

.c-button-contact a .icon img {
	height: 100%;
	position: absolute;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 100%;
}

.c-button-contact a .icon img:nth-child(1) {
	opacity: 1;
}

.c-button-contact a .icon img:nth-child(2) {
	opacity: 0;
}

.c-button-contact a .bar {
	background-color: #C9CACA;
	height: 36px;
	width: 1px;
}

.c-button-contact a p {
	color: #231815;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.c-button-contact a .circle {
	background-color: #231815;
	border-radius: 50%;
	height: 8px;
	position: absolute;
	right: 16px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 8px;
}

.c-button-view-more a {
	background-color: #231815;
	border: 1px solid #231815;
	border-radius: 30px;
	color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 22px;
	height: 60px;
	letter-spacing: 0.05em;
	line-height: 54px;
	padding: 0 30px;
	position: relative;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 250px;
}

.c-button-view-more a::before {
	background-color: #fff;
	border-radius: 50%;
	content: "";
	height: 8px;
	position: absolute;
	right: 25px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 8px;
}

.c-button-view-more a:hover {
	background-color: #fff;
	color: #231815;
}

.c-button-view-more a:hover::before {
	background-color: #231815;
	-webkit-transform: translateY(-50%) scale(2);
	transform: translateY(-50%) scale(2);
}

/* 繋がりがあるカードで使うクラスが書かれているファイル */

.c-cards {
	max-width: 100%;
	overflow-x: auto;
}

.c-cards .layout {
	gap: 40px;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	margin: 60px auto 0;
	min-width: 1250px;
	padding: 0 40px 32px;
	position: relative;
	width: 1250px;
}

.c-cards .layout::-webkit-scrollbar {
	height: 6px;
}

.c-cards .layout::-webkit-scrollbar-thumb {
	background-color: #C9CACA;
	border-radius: 3px;
}

.c-cards .bar {
	background-color: #C9CACA;
	height: 2px;
	left: 176px;
	position: absolute;
	right: 176px;
	top: 49px;
	width: calc(100% - 352px);
}

.c-cards .card {
	background-color: #fff;
	-webkit-box-shadow: 0 14px 29px rgba(24, 24, 24, .17);
	box-shadow: 0 14px 29px rgba(24, 24, 24, .17);
	padding: 44px 20px 50px;
	text-align: center;
}

.c-cards .card:nth-child(1) .circle {
	background-color: #FF4800;
}

.c-cards .card:nth-child(2) .circle {
	background-color: #FF8200;
}

.c-cards .card:nth-child(3) .circle {
	background-color: #FFB400;
}

.c-cards .card:nth-child(4) .circle {
	background-color: #FFEC00;
}

.c-cards .card .circle {
	border-radius: 50%;
	height: 13px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	width: 13px;
	z-index: 1;
}

.c-cards .card .num {
	color: #C9CACA;
	font-size: 30px;
	letter-spacing: 0.05em;
	line-height: 1;
	margin-top: 18px;
}

.c-cards .card .step {
	color: #C9CACA;
	font-size: 14px;
	letter-spacing: 0.05em;
	margin-top: 4px;
}

.c-cards .card .heading {
	font-size: 20px;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1.5;
	margin-top: 20px;
	min-height: 60px;
}

.c-cards .card .heading-center {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.c-cards .card .text {
	font-size: 14px;
	letter-spacing: 0.05em;
	line-height: 1.4285714286;
	margin-top: 28px;
}

/* ページ共通のグラデーション見出しで使うクラスが書かれているファイル */

.gradient-heading-contact {
	color: #fff;
	font-size: 80px;
	line-height: 1;
	position: relative;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.gradient-heading-contact::after {
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	-webkit-animation: animateTextBackground 12s ease-in-out infinite;
	animation: animateTextBackground 12s ease-in-out infinite;
	background: -webkit-repeating-linear-gradient(0deg, #fff 0%, #ef8200 50%, #fff 100%);
	background-clip: text;
	background-repeat: no-repeat;
	background-size: 50%;
	color: transparent;
	content: "Contact";
	height: calc(100% + 80px);
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.gradient-heading-contact-form {
	color: #000;
	font-size: 80px;
	line-height: 1;
	position: relative;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.gradient-heading-contact-form::after {
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	-webkit-animation: animateTextBackground 12s ease-in-out infinite;
	animation: animateTextBackground 12s ease-in-out infinite;
	background: -webkit-repeating-linear-gradient(0deg, #231815 0%, #FFE100 50%, #231815 100%);
	background-clip: text;
	background-repeat: no-repeat;
	background-size: 50%;
	color: transparent;
	content: "Contact";
	height: calc(100% + 80px);
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.gradient-heading-strength {
	color: #231815;
	font-size: 80px;
	line-height: 1;
	position: relative;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.gradient-heading-strength::after {
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	-webkit-animation: animateTextBackground 12s ease-in-out infinite;
	animation: animateTextBackground 12s ease-in-out infinite;
	background: -webkit-repeating-linear-gradient(0deg, #231815 0%, #ef8200 50%, #231815 100%);
	background-clip: text;
	background-repeat: no-repeat;
	background-size: 50%;
	color: transparent;
	content: "Our Strength";
	height: calc(100% + 80px);
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.gradient-heading-innovation {
	color: #231815;
	font-size: 80px;
	line-height: 1;
	position: relative;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.gradient-heading-innovation::after {
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	-webkit-animation: animateTextBackground 12s ease-in-out infinite;
	animation: animateTextBackground 12s ease-in-out infinite;
	background: -webkit-repeating-linear-gradient(0deg, #231815 0%, #ef8200 50%, #231815 100%);
	background-clip: text;
	background-repeat: no-repeat;
	background-size: 50%;
	color: transparent;
	content: "Innovation";
	height: calc(100% + 80px);
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.gradient-heading-solution {
	color: #231815;
	font-size: 80px;
	line-height: 1;
	position: relative;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.gradient-heading-solution::after {
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	-webkit-animation: animateTextBackgroundReverse 12s ease-in-out infinite;
	animation: animateTextBackgroundReverse 12s ease-in-out infinite;
	background: -webkit-repeating-linear-gradient(0deg, #231815 0%, #F7B400 50%, #231815 100%);
	background-clip: text;
	background-repeat: no-repeat;
	background-size: 50%;
	color: transparent;
	content: "Solution";
	height: calc(100% + 80px);
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.gradient-heading-emotion {
	color: #231815;
	font-size: 80px;
	line-height: 1;
	position: relative;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.gradient-heading-emotion::after {
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	-webkit-animation: animateTextBackground 18s ease-in-out infinite;
	animation: animateTextBackground 18s ease-in-out infinite;
	background: -webkit-repeating-linear-gradient(0deg, #231815 0%, #FFE100 50%, #231815 100%);
	background-clip: text;
	background-repeat: no-repeat;
	background-size: 50%;
	color: transparent;
	content: "Emotion";
	height: calc(100% + 80px);
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.gradient-heading-business {
	color: #231815;
	font-size: 80px;
	line-height: 1;
	position: relative;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.gradient-heading-business::after {
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	-webkit-animation: animateTextBackground 12s ease-in-out infinite;
	animation: animateTextBackground 12s ease-in-out infinite;
	background: -webkit-repeating-linear-gradient(0deg, #231815 0%, #F7B400 50%, #231815 100%);
	background-clip: text;
	background-repeat: no-repeat;
	background-size: 50%;
	color: transparent;
	content: "Business";
	height: calc(100% + 80px);
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.gradient-heading-our-strength {
	color: #231815;
	font-size: 80px;
	line-height: 1;
	position: relative;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.gradient-heading-our-strength::after {
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	-webkit-animation: animateTextBackground 12s ease-in-out infinite;
	animation: animateTextBackground 12s ease-in-out infinite;
	background: -webkit-repeating-linear-gradient(0deg, #231815 0%, #ef8200 50%, #231815 100%);
	background-clip: text;
	background-repeat: no-repeat;
	background-size: 50%;
	color: transparent;
	content: "Our Strength";
	height: calc(100% + 80px);
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.gradient-heading-sales-promotion {
	color: #231815;
	font-size: 80px;
	line-height: 1;
	position: relative;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.gradient-heading-sales-promotion::after {
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	-webkit-animation: animateTextBackground 12s ease-in-out infinite;
	animation: animateTextBackground 12s ease-in-out infinite;
	background: -webkit-repeating-linear-gradient(0deg, #231815 0%, #ef8200 50%, #231815 100%);
	background-clip: text;
	background-repeat: no-repeat;
	background-size: 50%;
	color: transparent;
	content: "Sales Promotion";
	height: calc(100% + 80px);
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.gradient-heading-consulting {
	color: #231815;
	font-size: 80px;
	line-height: 1;
	position: relative;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.gradient-heading-consulting::after {
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	-webkit-animation: animateTextBackground 12s ease-in-out infinite;
	animation: animateTextBackground 12s ease-in-out infinite;
	background: -webkit-repeating-linear-gradient(0deg, #231815 0%, #F7B400 50%, #231815 100%);
	background-clip: text;
	background-repeat: no-repeat;
	background-size: 50%;
	color: transparent;
	content: "Consulting";
	height: calc(100% + 80px);
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.gradient-heading-education {
	color: #231815;
	font-size: 80px;
	line-height: 1;
	position: relative;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.gradient-heading-education::after {
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	-webkit-animation: animateTextBackground 12s ease-in-out infinite;
	animation: animateTextBackground 12s ease-in-out infinite;
	background: -webkit-repeating-linear-gradient(0deg, #231815 0%, #ffe100 50%, #231815 100%);
	background-clip: text;
	background-repeat: no-repeat;
	background-size: 50%;
	color: transparent;
	content: "Educational Business";
	height: calc(100% + 80px);
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.gradient-heading-company {
	color: #231815;
	font-size: 80px;
	line-height: 1;
	position: relative;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.gradient-heading-company::after {
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	-webkit-animation: animateTextBackground 12s ease-in-out infinite;
	animation: animateTextBackground 12s ease-in-out infinite;
	background: -webkit-repeating-linear-gradient(0deg, #231815 0%, #F7B400 50%, #231815 100%);
	background-clip: text;
	background-repeat: no-repeat;
	background-size: 50%;
	color: transparent;
	content: "Company";
	height: calc(100% + 80px);
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.gradient-heading-data {
	color: #fff;
	font-size: 80px;
	line-height: 1;
	position: relative;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

/* ページ共通の見出しで使うクラスが書かれているファイル */

.c-heading h2 {
	font-size: 14px;
	line-height: 1;
	padding-left: 26px;
	position: relative;
}

.c-heading h2::before {
	background-image: url(../images/common/heading-arrangement.svg);
	content: "";
	height: 16px;
	left: 0;
	position: absolute;
	top: 0;
	width: 19px;
}

.c-heading-white h2 {
	color: #fff;
	font-size: 14px;
	line-height: 1;
	padding-left: 26px;
	position: relative;
}

.c-heading-white h2::before {
	background-image: url(../images/common/heading-arrangement-white.svg);
	content: "";
	height: 16px;
	left: 0;
	position: absolute;
	top: 0;
	width: 19px;
}

.c-heading-b .icon img {
	height: auto;
	margin-left: auto;
	margin-right: auto;
	width: 42px;
}

.c-heading-b h2 {
	font-size: 38px;
	font-weight: 500;
	letter-spacing: 0.05em;
	margin-top: 16px;
	text-align: center;
}

.c-heading-c {
	gap: 16px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.c-heading-c .icon img {
	height: auto;
	margin-left: auto;
	margin-right: auto;
	width: 42px;
}

.c-heading-c h2 {
	font-size: 45px;
	font-weight: 500;
	letter-spacing: 0.05em;
	text-align: center;
}

/* 共通で使う区切り線で使うクラスが書かれているファイル */

.c-hr {
	background-color: #C9CACA;
	height: 1px;
	position: relative;
	width: 100%;
}

.c-hr::before {
	background-color: #F7B400;
	content: "";
	height: 1px;
	left: 0;
	position: absolute;
	top: 0;
	width: 12%;
}

/* ページ共通のリンク	で使うクラスが書かれているファイル */

.c-link a {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background-color: #231815;
	border: 1px solid #231815;
	border-radius: 10.5px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 21px;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 44px;
}

.c-link a:hover {
	background-color: #fff;
}

.c-link a:hover .arrow {
	background-color: #231815;
	-webkit-transform: translateX(6px);
	transform: translateX(6px);
}

.c-link a:hover .arrow::before {
	border-color: #231815;
}

.c-link .arrow {
	background-color: #fff;
	height: 1px;
	position: relative;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 12px;
}

.c-link .arrow::before {
	border: 1px solid #fff;
	border-bottom: none;
	border-left: none;
	content: "";
	display: block;
	height: 5px;
	position: absolute;
	right: 0;
	top: -2px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 5px;
}

/* ページ共通の番号入りのアイテムで使うクラスが書かれているファイル */

.c-num__items {
	gap: 40px;
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: 1fr;
}

.c-num__item {
	gap: 32px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	border-radius: 10px;
	-webkit-box-shadow: 0 14px 30px rgba(24, 24, 24, .17);
	box-shadow: 0 14px 30px rgba(24, 24, 24, .17);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding: 40px 6%;
}

.c-num__item:nth-child(1) .num {
	color: #FF4800;
}

.c-num__item:nth-child(2) .num,
.c-num__item:nth-child(8) .num {
	color: #FF8200;
}

.c-num__item:nth-child(3) .num {
	color: #FFB400;
}

.c-num__item:nth-child(4) .num,
.c-num__item:nth-child(5) .num,
.c-num__item:nth-child(6) .num {
	color: #ffe100;
}

.c-num__item:nth-child(7) .num {
	color: #FFB400;
}

.c-num__item .num {
	font-size: 40px;
	text-align: center;
	width: 48px;
}

.c-num__item .main {
	width: calc(100% - 80px);
}

.c-num__item .main .heading {
	font-size: 20px;
	font-weight: 700;
	line-height: 1.75;
}

.c-num__item .main .heading .bp-1280 {
	display: none;
}

.c-num__item .main .texts {
	margin-top: 16px;
}

.c-num__item .main .texts p {
	font-size: 16px;
	line-height: 1.75;
}

/* ページ共通で使用するページネーションのクラス */

/* スリックで使うクラスが書かれているファイル */

.c-slick {
	left: 0;
	position: absolute;
	width: 100%;
	z-index: -1;
}

.c-slick img {
	height: auto;
	width: 100%;
}

/* ページ共通のパンくずリストで使うクラスが書かれているファイル */

.c-breadcrumbs__layout {
	gap: 14px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	max-width: 100%;
	overflow-x: auto;
	padding: 30px 5%;
	width: 100%;
}

.c-breadcrumbs__layout .c-breadcrumbs__item {
	color: #231815;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1;
	min-width: -moz-fit-content;
	min-width: -webkit-fit-content;
	min-width: fit-content;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.c-breadcrumbs__layout .c-breadcrumbs__item a {
	text-underline-offset: 2px;
	text-decoration: underline;
}

.c-breadcrumbs__layout .c-breadcrumbs__item:last-child {
	color: #AFAFAF;
}

/* スクロールヒントで使うクラスが書かれているファイル */

.scroll-hint-shadow-wrap::before,
.scroll-hint-shadow-wrap::after {
	display: none;
}

/* トップページのビジネスで使うクラス */

.business__layout {
	margin: 50px auto 0;
	max-width: 1180px;
	padding-top: 100px;
	width: 100%;
}

.business__head {
	gap: 30px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.business__head .texts p {
	font-size: 25px;
	letter-spacing: 0.025em;
	line-height: 1.68;
}

.business__main {
	gap: 30px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin-top: 80px;
}

.business__main .blocks {
	gap: 30px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.business__main .block {
	background-color: #fff;
	border-radius: 10px;
	padding: 28px 20px;
}

.business__main .block--orange .bar::before,
.business__main .block--orange .title::before {
	background-color: #EF8200;
}

.business__main .block--yellow .bar::before,
.business__main .block--yellow .title::before {
	background-color: #FFE100;
}

.business__main .block--single .picture {
	min-width: 46.0784313725%;
}

.business__main .bar {
	background-color: #C9CACA;
	height: 2px;
	position: relative;
	width: 100%;
}

.business__main .bar::before {
	content: "";
	height: 2px;
	left: 0;
	position: absolute;
	top: 0;
	width: 55px;
}

.business__main .head {
	gap: 20px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin-top: 24px;
}

.business__main .title {
	font-size: 22px;
	font-weight: 700;
	line-height: 1.3636363636;
	padding-left: 10px;
	position: relative;
	width: calc(100% - 64px);
}

.business__main .title::before {
	border-radius: 50%;
	content: "";
	height: 5px;
	left: 0;
	position: absolute;
	top: 13px;
	width: 5px;
}

.business__main .title br {
	display: none;
}

.business__main .texts {
	margin-top: 30px;
}

.business__main .texts p {
	font-size: 16px;
	line-height: 1.5;
}

.business__main .picture {
	margin-top: 30px;
}

.business__main .picture img {
	aspect-ratio: 499/192;
	-o-object-fit: cover;
	-o-object-position: center;
	border-radius: 10px;
	min-height: 180px;
	object-fit: cover;
	object-position: center;
}

.business-data-background {
	position: relative;
}

.business-data-background .common-background {
	bottom: 100px;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	z-index: -1;
}

/* トップページの数字で知るサンプラスで使うクラス */

.data__background {
	position: relative;
}

.data__background::before {
	background-color: #fff;
	bottom: -1px;
	content: "";
	height: 50%;
	left: 0;
	position: absolute;
	width: 100%;
	z-index: -1;
}

.data__layout {
	gap: 50px;
	background-image: linear-gradient(150deg, #EF8200, #F7B400 50%, #FFE100);
	border-radius: 30px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin: 100px auto 0;
	max-width: 1440px;
	overflow: hidden;
	padding: 70px 32px 0;
	width: 100%;
}

.data__info {
	min-width: 510px;
}

.data__info .heading-en {
	margin-top: 45px;
}

.data__info .preliminary {
	color: #fff;
	font-size: 15px;
	letter-spacing: 0.025em;
	margin-top: 10px;
	text-align: right;
}

.num-info {
	margin-top: 40px;
	max-width: 900px;
	padding-left: 20px;
	width: 100%;
}

.num-info .datum {
	gap: 20px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	border-bottom: 1px solid #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding-bottom: 16px;
}

.num-info .datum .title {
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.025em;
	line-height: 1.5;
	padding-left: 24px;
	position: relative;
	-webkit-transform: translateY(8px);
	transform: translateY(8px);
}

.num-info .datum .title::before {
	background-color: #fff;
	border-radius: 50%;
	content: "";
	height: 8px;
	left: 0;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 8px;
}

.num-info .datum .number {
	color: #fff;
	font-size: 28px;
	font-weight: 700;
	line-height: 1;
}

.num-info .datum .number .count-num-01,
.num-info .datum .number .count-num-02,
.num-info .datum .number .count-num-03 {
	display: inline-block;
	font-size: 78px;
	font-weight: 400;
	margin-right: 4px;
	min-width: 195px;
	text-align: right;
}

.date__slider {
	margin-left: auto;
	margin-right: auto;
	max-width: 700px;
	width: 100%;
}

.date__slider .slide {
	border: none !important;
}

.date__slider .slide img {
	-o-object-fit: cover;
	-o-object-position: center;
	object-fit: cover;
	object-position: center;
	width: 100%;
}

/* フッターで使うクラス */

.footer {
	background-color: #333;
	position: relative;
}

.footer::before {
	aspect-ratio: 1920/120;
	background-image: url(../images/common/footer-background.png);
	background-position: top center;
	background-size: cover;
	bottom: calc(100% - 1px);
	content: "";
	height: auto;
	left: 0;
	position: absolute;
	width: 100%;
}

.footer__layout {
	margin: 0 auto;
	max-width: 1540px;
	padding: 30px 50px 50px;
	width: 100%;
}

.footer__head {
	gap: 6.9444444444%;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.footer__head .heading-en {
	margin-top: 40px;
}

.footer__head .texts {
	color: #fff;
	font-size: 16px;
	letter-spacing: 0.025em;
	line-height: 1.75;
	margin-top: 50px;
}

.footer__head .contact p {
	color: #fff;
	font-size: 14px;
	letter-spacing: 0.025em;
	line-height: 1.5;
}

.footer__head .contact .footer__button {
	margin-bottom: 28px;
	margin-top: 16px;
}

.footer__head .contact .footer__button a:hover p {
	color: #fff;
}

.footer__head .contact .footer__button a p {
	color: #231815;
}

.footer__head .contact .attention {
	padding-left: 10px;
	position: relative;
}

.footer__head .contact .attention::before {
	background-color: #EF8200;
	border-radius: 50%;
	content: "";
	height: 4px;
	left: 0;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 4px;
}

.footer__bar {
	background-color: #c9caca;
	height: 1px;
	margin: 100px 0;
	max-width: 1440px;
	width: 100%;
}

.footer__menus {
	gap: 30px;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	margin-left: auto;
	margin-right: auto;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.footer__menu a {
	color: #FFF;
	display: block;
	font-size: 15px;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.footer__menu a:hover {
	opacity: 0.7;
}

.footer__menu .icon {
	display: none;
}

.footer__menu .icon span {
	display: block;
	height: 100%;
	position: relative;
	width: 100%;
}

.footer__menu .icon span::before,
.footer__menu .icon span::after {
	background-color: #F5B201;
	content: "";
	position: absolute;
}

.footer__menu .icon span::before {
	height: 1px;
	right: 0;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 11px;
}

.footer__menu .icon span::after {
	height: 11px;
	right: 5px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 1px;
}

.footer__menu .js-icon-rotate span::after {
	-webkit-transform: translateY(-50%) rotate(90deg);
	transform: translateY(-50%) rotate(90deg);
}

.footer__menu .footer__sub-menu {
	margin-top: 20px;
}

.footer__menu .footer__sub-menu li:not(:first-child) {
	margin-top: 5px;
}

.footer__menu .footer__sub-menu a {
	color: #C9CACA;
	font-size: 13px;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.footer__menu .footer__sub-menu a:hover {
	opacity: 0.7;
}

.footer__foot {
	margin-top: 100px;
}

.footer__foot .flex-top,
.footer__foot .flex-bottom {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.footer__foot .flex-top {
	gap: 20px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	color: #FFF;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.footer__foot .flex-top .philosophy {
	font-size: 36px;
	letter-spacing: 0.05em;
}

.footer__foot .flex-top .menus {
	gap: 50px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.footer__foot .flex-top .menus a {
	font-size: 15px;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.footer__foot .flex-top .menus a:hover {
	opacity: 0.7;
}

.footer__foot .flex-bottom {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin-top: 55px;
}

.footer__foot .flex-bottom .info {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.footer__foot .flex-bottom .logo img {
	max-width: 140px;
	width: 100%;
}

.footer__foot .flex-bottom .logo .company-name {
	color: #FFF;
	font-size: 13px;
	letter-spacing: 0.05em;
	margin-top: 10px;
}

.footer__foot .flex-bottom .address,
.footer__foot .flex-bottom .map a {
	color: #C9CACA;
	display: block;
	font-size: 13px;
	letter-spacing: 0.05em;
	margin-top: 14px;
}

.footer__foot .flex-bottom .map a {
	text-underline-offset: 6px;
	text-decoration: underline;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.footer__foot .flex-bottom .map a:hover {
	opacity: 0.7;
}

.footer__foot .flex-bottom .menus {
	gap: 4px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin-top: 32px;
}

.footer__foot .flex-bottom .menus a {
	color: #fff;
	font-size: 15px;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.footer__foot .flex-bottom .menus a:hover {
	opacity: 0.7;
}

.footer__foot .flex-bottom .copyright {
	color: #C9CACA;
	font-size: 10px;
	letter-spacing: 0.05em;
	margin-top: 50px;
}

/* ヘッダーで使用 */

.header {
	background-color: #fff;
	height: 90px;
	left: 0;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 10;
}

.header--front-page {
	background-color: transparent;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.header--front-page .header__menu a {
	color: #fff;
}

.header--front-page .header__logo .white {
	opacity: 1;
}

.header--front-page .header__logo .black {
	opacity: 0;
}

.header--front-page .hamburger__icon .hamburger__bar {
	background-color: #fff;
}

.header__layout {
	gap: 20px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: inherit;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin: 0 auto;
	padding: 0 30px;
	width: 100%;
}

.header__logo {
	height: 32px;
	position: relative;
	width: 161px;
	z-index: 10;
}

.header__logo a {
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.header__logo a:hover {
	opacity: 0.7;
}

.header__logo a img {
	bottom: 0;
	height: 100%;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 100%;
}

.header__logo a .white {
	opacity: 0;
}

.header__logo a .black {
	opacity: 1;
}

.header__main {
	gap: 20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.header__nav {
	height: inherit;
}

.header__menus {
	display: none;
}

.header__menu a {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	color: #231815;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 14px;
	height: inherit;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.header__menu a:hover {
	opacity: 0.7;
}

.header__menu--contact {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-top: 30px;
}

.header__menu--contact a {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	border-radius: 20px;
	color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 14px;
	height: 40px;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	letter-spacing: 0.05em;
	padding: 0 20px;
	position: relative;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 180px;
	z-index: 10;
}

.header__menu--contact a::before {
	background-image: linear-gradient(45deg, #FFE100, #F7B400 50%, #EF8200);
	border-radius: 20px;
	content: "";
	height: 100%;
	opacity: 1;
	position: absolute;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 100%;
	z-index: 11;
}

.header__menu--contact a::after {
	background-image: linear-gradient(45deg, #EF8200, #F7B400 50%, #FFE100);
	border-radius: 20px;
	content: "";
	height: 100%;
	opacity: 0;
	position: absolute;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 100%;
	z-index: 11;
}

.header__menu--contact a p {
	position: relative;
	z-index: 12;
}

.header__menu--contact a span {
	background-color: #fff;
	border-radius: 50%;
	content: "";
	height: 8px;
	position: absolute;
	right: 16px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 8px;
	z-index: 12;
}

.header__menu--contact a:hover {
	opacity: 1;
}

.header__menu--contact a:hover::before {
	opacity: 0;
}

.header__menu--contact a:hover::after {
	opacity: 1;
}

.header__menu--contact a:hover span {
	-webkit-transform: translateY(-50%) scale(1.5);
	transform: translateY(-50%) scale(1.5);
}

.header__menu--contact a img {
	height: 16px;
	padding-top: 2px;
	width: auto;
}

.header__mail a {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	border-radius: 50%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 48px;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	position: relative;
	width: 48px;
	z-index: 10;
}

.header__mail a::before {
	background-image: linear-gradient(45deg, #FFE100, #F7B400 50%, #EF8200);
	border-radius: 50%;
	content: "";
	height: 100%;
	opacity: 1;
	position: absolute;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 100%;
	z-index: 10;
}

.header__mail a::after {
	background-image: linear-gradient(45deg, #EF8200, #F7B400 50%, #FFE100);
	border-radius: 50%;
	content: "";
	height: 100%;
	opacity: 0;
	position: absolute;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 100%;
	z-index: 10;
}

.header__mail a:hover::before {
	opacity: 0;
}

.header__mail a:hover::after {
	opacity: 1;
}

.header__mail a img {
	height: 17px;
	position: relative;
	width: 24px;
	z-index: 12;
}

/* ハンバーガーメニュー関連 */

.hamburger {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: inherit;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 50px;
}

.hamburger__icon {
	cursor: pointer;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	height: 24px;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	width: 50px;
}

.hamburger__icon:hover .hamburger__bar {
	background-color: #EF8200;
}

.hamburger__icon .hamburger__bar {
	background-color: #231815;
	border-radius: 1px;
	height: 1px;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 100%;
}

.hamburger__icon .hamburger__bar:nth-child(2) {
	margin-left: auto;
	margin-right: auto;
	width: calc(100% - 10px);
}

.hamburger__nav {
	background-color: #333333;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	height: 100%;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	max-height: 100%;
	max-width: 1000px;
	overflow-y: auto;
	padding: 120px 5vw 80px;
	position: fixed;
	right: -120%;
	top: 0px;
	-webkit-transition: all 0.6s;
	transition: all 0.6s;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
	z-index: 10;
}

.hamburger__nav .hamburger__menus {
	min-width: 500px;
}

.hamburger__nav .hamburger__menus .hamburger__menu {
	border-top: 1px solid #8C8C8C;
	padding: 16px 0;
	position: relative;
}

.hamburger__nav .hamburger__menus .hamburger__menu a {
	display: block;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.hamburger__nav .hamburger__menus .hamburger__menu a p {
	color: #fff;
	font-size: 30px;
	letter-spacing: 0.05em;
	line-height: 1;
}

.hamburger__nav .hamburger__menus .hamburger__menu a span {
	color: #8C8C8C;
	display: block;
	font-size: 12px;
	letter-spacing: 0.05em;
	margin-top: 8px;
	text-indent: 30px;
}

.hamburger__nav .hamburger__menus .hamburger__menu .icon {
	cursor: pointer;
	display: block;
	height: 32px;
	position: absolute;
	right: 18px;
	top: 27px;
	width: 32px;
	z-index: 1;
}

.hamburger__nav .hamburger__menus .hamburger__menu .icon span {
	display: block;
	height: 100%;
	position: relative;
	width: 100%;
}

.hamburger__nav .hamburger__menus .hamburger__menu .icon span::before,
.hamburger__nav .hamburger__menus .hamburger__menu .icon span::after {
	background-color: #EF8200;
	content: "";
	position: absolute;
}

.hamburger__nav .hamburger__menus .hamburger__menu .icon span::before {
	height: 1px;
	right: 9px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 16px;
}

.hamburger__nav .hamburger__menus .hamburger__menu .icon span::after {
	height: 16px;
	right: 50%;
	top: 8px;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 1px;
}

.hamburger__nav .hamburger__menus .hamburger__menu .js-icon-rotate span::after {
	-webkit-transform: translateX(-50%) rotate(90deg);
	transform: translateX(-50%) rotate(90deg);
}

.hamburger__nav .hamburger__sub-menu {
	color: #fff;
	display: none;
	margin-top: 16px;
}

.hamburger__nav .hamburger__sub-menu li {
	padding-left: 30px;
}

.hamburger__nav .hamburger__sub-menu li:not(:first-child) {
	margin-top: 4px;
}

.hamburger__nav .hamburger__sub-menu li a {
	display: block;
	font-size: 15px;
	letter-spacing: 0.05em;
	padding-left: 28px;
	position: relative;
	width: 100%;
}

.hamburger__nav .hamburger__sub-menu li a::before {
	background-color: #fff;
	border-radius: 50%;
	content: "";
	height: 4px;
	left: 10px;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 4px;
}

.hamburger__nav .hamburger__button {
	margin-top: 8px;
}

.hamburger__nav .contact {
	padding-left: 30px;
}

.hamburger__nav .contact p {
	color: #fff;
	font-size: 12px;
	letter-spacing: 0.025em;
	line-height: 1.5;
}

.hamburger__nav .contact p br {
	display: none;
}

.hamburger__nav .contact .hamburger__button {
	margin-bottom: 20px;
	margin-top: 8px;
}

.hamburger__nav .contact .hamburger__button a:hover p {
	color: #fff;
}

.hamburger__nav .contact .hamburger__button a p {
	color: #231815;
	font-size: 12px;
}

.hamburger__nav .contact .attention {
	font-size: 12px;
	padding-left: 10px;
	position: relative;
}

.hamburger__nav .contact .attention::before {
	background-color: #EF8200;
	border-radius: 50%;
	content: "";
	height: 4px;
	left: 0;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 4px;
}

.hamburger__nav .hamburger__bottom {
	gap: 60px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-top: 50px;
	padding-left: 50px;
}

.hamburger__nav .hamburger__bottom .logo img {
	height: auto;
	width: 136px;
}

.hamburger__nav .hamburger__bottom .logo .company-name {
	color: #fff;
	font-size: 13px;
	letter-spacing: 0.05em;
	margin-top: 8px;
}

.hamburger__nav .hamburger__bottom .philosophy {
	color: #fff;
	font-size: 24px;
	letter-spacing: 0.05em;
}

/* ハンバーガーメニューのアニメーション */

.js-hamburger .hamburger__icon {
	position: relative;
	z-index: 12;
}

.js-hamburger .hamburger__icon:hover .hamburger__bar {
	background-color: #EF8200;
}

.js-hamburger .hamburger__icon .hamburger__bar {
	background-color: #fff;
	position: absolute;
}

.js-hamburger .hamburger__icon .hamburger__bar:nth-child(1) {
	left: 0px;
	top: 50%;
	-webkit-transform: rotate(30deg);
	transform: rotate(30deg);
}

.js-hamburger .hamburger__icon .hamburger__bar:nth-child(2) {
	opacity: 0;
}

.js-hamburger .hamburger__icon .hamburger__bar:nth-child(3) {
	bottom: calc(50% - 1px);
	left: 0px;
	-webkit-transform: rotate(-30deg);
	transform: rotate(-30deg);
}

.js-hamburger-nav {
	display: block;
	right: 0;
}

.js-background-fixed {
	height: 100%;
	overflow: hidden;
	width: 100%;
}

/* インナーで使うクラス */

.inner {
	padding-left: 40px;
	padding-right: 40px;
}

.inner-right {
	padding-left: 40px;
}

/* トップページのメインビジュアルで使うクラスが書かれているファイル */

.mv__layout {
	overflow: hidden;
	position: relative;
	width: 100%;
	z-index: 0;
}

.mv__layout::before {
	background-color: rgba(35, 24, 21, .2);
	content: "";
	height: auto;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 1;
}

.mv__layout .swiper-slide-active .slide-img,
.mv__layout .swiper-slide-duplicate-active .slide-img,
.mv__layout .swiper-slide-prev .slide-img {
	-webkit-animation: zoomUp 10s linear 0s 1 normal both;
	animation: zoomUp 10s linear 0s 1 normal both;
}

.mv__layout img {
	-o-object-fit: cover;
	-o-object-position: center;
	display: block;
	height: 100%;
	max-height: 1050px;
	object-fit: cover;
	object-position: center;
	width: 100%;
}

.mv__layout h2 {
	color: #fff;
	font-size: 40px;
	font-weight: 700;
	left: 50px;
	letter-spacing: 0.05em;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	z-index: 2;
}

/* トップページの理念のところで使うクラスが書かれているファイル */

.philosophy {
	position: relative;
}

.philosophy__layout {
	margin: 120px auto calc(6.25vw + 100px);
	max-width: 1580px;
	width: 100%;
}

.philosophy__pictures {
	gap: 10.1333333333%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;
	height: 100%;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.philosophy__pictures .philosophy__picture img {
	-o-object-fit: cover;
	-o-object-position: center;
	border-radius: 5px;
	-webkit-box-shadow: 0 6px 20px rgba(35, 24, 21, .25);
	box-shadow: 0 6px 20px rgba(35, 24, 21, .25);
	object-fit: cover;
	object-position: center;
}

.philosophy__pictures .philosophy__picture:nth-child(1) {
	max-width: 280px;
	-webkit-box-ordinal-group: 2;
	-ms-flex-order: 1;
	order: 1;
	width: 18.9%;
}

.philosophy__pictures .philosophy__picture:nth-child(1) img {
	aspect-ratio: 148/100;
}

.philosophy__pictures .philosophy__picture:nth-child(2) {
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	max-width: 247px;
	-webkit-box-ordinal-group: 3;
	-ms-flex-order: 2;
	order: 2;
	width: 16.6%;
}

.philosophy__pictures .philosophy__picture:nth-child(2) img {
	aspect-ratio: 247/332;
}

.philosophy__pictures .philosophy__picture:nth-child(3) {
	margin-top: 45px;
	max-width: 244px;
	-webkit-box-ordinal-group: 4;
	-ms-flex-order: 3;
	order: 3;
	width: 16.4%;
}

.philosophy__pictures .philosophy__picture:nth-child(3) img {
	aspect-ratio: 244/181;
}

.philosophy__pictures .philosophy__picture:nth-child(4) {
	margin-top: 96px;
	max-width: 262px;
	-webkit-box-ordinal-group: 5;
	-ms-flex-order: 4;
	order: 4;
	width: 17.7%;
}

.philosophy__pictures .philosophy__picture:nth-child(4) img {
	aspect-ratio: 262/353;
}

.philosophy__slick {
	left: 0;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 100%;
	z-index: -1;
}

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

/* トップページの会社名のスライドで使うクラスが書かれているファイル */

.slider-company .slide {
	margin-left: 4px;
}

/* サンプラスについてページで使うクラスが書かれているファイル */

.about .about-background {
	position: relative;
}

.about .about-background .common-background {
	bottom: 0;
	height: calc(100% - 500px);
	left: 0;
	position: absolute;
	top: 500px;
	width: 100%;
	z-index: -1;
}

.about .about-top {
	overflow: hidden;
}

.about .about-top .about-top__layout {
	margin: 100px auto 0;
	max-width: 2020px;
}

.about .about-top .about-top__layout .about-top__heading {
	margin-left: auto;
	margin-right: auto;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.about .about-top .about-top__layout .about-top__heading .heading-ja {
	font-size: 14px;
	letter-spacing: 0.05em;
	line-height: 1.7142857143;
	margin-top: 18px;
	text-align: center;
}

.about .about-top .about-top__layout .about-top__background {
	background-image: linear-gradient(45deg, #EF8200, #F7B400 50%, #FFE100);
	height: 720px;
	margin: 130px calc(50% - 50vw) 0;
}

.about .about-top .about-top__layout .about-top__main {
	margin-top: -650px;
	padding-left: 50px;
}

.about .about-top .about-top__layout .about-top__main .about-top__profile {
	gap: 40px;
	background-color: #FFF;
	border-radius: 50px 0 0 50px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	padding: 90px 50px 90px 30px;
}

.about .about-top .about-top__layout .about-top__main .about-top__picture .heading {
	font-size: 30px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.72;
}

.about .about-top .about-top__layout .about-top__main .about-top__picture .heading .bp-767 {
	display: none;
}

.about .about-top .about-top__layout .about-top__main .about-top__picture .layout {
	margin-top: 32px;
	max-width: 400px;
	min-height: 500px;
	opacity: 1 !important;
	position: relative;
	width: 100%;
}

.about .about-top .about-top__layout .about-top__main .about-top__picture .layout.active .slide:nth-child(1) {
	-webkit-animation: fade_first 6s;
	animation: fade_first 6s;
	-webkit-animation-delay: 0s;
	animation-delay: 0s;
	opacity: 0;
	-webkit-transition: opacity 0.3s ease-in-out;
	transition: opacity 0.3s ease-in-out;
	z-index: 2;
}

.about .about-top .about-top__layout .about-top__main .about-top__picture .layout.active .slide:nth-child(2) { /* animation-delay: 3s; */
	-webkit-animation: fade_second 6s;
	animation: fade_second 6s;
	opacity: 1;
	-webkit-transition: opacity 0.3s ease-in-out;
	transition: opacity 0.3s ease-in-out;
	z-index: 1;
}

.about .about-top .about-top__layout .about-top__main .about-top__picture .slide {
	bottom: 0;
	height: 100%;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
}

.about .about-top .about-top__layout .about-top__main .about-top__picture .slide:nth-child(1) {
	opacity: 1;
}

.about .about-top .about-top__layout .about-top__main .about-top__picture .slide:nth-child(2) {
	opacity: 0;
}

.about .about-top .about-top__layout .about-top__main .about-top__picture .slide img {
	-o-object-fit: cover;
	-o-object-position: center;
	display: block;
	height: 100%;
	object-fit: cover;
	object-position: center;
	-webkit-transition: opacity 1s ease-in-out;
	transition: opacity 1s ease-in-out;
	width: 100%;
}

.about .about-top .about-top__layout .about-top__main .about-top__message .heading {
	display: none;
}

.about .about-top .about-top__layout .about-top__main .about-top__message .texts {
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.about .about-top .about-top__layout .about-top__main .about-top__message .texts p,
.about .about-top .about-top__layout .about-top__main .about-top__message .texts .post {
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.75;
}

.about .about-top .about-top__layout .about-top__main .about-top__message .texts .post {
	margin-top: 56px;
	min-width: -moz-fit-content;
	min-width: -webkit-fit-content;
	min-width: fit-content;
	text-align: right;
}

.about .about-top .about-top__layout .about-top__main .about-top__message .texts .mt-28 {
	margin-top: 28px;
}

.about .about-and-vision .about-and-vision__layout {
	margin-top: 120px;
	padding-bottom: 250px;
}

.about .about-and-vision .about-and-vision__layout .about-bar {
	background-color: #C9CACA;
	height: 1px;
	margin: 128px auto 48px;
	max-width: 1180px;
	width: 100%;
}

.about .about-mission .layout .message,
.about .about-vision .layout .message {
	font-size: 35px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.7142857143;
	margin-top: 50px;
	text-align: center;
}

.about .about-mission .layout .explanation,
.about .about-vision .layout .explanation {
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.75;
	margin-top: 40px;
	text-align: center;
}

.about .about-mission .heading .icon,
.about .about-vision .heading .icon,
.about .about-value .heading .icon,
.about .about-culture .heading .icon {
	display: block;
	height: 21px;
	margin-left: auto;
	margin-right: auto;
	width: 26px;
}

.about .about-mission .heading .heading-en,
.about .about-vision .heading .heading-en,
.about .about-value .heading .heading-en,
.about .about-culture .heading .heading-en {
	font-size: 50px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1;
	margin-top: 16px;
	text-align: center;
}

.about .about-mission .heading .heading-ja,
.about .about-vision .heading .heading-ja,
.about .about-value .heading .heading-ja,
.about .about-culture .heading .heading-ja {
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1;
	margin-top: 16px;
	text-align: center;
}

.about .about-value {
	position: relative;
}

.about .about-value::before {
	aspect-ratio: 1920/120;
	background-image: url(../images/common/arrangement-background-white.png);
	background-position: top center;
	background-size: cover;
	bottom: calc(100% - 1px);
	content: "";
	height: auto;
	left: 0;
	position: absolute;
	width: 100%;
}

.about .about-value .about-value__layout {
	padding-top: 100px;
}

.about .about-value .about-value__items {
	margin: 70px auto 0;
	max-width: 770px;
	width: 100%;
}

.about .about-value .about-value__items .about-value__item {
	gap: 80px;
	border-top: 1px solid #C9CACA;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding: 30px 20px 30px 30px;
}

.about .about-value .about-value__items .about-value__item:last-child {
	border-bottom: 1px solid #C9CACA;
}

.about .about-value .about-value__items .about-value__item .title {
	gap: 28px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	color: #231815;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 40px;
	font-weight: 500;
	min-width: 260px;
}

.about .about-value .about-value__items .about-value__item .title .num {
	color: #C9CACA;
	font-size: 20px;
	-webkit-transform: translateY(3px);
	transform: translateY(3px);
}

.about .about-value .about-value__items .about-value__item .text {
	font-size: 18px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.5555555556;
	-webkit-transform: translateY(3px);
	transform: translateY(3px);
}

.about .about-culture .about-culture__layout {
	margin-top: 160px;
}

.about .about-culture .about-culture__items {
	gap: 32px;
	display: grid;
	grid-template-columns: 1fr;
	margin: 100px auto 0;
	max-width: 400px;
	width: 100%;
}

.about .about-culture .about-culture__item {
	aspect-ratio: 1/1;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	height: 100%;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	padding: 16px;
	position: relative;
	width: 100%;
}

.about .about-culture .about-culture__item:nth-child(1) circle {
	stroke: #EF8200;
}

.about .about-culture .about-culture__item:nth-child(2) circle {
	stroke: #F7B400;
}

.about .about-culture .about-culture__item:nth-child(3) circle {
	stroke: #FFE100;
}

.about .about-culture .about-culture__item svg {
	bottom: 0;
	height: 100%;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	-webkit-transform: rotate(-90deg);
	transform: rotate(-90deg);
	width: 100%;
}

.about .about-culture .about-culture__item circle {
	cx: 50;
	cy: 50;
	r: 48;
	fill: none;
	stroke: #EF8200;
	stroke-width: 1;
	stroke-dasharray: 0 301.59;
}

.about .about-culture .about-culture__item .about-culture__title {
	font-size: 35px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1;
	text-align: center;
}

.about .about-culture .about-culture__item .about-culture__text {
	font-size: 16px;
	letter-spacing: 0.05em;
	line-height: 1.6;
	margin-top: 10px;
	text-align: center;
}

.about .about-culture .js-circle-animation circle {
	-webkit-animation: drawCircle 1.3s forwards;
	animation: drawCircle 1.3s forwards;
}

.about .about-company {
	background-color: #F5F5F5;
	position: relative;
}

.about .about-company::before {
	aspect-ratio: 1920/120;
	background-image: url(../images/common/arrangement-background-light-gray.png);
	background-position: top center;
	background-size: cover;
	bottom: 100%;
	content: "";
	height: auto;
	left: 0;
	position: absolute;
	width: 100%;
}

.about .about-company .about-company__layout {
	margin: 200px auto 0;
	max-width: 1480px;
	padding-bottom: 200px;
	padding-top: 30px;
	width: 100%;
}

.about .about-company .about-company__head {
	gap: 80px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: grid;
	grid-template-columns: 1fr;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin: 75px auto 0;
	max-width: 450px;
	width: 100%;
}

.about .about-company .about-company__head .about-company__logo img {
	margin: 0 auto;
	max-width: 270px;
	width: 100%;
}

.about .about-company .about-company__head .about-company__info dl {
	gap: 24px 80px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding: 20px 0;
	position: relative;
	width: 100%;
}

.about .about-company .about-company__head .about-company__info dl::before {
	background-color: #C9CACA;
	content: "";
	height: 100%;
	left: 110px;
	position: absolute;
	top: 0;
	width: 1px;
}

.about .about-company .about-company__head .about-company__info dl dt,
.about .about-company .about-company__head .about-company__info dl dd {
	font-size: 16px;
	letter-spacing: 0.05em;
	line-height: 1.5;
}

.about .about-company .about-company__head .about-company__info dl dt {
	font-weight: 700;
	min-width: 70px;
}

.about .about-company .about-company__head .about-company__info dl dd {
	font-weight: 500;
	width: calc(100% - 150px);
}

.about .about-company .about-company__strength {
	background-image: linear-gradient(135deg, #EF8200, #F7B400 50%, #FFF800);
	border-radius: 20px;
	margin-top: 164px;
	padding: 120px 20px;
	position: relative;
}

.about .about-company .about-company__strength .picture-01,
.about .about-company .about-company__strength .picture-02,
.about .about-company .about-company__strength .picture-03,
.about .about-company .about-company__strength .picture-04 {
	position: absolute;
}

.about .about-company .about-company__strength .picture-01 img,
.about .about-company .about-company__strength .picture-02 img,
.about .about-company .about-company__strength .picture-03 img,
.about .about-company .about-company__strength .picture-04 img {
	border-radius: 5px;
}

.about .about-company .about-company__strength .picture-01 {
	left: 10.1449275362%;
	top: -20px;
}

.about .about-company .about-company__strength .picture-01 img {
	max-width: 173px;
	min-width: 110px;
	width: 9.0104166667vw;
}

.about .about-company .about-company__strength .picture-02 {
	right: -20px;
	top: 16.3204747774%;
}

.about .about-company .about-company__strength .picture-02 img {
	max-width: 210px;
	min-width: 120px;
	width: 10.9375vw;
}

.about .about-company .about-company__strength .picture-03 {
	bottom: 8.9020771513%;
	left: 5.7971014493%;
}

.about .about-company .about-company__strength .picture-03 img {
	max-width: 287px;
	min-width: 150px;
	width: 14.9479166667vw;
}

.about .about-company .about-company__strength .picture-04 {
	bottom: -30px;
	right: 8.6956521739%;
}

.about .about-company .about-company__strength .picture-04 img {
	max-width: 239px;
	min-width: 140px;
	width: 12.4479166667vw;
}

.about .about-company .about-company__strength .layout {
	gap: 70px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.about .about-company .about-company__strength .layout .heading {
	color: #fff;
	text-align: center;
}

.about .about-company .about-company__strength .layout .heading .en {
	font-size: 70px;
	font-weight: 700;
	line-height: 1;
}

.about .about-company .about-company__strength .layout .heading .ja {
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
	margin-top: 28px;
}

.about .about-company .about-company__strength .layout .texts p {
	color: #fff;
	font-size: 35px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.7142857143;
	text-align: center;
}

.about .about-company .about-company__strength .layout .texts p br {
	display: none;
}

.about .about-company .about-company__strength .layout .button {
	margin-left: auto;
	margin-right: auto;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

/* 人材育成コンサルティングページで使うクラスが書かれているファイル */

.consulting .consulting-can__layout {
	margin: 120px auto 0;
	max-width: 1380px;
	width: 100%;
}

.consulting .consulting-can__hr {
	margin-bottom: 70px;
	margin-top: 84px;
}

.consulting .consulting-can__block {
	gap: 40px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.consulting .consulting-can__block .picture {
	width: 35.15625%;
}

.consulting .consulting-can__block .picture img {
	-o-object-fit: cover;
	-o-object-position: center;
	border-radius: 10px;
	height: auto;
	min-height: 240px;
	object-fit: cover;
	object-position: center;
	width: 100%;
}

.consulting .consulting-can__block .main {
	width: calc(64.84375% - 40px);
}

.consulting .consulting-can__block .main .title {
	font-size: 28px;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1.6666666667;
}

.consulting .consulting-can__block .main .texts {
	margin-top: 40px;
}

.consulting .consulting-can__block .main .texts p {
	font-size: 24px;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1.72;
}

.consulting .consulting-can__block .main .texts p span {
	color: #FF8200;
}

.consulting .consulting-can__support-details {
	margin-top: 80px;
}

.consulting .consulting-can__support-details .title {
	font-size: 20px;
	letter-spacing: 0.05em;
	margin: 0 auto;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.consulting .consulting-can__support-details .num-items {
	margin-top: 65px;
}

.flow {
	background-color: #EEEEEE;
}

.flow__layout {
	margin-top: 140px;
	padding-bottom: 200px;
	position: relative;
}

.flow__layout::before,
.flow__layout::after {
	aspect-ratio: 1920/120;
	background-position: top center;
	background-size: cover;
	content: "";
	height: auto;
	left: 0;
	position: absolute;
	width: 100%;
}

.flow__layout::before {
	background-image: url(../images/common/arrangement-background-gray.png);
	bottom: 100%;
}

.flow__layout::after {
	background-image: url(../images/common/arrangement-background-white.png);
	bottom: 0;
}

/* お問い合わせページで使うクラスが書かれているファイル */

.page-contact .page-contact__layout {
	margin: 120px auto 0;
	max-width: 1540px;
	width: 100%;
}

.page-contact .page-contact__head {
	margin-top: 150px;
}

.page-contact .page-contact__head .icon {
	height: auto;
	margin: 0 auto;
	width: 35px;
}

.page-contact .page-contact__head .title {
	margin-top: 32px;
	text-align: center;
}

.page-contact .page-contact__head .title .en {
	font-size: 40px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1;
}

.page-contact .page-contact__head .title .ja {
	font-size: 25px;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1.72;
	margin-top: 40px;
}

.page-contact .page-contact__head .title .ja br {
	display: none;
}

.page-contact .page-contact__head .texts {
	margin-top: 60px;
	text-align: center;
}

.page-contact .page-contact__head .texts p {
	font-size: 16px;
	letter-spacing: 0.025em;
	line-height: 1.75;
}

.page-contact .page-contact__head .texts br {
	display: block;
}

.page-contact .page-contact__form7 {
	margin: 60px auto 0;
	max-width: 640px;
	width: 100%;
}

/* 教育事業ページで使うクラスが書かれているファイル */

.education .education-curriculum__layout {
	margin: 130px auto 0;
	max-width: 1180px;
	padding-bottom: 190px;
	width: 100%;
}

.education .education-curriculum__head {
	gap: 24px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin: 80px auto 0;
	max-width: 780px;
	width: 100%;
}

.education .education-curriculum__head .infos {
	border-radius: 10px;
	-webkit-box-shadow: 0 6px 13px rgba(30, 30, 30, .17);
	box-shadow: 0 6px 13px rgba(30, 30, 30, .17);
	max-width: 418px;
	padding: 20px 30px;
	width: 100%;
}

.education .education-curriculum__head .infos .info {
	gap: 28px;
	display: grid;
	grid-template-columns: 48px 1fr;
	padding: 8px 0;
}

.education .education-curriculum__head .infos .info:not(:first-child) {
	border-top: 1px solid #C9CACA;
}

.education .education-curriculum__head .infos .info .title {
	color: #EF8200;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1.7142857143;
}

.education .education-curriculum__head .infos .info .text {
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.5;
}

.education .education-curriculum__head .infos .info .text span {
	display: inline-block;
	font-size: 12px;
	padding-left: 4px;
}

.education .education-curriculum__head .schedules {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	width: calc(100% - 442px);
}

.education .education-curriculum__head .schedules .schedule {
	gap: 18px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	border-radius: 10px;
	-webkit-box-shadow: 0 6px 13px rgba(30, 30, 30, .17);
	box-shadow: 0 6px 13px rgba(30, 30, 30, .17);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding: 20px 24px;
}

.education .education-curriculum__head .schedules .schedule:nth-child(1) .circle {
	background-color: #EF8200;
}

.education .education-curriculum__head .schedules .schedule:nth-child(2) .circle {
	background-color: #F7B400;
}

.education .education-curriculum__head .schedules .schedule .time {
	font-size: 14px;
	font-weight: 500;
}

.education .education-curriculum__head .schedules .schedule .circle {
	border-radius: 50%;
	height: 12px;
	width: 12px;
}

.education .education-curriculum__head .schedules .schedule .text {
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1.75;
}

.education .education-curriculum__items {
	margin-top: 90px;
}

.education .education-curriculum__items .education-curriculum__item {
	border-top: 1px solid #C9CACA;
	padding: 60px 3.5%;
	position: relative;
}

.education .education-curriculum__items .education-curriculum__item:nth-child(1) .num {
	color: #EF8200;
}

.education .education-curriculum__items .education-curriculum__item:nth-child(2) .num {
	color: #FFB400;
}

.education .education-curriculum__items .education-curriculum__item:nth-child(3) .num {
	color: #FFE100;
}

.education .education-curriculum__items .education-curriculum__item::before,
.education .education-curriculum__items .education-curriculum__item::after {
	background-color: #EF8200;
	content: "";
	height: 1px;
	left: 0;
	position: absolute;
	width: 130px;
}

.education .education-curriculum__items .education-curriculum__item::before {
	top: -1px;
}

.education .education-curriculum__items .education-curriculum__item::after {
	bottom: -1px;
	display: none;
}

.education .education-curriculum__items .education-curriculum__item:last-child {
	border-bottom: 1px solid #C9CACA;
}

.education .education-curriculum__items .education-curriculum__item:last-child::after {
	display: block;
}

.education .education-curriculum__items .education-curriculum__item .layout {
	gap: 32px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: grid;
	grid-template-columns: 1fr;
}

.education .education-curriculum__items .education-curriculum__item .heading .ja {
	gap: 24px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.education .education-curriculum__items .education-curriculum__item .heading .ja h2 {
	font-size: 30px;
	font-weight: 700;
	line-height: 1;
}

.education .education-curriculum__items .education-curriculum__item .heading .ja .num {
	font-size: 40px;
	font-weight: 400;
	line-height: 1;
}

.education .education-curriculum__items .education-curriculum__item .heading .en {
	color: #BABABA;
	font-size: 12px;
	letter-spacing: 0.05em;
	margin-top: 8px;
}

.education .education-curriculum__items .education-curriculum__item .main .title {
	font-size: 24px;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1.7916666667;
}

.education .education-curriculum__items .education-curriculum__item .main .texts {
	margin-top: 20px;
	padding-left: 8px;
}

.education .education-curriculum__items .education-curriculum__item .main .texts p {
	font-size: 16px;
	letter-spacing: 0.05em;
	line-height: 1.5;
	padding-left: 18px;
	position: relative;
}

.education .education-curriculum__items .education-curriculum__item .main .texts p::before {
	background-color: #EF8200;
	border-radius: 50%;
	content: "";
	height: 16px;
	left: 0;
	position: absolute;
	top: 5px;
	width: 16px;
}

.education .education-curriculum__items .education-curriculum__item .main .texts p:not(:first-child) {
	margin-top: 20px;
}

.education .education-curriculum__items .education-curriculum__item .main .infos {
	border-radius: 10px;
	-webkit-box-shadow: 0 6px 13px rgba(30, 30, 30, .17);
	box-shadow: 0 6px 13px rgba(30, 30, 30, .17);
	margin-top: 32px;
	max-width: 450px;
	padding: 20px 30px;
	width: 100%;
}

.education .education-curriculum__items .education-curriculum__item .main .infos .info {
	gap: 28px;
	display: grid;
	grid-template-columns: 48px 1fr;
	padding: 8px 0;
}

.education .education-curriculum__items .education-curriculum__item .main .infos .info:not(:first-child) {
	border-top: 1px solid #C9CACA;
}

.education .education-curriculum__items .education-curriculum__item .main .infos .info .title {
	color: #EF8200;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1.7142857143;
}

.education .education-curriculum__items .education-curriculum__item .main .infos .info .text {
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.5;
}

.education .education-curriculum__items .education-curriculum__item .main .infos .info .text span {
	display: inline-block;
	font-size: 12px;
	padding-left: 4px;
}

.education .education-reason__layout {
	background-image: url(../images/education/education-reason-background-sp.png);
	background-position: 40% center;
	background-size: cover;
	margin-top: 100px;
	overflow: hidden;
	position: relative;
}

.education .education-reason__layout::before {
	background: -webkit-repeating-linear-gradient(-90deg, #FFFFFF 0%, #FBFBFB 51%, #F1F1F1 93%, #EFEFEF 100%);
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: -1;
}

.education .education-reason__main {
	margin: 0 auto;
	max-width: 1920px;
	padding-bottom: 170px;
	padding-top: 200px;
	width: 100%;
}

.education .education-reason__main .education-reason__pictures-head .education-reason__picture:nth-child(1) img {
	max-width: 400px;
	width: 70%;
}

.education .education-reason__main .education-reason__pictures-head .education-reason__picture:nth-child(2) {
	margin-right: -40px;
	margin-top: 80px;
}

.education .education-reason__main .education-reason__pictures-head .education-reason__picture:nth-child(2) img {
	margin-left: auto;
	max-width: 468px;
	width: 82%;
}

.education .education-reason__main .education-reason__heading {
	margin-top: 90px;
}

.education .education-reason__main .education-reason__pictures-bottom {
	margin-top: 90px;
}

.education .education-reason__main .education-reason__pictures-bottom .education-reason__picture:nth-child(1) img {
	margin: 0 auto;
	max-width: 388px;
	width: 68%;
}

.education .education-reason__main .education-reason__pictures-bottom .education-reason__picture:nth-child(2) {
	margin-left: -40px;
	margin-top: 80px;
}

.education .education-reason__main .education-reason__pictures-bottom .education-reason__picture:nth-child(2) img {
	max-width: 570px;
	width: 100%;
}

.education .education-reason__texts {
	margin-top: 110px;
}

.education .education-reason__texts p {
	font-size: 20px;
	font-weight: 500;
	line-height: 1.75;
	text-align: center;
}

.education .education-reason__texts .mt {
	margin-top: 28px;
}

/* セールスプロモーションページで使うクラスが書かれているファイル */

.sales-promotion .features {
	background-color: #EFEFEF;
	position: relative;
}

.sales-promotion .features::before {
	aspect-ratio: 1920/120;
	background-image: url(../images/common/arrangement-background-gray.png);
	background-position: top center;
	background-size: cover;
	bottom: 100%;
	content: "";
	height: auto;
	left: 0;
	position: absolute;
	width: 100%;
}

.sales-promotion .features__layout {
	margin: 200px auto 0;
	max-width: 1180px;
	padding-bottom: 100px;
	width: 100%;
}

.sales-promotion .features__items {
	gap: 24px;
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	margin-left: auto;
	margin-right: auto;
	margin-top: 70px;
	max-width: 900px;
}

.sales-promotion .features__item {
	background-color: #fff;
	border-radius: 10px;
	padding: 40px 20px 50px;
}

.sales-promotion .features__item .heading {
	color: #FF8200;
	font-size: 24px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.7857142857;
	text-align: center;
}

.sales-promotion .features__item .explanation {
	font-size: 16px;
	letter-spacing: 0.05em;
	line-height: 1.75;
	margin-top: 24px;
	text-align: center;
}

.sales-promotion .sales-can__layout {
	margin: 100px auto 0;
	max-width: 1380px;
	width: 100%;
}

.sales-promotion .sales-can__explanation {
	font-size: 20px;
	line-height: 1.75;
	margin-top: 80px;
	text-align: center;
}

.sales-promotion .sales-can__explanation br {
	display: block;
}

.sales-promotion .sales-can__bar {
	background-color: #C9CACA;
	height: 1px;
	margin-top: 82px;
	position: relative;
	width: 100%;
}

.sales-promotion .sales-can__bar::before {
	background-color: #F7B400;
	content: "";
	height: 1px;
	left: 0;
	position: absolute;
	top: 0;
	width: 150px;
}

.sales-promotion .sales-can__items {
	margin-left: auto;
	margin-right: auto;
	max-width: 1080px;
	width: 100%;
}

.sales-promotion .sales-can__items .sales-can__item {
	gap: 40px;
	border-bottom: 1px solid #C9CACA;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	padding: 50px 20px;
	position: relative;
}

.sales-promotion .sales-can__items .sales-can__item::before {
	background-color: #F7B400;
	bottom: -1px;
	content: "";
	height: 1px;
	left: 0;
	position: absolute;
	width: 132px;
}

.sales-promotion .sales-can__items .sales-can__item:nth-child(1) .sales-can__picture,
.sales-promotion .sales-can__items .sales-can__item:nth-child(1) .sales-can__main {
	width: 100%;
}

.sales-promotion .sales-can__items .sales-can__item:nth-child(2) .sales-can__picture,
.sales-promotion .sales-can__items .sales-can__item:nth-child(2) .sales-can__main {
	width: 100%;
}

.sales-promotion .sales-can__items .sales-can__item:nth-child(3) .sales-can__picture,
.sales-promotion .sales-can__items .sales-can__item:nth-child(3) .sales-can__main {
	width: 100%;
}

.sales-promotion .sales-can__items .sales-can__item:nth-child(4) .sales-can__picture,
.sales-promotion .sales-can__items .sales-can__item:nth-child(4) .sales-can__main {
	width: 100%;
}

.sales-promotion .sales-can__items .sales-can__item .sales-can__picture img {
	-o-object-fit: cover;
	-o-object-position: center;
	border-radius: 10px;
	margin: 0 auto;
	max-width: 500px;
	object-fit: cover;
	object-position: center;
	width: 100%;
}

.sales-promotion .sales-can__items .sales-can__item .sales-can__main {
	text-align: center;
}

.sales-promotion .sales-can__items .sales-can__item .sales-can__main .title {
	font-size: 30px;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1.6666666667;
}

.sales-promotion .sales-can__items .sales-can__item .sales-can__main .texts {
	margin-top: 32px;
}

.sales-promotion .sales-can__items .sales-can__item .sales-can__main .texts p {
	font-size: 16px;
	letter-spacing: 0.05em;
	line-height: 1.75;
}

.sales-promotion .sales-can__items .sales-can__item .sales-can__main .example {
	background-color: #EFEFEF;
	border-radius: 20px;
	font-size: 14px;
	letter-spacing: 0.05em;
	line-height: 1.4285714286;
	margin-top: 32px;
	padding: 5px 15px;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.sales-promotion .promotion__layout {
	margin-top: 140px;
}

.sales-promotion .comparison__layout {
	background-color: #EEEEEE;
	margin: 225px auto 0;
	padding-bottom: 200px;
	padding-top: 40px;
	position: relative;
}

.sales-promotion .comparison__layout::before,
.sales-promotion .comparison__layout::after {
	aspect-ratio: 1920/120;
	background-position: top center;
	background-size: cover;
	content: "";
	height: auto;
	left: 0;
	position: absolute;
	width: 100%;
}

.sales-promotion .comparison__layout::before {
	background-image: url(../images/common/arrangement-background-gray.png);
	bottom: 100%;
}

.sales-promotion .comparison__layout::after {
	background-image: url(../images/common/arrangement-background-white.png);
	bottom: 0;
}

.sales-promotion .comparison__picture {
	margin: 70px auto 0;
	max-width: 1080px;
	overflow-x: hidden;
	padding-bottom: 32px;
}

.sales-promotion .comparison__picture::-webkit-scrollbar {
	height: 6px;
}

.sales-promotion .comparison__picture::-webkit-scrollbar-thumb {
	background-color: #C9CACA;
	border-radius: 3px;
}

.sales-promotion .comparison__picture img {
	height: auto;
	min-width: 1080px;
}

/* サンプラスの強みページで使うクラスが書かれているファイル */

.strengths .big-picture__layout {
	margin-left: auto;
	margin-right: auto;
	margin-top: 50px;
	max-width: 1300px;
	width: 100%;
}

.strengths .big-picture__message-20 {
	font-size: 20px;
	line-height: 1.7;
	margin-top: 80px;
	text-align: center;
}

.strengths .big-picture__message-25 {
	font-size: 25px;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1.68;
	margin-top: 60px;
	text-align: center;
}

.strengths .big-picture__message-25 span {
	color: #EF8200;
}

.strengths .big-picture__graph {
	margin: 50px auto 0;
	max-width: 1070px;
	overflow-x: auto;
	padding-bottom: 16px;
	width: 100%;
}

.strengths .big-picture__graph::-webkit-scrollbar {
	height: 6px;
}

.strengths .big-picture__graph::-webkit-scrollbar-thumb {
	background-color: #C9CACA;
	border-radius: 3px;
}

.strengths .big-picture__graph img {
	height: auto;
	min-width: 830px;
	width: 100%;
}

.strengths .big-picture__items {
	margin-top: 70px;
}

.strengths .big-picture__item {
	border-top: 1px solid #C9CACA;
	padding: 50px 30px 60px;
	position: relative;
}

.strengths .big-picture__item::before {
	background-color: #F7B400;
	content: "";
	height: 1px;
	left: 0;
	position: absolute;
	top: -1px;
	width: 150px;
}

.strengths .big-picture__item:last-child {
	border-bottom: 1px solid #C9CACA;
}

.strengths .big-picture__item:last-child::after {
	background-color: #F7B400;
	bottom: -1px;
	content: "";
	height: 1px;
	left: 0;
	position: absolute;
	width: 150px;
}

.strengths .big-picture__item .big-picture__heading .heading-ja {
	gap: 12px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 30px;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1.6666666667;
}

.strengths .big-picture__item .big-picture__heading .heading-ja img {
	height: 28px;
	width: auto;
}

.strengths .big-picture__item .big-picture__heading .heading-ja .bp-600 {
	display: none;
}

.strengths .big-picture__item .big-picture__heading .heading-en {
	color: #BABABA;
	font-size: 12px;
	letter-spacing: 0.05em;
	line-height: 1.6666666667;
	margin-top: 3px;
}

.strengths .big-picture__item .big-picture__main {
	gap: 40px;
	display: grid;
	grid-template-columns: 1fr;
	margin-top: 32px;
}

.strengths .big-picture__item .big-picture__main .picture img {
	-o-object-fit: cover;
	-o-object-position: center;
	border-radius: 10px;
	max-height: 300px;
	min-height: 210px;
	object-fit: cover;
	object-position: center;
}

.strengths .big-picture__item .big-picture__main .main .title {
	font-size: 25px;
	line-height: 1.6;
}

.strengths .big-picture__item .big-picture__main .main .title .orange {
	color: #EF8200;
}

.strengths .big-picture__item .big-picture__main .main .title .yellow {
	color: #F7B400;
}

.strengths .big-picture__item .big-picture__main .main .flex {
	gap: 40px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: grid;
	grid-template-columns: 1fr;
	margin-top: 40px;
}

.strengths .big-picture__item .big-picture__main .main .flex .texts p {
	font-size: 16px;
	line-height: 1.5;
	padding-left: 18px;
	position: relative;
}

.strengths .big-picture__item .big-picture__main .main .flex .texts p::before {
	background-color: #231815;
	border-radius: 50%;
	content: "";
	height: 16px;
	left: 0;
	position: absolute;
	top: 4px;
	width: 16px;
}

.strengths .big-picture__service {
	margin-top: 80px;
}

.strengths .big-picture__service .heading {
	font-size: 30px;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1.6666666667;
	text-align: center;
}

.strengths .big-picture__service .items {
	gap: 60px;
	display: grid;
	grid-template-columns: 1fr;
	margin-left: auto;
	margin-right: auto;
	margin-top: 50px;
	max-width: 800px;
	width: 100%;
}

.strengths .big-picture__service .items .item .head {
	gap: 16px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	border-bottom: 1px solid #C9CACA;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding-bottom: 12px;
	position: relative;
}

.strengths .big-picture__service .items .item .head::before {
	background-color: #EF8200;
	bottom: -1px;
	content: "";
	height: 1px;
	left: 0;
	position: absolute;
	width: 40px;
}

.strengths .big-picture__service .items .item .head h4 {
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1.8;
	width: calc(100% - 60px);
}

.strengths .big-picture__service .items .item .head .link {
	max-width: 44px;
}

.strengths .big-picture__service .items .item .texts p {
	font-size: 16px;
	line-height: 1.5;
	margin-top: 12px;
	padding-left: 20px;
	position: relative;
}

.strengths .big-picture__service .items .item .texts p::before {
	background-color: #DCDDDD;
	border-radius: 50%;
	content: "";
	height: 16px;
	left: 0;
	position: absolute;
	top: 4px;
	width: 16px;
}

.strengths .thinking__layout {
	margin-bottom: 200px;
	position: relative;
}

.strengths .thinking__layout::before {
	aspect-ratio: 1920/120;
	background-image: url(../images/common/arrangement-background-white.png);
	background-position: top center;
	background-size: cover;
	bottom: 100%;
	content: "";
	height: auto;
	left: 0;
	position: absolute;
	width: 100%;
}

.strengths .thinking__slick {
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.strengths .thinking__title {
	font-size: 45px;
	letter-spacing: 0.05em;
	line-height: 1.7333333333;
	margin-top: 110px;
	text-align: center;
}

.strengths .thinking__texts {
	margin-top: 90px;
	text-align: center;
}

.strengths .thinking__texts p {
	font-size: 16px;
	letter-spacing: 0.05em;
	line-height: 1.75;
}

.strengths .thinking__texts .mt {
	margin-top: 28px;
}

/* で使うクラス */

/* 横並びのセクションで使うクラスが書かれているファイル */

.templates-a {
	gap: 150px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin: 150px 0;
}

.template-a__layout {
	gap: 40px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	-ms-flex-direction: column-reverse;
	flex-direction: column-reverse;
	margin-left: auto;
	margin-right: auto;
	max-width: 1000px;
}

.template-a__picture {
	width: 100%;
}

.template-a__picture img {
	-o-object-fit: cover;
	-o-object-position: center;
	border-radius: 10px;
	max-height: 500px;
	object-fit: cover;
	object-position: center;
	width: 100%;
}

.template-a__main .headings-en,
.template-a__main .texts {
	margin-top: 20px;
}

.template-a__main .texts p {
	font-size: 16px;
	letter-spacing: 0.05em;
	line-height: 1.75;
}

.template-a__main .button {
	margin-top: 36px;
}

.template-a--reverse .template-a__layout .template-a__picture img {
	border-radius: 10px 0 0 10px;
}

.template-a--reverse .template-a__layout .template-a__main {
	padding-right: 40px;
}

/* こんなお悩みありませんか？で使うクラスが書かれているファイル */

.template-concerns .mt-110 {
	margin-top: 110px;
}

.template-concerns__heading h2 br {
	display: none;
}

.template-concerns__blocks {
	gap: 24px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin: 40px auto 0;
	max-width: 700px;
	width: 100%;
}

.template-concerns__block {
	gap: 14px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background-color: #F5F5F5;
	border-radius: 10px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding: 25px 4%;
	width: 100%;
}

.template-concerns__block .template-concerns__check img {
	display: block;
	height: 44px;
	width: 44px;
}

.template-concerns__block .template-concerns__text {
	font-size: 17px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.5;
	width: calc(100% - 58px);
}

.template-concerns__block .template-concerns__text .bp-1280 {
	display: none;
}

.template-concerns__block .template-concerns__text .bp-768 {
	display: none;
}

.template-concerns__block .template-concerns__text .bp-767 {
	display: none;
}

.template-concerns__block .template-concerns__text .bp-600-not {
	display: block;
}

.template-concerns__block .template-concerns__text .bp-1024-600-not {
	display: block;
}

.template-concerns__message {
	margin-top: 50px;
}

.template-concerns__message p {
	font-size: 25px;
	font-weight: 700;
	line-height: 1.68;
	text-align: center;
}

.template-concerns__message p span {
	color: #EF8200;
}

.template-concerns__message .bp-600 {
	display: none;
}

/* CTAセクションで使うクラスが書かれているファイル */

.template-cta--mt-160 {
	margin-top: 120px;
}

.template-cta--mt-120 {
	margin-top: 100px;
}

.template-cta__layout img {
	-o-object-fit: cover;
	-o-object-position: center;
	height: auto;
	max-height: 700px;
	object-fit: cover;
	object-position: center;
	width: 100%;
}

/* Contact Form 7 で使うクラスが書かれているファイル */

.template-form7__items {
	gap: 5px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.template-form7__title {
	font-size: 16px;
	letter-spacing: 0.025em;
	line-height: 1.5;
}

.template-form7__required {
	display: inline-block;
	position: relative;
}

.template-form7__required::after {
	background: #231815;
	border-radius: 5px;
	color: #fff;
	content: "必須";
	font-size: 12px;
	height: 22px;
	line-height: 20px;
	position: absolute;
	right: -55px;
	text-align: center;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 46px;
}

.template-form7__message {
	position: relative;
}

.template-form7__message::before {
	content: "個人のお問い合わせの場合は「なし」とご入力ください";
	font-size: 12px;
	left: calc(100% + 64px);
	line-height: 1.4;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	white-space: nowrap;
}

.template-form7__textarea {
	padding-bottom: 30px;
	position: relative;
}

.template-form7__textarea .wpcf7-form-control-wrap {
	display: block;
	height: 100%;
	max-height: 192px;
	position: static;
}

.template-form7__textarea .wpcf7-not-valid-tip {
	bottom: 0;
	position: absolute;
	right: 0;
}

.template-form7__textarea textarea {
	border: 1px solid #DBDBDB;
	border-radius: 5px;
	color: #231815;
	height: 100%;
	margin-top: 12px;
	max-height: 180px;
	padding: 16px;
	position: relative;
	resize: none;
	width: 100%;
}

.template-form7__textarea textarea::-webkit-scrollbar {
	margin-right: 8px;
	width: 5px;
}

.template-form7__textarea textarea::-webkit-scrollbar-thumb {
	background-color: #9E9E9E;
	border-radius: 3px;
}

.template-form7__privacy-policy {
	border: 1px solid #DBDBDB;
	border-radius: 5px;
	color: #231815;
	font-size: 16px;
	height: 100%;
	margin-top: 12px;
	max-height: 180px;
	overflow-y: auto;
	padding: 16px;
	width: 100%;
}

.template-form7__privacy-policy::-webkit-scrollbar {
	margin-right: 8px;
	width: 5px;
}

.template-form7__privacy-policy::-webkit-scrollbar-thumb {
	background-color: #9E9E9E;
	border-radius: 3px;
}

.template-form7__privacy-policy p {
	font-size: 16px;
}

.template-form7__privacy-policy .center {
	text-align: center;
}

.template-form7__privacy-policy .mt {
	margin-top: 24px;
}

.template-form7__privacy-policy .mt-mini {
	margin-top: 12px;
}

.template-form7__text,
.template-form7__select {
	margin-top: 12px;
	padding-bottom: 30px;
	position: relative;
}

.template-form7__text .text-form,
.template-form7__text .select-box,
.template-form7__text .email-form,
.template-form7__text .tel-form,
.template-form7__select .text-form,
.template-form7__select .select-box,
.template-form7__select .email-form,
.template-form7__select .tel-form {
	border: 1px solid #DBDBDB;
	border-radius: 5px;
	color: #231815;
	font-size: 16px;
	height: 36px;
	padding-left: 12px;
	padding-right: 12px;
	width: 100%;
}

.template-form7__text .wpcf7-form-control-wrap,
.template-form7__select .wpcf7-form-control-wrap {
	display: block;
	height: 100%;
	position: static;
}

.template-form7__select {
	position: relative;
}

.template-form7__select::before,
.template-form7__select::after {
	background-color: #231815;
	content: "";
	height: 9px;
	position: absolute;
	right: 14px;
	width: 9px;
}

.template-form7__select::before {
	-webkit-clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
	clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
	top: 6px;
}

.template-form7__select::after {
	-webkit-clip-path: polygon(0 0, 50% 100%, 100% 0);
	bottom: 35px;
	clip-path: polygon(0 0, 50% 100%, 100% 0);
}

.template-form7__acceptance {
	gap: 8px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-top: 12px;
	padding-left: 54px;
	position: relative;
}

.template-form7__acceptance::after {
	background: #231815;
	border-radius: 5px;
	color: #fff;
	content: "必須";
	font-size: 12px;
	height: 22px;
	left: 0px;
	line-height: 20px;
	position: absolute;
	text-align: center;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 46px;
}

.template-form7__acceptance .wpcf7-form-control {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-top: 2px;
}

.template-form7__acceptance .wpcf7-list-item {
	margin: 0;
}

.template-form7__acceptance input[type=checkbox] {
	border: 1px solid #231815;
	display: block;
	height: 16px;
	margin: 0;
	position: relative;
	width: 16px;
}

.template-form7__acceptance input[type=checkbox]::before {
	border-bottom: 2px solid transparent;
	border-left: 2px solid transparent;
	content: "";
	display: block;
	height: 7px;
	left: 1px;
	position: absolute;
	top: 2px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	width: 12px;
	z-index: 1;
}

.template-form7__acceptance input[type=checkbox]:checked::before {
	border-color: #231815;
}

.template-form7__acceptance p {
	font-size: 16px;
}

.template-form7__acceptance a {
	text-decoration: underline;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}

.template-form7__acceptance a:hover {
	color: #231815;
}

.template-form7__button {
	margin: 50px auto 0;
	max-width: 360px;
	position: relative;
	width: 100%;
}

.template-form7__button::before {
	background-color: #fff;
	border-radius: 50%;
	content: "";
	height: 8px;
	position: absolute;
	right: 25px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 8px;
}

.template-form7__button:hover::before {
	background-color: #231815;
	-webkit-transform: translateY(-50%) scale(2);
	transform: translateY(-50%) scale(2);
}

.template-form7__button:hover .wpcf7-submit {
	background-color: #fff;
	color: #231815;
}

.template-form7__button .wpcf7-spinner {
	display: none;
}

.template-form7__button .wpcf7-submit {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background-color: #231815;
	border: 1px solid #231815;
	border-radius: 30px;
	color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 16px;
	height: 60px;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	letter-spacing: 0.05em;
	padding: 0 30px;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	width: 100%;
}

.template-form7__button .wpcf7-previous {
	background-color: gray;
	border: 1px solid gray;
	color: #fff;
	display: block !important;
}

.template-form7__button .wpcf7-previous:hover {
	background-color: #fff;
	border: 1px solid gray;
	color: gray;
}

.template-form7__button:has(input:disabled):hover::before {
	background-color: #fff;
	-webkit-transform: translateY(-50%) scale(1);
	transform: translateY(-50%) scale(1);
}

.template-form7__button:has(input:disabled):hover .wpcf7-submit {
	background-color: gray;
	border-color: gray;
	color: #fff;
}

.wpcf7-submit:disabled {
	background-color: gray;
	border-color: gray;
}

/* Contact form 7 の独自のクラスの上書き */

.wpcf7-not-valid-tip {
	bottom: 0;
	font-size: 16px;
	line-height: 1.5;
	position: absolute;
	right: 0;
	text-align: right;
}

/* プロフィールで使うクラスが書かれているファイル */

.template-profile {
	position: relative;
}

.template-profile .profile__slick {
	bottom: 0;
	left: 0;
	position: absolute;
}

.template-profile .profile__layout {
	margin-left: auto;
	margin-right: auto;
	max-width: 1180px;
	padding-bottom: 140px;
	width: 100%;
}

.template-profile .profile__main {
	gap: 40px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background-color: #fff;
	border-radius: 20px;
	-webkit-box-shadow: 0 14px 29px rgba(24, 24, 24, .17);
	box-shadow: 0 14px 29px rgba(24, 24, 24, .17);
	display: grid;
	grid-template-columns: 180px 1fr;
	margin: 80px auto 0;
	padding: 32px 9% 50px;
}

.template-profile .profile__main .profile__picture {
	max-width: 180px;
	width: 100%;
}

.template-profile .profile__main .profile__info .name {
	font-size: 22px;
	font-weight: 500;
	letter-spacing: 0.025em;
	line-height: 1;
}

.template-profile .profile__main .profile__info .name span {
	color: #FFB400;
	display: inline-block;
	font-size: 14px;
	line-height: 1;
	margin-left: 24px;
}

.template-profile .profile__main .profile__info .post,
.template-profile .profile__main .profile__info .texts p {
	font-size: 14px;
	letter-spacing: 0.05em;
	line-height: 1.7142857143;
}

.template-profile .profile__main .profile__info .post {
	font-weight: 700;
	margin-top: 20px;
}

.template-profile .profile__main .profile__info .texts {
	margin-top: 20px;
}

.template-profile .profile__main .profile__info .texts .mt-24 {
	margin-top: 24px;
}

/* Q&Aのアコーディオンで使うクラスが書かれているファイル */

.template-qa .template-qa__layout {
	margin: 100px auto 200px;
	max-width: 1180px;
}

/* ページ共通のサンプラスが選ばれている理由で使うクラスが書かれているファイル */

.template-reason .common-background {
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: -1;
}

.template-reason .mt-220 {
	margin-top: 150px;
}

.template-reason .mt-120 {
	margin-top: 100px;
}

.template-reason .mt-100 {
	margin-top: 85px;
}

.template-reason .mt-60 {
	margin-top: 60px;
}

.template-reason .mt-50 {
	margin-top: 50px;
}

.template-reason .template-reason__layout {
	margin-left: auto;
	margin-right: auto;
	max-width: 1480px;
	padding-bottom: 180px;
	padding-top: 90px;
	width: 100%;
}

.template-reason .template-reason__title {
	font-size: 35px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.7142857143;
	margin-left: auto;
	margin-right: auto;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.template-reason .template-reason__title .bp-1280-not {
	display: block;
}

.template-reason .template-reason__texts {
	text-align: center;
}

.template-reason .template-reason__texts p {
	font-size: 16px;
	letter-spacing: 0.05em;
	line-height: 1.75;
}

.template-reason .template-reason__items {
	gap: 30px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.template-reason .template-reason__item {
	background-color: #fff;
	background-color: #fff;
	border-radius: 10px;
	padding: 36px 20px 60px;
	text-align: center;
}

.template-reason .template-reason__item:nth-child(1) .num,
.template-reason .template-reason__item:nth-child(4) .num {
	color: #EF8200;
}

.template-reason .template-reason__item:nth-child(2) .num,
.template-reason .template-reason__item:nth-child(5) .num {
	color: #F7B400;
}

.template-reason .template-reason__item:nth-child(3) .num {
	color: #FFE100;
}

.template-reason .template-reason__item .num {
	font-size: 55px;
}

.template-reason .template-reason__item .title {
	font-size: 20px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.4285714286;
	margin-top: 20px;
}

.template-reason .template-reason__item .texts {
	margin-top: 30px;
	text-align: center;
}

.template-reason .template-reason__item .texts p {
	font-size: 16px;
	letter-spacing: 0.05em;
	line-height: 1.75;
}

.template-reason--arch {
	position: relative;
}

.template-reason--arch .arch-top,
.template-reason--arch .arch-bottom {
	aspect-ratio: 1920/120;
	height: auto;
	left: 0;
	position: absolute;
	width: 100%;
}

.template-reason--arch .arch-top img,
.template-reason--arch .arch-bottom img {
	-o-object-fit: cover;
	-o-object-position: top center;
	object-fit: cover;
	object-position: top center;
}

.template-reason--arch .arch-top {
	top: 0;
}

.template-reason--arch .arch-bottom {
	bottom: -1px;
}

.template-reason--top {
	position: relative;
}

.template-reason--top .arch-top {
	aspect-ratio: 1920/120;
	height: auto;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
}

.template-reason--top .arch-top img {
	-o-object-fit: cover;
	-o-object-position: top center;
	object-fit: cover;
	object-position: top center;
}

.template-reason--top .template-reason__layout {
	margin-top: 100px;
	padding-bottom: 220px;
}

/* 画面の右下で固定する受付状況で使うクラスが書かれているファイル */

.template-reception {
	border-radius: 10px;
	bottom: 40px;
	-webkit-box-shadow: 0 3px 9px rgba(35, 24, 21, .35);
	box-shadow: 0 3px 9px rgba(35, 24, 21, .35);
	position: fixed;
	right: 40px;
	z-index: 8;
}

.template-reception .template-reception__layout {
	background-color: #fff;
	border-radius: 10px;
	padding: 10px;
}

.template-reception .template-reception__layout .main {
	gap: 14px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background-color: #EFEFEF;
	border-radius: 10px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	padding: 10px 35px;
}

.template-reception .template-reception__layout .main p {
	font-size: 25px;
	font-weight: 700;
}

.template-reception .template-reception__layout .main .back {
	background-image: linear-gradient(45deg, #EF8200, #F7B400 50%, #FFE100);
	border-radius: 30px;
	color: #fff;
	font-size: 24px;
	font-weight: 700;
	line-height: 30px;
	padding: 13px 28px;
}

.template-reception .template-reception__layout .foot {
	gap: 5px;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 13px;
	font-weight: 500;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin-top: 5px;
	padding-left: 4px;
}

.template-reception .template-reception__layout .foot .close {
	cursor: pointer;
	font-size: 11px;
	padding-right: 16px;
	position: relative;
}

.template-reception .template-reception__layout .foot .close::before,
.template-reception .template-reception__layout .foot .close::after {
	background-color: #231815;
	content: "";
	height: 1px;
	position: absolute;
	right: 0;
	top: 50%;
	width: 12px;
}

.template-reception .template-reception__layout .foot .close::before {
	-webkit-transform: translateY(-50%) rotate(45deg);
	transform: translateY(-50%) rotate(45deg);
}

.template-reception .template-reception__layout .foot .close::after {
	-webkit-transform: translateY(-50%) rotate(-45deg);
	transform: translateY(-50%) rotate(-45deg);
}

/* 下層ページの上部で使うクラスが書かれているファイル */

.template-top__layout {
	margin: 100px auto 0;
	max-width: 1920px;
	padding-left: 50px;
	width: 100%;
}

.template-top__heading .heading-ja {
	font-size: 14px;
	letter-spacing: 0.05em;
	line-height: 1.7142857143;
	margin-top: 14px;
}

.template-top__main {
	gap: 50px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin-top: 120px;
	width: 100%;
}

.template-top__message {
	padding-right: 50px;
}

.template-top__message .heading {
	font-size: 40px;
	letter-spacing: 0.05em;
	line-height: 1.7333333333;
}

.template-top__message .heading .bp-1024-only {
	display: none;
}

.template-top__message .heading .bp-1024-1500 {
	display: none;
}

.template-top__message .heading .bp-1024-not {
	display: block;
}

.template-top__message .heading .bp-600 {
	display: none;
}

.template-top__message .sub-heading {
	font-size: 18px;
	letter-spacing: 0.05em;
	line-height: 1.7142857143;
	margin-top: 48px;
}

.template-top__message .texts {
	margin-top: 72px;
}

.template-top__message .texts p {
	font-size: 16px;
	letter-spacing: 0.05em;
	line-height: 1.75;
}

.template-top__message .texts .mt {
	margin-top: 28px;
}

.template-top__picture {
	width: 100%;
}

.template-top__picture img {
	-o-object-fit: cover;
	-o-object-position: center;
	height: auto;
	max-height: 400px;
	object-fit: cover;
	object-position: center;
	width: 100%;
}

/* 〇〇の声で使うクラスが書かれているファイル */

.template-voice__layout {
	gap: 50px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin: -167px auto 0;
	max-width: 1920px;
	width: 100%;
}

.template-voice__layout .template-voice__picture img {
	-o-object-fit: cover;
	-o-object-position: center;
	border-radius: 10px;
	margin: 0 auto;
	max-height: 335px;
	object-fit: cover;
	object-position: center;
	width: auto;
}

.template-voice__layout .template-voice__swiper {
	max-width: 100%;
}

.template-voice__layout .template-voice__swiper .swiper-wrapper {
	max-width: 100%;
	padding: 50px 0 150px;
}

.template-voice__layout .template-voice__swiper .swiper-slide {
	height: auto;
}

.template-voice__layout .template-voice__swiper .speech-bubble {
	background-color: #fff;
	border-radius: 20px;
	-webkit-box-shadow: 0 6px 30px rgba(35, 24, 21, .25);
	box-shadow: 0 6px 30px rgba(35, 24, 21, .25);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	height: 100%;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding: 20px 24px;
	position: relative;
}

.template-voice__layout .template-voice__swiper .speech-bubble::before {
	-webkit-clip-path: polygon(0 0, 0% 100%, 100% 0%);
	background-color: #fff;
	clip-path: polygon(0 0, 0% 100%, 100% 0%);
	content: "";
	height: 25px;
	left: 10%;
	position: absolute;
	top: calc(100% - 1px);
	width: 25px;
	z-index: 1;
}

.template-voice__layout .template-voice__swiper .speech-bubble .text {
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1.75;
}

.template-voice__layout .template-voice__swiper .speech-bubble .company {
	font-size: 12px;
	font-weight: 700;
	margin-top: 10px;
}

.template-voice__layout .template-voice__swiper .swiper-horizontal > .swiper-pagination-bullets,
.template-voice__layout .template-voice__swiper .swiper-pagination-bullets.swiper-pagination-horizontal,
.template-voice__layout .template-voice__swiper .swiper-pagination-custom,
.template-voice__layout .template-voice__swiper .swiper-pagination-fraction {
	gap: 8px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	bottom: 80px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 2px;
	left: 50%;
	top: none;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	width: auto;
}

.template-voice__layout .template-voice__swiper .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.template-voice__layout .template-voice__swiper .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
	background-color: #C9CACA;
	border-radius: 0px;
	height: 2px;
	margin: 0;
	width: 50px;
}

.template-voice__layout .template-voice__swiper .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.template-voice__layout .template-voice__swiper .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet-active {
	background-color: #231815;
}

.template-voice__layout .template-voice__swiper .swiper-button-flex {
	gap: 32px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 40px;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.template-voice__layout .template-voice__swiper .swiper-button-flex .swiper-button-prev,
.template-voice__layout .template-voice__swiper .swiper-button-flex .swiper-button-next {
	height: 40px;
	margin: 0;
	position: static;
	width: 40px;
}

.template-voice__layout .template-voice__swiper .swiper-button-flex .swiper-button-prev img,
.template-voice__layout .template-voice__swiper .swiper-button-flex .swiper-button-next img {
	display: block;
	height: auto;
	width: 40px;
}

.template-voice__layout .template-voice__swiper .swiper-button-flex .swiper-button-next {
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg);
}

/* JavaScriptで使うクラス */

.js-fade {
	opacity: 0;
}

/* フェードインのCSS */

.active.fade-in { /* 1s でアニメーションスピードを管理 */
	-webkit-animation: fadeIn 1s ease-in forwards;
	animation: fadeIn 1s ease-in forwards;
}

.active.fade-in-down { /* 1s でアニメーションスピードを管理 */
	-webkit-animation: fadeInDown 1s ease-in forwards;
	animation: fadeInDown 1s ease-in forwards;
	opacity: 0;
}

.active.fade-in-up { /* 1s でアニメーションスピードを管理 */
	-webkit-animation: fadeInUp 1s ease-in forwards;
	animation: fadeInUp 1s ease-in forwards;
	opacity: 0;
}

.active.fade-in-left { /* 1s でアニメーションスピードを管理 */
	-webkit-animation: fadeInLeft 1s ease-in forwards;
	animation: fadeInLeft 1s ease-in forwards;
	opacity: 0;
}

.active.fade-in-right { /* 1s でアニメーションスピードを管理 */
	-webkit-animation: fadeInRight 1s ease-in forwards;
	animation: fadeInRight 1s ease-in forwards;
	opacity: 0;
}

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

.display-pc {
	display: block;
}

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

.footer__head .texts br {
	display: none;
}

.footer__foot .flex-bottom .menus {
	display: none;
}

.mv__layout h2 br {
	display: none;
}

.template-concerns__block .template-concerns__text .bp-768 {
	display: block;
}

}

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

html {
	scroll-padding-top: 100px;
}

.mt-header {
	margin-top: 100px;
}

.c-accordion .accordion__items {
	gap: 50px 40px;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	margin-top: 120px;
}

.c-accordion .accordion__item {
	width: calc(50% - 20px);
}

.c-accordion .accordion__item:not(:first-child) .answer {
	display: block;
}

.c-accordion .accordion__item .question .icon,
.c-accordion .accordion__item .layout .icon {
	cursor: default;
}

.c-accordion .accordion__item .layout .title {
	min-height: 94px;
}

.c-cards .layout {
	padding: 0 50px 32px;
}

.c-heading-c {
	gap: 12px;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
}

.c-heading-c .icon {
	-webkit-transform: translateY(8px);
	transform: translateY(8px);
}

.business__layout {
	margin-top: 70px;
	padding-top: 150px;
}

.business__main .blocks {
	gap: 20px;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
}

.business__main .block {
	padding: 32px 30px;
}

.business__main .block--single {
	gap: 32px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.data__layout {
	gap: 40px;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	margin: 100px auto 0;
	max-height: 784px;
	padding: 90px 30px 70px;
}

.num-info {
	max-width: 512px;
	padding-left: 32px;
}

.num-info .datum .title {
	padding-left: 32px;
}

.date__slider {
	margin: 0;
	margin-bottom: -90px;
	margin-top: -110px;
	max-width: 595px;
	width: 38%;
}

.date__slider .slick-list {
	height: 100% !important;
}

.date__slider .slide img {
	height: 100%;
}

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

.footer__foot .flex-top {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
}

.footer__foot .flex-bottom {
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
}

.footer__foot .flex-bottom .info {
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
}

.footer__foot .flex-bottom .address {
	margin-left: 50px;
}

.footer__foot .flex-bottom .map a {
	margin-left: 30px;
}

.footer__foot .flex-bottom .copyright {
	margin-top: 0;
}

.header {
	height: 100px;
}

.header__nav {
	display: block;
	right: auto;
}

.header__menu--contact {
	margin: 0;
}

.mv__layout h2 {
	font-size: 58px;
	left: 12.5%;
}

.philosophy__layout {
	height: 520px;
}

.about .about-top .about-top__layout {
	margin-top: 120px;
}

.about .about-top .about-top__layout .about-top__heading {
	max-width: 1440px;
	width: 100%;
}

.about .about-top .about-top__layout .about-top__heading .heading-ja {
	text-align: left;
}

.about .about-top .about-top__layout .about-top__background {
	height: 560px;
}

.about .about-top .about-top__layout .about-top__main {
	margin-top: -420px;
	padding-left: 7%;
}

.about .about-top .about-top__layout .about-top__main .about-top__profile {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	padding: 120px 50px 120px 5%;
}

.about .about-top .about-top__layout .about-top__main .about-top__picture {
	width: 300px;
}

.about .about-top .about-top__layout .about-top__main .about-top__picture .heading {
	display: none;
}

.about .about-top .about-top__layout .about-top__main .about-top__picture .layout {
	margin-top: 0;
	min-height: 530px;
}

.about .about-top .about-top__layout .about-top__main .about-top__picture .slide {
	top: 0;
}

.about .about-top .about-top__layout .about-top__main .about-top__message {
	width: calc(100% - 340px);
}

.about .about-top .about-top__layout .about-top__main .about-top__message .heading {
	display: block;
	font-size: 45px;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.7333333333;
}

.about .about-top .about-top__layout .about-top__main .about-top__message .texts {
	margin-top: 50px;
}

.about .about-mission .heading .heading-en,
.about .about-vision .heading .heading-en,
.about .about-value .heading .heading-en,
.about .about-culture .heading .heading-en {
	font-size: 70px;
}

.about .about-value .about-value__layout {
	padding-top: 120px;
}

.about .about-value .about-value__items {
	max-width: 930px;
}

.about .about-value .about-value__items .about-value__item {
	gap: 25%;
	padding: 30px 20px 30px 40px;
}

.about .about-culture .about-culture__items {
	gap: 5%;
	grid-template-columns: 1fr 1fr 1fr;
	max-width: 1000px;
}

.about .about-company .about-company__layout {
	margin-top: 250px;
	padding-bottom: 250px;
}

.about .about-company .about-company__head {
	gap: 15%;
	grid-template-columns: 300px auto;
	max-width: 880px;
}

.about .about-company .about-company__head .about-company__logo img {
	max-width: none;
}

.about .about-company .about-company__strength .picture-01 {
	left: 11.884057971%;
}

.about .about-company .about-company__strength .picture-01 img {
	min-width: 130px;
}

.about .about-company .about-company__strength .picture-02 {
	right: 5.652173913%;
}

.about .about-company .about-company__strength .picture-02 img {
	min-width: 140px;
}

.about .about-company .about-company__strength .picture-03 {
	bottom: 10.9792284866%;
	left: 7.7536231884%;
}

.about .about-company .about-company__strength .picture-03 img {
	min-width: auto;
}

.about .about-company .about-company__strength .picture-04 {
	right: 10.5797101449%;
}

.about .about-company .about-company__strength .picture-04 img {
	min-width: 160px;
}

.consulting .consulting-can__layout {
	margin-top: 160px;
}

.consulting .consulting-can__hr {
	margin-bottom: 80px;
	margin-top: 100px;
}

.consulting .consulting-can__block {
	gap: 50px;
}

.consulting .consulting-can__block .main {
	width: calc(64.84375% - 50px);
}

.consulting .consulting-can__block .main .title {
	font-size: 30px;
}

.consulting .consulting-can__block .main .texts p {
	font-size: 25px;
}

.consulting .consulting-can__support-details .num-items {
	margin-top: 80px;
}

.flow__layout {
	margin-top: 180px;
	padding-bottom: 240px;
}

.page-contact .page-contact__head {
	margin-top: 218px;
}

.education .education-curriculum__layout {
	padding-bottom: 220px;
}

.education .education-curriculum__head {
	gap: 30px;
}

.education .education-curriculum__head .infos {
	max-width: 430px;
	padding: 20px 36px;
}

.education .education-curriculum__head .schedules {
	width: calc(100% - 460px);
}

.education .education-curriculum__items .education-curriculum__item {
	gap: 70px;
	grid-template-columns: 240px 1fr;
}

.education .education-curriculum__items .education-curriculum__item .layout {
	gap: 70px;
	grid-template-columns: 240px 1fr;
}

.education .education-curriculum__items .education-curriculum__item .main .infos {
	padding: 20px 36px;
}

.education .education-reason__layout {
	background-image: url(../images/education/education-reason-background-pc.png);
}

.education .education-reason__layout {
	margin-top: 120px;
}

.education .education-reason__main {
	padding-bottom: 520px;
	padding-top: 425px;
	position: relative;
}

.education .education-reason__main .education-reason__pictures-head .education-reason__picture {
	position: absolute;
	z-index: -1;
}

.education .education-reason__main .education-reason__pictures-head .education-reason__picture:nth-child(1) {
	left: 4.5%;
	top: 17%;
}

.education .education-reason__main .education-reason__pictures-head .education-reason__picture:nth-child(1) img {
	max-width: 354px;
	min-width: 247px;
	width: 18.4375vw;
}

.education .education-reason__main .education-reason__pictures-head .education-reason__picture:nth-child(2) {
	margin: 0;
	right: 12.4%;
	top: 5.2%;
}

.education .education-reason__main .education-reason__pictures-head .education-reason__picture:nth-child(2) img {
	margin: 0;
	max-width: 411px;
	min-width: 287px;
	width: 21.40625vw;
}

.education .education-reason__main .education-reason__heading {
	margin-top: 0;
}

.education .education-reason__main .education-reason__pictures-bottom {
	margin-top: 0;
}

.education .education-reason__main .education-reason__pictures-bottom .education-reason__picture {
	position: absolute;
	z-index: -1;
}

.education .education-reason__main .education-reason__pictures-bottom .education-reason__picture:nth-child(1) {
	bottom: 14.8%;
	right: 9.2%;
}

.education .education-reason__main .education-reason__pictures-bottom .education-reason__picture:nth-child(1) img {
	margin: 0;
	max-width: 328px;
	min-width: 229px;
	width: 17.08vw;
}

.education .education-reason__main .education-reason__pictures-bottom .education-reason__picture:nth-child(2) {
	bottom: 8%;
	left: 12.2%;
}

.education .education-reason__main .education-reason__pictures-bottom .education-reason__picture:nth-child(2) img {
	max-width: 350px;
	min-width: 245px;
	width: 18.23vw;
}

.sales-promotion .features__items {
	gap: 32px 24px;
	grid-template-columns: repeat(2, 1fr);
	margin-top: 90px;
	max-width: none;
}

.sales-promotion .sales-can__layout {
	margin-top: 120px;
}

.sales-promotion .sales-can__explanation br {
	display: none;
}

.sales-promotion .sales-can__bar {
	margin-top: 100px;
}

.sales-promotion .sales-can__items .sales-can__item {
	gap: 50px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	padding: 60px 32px;
}

.sales-promotion .sales-can__items .sales-can__item:nth-child(even) {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
}

.sales-promotion .sales-can__items .sales-can__item:nth-child(1) .sales-can__picture {
	width: 312px;
}

.sales-promotion .sales-can__items .sales-can__item:nth-child(1) .sales-can__main {
	width: calc(100% - 362px);
}

.sales-promotion .sales-can__items .sales-can__item:nth-child(2) .sales-can__picture {
	width: 290px;
}

.sales-promotion .sales-can__items .sales-can__item:nth-child(2) .sales-can__main {
	width: calc(100% - 340px);
}

.sales-promotion .sales-can__items .sales-can__item:nth-child(3) .sales-can__picture {
	width: 387px;
}

.sales-promotion .sales-can__items .sales-can__item:nth-child(3) .sales-can__main {
	width: calc(100% - 437px);
}

.sales-promotion .sales-can__items .sales-can__item:nth-child(4) .sales-can__picture {
	width: 367px;
}

.sales-promotion .sales-can__items .sales-can__item:nth-child(4) .sales-can__main {
	width: calc(100% - 417px);
}

.sales-promotion .sales-can__items .sales-can__item .sales-can__picture img {
	margin: 0;
	max-width: 375px;
}

.sales-promotion .sales-can__items .sales-can__item .sales-can__main {
	text-align: left;
}

.sales-promotion .promotion__layout {
	margin-top: 180px;
}

.sales-promotion .comparison__layout {
	margin-top: 270px;
	padding-bottom: 240px;
}

.strengths .big-picture__item .big-picture__main {
	gap: 50px;
	grid-template-columns: 28% 1fr;
}

.strengths .big-picture__item .big-picture__main .main .flex {
	gap: 50px;
	grid-template-columns: 1fr 250px;
}

.strengths .big-picture__service .items {
	gap: 40px;
	grid-template-columns: 1fr 1fr 1fr;
	max-width: 1200px;
}

.template-a__layout {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	max-width: 1650px;
}

.template-a__picture {
	width: 50%;
}

.template-a__picture img {
	max-height: none;
}

.template-a__main {
	width: calc(50% - 40px);
}

.template-a--reverse .template-a__layout {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
	margin-right: 0;
}

.template-a--reverse .template-a__layout .template-a__picture {
	width: 55%;
}

.template-a--reverse .template-a__layout .template-a__main {
	padding-right: 0;
	width: calc(45% - 40px);
}

.template-concerns__blocks {
	max-width: 1080px;
}

.template-concerns__block {
	width: calc(50% - 12px);
}

.template-concerns__block .template-concerns__text .bp-1024-600-not {
	display: none;
}

.template-cta--mt-160 {
	margin-top: 160px;
}

.template-cta--mt-120 {
	margin-top: 120px;
}

.template-profile .profile__layout {
	padding-bottom: 180px;
}

.template-qa .template-qa__layout {
	margin-bottom: 260px;
	margin-top: 120px;
}

.template-reason .mt-120 {
	margin-top: 120px;
}

.template-reason .mt-100 {
	margin-top: 100px;
}

.template-reason .template-reason__items {
	gap: 36px 20px;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.template-reason .template-reason__item {
	width: calc(33.33333% - 13.33333px);
}

.template-reason--top .template-reason__layout {
	margin-top: 120px;
	padding-bottom: 130px;
}

.template-top__layout {
	margin-top: 120px;
	padding-left: 8%;
}

.template-top__main {
	gap: 6.25%;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	margin-top: 150px;
}

.template-top__message {
	padding-right: 0;
}

.template-top__message .heading .bp-1024-only {
	display: block;
}

.template-top__message .heading .bp-1024-1500 {
	display: block;
}

.template-top__message .heading .bp-1024-not {
	display: none;
}

.template-top__picture {
	max-width: 44%;
}

.template-top__picture img {
	max-height: none;
	min-height: 480px;
}

.template-voice__layout {
	gap: 30px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	margin-top: 120px;
	padding-left: 50px;
	padding-right: 0;
}

.template-voice__layout .template-voice__picture {
	min-width: 21.7261904762%;
}

.template-voice__layout .template-voice__picture img {
	margin: 0;
	max-width: none;
	min-height: 480px;
	width: 100%;
}

.template-voice__layout .template-voice__main {
	width: calc(78.27381% - 30px);
}

.template-voice__layout .template-voice__heading {
	padding-left: 40px;
}

.template-voice__layout .template-voice__swiper .swiper-wrapper {
	padding: 40px 0 120px 40px;
}

.template-voice__layout .template-voice__swiper .swiper-horizontal > .swiper-pagination-bullets,
.template-voice__layout .template-voice__swiper .swiper-pagination-bullets.swiper-pagination-horizontal,
.template-voice__layout .template-voice__swiper .swiper-pagination-custom,
.template-voice__layout .template-voice__swiper .swiper-pagination-fraction {
	bottom: 0;
	left: 40px;
	-webkit-transform: none;
	transform: none;
}

.template-voice__layout .template-voice__swiper .swiper-button-flex {
	display: none;
}

}

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

.c-heading-b h2 {
	font-size: 45px;
}

.c-num__items {
	gap: 50px;
	grid-template-columns: 1fr 1fr;
}

.c-num__item .main .heading .bp-1280 {
	display: block;
}

.header__main {
	gap: 10px;
}

.header__menus {
	gap: 18px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: inherit;
}

.header__menu {
	height: inherit;
}

.header__menu--contact a {
	width: 170px;
}

.header__mail a {
	display: none;
}

.inner {
	padding-left: 50px;
	padding-right: 50px;
}

.inner-right {
	padding-left: 50px;
}

.about .about-top .about-top__layout .about-top__main {
	padding-left: 12%;
}

.about .about-company .about-company__head {
	grid-template-columns: 375px auto;
	max-width: 950px;
}

.about .about-company .about-company__head .about-company__info {
	max-width: 440px;
}

.education .education-reason__main .education-reason__pictures-head .education-reason__picture:nth-child(1) {
	left: 8.5%;
}

.education .education-reason__main .education-reason__pictures-bottom .education-reason__picture:nth-child(1) {
	bottom: 17.8%;
}

.education .education-reason__main .education-reason__pictures-bottom .education-reason__picture:nth-child(2) {
	left: 18.2%;
}

.sales-promotion .features__layout {
	margin-top: 300px;
	padding-bottom: 120px;
}

.sales-promotion .features__item .heading {
	font-size: 28px;
}

.strengths .big-picture__service .items .item .head h4 {
	font-size: 20px;
}

.template-a__layout {
	gap: 8%;
}

.template-a__main {
	width: 42%;
}

.template-a--reverse .template-a__layout .template-a__picture {
	width: 60%;
}

.template-a--reverse .template-a__layout .template-a__main {
	width: 32%;
}

.template-concerns__block .template-concerns__text {
	font-size: 18px;
}

.template-concerns__block .template-concerns__text .bp-1280 {
	display: block;
}

.template-concerns__block .template-concerns__text .bp-1024-600-not {
	display: block;
}

.template-profile .profile__layout {
	padding-bottom: 240px;
}

.template-reason .mt-220 {
	margin-top: 220px;
}

.template-reason .template-reason__title .bp-1280-not {
	display: none;
}

.template-reason .template-reason__item .title {
	font-size: 28px;
}

.template-top__layout {
	padding-left: 12.5%;
}

.template-top__message .heading {
	font-size: 45px;
}

.template-top__message .heading .bp-1024-only {
	display: none;
}

.template-top__message .sub-heading {
	font-size: 21px;
	margin-top: 44px;
}

.template-voice__layout {
	padding-left: 12.5%;
}

}

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

.header__logo {
	height: 34px;
	width: 172px;
}

.header__main {
	gap: 15px;
}

.header__menus {
	gap: 30px;
}

.header__menu--contact a {
	width: 200px;
}

.about .about-top .about-top__layout .about-top__main {
	padding-left: 20%;
}

.about .about-top .about-top__layout .about-top__main .about-top__profile {
	padding: 120px 50px 120px 7%;
}

.about .about-top .about-top__layout .about-top__main .about-top__picture {
	width: 27%;
}

.about .about-top .about-top__layout .about-top__main .about-top__message {
	width: calc(73% - 40px);
}

.about .about-top .about-top__layout .about-top__main .about-top__message .texts {
	margin-top: 64px;
}

.template-top__message .heading .bp-1024-1500 {
	display: none;
}

}

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

.education .education-reason__main .education-reason__pictures-head .education-reason__picture:nth-child(2) {
	right: 4.4%;
}

}

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

.display-sp {
	display: block;
}

.c-accordion .accordion__items {
	gap: 35px;
	margin-top: 80px;
}

.c-accordion .accordion__item .question .alphabet,
.c-accordion .accordion__item .layout .alphabet {
	font-size: 32px;
}

.c-cards .layout {
	gap: 36px;
	margin-top: 55px;
	padding: 0 30px 32px;
}

.c-cards .bar {
	left: 166px;
	right: 166px;
	width: calc(100% - 332px);
}

.gradient-heading-contact {
	font-size: 65px;
}

.gradient-heading-contact-form {
	font-size: 65px;
}

.gradient-heading-strength {
	font-size: 65px;
}

.gradient-heading-innovation {
	font-size: 65px;
}

.gradient-heading-solution {
	font-size: 65px;
}

.gradient-heading-emotion {
	font-size: 65px;
}

.gradient-heading-business {
	font-size: 65px;
}

.gradient-heading-our-strength {
	font-size: 65px;
}

.gradient-heading-sales-promotion {
	font-size: 65px;
}

.gradient-heading-consulting {
	font-size: 65px;
}

.gradient-heading-education {
	font-size: 65px;
}

.gradient-heading-company {
	font-size: 65px;
}

.gradient-heading-data {
	font-size: 65px;
}

.c-heading h2 {
	padding: 0;
	padding-top: 26px;
	text-align: center;
}

.c-heading h2::before {
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.c-heading-white h2 {
	padding: 0;
	padding-top: 26px;
	text-align: center;
}

.c-heading-white h2::before {
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.c-heading-left-sp h2 {
	padding: 0;
	padding-left: 26px;
	text-align: left;
}

.c-heading-left-sp h2::before {
	left: 0;
	-webkit-transform: none;
	transform: none;
}

.c-heading-b h2 {
	font-size: 32px;
}

.c-heading-c h2 {
	font-size: 35px;
}

.c-num__items {
	gap: 35px;
}

.c-num__item {
	gap: 16px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	padding: 32px 24px;
}

.c-num__item .num {
	font-size: 32px;
}

.c-num__item .main {
	width: 100%;
}

.c-num__item .main .heading {
	font-size: 18px;
	line-height: 1.7777777778;
	text-align: center;
}

.c-num__item .main .texts {
	margin-top: 14px;
}

.business__layout {
	margin-top: 40px;
	padding-top: 75px;
}

.business__head {
	gap: 40px;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.business__head .texts p {
	font-size: 20px;
	line-height: 1.8;
}

.business__head .texts p br {
	display: none;
}

.business__main {
	margin-top: 60px;
}

.business__main .block {
	padding: 24px 20px;
}

.business__main .bar::before {
	width: 45px;
}

.business__main .texts {
	margin-top: 24px;
}

.data__layout {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin-top: 80px;
	padding: 60px 24px 0;
}

.data__info {
	min-width: auto;
}

.data__info .heading-en {
	margin-top: 32px;
}

.num-info {
	margin-top: 32px;
	padding-left: 0;
}

.num-info .datum {
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.num-info .datum .title {
	padding-left: 20px;
}

.num-info .datum .title::before {
	top: 8px;
	-webkit-transform: none;
	transform: none;
}

.num-info .datum .number {
	margin-left: auto;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.footer__layout {
	padding: 30px;
}

.footer__head {
	gap: 44px;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.footer__head .heading-en {
	margin: 20px auto 0;
}

.footer__head .texts {
	margin-top: 40px;
	text-align: center;
}

.footer__head .contact p {
	text-align: center;
}

.footer__head .contact .footer__button {
	margin-bottom: 24px;
	margin-top: 16px;
}

.footer__head .contact .footer__button a {
	margin-left: auto;
	margin-right: auto;
}

.footer__head .contact .attention {
	margin-left: auto;
	margin-right: auto;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.footer__bar {
	display: none;
	margin: 0;
}

.footer__menus {
	gap: 0px;
	grid-template-columns: 1fr;
	margin-top: 50px;
	width: 100%;
}

.footer__menu {
	border-bottom: 1px solid #777777;
	position: relative;
}

.footer__menu:first-child {
	border-top: 1px solid #C7C8C8;
}

.footer__menu a {
	padding: 16px 0;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.footer__menu .icon {
	cursor: pointer;
	display: block;
	height: 11px;
	position: absolute;
	right: 18px;
	top: 21px;
	width: 11px;
	z-index: 1;
}

.footer__menu .footer__sub-menu {
	display: none;
	margin: 0;
}

.footer__menu .footer__sub-menu li:last-child {
	padding-bottom: 16px;
}

.footer__menu .footer__sub-menu a {
	padding: 5px 0 5px 12px;
}

.footer__foot {
	margin-top: 70px;
}

.footer__foot .flex-top .philosophy {
	font-size: 32px;
}

.footer__foot .flex-top .menus {
	display: none;
}

.footer__foot .flex-bottom {
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
}

.footer__foot .flex-bottom .info {
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
}

.footer__foot .flex-bottom .address {
	margin-top: 12px;
}

.footer__foot .flex-bottom .map a {
	margin-top: 8px;
}

.footer__foot .flex-bottom .copyright {
	text-align: center;
	width: 100%;
}

.header__menu {
	height: auto;
}

.hamburger__nav {
	padding: 100px 30px 70px;
	width: 100%;
}

.hamburger__nav .hamburger__menus {
	min-width: auto;
	width: 100%;
}

.hamburger__nav .hamburger__menus .hamburger__menu a p {
	font-size: 27px;
}

.hamburger__nav .hamburger__sub-menu li {
	padding-left: 24px;
}

.hamburger__nav .contact .hamburger__button {
	margin-bottom: 24px;
	margin-top: 16px;
}

.hamburger__nav .hamburger__bottom {
	margin-top: 40px;
}

.inner {
	padding-left: 30px;
	padding-right: 30px;
}

.inner-right {
	padding-left: 30px;
}

.mv__layout img {
	height: 750px;
}

.mv__layout h2 {
	font-size: 80px;
	left: 50%;
	min-width: 100%;
	text-align: center;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.philosophy__layout {
	margin: 90px auto calc(6.25vw + 90px);
}

.philosophy__pictures {
	gap: 80px 20px;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.philosophy__pictures .philosophy__picture:nth-child(1) {
	-webkit-box-ordinal-group: 3;
	-ms-flex-order: 2;
	order: 2;
	padding-top: 40%;
	width: calc(50% - 20px);
}

.philosophy__pictures .philosophy__picture:nth-child(2) {
	display: block;
	-webkit-box-ordinal-group: 2;
	-ms-flex-order: 1;
	order: 1;
	width: 50%;
}

.philosophy__pictures .philosophy__picture:nth-child(3) {
	margin-top: 0;
	width: 50%;
}

.philosophy__pictures .philosophy__picture:nth-child(4) {
	margin-top: 0;
	padding-top: 18%;
	width: calc(50% - 20px);
}

.about .about-top .about-top__layout {
	margin-top: 80px;
}

.about .about-top .about-top__layout .about-top__main {
	padding-left: 30px;
}

.about .about-top .about-top__layout .about-top__main .about-top__profile {
	gap: 36px;
	padding: 75px 45px 75px 25px;
}

.about .about-top .about-top__layout .about-top__main .about-top__picture .heading {
	font-size: 27px;
}

.about .about-top .about-top__layout .about-top__main .about-top__picture .heading .bp-767 {
	display: block;
}

.about .about-top .about-top__layout .about-top__main .about-top__picture .layout {
	margin-top: 26px;
	min-height: 460px;
}

.about .about-top .about-top__layout .about-top__main .about-top__message .texts .post {
	margin-right: -20px;
}

.about .about-and-vision .about-and-vision__layout {
	margin-top: 110px;
	padding-bottom: 200px;
}

.about .about-and-vision .about-and-vision__layout .about-bar {
	background-color: transparent;
	margin: 80px auto;
}

.about .about-mission .layout .message,
.about .about-vision .layout .message {
	font-size: 28px;
	margin-top: 40px;
}

.about .about-mission .layout .explanation,
.about .about-vision .layout .explanation {
	margin-top: 30px;
}

.about .about-mission .heading .heading-en,
.about .about-vision .heading .heading-en,
.about .about-value .heading .heading-en,
.about .about-culture .heading .heading-en {
	font-size: 40px;
	margin-top: 18px;
}

.about .about-mission .heading .heading-ja,
.about .about-vision .heading .heading-ja,
.about .about-value .heading .heading-ja,
.about .about-culture .heading .heading-ja {
	font-size: 14px;
	margin-top: 18px;
}

.about .about-value .about-value__layout {
	padding-top: 80px;
}

.about .about-value .about-value__items {
	max-width: 500px;
}

.about .about-value .about-value__items .about-value__item {
	gap: 18px;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	padding: 24px 20px 32px 20px;
}

.about .about-value .about-value__items .about-value__item .title {
	gap: 22px;
	font-size: 30px;
}

.about .about-value .about-value__items .about-value__item .title .num {
	-webkit-transform: translateY(1px);
	transform: translateY(1px);
}

.about .about-value .about-value__items .about-value__item .text {
	font-size: 16px;
}

.about .about-culture .about-culture__layout {
	margin-top: 130px;
}

.about .about-culture .about-culture__items {
	gap: 28px;
	margin-top: 80px;
	max-width: 320px;
}

.about .about-culture .about-culture__item .about-culture__title {
	font-size: 30px;
}

.about .about-company .about-company__layout {
	padding-bottom: 150px;
	padding-top: 50px;
}

.about .about-company .about-company__head {
	gap: 64px;
	margin-top: 80px;
	max-width: 382px;
}

.about .about-company .about-company__head .about-company__logo img {
	max-width: 220px;
}

.about .about-company .about-company__head .about-company__info dl {
	gap: 40px;
}

.about .about-company .about-company__head .about-company__info dl::before {
	left: 84px;
}

.about .about-company .about-company__head .about-company__info dl dt,
.about .about-company .about-company__head .about-company__info dl dd {
	font-size: 15px;
}

.about .about-company .about-company__head .about-company__info dl dt {
	min-width: 64px;
}

.about .about-company .about-company__head .about-company__info dl dd {
	width: calc(100% - 104px);
}

.about .about-company .about-company__strength {
	margin-top: 147px;
	padding: 330px 20px 460px;
}

.about .about-company .about-company__strength .picture-01 {
	left: 30px;
	top: -65px;
}

.about .about-company .about-company__strength .picture-01 img {
	min-width: 138px;
}

.about .about-company .about-company__strength .picture-02 {
	top: 9.5158597663%;
}

.about .about-company .about-company__strength .picture-02 img {
	min-width: 158px;
	right: -20px;
}

.about .about-company .about-company__strength .picture-03 {
	left: -20px;
	top: 775px;
}

.about .about-company .about-company__strength .picture-03 img {
	min-width: 215px;
}

.about .about-company .about-company__strength .picture-04 {
	bottom: -34px;
	right: 20px;
}

.about .about-company .about-company__strength .picture-04 img {
	min-width: 143px;
}

.about .about-company .about-company__strength .layout {
	gap: 55px;
}

.about .about-company .about-company__strength .layout .heading .en {
	font-size: 50px;
}

.about .about-company .about-company__strength .layout .heading .ja {
	font-size: 14px;
	margin-top: 24px;
}

.about .about-company .about-company__strength .layout .texts p {
	font-size: 30px;
}

.about .about-company .about-company__strength .layout .texts p br {
	display: block;
}

.consulting .consulting-can__layout {
	margin-top: 80px;
}

.consulting .consulting-can__hr {
	margin-bottom: 60px;
	margin-top: 72px;
}

.consulting .consulting-can__block {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.consulting .consulting-can__block .picture {
	width: 100%;
}

.consulting .consulting-can__block .picture img {
	max-height: 310px;
	min-height: auto;
}

.consulting .consulting-can__block .main {
	width: 100%;
}

.consulting .consulting-can__block .main .title {
	font-size: 26px;
	text-align: center;
}

.consulting .consulting-can__block .main .texts {
	margin-top: 36px;
	text-align: center;
}

.consulting .consulting-can__block .main .texts p {
	font-size: 22px;
	text-align: center;
}

.consulting .consulting-can__support-details {
	margin-top: 65px;
}

.consulting .consulting-can__support-details .num-items {
	margin-top: 50px;
}

.flow__layout {
	margin-top: 100px;
	padding-bottom: 160px;
}

.page-contact .page-contact__layout {
	margin-top: 80px;
}

.page-contact .page-contact__head {
	margin-top: 80px;
}

.page-contact .page-contact__head .icon {
	display: none;
}

.page-contact .page-contact__head .title {
	margin-top: 0px;
}

.page-contact .page-contact__head .title .en {
	display: none;
}

.page-contact .page-contact__head .title .ja br {
	display: block;
}

.page-contact .page-contact__head .texts {
	margin-top: 50px;
	text-align: left;
}

.page-contact .page-contact__head .texts br {
	display: none;
}

.page-contact .page-contact__form7 {
	margin-top: 50px;
}

.education .education-curriculum__layout {
	margin-top: 100px;
	padding-bottom: 150px;
}

.education .education-curriculum__head {
	gap: 24px;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin-top: 60px;
	max-width: 600px;
}

.education .education-curriculum__head .infos {
	max-width: none;
}

.education .education-curriculum__head .schedules {
	gap: 24px;
	width: 100%;
}

.education .education-curriculum__items {
	margin-top: 75px;
}

.education .education-curriculum__items .education-curriculum__item {
	gap: 26px;
	padding: 50px 20px;
}

.education .education-curriculum__items .education-curriculum__item::before,
.education .education-curriculum__items .education-curriculum__item::after {
	width: 80px;
}

.education .education-curriculum__items .education-curriculum__item .layout {
	gap: 26px;
}

.education .education-curriculum__items .education-curriculum__item .heading .ja {
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
}

.education .education-curriculum__items .education-curriculum__item .heading .ja h2 {
	font-size: 25px;
}

.education .education-curriculum__items .education-curriculum__item .main .title {
	font-size: 22px;
}

.education .education-curriculum__items .education-curriculum__item .main .texts {
	padding-left: 4px;
}

.education .education-curriculum__items .education-curriculum__item .main .texts p {
	font-size: 14px;
}

.education .education-curriculum__items .education-curriculum__item .main .texts p::before {
	height: 14px;
	top: 4px;
	width: 14px;
}

.education .education-curriculum__items .education-curriculum__item .main .infos {
	max-width: none;
}

.education .education-reason__layout {
	margin-top: 60px;
}

.education .education-reason__main {
	gap: 24px;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	max-width: 600px;
}

.education .education-reason__main .education-reason__pictures-head .education-reason__picture:nth-child(2) {
	margin-right: -30px;
	margin-top: 70px;
}

.education .education-reason__main .education-reason__heading {
	margin-top: 80px;
}

.education .education-reason__main .education-reason__pictures-bottom {
	margin-top: 80px;
}

.education .education-reason__main .education-reason__pictures-bottom .education-reason__picture:nth-child(2) {
	margin-left: -30px;
	margin-top: 70px;
}

.education .education-reason__texts {
	margin-top: 75px;
}

.education .education-reason__texts p {
	font-size: 18px;
}

.sales-promotion .features__layout {
	margin-top: 170px;
	padding-bottom: 75px;
}

.sales-promotion .features__items {
	margin-top: 50px;
}

.sales-promotion .features__item {
	padding: 32px 20px 40px;
}

.sales-promotion .features__item .heading {
	font-size: 22px;
}

.sales-promotion .features__item .explanation {
	margin-top: 20px;
}

.sales-promotion .sales-can__layout {
	margin-top: 80px;
}

.sales-promotion .sales-can__explanation {
	margin-top: 64px;
}

.sales-promotion .sales-can__bar {
	margin-top: 65px;
}

.sales-promotion .sales-can__bar::before {
	width: 85px;
}

.sales-promotion .sales-can__items .sales-can__item {
	gap: 36px;
	padding: 45px 0px;
}

.sales-promotion .sales-can__items .sales-can__item::before {
	width: 85px;
}

.sales-promotion .sales-can__items .sales-can__item .sales-can__main .title {
	font-size: 24px;
}

.sales-promotion .sales-can__items .sales-can__item .sales-can__main .texts {
	margin-top: 28px;
}

.sales-promotion .sales-can__items .sales-can__item .sales-can__main .texts p {
	text-align: left;
}

.sales-promotion .sales-can__items .sales-can__item .sales-can__main .example {
	margin-top: 28px;
	text-align: left;
}

.sales-promotion .promotion__layout {
	margin-top: 100px;
}

.sales-promotion .comparison__layout {
	margin-top: 180px;
	padding-bottom: 160px;
	padding-top: 36px;
}

.sales-promotion .comparison__picture {
	margin-top: 60px;
}

.strengths .big-picture__message-20 {
	font-size: 18px;
	line-height: 1.7222222222;
	margin-top: 72px;
}

.strengths .big-picture__message-25 {
	font-size: 22px;
	line-height: 1.7272727273;
	margin-top: 50px;
}

.strengths .big-picture__graph {
	margin-top: 45px;
}

.strengths .big-picture__items {
	margin-top: 60px;
}

.strengths .big-picture__item {
	padding: 50px 16px 60px;
}

.strengths .big-picture__item::before {
	width: 100px;
}

.strengths .big-picture__item:last-child::after {
	width: 100px;
}

.strengths .big-picture__item .big-picture__heading .heading-ja {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	font-size: 24px;
	text-align: center;
}

.strengths .big-picture__item .big-picture__heading .heading-en {
	text-align: center;
}

.strengths .big-picture__item .big-picture__main {
	gap: 32px;
	margin-top: 28px;
}

.strengths .big-picture__item .big-picture__main .main .title {
	font-size: 22px;
	line-height: 1.6086956522;
}

.strengths .big-picture__item .big-picture__main .main .flex {
	gap: 32px;
	margin-top: 32px;
}

.strengths .big-picture__item .big-picture__main .main .flex .button {
	margin-left: auto;
	margin-right: auto;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.strengths .big-picture__service {
	margin-top: 70px;
}

.strengths .big-picture__service .heading {
	font-size: 24px;
	line-height: 1.75;
}

.strengths .big-picture__service .items {
	gap: 50px;
	margin-top: 40px;
}

.strengths .thinking__layout {
	margin-bottom: 150px;
}

.strengths .thinking__slick {
	top: 40%;
}

.strengths .thinking__title {
	font-size: 38px;
	line-height: 1.6842105263;
	margin-top: 100px;
}

.strengths .thinking__texts {
	margin-top: 70px;
	text-align: left;
}

.templates-a {
	margin: 100px 0;
}

.template-a--reverse .template-a__layout .template-a__main {
	padding-right: 30px;
}

.template-concerns .mt-110 {
	margin-top: 85px;
}

.template-concerns__heading h2 br {
	display: block;
}

.template-concerns__blocks {
	margin-top: 32px;
}

.template-concerns__block {
	padding: 25px 20px;
}

.template-concerns__block .template-concerns__check img {
	height: 32px;
	width: 32px;
}

.template-concerns__block .template-concerns__text {
	font-size: 16px;
	width: calc(100% - 46px);
}

.template-concerns__block .template-concerns__text .bp-767 {
	display: block;
}

.template-concerns__message {
	margin-top: 40px;
}

.template-concerns__message p {
	font-size: 22px;
}

.template-cta--mt-160 {
	margin-top: 80px;
}

.template-cta--mt-120 {
	margin-top: 80px;
}

.template-form7__message::before {
	content: "個人のお問い合わせの場合は「なし」\aとご入力ください";
	min-width: 212px;
	white-space: pre-wrap;
}

.template-form7__button {
	max-width: 330px;
}

.template-profile .profile__layout {
	padding-bottom: 170px;
}

.template-profile .profile__main {
	gap: 35px;
	grid-template-columns: 1fr;
	margin: 70px auto 0;
	padding: 28px 30px 32px;
}

.template-profile .profile__main .profile__picture {
	margin: 0 auto;
}

.template-profile .profile__main .profile__info .name {
	text-align: center;
}

.template-profile .profile__main .profile__info .name span {
	display: block;
	margin: 0;
	margin-top: 10px;
}

.template-profile .profile__main .profile__info .post {
	text-align: center;
}

.template-qa .template-qa__layout {
	margin-bottom: 120px;
	margin-top: 90px;
}

.template-reason .mt-220 {
	margin-top: 130px;
}

.template-reason .mt-120 {
	margin-top: 70px;
}

.template-reason .mt-100 {
	margin-top: 70px;
}

.template-reason .mt-60 {
	margin-top: 50px;
}

.template-reason .mt-50 {
	margin-top: 40px;
}

.template-reason .template-reason__layout {
	padding-bottom: 130px;
	padding-top: 70px;
}

.template-reason .template-reason__title {
	font-size: 28px;
}

.template-reason .template-reason__items {
	gap: 24px;
}

.template-reason .template-reason__item {
	padding: 32px 20px 50px;
}

.template-reason .template-reason__item .num {
	font-size: 50px;
}

.template-reason .template-reason__item .texts {
	margin-top: 32px;
}

.template-reason--top .template-reason__layout {
	margin-top: 80px;
	padding-bottom: 220px;
}

.template-reception {
	bottom: 20px;
	left: 50%;
	min-width: 403px;
	right: auto;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.template-reception .template-reception__layout .main {
	font-size: 22px;
	padding: 9px 28px;
}

.template-reception .template-reception__layout .main p {
	font-size: 22px;
}

.template-reception .template-reception__layout .main .back {
	font-size: 21px;
	padding: 11px 24px;
}

.template-reception .template-reception__layout .foot {
	font-size: 12px;
}

.template-reception .template-reception__layout .foot .close {
	font-size: 10px;
}

.template-top__layout {
	margin-top: 80px;
	padding-left: 30px;
}

.template-top__heading {
	padding-right: 30px;
	text-align: center;
}

.template-top__heading .heading-en {
	margin-left: auto;
	margin-right: auto;
}

.template-top__main {
	gap: 44px;
	margin-top: 90px;
}

.template-top__message {
	padding-left: 20px;
	padding-right: 30px;
}

.template-top__message .heading {
	font-size: 35px;
}

.template-top__message .sub-heading {
	font-size: 20px;
	margin-top: 44px;
}

.template-top__message .texts {
	margin-top: 60px;
}

.template-top__picture {
	padding-left: 20px;
}

.template-voice__layout .template-voice__swiper .swiper-wrapper {
	padding-bottom: 100px;
}

}

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

html {
	scroll-padding-top: 80px;
}

.mt-header {
	margin-top: 80px;
}

.c-accordion .accordion__items {
	gap: 30px;
	margin-top: 60px;
}

.c-accordion .accordion__item .question .alphabet,
.c-accordion .accordion__item .layout .alphabet {
	font-size: 30px;
}

.c-cards .layout {
	gap: 32px;
	margin-top: 50px;
	padding: 0 20px 32px;
}

.c-cards .bar {
	left: 156px;
	right: 156px;
	width: calc(100% - 312px);
}

.gradient-heading-contact {
	font-size: 50px;
}

.gradient-heading-contact-form {
	font-size: 50px;
}

.gradient-heading-strength {
	font-size: 50px;
}

.gradient-heading-innovation {
	font-size: 50px;
}

.gradient-heading-solution {
	font-size: 50px;
}

.gradient-heading-emotion {
	font-size: 50px;
}

.gradient-heading-business {
	font-size: 50px;
}

.gradient-heading-our-strength {
	font-size: 50px;
}

.gradient-heading-sales-promotion {
	font-size: 50px;
}

.gradient-heading-consulting {
	font-size: 50px;
}

.gradient-heading-education {
	font-size: 50px;
}

.gradient-heading-company {
	font-size: 50px;
}

.gradient-heading-data {
	font-size: 50px;
}

.c-heading-b h2 {
	font-size: 25px;
}

.c-heading-c h2 {
	font-size: 25px;
}

.c-num__items {
	gap: 30px;
}

.c-num__item {
	gap: 8px;
	padding: 24px 20px;
}

.c-num__item .num {
	font-size: 24px;
}

.c-num__item .main .heading {
	font-size: 16px;
	line-height: 1.75;
}

.c-num__item .main .texts {
	margin-top: 12px;
}

.business__layout {
	margin-top: 32px;
	padding-top: 50px;
}

.business__head .texts p {
	font-size: 16px;
	line-height: 2;
}

.business__main {
	margin-top: 45px;
}

.business__main .bar::before {
	width: 35px;
}

.business__main .head {
	gap: 12px;
}

.business__main .title {
	font-size: 20px;
}

.business__main .title br {
	display: block;
}

.business__main .texts p {
	font-size: 14px;
}

.data__layout {
	margin-top: 60px;
	padding: 50px 16px 0;
}

.data__info .heading-en {
	margin-top: 20px;
}

.footer__layout {
	padding: 30px 20px 20px;
}

.footer__head .texts {
	margin-top: 30px;
}

.footer__foot {
	margin-top: 50px;
}

.footer__foot .flex-top .philosophy {
	font-size: 26px;
}

.footer__foot .flex-bottom .address {
	margin-top: 10px;
}

.footer__foot .flex-bottom .map a {
	margin-top: 4px;
}

.header {
	height: 80px;
}

.header__layout {
	padding: 0 24px;
}

.header__logo {
	height: 30px;
	width: 150px;
}

.hamburger__nav {
	padding: 70px 20px 60px;
	width: 100%;
}

.hamburger__nav .hamburger__menus .hamburger__menu a p {
	font-size: 24px;
}

.hamburger__nav .hamburger__sub-menu li {
	padding-left: 16px;
}

.hamburger__nav .contact {
	padding-left: 0px;
}

.hamburger__nav .contact p {
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.hamburger__nav .contact p br {
	display: block;
}

.hamburger__nav .contact .hamburger__button {
	margin-left: auto;
	margin-right: auto;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.hamburger__nav .contact .attention {
	margin-left: auto;
	margin-right: auto;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}

.hamburger__nav .hamburger__bottom {
	gap: 24px;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin-top: 30px;
	padding-left: 0px;
}

.hamburger__nav .hamburger__bottom .logo img {
	margin-left: auto;
	margin-right: auto;
}

.hamburger__nav .hamburger__bottom .logo .company-name {
	padding-right: 12px;
	text-align: center;
}

.hamburger__nav .hamburger__bottom .philosophy {
	text-align: center;
}

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

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

.mv__layout h2 {
	font-size: 64px;
}

.philosophy__layout {
	margin: 60px auto calc(6.25vw + 70px);
}

.philosophy__layout--page-contact {
	margin-top: 70px;
}

.philosophy__pictures {
	gap: 60px 20px;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.philosophy__pictures .philosophy__picture:nth-child(1) {
	padding-top: 50%;
}

.about .about-top .about-top__layout {
	margin-top: 60px;
}

.about .about-top .about-top__layout .about-top__main {
	padding-left: 20px;
}

.about .about-top .about-top__layout .about-top__main .about-top__profile {
	gap: 32px;
	padding: 60px 40px 60px 20px;
}

.about .about-top .about-top__layout .about-top__main .about-top__picture .heading {
	font-size: 24px;
}

.about .about-top .about-top__layout .about-top__main .about-top__picture .layout {
	margin-top: 20px;
	min-height: 420px;
}

.about .about-and-vision .about-and-vision__layout {
	margin-top: 100px;
	padding-bottom: 150px;
}

.about .about-and-vision .about-and-vision__layout .about-bar {
	margin: 65px auto;
}

.about .about-mission .layout .message,
.about .about-vision .layout .message {
	font-size: 22px;
	margin-top: 30px;
}

.about .about-mission .layout .explanation,
.about .about-vision .layout .explanation {
	margin-top: 24px;
}

.about .about-mission .heading .heading-en,
.about .about-vision .heading .heading-en,
.about .about-value .heading .heading-en,
.about .about-culture .heading .heading-en {
	font-size: 30px;
	margin-top: 20px;
}

.about .about-mission .heading .heading-ja,
.about .about-vision .heading .heading-ja,
.about .about-value .heading .heading-ja,
.about .about-culture .heading .heading-ja {
	font-size: 12px;
	margin-top: 20px;
}

.about .about-value .about-value__layout {
	padding-top: 70px;
}

.about .about-value .about-value__items .about-value__item {
	gap: 12px;
}

.about .about-value .about-value__items .about-value__item .title {
	gap: 16px;
	font-size: 20px;
}

.about .about-value .about-value__items .about-value__item .title .num {
	-webkit-transform: none;
	transform: none;
}

.about .about-culture .about-culture__layout {
	margin-top: 100px;
}

.about .about-culture .about-culture__items {
	gap: 24px;
	margin-top: 60px;
	max-width: 250px;
}

.about .about-culture .about-culture__item .about-culture__title {
	font-size: 25px;
}

.about .about-culture .about-culture__item .about-culture__text {
	font-size: 15px;
}

.about .about-company .about-company__head {
	gap: 48px;
	margin-top: 90px;
	max-width: 374px;
}

.about .about-company .about-company__head .about-company__logo img {
	max-width: 173px;
}

.about .about-company .about-company__head .about-company__info dl {
	gap: 32px;
}

.about .about-company .about-company__head .about-company__info dl::before {
	left: 80px;
}

.about .about-company .about-company__head .about-company__info dl dd {
	width: calc(100% - 96px);
}

.about .about-company .about-company__strength {
	margin-top: 130px;
	padding: 330px 20px 460px;
}

.about .about-company .about-company__strength .picture-01 {
	left: 20px;
}

.about .about-company .about-company__strength .picture-03 {
	top: 700px;
}

.about .about-company .about-company__strength .layout {
	gap: 40px;
}

.about .about-company .about-company__strength .layout .heading .en {
	font-size: 30px;
}

.about .about-company .about-company__strength .layout .heading .ja {
	font-size: 12px;
	margin-top: 20px;
}

.about .about-company .about-company__strength .layout .texts p {
	font-size: 25px;
}

.consulting .consulting-can__layout {
	margin-top: 40px;
}

.consulting .consulting-can__hr {
	margin-bottom: 50px;
	margin-top: 60px;
}

.consulting .consulting-can__block .main .title {
	font-size: 24px;
}

.consulting .consulting-can__block .main .texts {
	margin-top: 32px;
}

.consulting .consulting-can__block .main .texts p {
	font-size: 20px;
}

.consulting .consulting-can__support-details {
	margin-top: 50px;
}

.consulting .consulting-can__support-details .num-items {
	margin-top: 32px;
}

.flow__layout {
	margin-top: 80px;
	padding-bottom: 120px;
}

.page-contact .page-contact__layout {
	margin-top: 50px;
}

.page-contact .page-contact__head {
	margin-top: 60px;
}

.page-contact .page-contact__head .texts {
	margin-top: 40px;
}

.page-contact .page-contact__form7 {
	margin-top: 40px;
}

.education .education-curriculum__layout {
	margin-top: 70px;
	padding-bottom: 120px;
}

.education .education-curriculum__head {
	margin-top: 40px;
}

.education .education-curriculum__items {
	margin-top: 60px;
}

.education .education-curriculum__items .education-curriculum__item {
	gap: 20px;
	padding: 40px 0px;
}

.education .education-curriculum__items .education-curriculum__item::before,
.education .education-curriculum__items .education-curriculum__item::after {
	width: 40px;
}

.education .education-curriculum__items .education-curriculum__item .layout {
	gap: 20px;
}

.education .education-curriculum__items .education-curriculum__item .heading .ja h2 {
	font-size: 20px;
}

.education .education-curriculum__items .education-curriculum__item .main .title {
	font-size: 20px;
}

.education .education-curriculum__items .education-curriculum__item .main .texts {
	padding-left: 0;
}

.education .education-curriculum__items .education-curriculum__item .main .texts p {
	font-size: 12px;
}

.education .education-curriculum__items .education-curriculum__item .main .texts p::before {
	height: 12px;
	top: 3px;
	width: 12px;
}

.education .education-reason__main .education-reason__pictures-head .education-reason__picture:nth-child(2) {
	margin-right: -20px;
	margin-top: 60px;
}

.education .education-reason__main .education-reason__heading {
	margin-top: 70px;
}

.education .education-reason__main .education-reason__pictures-bottom {
	margin-top: 70px;
}

.education .education-reason__main .education-reason__pictures-bottom .education-reason__picture:nth-child(2) {
	margin-left: -20px;
	margin-top: 60px;
}

.education .education-reason__texts {
	margin-top: 50px;
}

.education .education-reason__texts p {
	font-size: 16px;
}

.sales-promotion .features__layout {
	margin-top: 120px;
	padding-bottom: 50px;
}

.sales-promotion .features__items {
	margin-top: 40px;
}

.sales-promotion .features__item {
	padding: 24px 16px 32px;
}

.sales-promotion .features__item .heading {
	font-size: 20px;
}

.sales-promotion .features__item .explanation {
	margin-top: 16px;
}

.sales-promotion .sales-can__layout {
	margin-top: 60px;
}

.sales-promotion .sales-can__explanation {
	margin-top: 48px;
}

.sales-promotion .sales-can__bar {
	margin-top: 48px;
}

.sales-promotion .sales-can__bar::before {
	width: 40px;
}

.sales-promotion .sales-can__items .sales-can__item {
	gap: 32px;
	padding: 40px 0px;
}

.sales-promotion .sales-can__items .sales-can__item::before {
	width: 40px;
}

.sales-promotion .sales-can__items .sales-can__item .sales-can__main .title {
	font-size: 20px;
}

.sales-promotion .sales-can__items .sales-can__item .sales-can__main .texts {
	margin-top: 24px;
}

.sales-promotion .sales-can__items .sales-can__item .sales-can__main .example {
	margin-top: 24px;
}

.sales-promotion .promotion__layout {
	margin-top: 80px;
}

.sales-promotion .comparison__layout {
	margin-top: 130px;
	padding-bottom: 120px;
	padding-top: 32px;
}

.sales-promotion .comparison__picture {
	margin-top: 50px;
}

.strengths .big-picture__message-20 {
	font-size: 16px;
	line-height: 1.75;
	margin-top: 64px;
}

.strengths .big-picture__message-25 {
	font-size: 20px;
	line-height: 1.75;
	margin-top: 40px;
}

.strengths .big-picture__graph {
	margin-top: 40px;
}

.strengths .big-picture__items {
	margin-top: 50px;
}

.strengths .big-picture__item {
	padding: 50px 0 60px;
}

.strengths .big-picture__item::before {
	width: 50px;
}

.strengths .big-picture__item:last-child::after {
	width: 50px;
}

.strengths .big-picture__item .big-picture__heading .heading-ja {
	font-size: 20px;
}

.strengths .big-picture__item .big-picture__heading .heading-ja .bp-600 {
	display: block;
}

.strengths .big-picture__item .big-picture__main {
	gap: 24px;
	margin-top: 24px;
}

.strengths .big-picture__item .big-picture__main .main .title {
	font-size: 20px;
	line-height: 1.75;
}

.strengths .big-picture__item .big-picture__main .main .flex {
	gap: 24px;
	margin-top: 24px;
}

.strengths .big-picture__service {
	margin-top: 60px;
}

.strengths .big-picture__service .heading {
	font-size: 20px;
	line-height: 1.75;
}

.strengths .big-picture__service .items {
	margin-top: 32px;
}

.strengths .thinking__layout {
	margin-bottom: 100px;
}

.strengths .thinking__slick {
	top: 30%;
}

.strengths .thinking__title {
	font-size: 32px;
	line-height: 1.6666666667;
	margin-top: 90px;
}

.strengths .thinking__texts {
	margin-top: 50px;
}

.templates-a {
	margin: 50px 0;
}

.template-a__picture img {
	padding: 0 20px;
}

.template-a__main .button a {
	margin-left: auto;
	margin-right: auto;
}

.template-a--reverse .template-a__layout .template-a__picture {
	padding-left: 30px;
}

.template-a--reverse .template-a__layout .template-a__picture img {
	padding: 0;
}

.template-a--reverse .template-a__layout .template-a__main {
	padding-right: 20px;
}

.template-concerns .mt-110 {
	margin-top: 60px;
}

.template-concerns__blocks {
	margin-top: 24px;
}

.template-concerns__block {
	padding: 25px 15px;
}

.template-concerns__block .template-concerns__text .bp-600-not {
	display: none;
}

.template-concerns__block .template-concerns__text .bp-1024-600-not {
	display: none;
}

.template-concerns__message {
	margin-top: 32px;
}

.template-concerns__message p {
	font-size: 20px;
}

.template-concerns__message .bp-600 {
	display: block;
}

.template-cta--mt-160 {
	margin-top: 40px;
}

.template-cta--mt-120 {
	margin-top: 60px;
}

.template-profile .profile__layout {
	padding-bottom: 130px;
}

.template-profile .profile__main {
	gap: 30px;
	margin-top: 60px;
	padding: 24px 20px 30px;
}

.template-qa .template-qa__layout {
	margin-bottom: 80px;
	margin-top: 80px;
}

.template-reason .mt-220 {
	margin-top: 110px;
}

.template-reason .mt-120 {
	margin-top: 40px;
}

.template-reason .mt-100 {
	margin-top: 60px;
}

.template-reason .mt-60 {
	margin-top: 40px;
}

.template-reason .mt-50 {
	margin-top: 32px;
}

.template-reason .template-reason__layout {
	padding-bottom: 80px;
	padding-top: 50px;
}

.template-reason .template-reason__title {
	font-size: 22px;
}

.template-reason .template-reason__items {
	gap: 20px;
}

.template-reason .template-reason__item {
	padding: 28px 20px 40px;
}

.template-reason .template-reason__item .num {
	font-size: 45px;
}

.template-reason .template-reason__item .title {
	font-size: 18px;
}

.template-reason .template-reason__item .texts {
	margin-top: 24px;
}

.template-reason--top .template-reason__layout {
	margin-top: 50px;
	padding-bottom: 220px;
}

.template-reception {
	min-width: 345px;
}

.template-reception .template-reception__layout .main {
	padding: 8px 20px;
}

.template-reception .template-reception__layout .main p {
	font-size: 19px;
}

.template-reception .template-reception__layout .main .back {
	font-size: 18px;
	padding: 9px 20px;
}

.template-reception .template-reception__layout .foot {
	font-size: 10px;
}

.template-reception .template-reception__layout .foot .close {
	font-size: 9px;
}

.template-top__layout {
	margin-top: 60px;
	padding-left: 20px;
}

.template-top__heading {
	padding-right: 20px;
}

.template-top__main {
	gap: 40px;
	margin-top: 60px;
}

.template-top__message {
	padding-left: 10px;
	padding-right: 20px;
}

.template-top__message .heading {
	font-size: 25px;
}

.template-top__message .heading .bp-600 {
	display: block;
}

.template-top__message .sub-heading {
	font-size: 19px;
	margin-top: 40px;
}

.template-top__message .texts {
	margin-top: 48px;
}

.template-top__picture {
	padding-left: 10px;
}

}

@-webkit-keyframes animateTextBackground {

0% {
	background-position: -25% 0;
}

50% {
	background-position: 125% 0;
}

100% {
	background-position: -25% 0;
}

}

@keyframes animateTextBackground {

0% {
	background-position: -25% 0;
}

50% {
	background-position: 125% 0;
}

100% {
	background-position: -25% 0;
}

}

@-webkit-keyframes animateTextBackgroundReverse {

0% {
	background-position: 125% 0;
}

50% {
	background-position: -25% 0;
}

100% {
	background-position: 125% 0;
}

}

@keyframes animateTextBackgroundReverse {

0% {
	background-position: 125% 0;
}

50% {
	background-position: -25% 0;
}

100% {
	background-position: 125% 0;
}

}

@-webkit-keyframes zoomUp {

0% {
	-webkit-transform: scale(1);
	transform: scale(1);
}

100% {
	-webkit-transform: scale(1.15);
	transform: scale(1.15);
}

}

@keyframes zoomUp {

0% {
	-webkit-transform: scale(1);
	transform: scale(1);
}

100% {
	-webkit-transform: scale(1.15);
	transform: scale(1.15);
}

}

@-webkit-keyframes fade_first {

0% {
	opacity: 1;
}

50% {
	opacity: 1;
}

100% {
	opacity: 0;
}

}

@keyframes fade_first {

0% {
	opacity: 1;
}

50% {
	opacity: 1;
}

100% {
	opacity: 0;
}

}

@-webkit-keyframes fade_second {

0% {
	opacity: 0;
}

50% {
	opacity: 1;
}

100% {
	opacity: 1;
}

}

@keyframes fade_second {

0% {
	opacity: 0;
}

50% {
	opacity: 1;
}

100% {
	opacity: 1;
}

}

@-webkit-keyframes drawCircle {

to {
	stroke-dasharray: 314%;
}

}

@keyframes drawCircle {

to {
	stroke-dasharray: 314%;
}

}

@-webkit-keyframes fadeIn {

from {
	opacity: 0;
}

to {
	opacity: 1;
}

}

@keyframes fadeIn {

from {
	opacity: 0;
}

to {
	opacity: 1;
}

}

@-webkit-keyframes fadeInDown {

from {
	opacity: 0; /* transform でアニメーションの方向を管理 */
	-webkit-transform: translate3d(0, -70px, 0);
	transform: translate3d(0, -70px, 0);
}

to {
	opacity: 1;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
}

}

@keyframes fadeInDown {

from {
	opacity: 0; /* transform でアニメーションの方向を管理 */
	-webkit-transform: translate3d(0, -70px, 0);
	transform: translate3d(0, -70px, 0);
}

to {
	opacity: 1;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
}

}

@-webkit-keyframes fadeInUp {

from {
	opacity: 0; /* transform でアニメーションの方向を管理 */
	-webkit-transform: translate3d(0, 70px, 0);
	transform: translate3d(0, 70px, 0);
}

to {
	opacity: 1;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
}

}

@keyframes fadeInUp {

from {
	opacity: 0; /* transform でアニメーションの方向を管理 */
	-webkit-transform: translate3d(0, 70px, 0);
	transform: translate3d(0, 70px, 0);
}

to {
	opacity: 1;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
}

}

@-webkit-keyframes fadeInLeft {

from {
	opacity: 0; /* transform でアニメーションの方向を管理 */
	-webkit-transform: translate3d(-70px, 0, 0);
	transform: translate3d(-70px, 0, 0);
}

to {
	opacity: 1;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
}

}

@keyframes fadeInLeft {

from {
	opacity: 0; /* transform でアニメーションの方向を管理 */
	-webkit-transform: translate3d(-70px, 0, 0);
	transform: translate3d(-70px, 0, 0);
}

to {
	opacity: 1;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
}

}

@-webkit-keyframes fadeInRight {

from {
	opacity: 0; /* transform でアニメーションの方向を管理 */
	-webkit-transform: translate3d(70px, 0, 0);
	transform: translate3d(70px, 0, 0);
}

to {
	opacity: 1;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
}

}

@keyframes fadeInRight {

from {
	opacity: 0; /* transform でアニメーションの方向を管理 */
	-webkit-transform: translate3d(70px, 0, 0);
	transform: translate3d(70px, 0, 0);
}

to {
	opacity: 1;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
}

}


/*# sourceMappingURL=styles.css.map */
