@charset "utf-8";
:root {
	--primary-color: #33765a;
	--secondary-color: #ff5722;
	--red-color: #fa5d74;
	--font-black-color: #000;
	--font-white-color: #fff;
	--font-gray-1-color: #707070;
	--font-gray-2-color: #afafaf;
	--normal-font-weight: 400;
	--bold-font-weight: 700;
	--default-font-size: 16px;
	--default-line-height: 1.6;
	--default-letter-spacing: 0;
	--primary-bg-color: #fff;
	--secondary-bg-color: #edf7f7;
	--gray-1-color: #f0f0f0;
	--primary-border-color: #edf7f7;
	--border-gray-1-color: #f6f6f6;
	--border-gray-2-color: #dbdbdb;
	--primary-shadow: 0 3px 30px rgba(0, 0, 0, 0.2);
	--primary-border-radius: 4px;
	--default-container-width: 1120px;
	--container-padding: 20px;
	--body-min-width: 0;
	--primary-font: "Noto Sans JP", sans-serif;
	--font-size-16: 16px;
	--font-size-20: 20px;
	--font-size-21: 21px;
	--font-size-24: 24px;
	--font-size-27: 27px;
	--font-size-30: 30px;
	--font-size-32: 32px;
	--font-size-36: 36px;
	--font-size-40: 40px;
	--font-size-42: 42px;
	--font-size-48: 48px
}
@media (max-width:767px) {
	:root {
		--default-font-size: 15px;
		--font-size-16: 12px;
		--font-size-20: 14px;
		--font-size-21: 14px;
		--font-size-24: 15px;
		--font-size-27: 15px;
		--font-size-30: 18px;
		--font-size-32: 18px;
		--font-size-36: 19px;
		--font-size-40: 20px;
		--font-size-42: 20px;
		--font-size-48: 24px
	}
}
/*!
 * ress.css • v1.2.2
 * MIT License
 * github.com/filipelinhares/ress
 */

html {
	box-sizing: border-box;
	overflow-y: scroll;
	-webkit-text-size-adjust: 100%
}
*, :after, :before {
	box-sizing: inherit
}
:after, :before {
	text-decoration: inherit;
	vertical-align: inherit
}
* {
	padding: 0;
	margin: 0
}
audio:not([controls]) {
	display: none;
	height: 0
}
hr {
	overflow: visible
}
article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary {
	display: block
}
summary {
	display: list-item
}
small {
	font-size: 80%
}
[hidden], template {
	display: none
}
abbr[title] {
	border-bottom: 1px dotted;
	text-decoration: none
}
a {
	background-color: transparent;
	-webkit-text-decoration-skip: objects
}
a:active, a:hover {
	outline-width: 0
}
code, kbd, pre, samp {
	font-family: monospace, monospace
}
b, strong {
	font-weight: bolder
}
dfn {
	font-style: italic
}
mark {
	background-color: #ff0;
	color: #000
}
sub, sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline
}
sub {
	bottom: -.25em
}
sup {
	top: -.5em
}
input {
	border-radius: 0
}
[role=button], [type=button], [type=reset], [type=submit], button {
	cursor: pointer
}
[disabled] {
	cursor: default
}
[type=number] {
	width: auto
}
[type=search]::-webkit-search-cancel-button, [type=search]::-webkit-search-decoration {
	-webkit-appearance: none
}
textarea {
	overflow: auto;
	resize: vertical
}
button, input, optgroup, select, textarea {
	font: inherit
}
optgroup {
	font-weight: 700
}
button {
	overflow: visible
}
[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner {
	border-style: 0;
	padding: 0
}
[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button:-moz-focusring {
	outline: 1px dotted ButtonText
}
[type=reset], [type=submit], button, html [type=button] {
	-webkit-appearance: button
}
button, select {
	text-transform: none
}
button, input, select, textarea {
	background-color: transparent;
	border-style: none;
	color: inherit
}
select::-ms-expand {
	display: none
}
select::-ms-value {
	color: currentColor
}
legend {
	border: 0;
	color: inherit;
	display: table;
	max-width: 100%;
	white-space: normal
}
::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit
}
[type=search] {
	-webkit-appearance: textfield;
	outline-offset: -2px
}
img {
	border-style: none
}
progress {
	vertical-align: baseline
}
svg:not(:root) {
	overflow: hidden
}
audio, canvas, progress, video {
	display: inline-block
}
@media screen {
	[hidden~=screen] {
		display: inherit
	}
	[hidden~=screen]:not(:active):not(:focus):not(:target) {
		position: absolute!important;
		clip: rect(0 0 0 0)!important
	}
}
[aria-busy=true] {
	cursor: progress
}
[aria-controls] {
	cursor: pointer
}
[aria-disabled] {
	cursor: default
}
::-moz-selection {
	background-color: #b3d4fc;
	color: #000;
	text-shadow: none
}
::selection {
	background-color: #b3d4fc;
	color: #000;
	text-shadow: none
}
*, :after, :before {
	background-repeat: no-repeat
}
body {
	font-family: Noto Sans JP, sans-serif;
	font-family: var(--primary-font);
	color: #000;
	color: var(--font-black-color);
	font-weight: 400;
	font-weight: var(--normal-font-weight);
	font-size: 16px;
	font-size: var(--default-font-size);
	line-height: 1.6;
	line-height: var(--default-line-height);
	min-width: 1300px;
	letter-spacing: 0;
	letter-spacing: var(--default-letter-spacing);
	background-color: #fff;
	background-color: var(--primary-bg-color);
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased
}
@media (max-width:767px) {
	body {
		font-size: 15px;
		min-width: 0
	}
}
small {
	font-size: 100%
}
em {
	font-style: normal
}
a {
	color: #33765a;
	color: var(--primary-color);
	text-decoration: none;
	transition: opacity .25s ease-in-out
}
a:hover {
	opacity: .7
}
img {
	max-width: 100%;
	height: auto;
	vertical-align: middle
}
.container {
	max-width: 100%;
	width: 1120px;
	width: var(--default-container-width);
	margin: 0 auto;
	padding: 0 20px;
	padding: 0 var(--container-padding)
}
@media (max-width:767px) {
	.container {
		padding: 0 20px
	}
}
.container--relative {
	position: relative
}
.underline {
	text-decoration: none;
	border-bottom: 1px solid #000;
	padding-bottom: 5px;
	white-space: nowrap
}
.modal-shown {
	overflow: hidden
}
.accordion {
	padding: 24px 40px;
	border-bottom: 2px solid #181818
}
.accordion:first-child {
	border-top: 2px solid #181818
}
@media (max-width:767px) {
	.accordion {
		padding: 15px 15px 20px
	}
}
.accordion__heading {
	display: flex;
	align-items: center;
	position: relative
}
.accordion__toggle {
	width: 45px;
	height: 45px;
	margin-left: auto;
	transition: -webkit-transform .35s ease-in-out;
	transition: transform .35s ease-in-out;
	transition: transform .35s ease-in-out, -webkit-transform .35s ease-in-out;
	outline: 0;
	flex-shrink: 0;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='45' height='2'%3E%3Cpath fill-rule='evenodd' fill='%23111' d='M0 0h44.999v1.999H0V0z'/%3E%3C/svg%3E");
	background-position: 100%
}
@media (max-width:767px) {
	.accordion__toggle {
		width: 30px;
		height: 30px
	}
}
.accordion__toggle:before {
	content: "";
	display: block;
	position: absolute;
	top: -24px;
	bottom: -24px;
	left: -40px;
	right: -40px
}
@media (max-width:767px) {
	.accordion__toggle:before {
		top: -15px;
		bottom: -20px;
		left: -15px;
		right: -15px
	}
}
.accordion__toggle:after {
	content: "";
	position: absolute;
	display: block;
	width: 2px;
	height: 45px;
	left: auto;
	right: 21px;
	top: 0;
	bottom: 0;
	margin: auto;
	background-color: #111;
	transition: -webkit-transform .25s ease-in-out;
	transition: transform .25s ease-in-out;
	transition: transform .25s ease-in-out, -webkit-transform .25s ease-in-out
}
@media (max-width:767px) {
	.accordion__toggle:after {
		top: 0;
		bottom: 0;
		margin: auto;
		height: 30px;
		right: 15px
	}
}
.accordion__number {
	font-size: 56px;
	font-weight: 700;
	font-weight: var(--bold-font-weight);
	color: #006540;
	line-height: 1;
	margin-right: 30px
}
@media (max-width:767px) {
	.accordion__number {
		font-size: 38px;
		margin-right: 18px
	}
}
.accordion__title {
	font-weight: 700;
	font-weight: var(--bold-font-weight);
	font-size: 24px;
	letter-spacing: .05em
}
@media (max-width:767px) {
	.accordion__title {
		letter-spacing: 0;
		font-size: 16px;
		line-height: 1.5
	}
}
.accordion__second-title {
	background-color: #276245;
	color: #fff;
	font-size: 24px;
	text-align: center;
	margin-bottom: 30px;
	line-height: 2.1
}
@media (max-width:767px) {
	.accordion__second-title {
		font-size: 16px;
		line-height: 2.375;
		margin-bottom: 15px;
		margin-left: -15px;
		margin-right: -15px
	}
}
.accordion__content {
	max-height: 0;
	overflow: hidden;
	transition: all .1s ease-in-out
}
.accordion--open .accordion__content {
	max-height: 500px;
	transition: all .35s ease-in-out;
	margin-top: 20px
}
.accordion--open .accordion__toggle:after {
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg)
}
.accordion--program {
	border-bottom-color: #fff
}
.accordion--program .accordion__toggle {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='45' height='2'%3E%3Cpath fill-rule='evenodd' fill='%23FFF' d='M0 0h44.999v1.999H0V0z'/%3E%3C/svg%3E")
}
.accordion--program .accordion__toggle:after {
	background-color: #fff
}
.accordion--program:first-child {
	border-top-color: #fff
}
.accordion--program .accordion__number {
	color: #ffce2d
}
.accordion--program .accordion-column__image:after {
	background-color: #ffce2d
}
.accordion--faq {
	border-bottom-color: #fff;
	color: #fff
}
.accordion--faq .accordion__toggle {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='45' height='2'%3E%3Cpath fill-rule='evenodd' fill='%23FFF' d='M0 0h44.999v1.999H0V0z'/%3E%3C/svg%3E")
}
.accordion--faq .accordion__toggle:after {
	background-color: #fff
}
.accordion--faq:first-child {
	border-top-color: #fff
}
.accordion--faq .accordion__number {
	color: #ffce2d
}
.accordion--faq .accordion__title {
	display: flex;
	align-items: center
}
@media (max-width:767px) {
	.accordion--faq .accordion__title {
		margin-right: 20px
	}
}
.accordion--faq .accordion__title:before {
	content: "Q.";
	color: #ffce2d;
	font-weight: 700;
	font-weight: var(--bold-font-weight);
	font-size: 50px;
	margin-right: 30px;
	line-height: 1;
	width: 58px;
	text-align: right
}
@media (max-width:767px) {
	.accordion--faq .accordion__title:before {
		font-size: 35px;
		margin-right: 15px;
		width: 36px
	}
}
.accordion--faq .accordion__answer {
	display: flex;
	align-items: flex-start;
	padding-right: 60px
}
@media (max-width:767px) {
	.accordion--faq .accordion__answer {
		padding-right: 40px;
		font-size: 14px
	}
}
.accordion--faq .accordion__answer:before {
	content: "A.";
	color: #ffce2d;
	font-weight: 700;
	font-weight: var(--bold-font-weight);
	font-size: 50px;
	margin-right: 30px;
	line-height: 1;
	width: 58px;
	text-align: right;
	flex-shrink: 0;
	margin-top: -6px
}
@media (max-width:767px) {
	.accordion--faq .accordion__answer:before {
		font-size: 35px;
		margin-right: 15px;
		width: 36px
	}
}
.accordion--faq.accordion--open .accordion__content {
	margin-top: 36px
}
@media (max-width:767px) {
	.accordion--faq.accordion--open .accordion__content {
		margin-top: 20px
	}
}
.accordion-column {
	display: flex;
	justify-content: space-between
}
@media (max-width:767px) {
	.accordion-column {
		display: block
	}
}
.accordion-column__content {
	margin-right: 50px
}
@media (max-width:767px) {
	.accordion-column__content {
		margin-right: 0;
		margin-bottom: 15px
	}
}
.accordion-column__image {
	flex-shrink: 0;
	background-color: #fff;
	position: relative;
	overflow: hidden
}
@media (max-width:767px) {
	.accordion-column__image {
		margin-left: -15px;
		margin-right: -15px
	}
}
.accordion-column__image:before {
	background-color: #fff;
	-webkit-transform: translateX(0);
	transform: translateX(0);
	transition: -webkit-transform 0s linear 1s;
	transition: transform 0s linear 1s;
	transition: transform 0s linear 1s, -webkit-transform 0s linear 1s
}
.accordion-column__image:after, .accordion-column__image:before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0
}
.accordion-column__image:after {
	background-color: #006540;
	-webkit-transform: translateX(-100%);
	transform: translateX(-100%)
}
@media (max-width:767px) {
	.accordion-column__image {
		text-align: center
	}
	.accordion-column__image img {
		width: 100%
	}
}
.accordion-column__text {
	font-size: 18px
}
@media (max-width:767px) {
	.accordion-column__text {
		font-size: 14px
	}
}
.accordion-column__text--arrow {
	padding-bottom: 40px;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='14'%3E%3Cpath fill-rule='evenodd' fill='%23FFCE2D' d='M20.3.1L9.997 14 .1.1h20.2z'/%3E%3C/svg%3E");
	background-position: left 65px bottom 14px
}
@media (max-width:767px) {
	.accordion-column__text--arrow {
		background-size: 13px 9px;
		text-align: center;
		padding-bottom: 25px;
		background-position: center bottom 10px
	}
}
.accordion--open .accordion-column__image:before {
	-webkit-animation: imageinit 1.5s linear;
	animation: imageinit 1.5s linear;
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards
}
.accordion--open .accordion-column__image:after {
	-webkit-animation: slide-text 1.5s ease-in-out;
	animation: slide-text 1.5s ease-in-out
}
@-webkit-keyframes imageinit {
	0% {
		-webkit-transform: translateX(0);
		transform: translateX(0)
	}
	49% {
		-webkit-transform: translateX(0);
		transform: translateX(0)
	}
	50% {
		-webkit-transform: translateX(100%);
		transform: translateX(100%)
	}
	to {
		-webkit-transform: translateX(100%);
		transform: translateX(100%)
	}
}
.button {
	height: 54px;
	max-width: 100%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 27px;
	font-size: 15px;
	color: #000;
	letter-spacing: .05em;
	background-color: #fff
}
.button, .button--service {
	width: 230px
}
.button--news {
	border: 1px solid #000;
	width: 250px;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='23.917' height='5.853'%3E%3Cpath data-name='パス 686' d='M0 5.353h22.06L13.586.433' fill='none' stroke='%23000'/%3E%3C/svg%3E");
	background-position: right 25px center
}
.button--recruit {
    width: 220px;
	font-size: 13px;
}
.button--cta {
	width: 250px;
	background-color: #2690d4;
	color: #fff;
	font-weight: 700;
	font-weight: var(--bold-font-weight)
}
.button--cta:before {
	content: "";
	display: block;
	width: 20px;
	height: 15px;
	background-size: contain;
	margin-right: 7px;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20.191' height='15.218'%3E%3Cg data-name='グループ 770' fill='%23fff'%3E%3Cpath data-name='パス 1002' d='M.423 14.475L5.56 7.632C3.588 5.462.799 2.127.029 1.202a1.491 1.491 0 00-.029.29v12.234a1.484 1.484 0 00.33.932.626.626 0 01.093-.183z'/%3E%3Cpath data-name='パス 1003' d='M8.06 8.395c1.241 1.056 2.192 1.619 4.029-.12 2.04-1.931 7.249-8.039 7.3-8.1a1.479 1.479 0 00-.694-.173H1.492a1.477 1.477 0 00-.681.167c.214.255 5.837 7.018 7.249 8.226z'/%3E%3Cpath data-name='パス 1004' d='M14.57 7.544l5.2 6.931a.626.626 0 01.092.183 1.482 1.482 0 00.33-.932V1.492a1.475 1.475 0 00-.027-.276c-.75.877-3.509 4.087-5.595 6.328z'/%3E%3Cpath data-name='パス 1005' d='M13.683 8.474c-.267.274-.512.518-.724.719a4.367 4.367 0 01-2.933 1.47 4.423 4.423 0 01-2.785-1.305c-.2-.172-.48-.444-.807-.785l-4.987 6.644H18.745z'/%3E%3C/g%3E%3C/svg%3E")
}
.button--contact {
	height: 78px;
	width: 358px;
	background-color: #ed952e;
	border-radius: 39px;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='33.376' height='7.962'%3E%3Cpath data-name='パス 686' d='M0 7.463h31.52L19.413.433' fill='none' stroke='%23fff'/%3E%3C/svg%3E");
	background-position: right 35px center;
	color: #fff;
	font-size: 25px;
	letter-spacing: .025em;
	font-weight: 700;
	font-weight: var(--bold-font-weight)
}
.button--back {
	margin: 0 10px 0 0;
	height: 78px;
	width: 358px;
	background-color: #fff;
	border: 1px solid #ed952e;
	border-radius: 39px;
	background-position: left 35px center;
	color: #ed952e;
	font-size: 25px;
	letter-spacing: .025em;
	font-weight: 700;
	font-weight: var(--bold-font-weight)
}
@media (max-width:767px) {
	.button--back, .button--contact {
		height: 60px;
		width: 280px;
		border-radius: 30px;
		font-size: 20px
	}
	.button--back {
		margin: 0 0 10px 0
	}
}
.button--ext {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15.718' height='15.719'%3E%3Cg data-name='グループ 1141'%3E%3Cpath data-name='パス 1328' d='M11.527 13.832H1.883V4.191h3.473V2.305H-.003v13.414h13.416v-5.09h-1.886z'/%3E%3Cpath data-name='パス 1329' d='M9.337-.004v1.886h3.16L6.039 8.34l1.334 1.334 6.458-6.458v3.16h1.886v-6.38z'/%3E%3C/g%3E%3C/svg%3E");
	background-position: right 29px center
}
.button--pdf:before {
	content: "";
	display: block;
	width: 20px;
	height: 23px;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='19.827' height='22.699'%3E%3Cg data-name='グループ 5072' transform='translate(-194.197 -160.456)'%3E%3Cg data-name='グループ 5070'%3E%3Cpath data-name='パス 3819' d='M209.441 160.456h-11.574a1.177 1.177 0 00-1.177 1.177v20.345a1.177 1.177 0 001.177 1.177h14.98a1.177 1.177 0 001.177-1.177v-16.454a1.176 1.176 0 00-.291-.775l-3.406-3.891a1.177 1.177 0 00-.886-.402zm3.315 4.964h-3.3v-3.763zm.091 16.559h-14.98v-20.346h10.416v3.786a1.177 1.177 0 001.174 1.181h3.387z' fill='%23333'/%3E%3C/g%3E%3Crect data-name='長方形 22670' width='11.77' height='5.479' rx='2.739' transform='translate(194.197 164.575)' fill='%23fc2130'/%3E%3Cpath data-name='長方形 22671' d='M200.513 172.59h9.5a.6.6 0 01.6.6.6.6 0 01-.6.6h-9.5a.6.6 0 01-.6-.6.6.6 0 01.6-.6z' fill='%23333'/%3E%3Cpath data-name='長方形 22672' d='M200.513 175.154h9.5a.6.6 0 01.6.6.6.6 0 01-.6.6h-9.5a.6.6 0 01-.6-.6.6.6 0 01.6-.6z' fill='%23333'/%3E%3Cpath data-name='長方形 22673' d='M200.513 177.718h9.5a.6.6 0 01.6.6.6.6 0 01-.6.6h-9.5a.6.6 0 01-.6-.6.6.6 0 01.6-.6z' fill='%23333'/%3E%3Cg data-name='グループ 5071' fill='%23fff'%3E%3Cpath data-name='パス 3820' d='M197.409 165.795c.658 0 1.114.307 1.114.978a.948.948 0 01-1.08.969h-.68v1.093h-.661v-3.039zm-.649 1.422h.594c.3 0 .521-.1.521-.435s-.222-.44-.517-.44h-.6z'/%3E%3Cpath data-name='パス 3821' d='M198.947 165.795h1.232a1.52 1.52 0 010 3.039h-1.229zm1.148 2.489c.611 0 .884-.354.884-.965s-.282-.965-.884-.965h-.487v1.93z'/%3E%3Cpath data-name='パス 3822' d='M204.25 166.354h-1.477v.7h1.285v.529h-1.285v1.247h-.666v-3.039h2.143z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
	background-size: contain;
	flex-shrink: 0;
	margin-right: 10px
}
.footer {
	background-color: #f6f6f6
}
.footer__wrap {
	padding: 65px 0 115px;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-gap: 27px;
	gap: 27px
}
@media (max-width:767px) {
	.footer__wrap {
		display: none
	}
}
.footer-nav {
	list-style: none;
	font-size: 14px
}
.footer-nav__name {
	font-weight: 700;
	font-weight: var(--bold-font-weight);
	line-height: 1.2;
	border-bottom: 1px solid #ddd;
	padding-bottom: 12px;
	margin-bottom: 20px
}
.footer-nav__content {
	line-height: 1.2
}
.footer-nav__content:not(:last-child) {
	margin-bottom: 14px
}
.footer-nav a {
	color: inherit;
	text-decoration: none;
	display: flex;
	align-items: center
}
.footer-nav a.ex:after {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg data-name='グループ 28707' xmlns='http://www.w3.org/2000/svg' width='15.718' height='15.719'%3E%3Cpath data-name='パス 1328' d='M11.527 13.832H1.883V4.191h3.473V2.305H-.003v13.414h13.416v-5.09h-1.886z'/%3E%3Cpath data-name='パス 1329' d='M9.338-.004v1.886h3.16L6.04 8.34l1.334 1.334 6.458-6.458v3.16h1.886v-6.38z'/%3E%3C/svg%3E");
	width: 16px;
	height: 16px;
	background-size: contain;
	content: "";
	display: block;
	margin-left: 7px
}
.footer-bottom {
	background-color: #fff;
	padding: 30px 0
}
@media (max-width:767px) {
	.footer-bottom {
		text-align: center
	}
}
.footer-bottom__wrap {
	display: grid;
	align-items: flex-end;
	letter-spacing: .05em;
	line-height: 1.8666666;
	font-size: 14px;
	grid-template-columns: 2fr auto auto auto;
	gap: 25px;
}
@media (max-width:767px) {
	.footer-bottom__wrap {
		font-size: 13px;
		line-height: 1.84615;
		flex-wrap: wrap;
		grid-template-columns: 1fr 1fr;
		gap: 0 35px;
	}
}
@media (max-width:767px) {
	.footer-bottom__address {
		margin-bottom: 25px;
		grid-column: 1 / span 2;
	}
}
.footer-bottom .privacy {
	width: 65px;
}
.footer-bottom .jpx {
	width: 55px;
}

.copyright {
	font-size: 12px
}
.header {
	position: relative;
	left: 0;
	right: 0;
	top: 0;
	z-index: 6000;
	background-color: #fff;
	transition: all .35s ease-in-out
}
.header--scrolled {
	position: sticky
}
@media (min-width:768px) {
	.header--scrolled .header__logo {
		opacity: 1
	}
}
.header__wrap {
	max-width: 100%;
	height: 90px;
	margin: 0 auto;
	display: flex;
	padding: 0 40px
}
@media (max-width:767px) {
	.footer-bottom .privacy {
		grid-row: 2;
		place-self: flex-end;
	}
	.footer-bottom .jpx {
		grid-row: 2;
		place-self: flex-start;
	}
	.copyright {
		margin-top: 25px;
		grid-column: 1 / span 2;
	}
	.header__wrap {
		height: 70px;
		padding-left: 20px;
		padding-right: 0
	}
}
.header__logo {
	display: flex;
	align-items: center;
	margin-right: auto
}
@media (min-width:768px) {
	.header__logo {
		opacity: 0
	}
}
@media (max-width:767px) {
	.header__logo img {
		width: 180px
	}
}
.header__nav {
	display: flex;
	justify-content: center
}
@media (max-width:767px) {
	.header__nav {
		display: none
	}
}
@media (max-width:767px) {
	.header__nav--open {
		display: flex;
		justify-content: center;
		padding: 94px 60px 80px 40px;
		position: fixed;
		top: 0;
		left: 95px;
		right: 0;
		height: 100vh;
		background-color: #000;
		color: #fff
	}
	.header__nav--open:before {
		content: "";
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		left: -95px;
		width: 95px;
		background-color: rgba(0, 0, 0, .5)
	}
}
@media (min-width:768px) {
	.header__toggle {
		display: none
	}
}
.header__buttons {
	display: flex;
	align-items: center;
	margin-left: auto;
	margin-right: 36px
}
@media (max-width:767px) {
	.header__buttons {
		margin-right: 8px
	}
}
.toggle {
	width: 76px;
	height: 90px;
	position: relative;
	z-index: 15000;
	background-color: #000
}
@media (max-width:767px) {
	.toggle {
		width: 70px;
		height: 70px
	}
}
.toggle--open .toggle__bar--1 {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	top: 44px
}
@media (max-width:767px) {
	.toggle--open .toggle__bar--1 {
		top: 33px
	}
}
.toggle--open .toggle__bar--2 {
	opacity: 0
}
.toggle--open .toggle__bar--3 {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	top: 44px
}
@media (max-width:767px) {
	.toggle--open .toggle__bar--3 {
		top: 33px;
		width: 30px;
		right: 0
	}
}
.toggle__bar {
	width: 35px;
	height: 2px;
	display: block;
	left: 0;
	right: 0;
	margin: 0 auto;
	border-radius: 1.5px;
	position: absolute;
	transition: all .2s ease-out
}
@media (max-width:767px) {
	.toggle__bar {
		width: 30px;
		height: 2px
	}
}
.toggle__bar--1 {
	top: 30px;
	background-color: #fff
}
@media (max-width:767px) {
	.toggle__bar--1 {
		top: 23px
	}
}
.toggle__bar--2 {
	top: 44px;
	background-color: #fff
}
@media (max-width:767px) {
	.toggle__bar--2 {
		top: 33px
	}
}
.toggle__bar--3 {
	top: 58px;
	background-color: #fff
}
@media (max-width:767px) {
	.toggle__bar--3 {
		top: 43px;
		width: 15px;
		right: 15px
	}
}
.global-nav {
	display: flex;
	list-style: none
}
@media (max-width:767px) {
	.global-nav {
		display: block
	}
}
.global-nav__item {
	display: flex;
	align-items: center;
	font-weight: 700;
	font-weight: var(--bold-font-weight);
	letter-spacing: .025em
}
@media (max-width:767px) {
	.global-nav__item {
		font-size: 17px
	}
}
.global-nav__item:not(:last-child) {
	margin-right: 35px
}
@media (max-width:767px) {
	.global-nav__item:not(:last-child) {
		margin-right: 0;
		margin-bottom: 30px
	}
}
.global-nav__link {
	color: inherit;
	text-decoration: none
}
.heading-column {
	display: flex;
	align-items: baseline;
	justify-content: space-between
}
@media (max-width:767px) {
	.heading-column {
		display: block
	}
}
.heading-column__text {
	font-size: 14px
}
@media (max-width:767px) {
	.heading-column__text {
		font-size: 16px;
		margin-top: 30px;
		line-height: 1.642857
	}
}
.page-lead {
	font-size: 30px;
	font-weight: 700;
	font-weight: var(--bold-font-weight);
	letter-spacing: .05em;
	line-height: 1.466666;
	margin-bottom: 36px
}
@media (max-width:767px) {
	.page-lead {
		font-size: 20px;
		margin-bottom: 20px
	}
}
.section-lead {
	margin: 22px 0 28px;
	font-size: 20px;
	line-height: 1.5;
	letter-spacing: .05em
}
@media (max-width:767px) {
	.section-lead {
		margin-bottom: 20px
	}
}
.page-text {
	letter-spacing: .05em;
	line-height: 1.875
}
.red {
	color: red
}
.mark {
	background: linear-gradient(transparent 70%, #ff0 0)
}
.contact-form {
	padding: 0 90px
}
@media (max-width:767px) {
	.contact-form {
		padding: 0;
		border-top: 1px solid #ddd
	}
}
.input-group {
	display: flex;
	align-items: flex-start;
	margin-bottom: 24px
}
.input-group--wrap {
	flex-wrap: wrap
}
.input-group--wrap .input-group__name {
	width: 100%;
	margin-bottom: 15px
}
@media (max-width:767px) {
	.input-group {
		display: block;
		padding: 28px 0;
		border-bottom: 1px solid #ddd;
		margin-bottom: 0
	}
}
.input-group__name {
	width: 180px;
	flex-shrink: 0;
	font-size: 20px;
	margin-right: 20px;
	padding-top: 15px
}
.input-group__name, .input-group__name label {
	display: flex;
	justify-content: space-between;
	align-items: center
}
.input-group__name label {
	width: 100%
}
.input-group__name .require {
	flex-shrink: 0
}
@media (max-width:767px) {
	.input-group__name .require {
		margin-right: 10px
	}
}
@media (max-width:767px) {
	.input-group__name {
		width: auto;
		justify-content: space-between;
		align-items: baseline;
		margin-right: 0;
		margin-bottom: 10px;
		line-height: 1.5;
		padding-top: 0;
		padding-left: 0;
		font-size: 18px
	}
}
.input-group__content {
	max-width: 100%;
	font-size: 16px;
	flex: 1
}
.input-group__input {
	background-color: #f8f8f8;
	border: 1px solid #ccc;
	border-radius: 10px;
	width: 100%;
	max-width: 100%;
	padding: 16px 12px;
	color: #000;
	color: var(--font-black-color)
}
.input-group__input--zip {
	width: 125px
}
@media (max-width:767px) {
	.input-group__input--zip {
		margin-bottom: 10px
	}
}
.input-group__input--fullwidth {
	width: 100%
}
.input-group__input:-moz-placeholder-shown {
	color: #c7c7c7
}
.input-group__input:-ms-input-placeholder {
	color: #c7c7c7
}
&__input:-moz-placeholder-shown {
	color: #c7c7c7
}
&__input:-ms-input-placeholder {
	color: #c7c7c7
}
.input-group__input:placeholder-shown {
	color: #c7c7c7
}
@media (max-width:767px) {
	.input-group__input {
		height: 60px;
		font-size: 16px
	}
}
.input-group__input::-webkit-input-placeholder {
	color: #90b0a9
}
.input-group__input::-moz-placeholder {
	color: #90b0a9
}
.input-group__input:-ms-input-placeholder {
	color: #90b0a9
}
.input-group__input::-ms-input-placeholder {
	color: #90b0a9
}
&__input::-webkit-input-placeholder {
	color: #90b0a9
}
&__input::-moz-placeholder {
	color: #90b0a9
}
&__input:-ms-input-placeholder {
	color: #90b0a9
}
&__input::-ms-input-placeholder {
	color: #90b0a9
}
.input-group__input::placeholder {
	color: #90b0a9
}
.input-group__textarea {
	width: 100%;
	display: block;
	max-width: 100%;
	padding: 9px 12px;
	color: #000;
	color: var(--font-black-color);
	background-color: #f8f8f8;
	border: 1px solid #ccc;
	border-radius: 10px
}
@media (max-width:767px) {
	.input-group__textarea {
		font-size: 16px
	}
}
.input-group__textarea::-webkit-input-placeholder {
	color: #90b0a9
}
.input-group__textarea::-moz-placeholder {
	color: #90b0a9
}
.input-group__textarea:-ms-input-placeholder {
	color: #90b0a9
}
.input-group__textarea::-ms-input-placeholder {
	color: #90b0a9
}
&__textarea::-webkit-input-placeholder {
	color: #90b0a9
}
&__textarea::-moz-placeholder {
	color: #90b0a9
}
&__textarea:-ms-input-placeholder {
	color: #90b0a9
}
&__textarea::-ms-input-placeholder {
	color: #90b0a9
}
.input-group__textarea::placeholder {
	color: #90b0a9
}
.required {
	background-color: #2690d4;
	color: #fff;
	font-size: 15px;
	width: 44px;
	height: 29px;
	display: inline-flex;
	align-items: center;
	justify-content: center
}
.required--option {
	background-color: #aaa
}
.input-radio-group {
	display: flex;
	flex-wrap: wrap;
	padding-top: 12px
}
@media (max-width:767px) {
	.input-radio-group {
		flex-direction: column
	}
}
.input-radio {
	margin-right: 40px;
	font-size: 20px
}
@media (max-width:767px) {
	.input-radio {
		margin-right: 0;
		font-size: 18px;
		line-height: 2.333333
	}
}
.input-group-zip {
	display: flex;
	align-items: center;
	margin-bottom: 12px
}
.input-group-zip input {
	width: 190px;
	margin: 0 8px
}
.input-group-zip button {
	background-color: #aaa;
	border: 1px solid #ccc;
	border-radius: 10px;
	height: 60px;
	width: 105px;
	display: inline-flex;
	color: #fff
}
.form-confirm, .input-group-zip button {
	align-items: center;
	justify-content: center
}
.form-confirm {
	display: flex;
	margin-bottom: 45px
}
@media (max-width:767px) {
	.form-confirm {
		padding-top: 24px;
		margin-bottom: 40px;
		font-size: 15px
	}
}
.form-confirm a {
	color: inherit;
	text-decoration: underline
}
@media (max-width:767px) {
	.form-confirm label {
		display: flex;
		align-items: center
	}
	.form-confirm label input {
		margin-right: 25px;
		-webkit-transform: scale(3);
		transform: scale(3)
	}
}
.form-submit {
	text-align: center
}
.top-hero {
	height: 850px;
	position: relative
}
@media (max-width:767px) {
	.top-hero {
		height: 400px
	}
}
.top-hero:before {
	content: "";
	position: absolute;
	top: -90px;
	left: 0;
	width: 250px;
	height: 250px;
	background-color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	/* background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='127.638' height='79.904'%3E%3Cpath d='M21.588 14.112a7.067 7.067 0 003.906-6.468c0-4.578-3.78-7.644-11.13-7.644H0v29.4h15.2c7.732 0 11.761-2.94 11.761-8.022a7.26 7.26 0 00-5.373-7.266zm-8.064-8.988c3.318 0 5.124 1.134 5.124 3.444s-1.806 3.486-5.124 3.486H6.761v-6.93zM14.7 24.276H6.761V17.01h7.938c3.528 0 5.418 1.176 5.418 3.654.001 2.52-1.889 3.612-5.417 3.612zM56.196 29.4h7.14L50.19 0h-6.72L30.366 29.4h6.972l2.6-6.3h13.65zm-14.07-11.466l4.662-11.256 4.662 11.256zm47.964-3.822a7.067 7.067 0 003.906-6.468c0-4.578-3.78-7.644-11.13-7.644H68.502v29.4h15.2c7.728 0 11.76-2.94 11.76-8.022a7.26 7.26 0 00-5.372-7.266zm-8.064-8.988c3.318 0 5.124 1.134 5.124 3.444s-1.806 3.486-5.124 3.486h-6.765v-6.93zm1.176 19.152h-7.941V17.01h7.938c3.528 0 5.418 1.176 5.418 3.654.003 2.52-1.887 3.612-5.415 3.612zM127.638 0h-6.677l-7.855 13.062L105.252 0h-7.224l11.382 18.9v10.5h6.8V18.984zM23.415 79.9c6.93 0 10.584-3.57 10.584-10.836V50H16.905v5.46h10.332v13.986c0 3.234-1.428 4.872-4.158 4.872-2.1 0-3.864-1.092-5.46-3.234l-3.78 4.536a11.825 11.825 0 009.576 4.28zm33.642 0c9.24 0 16.086-6.426 16.086-15.2s-6.846-15.2-16.082-15.2c-9.282 0-16.086 6.468-16.086 15.2s6.8 15.2 16.086 15.2zm0-5.8c-5.25 0-9.2-3.822-9.2-9.408s3.948-9.408 9.2-9.408 9.2 3.822 9.2 9.408-3.95 9.416-9.196 9.416zm44.9-10a7.067 7.067 0 003.904-6.456c0-4.578-3.78-7.644-11.13-7.644H80.367v29.4h15.2c7.728 0 11.76-2.94 11.76-8.022a7.26 7.26 0 00-5.372-7.266zm-8.066-8.976c3.318 0 5.124 1.134 5.124 3.444s-1.806 3.486-5.124 3.486h-6.762v-6.93zm1.176 19.152h-7.938V67.01h7.938c3.528 0 5.418 1.176 5.418 3.654 0 2.52-1.89 3.612-5.418 3.612z'/%3E%3C/svg%3E"); */
	background-position: 50%;
	z-index: 8000;
    background-image: url('../images/logo-big.svg');
	background-size: 180px;
}
@media (max-width:767px) {
	.top-hero:before {
		content: none;
		display: none
	}
}
.top-hero__wrap {
	height: 850px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: relative;
	color: #fff;
	z-index: 20
}
@media (max-width:767px) {
	.top-hero__wrap {
		height: 400px
	}
}
.top-hero-slider {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 20px;
	left: 20px
}
.top-hero-slider__slides {
	height: 840px;
	position: relative;
	width: auto!important;
	-webkit-transform: none!important;
	transform: none!important;
	transition: none!important;
	background-color: #000
}
@media (max-width:767px) {
	.top-hero-slider__slides {
		height: 400px
	}
}
.top-hero-slider__slide {
	opacity: 0;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	transition: opacity .35s ease-in-out
}
.top-hero-slider__slide.glide__slide--active {
	opacity: 1
}
.top-hero-slider img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover
}
.top-hero__title {
	font-size: 70px;
	font-weight: 700;
	font-weight: var(--bold-font-weight);
	letter-spacing: .025em;
	line-height: 1.27143;
	margin-bottom: 22px
}
@media (max-width:767px) {
	.top-hero__title {
		font-size: 40px;
		line-height: 1.2;
		margin-bottom: 15px;
		text-align: center;
		padding-left: 25px
	}
}
.top-hero__text {
	font-weight: 700;
	font-weight: var(--bold-font-weight);
	letter-spacing: .05em;
	line-height: 1.2
}
@media (max-width:767px) {
	.top-hero__text {
		font-size: 14px;
		line-height: 1.642857;
		text-align: center
	}
}
.section-heading {
	display: flex;
	align-items: baseline
}
.section-heading__title {
	font-weight: 700;
	font-weight: var(--bold-font-weight);
	font-size: 50px;
	line-height: 1.2;
	letter-spacing: 0
}
@media (max-width:767px) {
	.section-heading__title {
		font-size: 35px
	}
}
.section-heading__subhead {
	letter-spacing: .05em;
	line-height: 1.5;
	margin-left: 17px;
	font-size: 14px
}
@media (max-width:767px) {
	.section-heading__subhead {
		font-size: 12px;
		margin-left: 13px
	}
}
.section-heading__subhead:before {
	content: "/  "
}
.section-heading--small .section-heading__title {
	font-size: 40px
}
@media (max-width:767px) {
	.section-heading--small .section-heading__title {
		font-size: 30px
	}
}
.page-section {
	padding: 80px 0 100px
}
@media (max-width:767px) {
	.page-section {
		padding: 30px 0 50px;
		scroll-margin-top: 70px;
	}
}
.page-section--gray {
	background-color: #f8f8f8
}
.page-column {
	display: flex;
	justify-content: flex-end;
	align-items: center
}
@media (max-width:767px) {
	.page-column {
		display: block;
		padding-left: 20px;
		padding-right: 20px
	}
}
.page-column__content {
	margin-left: auto;
	padding-right: 25px;
	width: 515px;
	margin-right: 25px
}
@media (max-width:767px) {
	.page-column__content {
		width: auto;
		margin-right: 0;
		margin-left: 0;
		padding-right: 0
	}
}
.page-column__image {
	width: 50%;
	height: 500px;
	overflow: hidden;
	position: relative
}
@media (max-width:767px) {
	.page-column__image {
		width: auto;
		height: auto;
		display: none!important
	}
}
.page-column__image img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover
}
.page-column__image:before {
	background-color: #fff;
	-webkit-transform: translateX(0);
	transform: translateX(0);
	transition: -webkit-transform 0s linear .5s;
	transition: transform 0s linear .5s;
	transition: transform 0s linear .5s, -webkit-transform 0s linear .5s
}
.page-column__image:after, .page-column__image:before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0
}
.page-column__image:after {
	background-color: #000;
	-webkit-transform: translateX(-100%);
	transform: translateX(-100%)
}
.page-column--reverse {
	flex-direction: row-reverse
}
.page-column--reverse .page-column__image {
	margin-right: 78px
}
.page-column--reverse .page-column__content {
	margin-right: 0;
	margin-left: 0;
	width: 462px;
	padding-right: 0
}
@media (max-width:767px) {
	.page-column--reverse .page-column__content {
		width: auto;
		margin-right: 0;
		margin-left: 0;
		padding-right: 0
	}
}
.page-column--section {
	padding: 45px 0
}
@media (max-width:767px) {
	.page-column--section {
		padding: 0 20px
	}
	.page-column--section:not(:last-child) {
		margin-bottom: 40px
	}
}
.page-column--section .page-column__image {
	width: 53.125%;
	height: 550px
}
@media (max-width:767px) {
	.page-column--section .page-column__image {
		width: auto;
		height: auto
	}
}
.page-column--section .page-column__content {
	margin-right: 0;
	margin-left: 0;
	width: 490px;
	padding-right: 0
}
@media (max-width:767px) {
	.page-column--section .page-column__content {
		width: auto;
		margin-right: 0;
		margin-left: 0;
		padding-right: 0
	}
}
.page-column--section.page-column--reverse .page-column__image {
	margin-right: 90px
}
@media (max-width:767px) {
	.page-column--section.page-column--reverse .page-column__image {
		margin-right: 0
	}
}
.page-column--section.page-column--reverse .page-column__content {
	width: 400px
}
@media (max-width:767px) {
	.page-column--section.page-column--reverse .page-column__content {
		width: auto
	}
}
.recruit-buttons {
	display: flex;
    flex-wrap: wrap;
	justify-content: flex-start;
	margin-top: 30px
}
@media (max-width:767px) {
	.recruit-buttons {
		display: block;
		margin-top: 20px;
		text-align: center
	}
}
.recruit-buttons .button:not(:last-child) {
	margin-right: 10px;
    margin-bottom: 14px;
}
@media (max-width:767px) {
	.recruit-buttons .button:not(:last-child) {
		margin-right: 0;
		margin-bottom: 14px
	}
}
.sp-image {
	margin-bottom: 28px;
	text-align: center
}
.sp-image img {
	width: 100%
}
@media (min-width:768px) {
	.sp-image {
		display: none
	}
}
.sp-image--wide {
	margin-left: -20px;
	margin-right: -20px
}
.fade--shown .page-column__image:before {
	-webkit-animation: imageinit .75s linear;
	animation: imageinit .75s linear;
	-webkit-animation-fill-mode: forwards;
	animation-fill-mode: forwards
}
.fade--shown .page-column__image:after {
	-webkit-animation: slide-text .75s ease-in-out;
	animation: slide-text .75s ease-in-out
}
@-webkit-keyframes slide-text {
	0% {
		-webkit-transform: translateX(-100%);
		transform: translateX(-100%)
	}
	35% {
		-webkit-transform: translateX(0);
		transform: translateX(0)
	}
	65% {
		-webkit-transform: translateX(0);
		transform: translateX(0)
	}
	to {
		-webkit-transform: translateX(100%);
		transform: translateX(100%)
	}
}
@keyframes slide-text {
	0% {
		-webkit-transform: translateX(-100%);
		transform: translateX(-100%)
	}
	35% {
		-webkit-transform: translateX(0);
		transform: translateX(0)
	}
	65% {
		-webkit-transform: translateX(0);
		transform: translateX(0)
	}
	to {
		-webkit-transform: translateX(100%);
		transform: translateX(100%)
	}
}
@keyframes imageinit {
	0% {
		-webkit-transform: translateX(0);
		transform: translateX(0)
	}
	49% {
		-webkit-transform: translateX(0);
		transform: translateX(0)
	}
	50% {
		-webkit-transform: translateX(100%);
		transform: translateX(100%)
	}
	to {
		-webkit-transform: translateX(100%);
		transform: translateX(100%)
	}
}
.vision .section-heading {
	margin-bottom: 30px
}
@media (max-width:767px) {
	.vision .section-heading {
		margin-bottom: 30px
	}
}
.service .section-heading {
	margin-bottom: 40px
}
@media (max-width:767px) {
	.service .section-heading {
		margin-bottom: 30px
	}
}
.service-list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-gap: 30px;
	gap: 30px
}
@media (max-width:767px) {
	.service-list {
		grid-template-columns: repeat(1, 1fr);
		grid-gap: 40px;
		gap: 40px
	}
}
.service-list__item {
	display: flex;
	flex-direction: column
}
.service-list__image {
	margin-bottom: 32px
}
@media (max-width:767px) {
	.service-list__image {
		margin-bottom: 28px
	}
}
.service-list__image img {
	width: 100%
}
.service-list__title {
	text-align: center;
	font-weight: 700;
	font-weight: var(--bold-font-weight);
	font-size: 18px;
	letter-spacing: -.015em;
	line-height: 1.777777;
	margin-bottom: 29px
}
@media (max-width:767px) {
	.service-list__title {
		margin-bottom: 20px
	}
}
@media (min-width:768px) {
	.service-list__title {
		display: flex;
		justify-content: center;
		align-items: center;
		min-height: 95px;
	}
}
.service-list__text {
	font-size: 15px;
	letter-spacing: .05em;
	line-height: 2;
	margin-bottom: 36px
}
@media (max-width:767px) {
	.service-list__text {
		margin-bottom: 20px
	}
}
.service-list__buttons {
	margin-top: auto;
	text-align: center
}
.sdgs .heading-column {
	margin-bottom: 45px
}
@media (max-width:767px) {
	.sdgs .heading-column {
		margin-bottom: 30px
	}
}
.sp-sdgs-lead {
	font-size: 14px;
	text-align: center
}
@media (min-width:768px) {
	.sp-sdgs-lead {
		display: none
	}
}
.sdgs-list {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-gap: 27px;
	gap: 27px;
	margin-top: 60px
}
@media (max-width:767px) {
	.sdgs-list {
		grid-template-columns: repeat(2, 1fr);
		grid-gap: 20px 17px;
		gap: 20px 17px;
		margin-top: 30px
	}
}
.sdgs-list__item {
	display: flex;
	flex-direction: column
}
.sdgs-list__image {
	margin-bottom: 22px
}
@media (max-width:767px) {
	.sdgs-list__image {
		margin-bottom: 14px
	}
}
.sdgs-list__image img {
	width: 250px;
	image-rendering: -webkit-optimize-contrast
}
.sdgs-list__title {
	text-align: center;
	font-weight: 700;
	font-weight: var(--bold-font-weight);
	font-size: 18px;
	letter-spacing: -.015em;
	line-height: 1.777777;
	margin-bottom: 19px
}
@media (max-width:767px) {
	.sdgs-list__title {
		font-size: 16px;
		margin-bottom: 12px;
		line-height: 1.125
	}
}
.sdgs-list__text {
	font-size: 14px;
	letter-spacing: .05em;
	line-height: 1.85714
}
@media (max-width:767px) {
	.sdgs-list__text {
		line-height: 1.3125
	}
}
.sdgs-list__logos {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 18px
}
@media (max-width:767px) {
	.sdgs-list__logos {
		margin-bottom: 12px
	}
}
.sdgs-list__logos img {
	width: 75px;
	height: 75px;
	image-rendering: -webkit-optimize-contrast
}
@media (max-width:767px) {
	.sdgs-list__logos img {
		width: 48px;
		height: 48px
	}
}
.sdgs-list__logos img:not(:last-child) {
	margin-right: 6px
}
@media (max-width:767px) {
	.sdgs-list__logos img:not(:last-child) {
		margin-right: 4px
	}
}
@media (max-width:767px) {
	.about .heading-column {
		margin-bottom: 30px
	}
}
.company-list {
	margin-top: 25px
}
.company-list__item {
	display: flex;
	line-height: 2.285714;
	font-size: 14px;
	letter-spacing: .05em
}
@media (max-width:767px) {
	.company-list__item {
		display: block;
		line-height: 1.75
	}
	.company-list__item:not(:last-child) {
		margin-bottom: 20px
	}
}
.company-list__name {
    width: 230px;
	flex-shrink: 0;
	position: relative
}
@media (max-width:767px) {
	.company-list__name {
		border-bottom: 1px solid #ddd;
		padding-bottom: 6px;
		margin-bottom: 8px;
		width: auto
	}
}
.company-list__name:after {
	content: "：";
	position: absolute;
	right: 4px;
	bottom: 0;
	top: 0
}
@media (max-width:767px) {
	.company-list__name:after {
		content: none;
		display: none
	}
}
.company-list--history .company-list__name {
	width: 55px
}
@media (max-width:767px) {
	.company-list--history .company-list__name {
		width: auto
	}
}
.company-list--history .company-list__name:after {
	content: none;
	display: none
}
.message-name {
	margin-top: 30px
}
@media (max-width:767px) {
	.message-name {
		margin-top: 20px
	}
}
.message-name strong {
	font-weight: 400;
	font-size: 20px
}
@media (max-width:767px) {
	.message-name strong {
		font-size: 16px
	}
}
.news-list {
	margin-top: 40px;
	border-top: 1px dotted #707070
}
.news-list__item {
	display: flex;
	font-size: 15px;
	align-items: center;
	line-height: 1.5;
	padding: 17px 0;
	border-bottom: 1px dotted #707070
}
@media (max-width:767px) {
	.news-list__item {
		flex-wrap: wrap;
		padding: 25px 0 18px
	}
}
.news-list__date {
	width: 110px;
	flex-shrink: 0
}
@media (max-width:767px) {
	.news-list__date {
		font-size: 14px;
		width: auto;
		margin-right: 10px
	}
}
.news-list__category {
	width: 116px;
	flex-shrink: 0;
	margin-right: 6px;
	font-size: 12px;
	color: #999;
	background-color: #f2f2f2;
	height: 26px;
	display: inline-flex;
	align-items: center;
	justify-content: center
}
.news-list__title {
	flex: 1
}
@media (max-width:767px) {
	.news-list__title {
		width: 100%;
		flex: auto;
		margin-top: 12px
	}
}
.news-list__title a {
	color: inherit;
	text-decoration: none
}
.news-buttons {
	text-align: center;
	margin-top: 40px
}
@media (max-width:767px) {
	.news-buttons {
		margin-top: 30px
	}
}
.recruit .heading-column {
	margin-bottom: 50px
}
@media (max-width:767px) {
	.recruit .heading-column {
		margin-bottom: 25px
	}
}
.contact .heading-column {
	margin-bottom: 70px
}
@media (max-width:767px) {
	.contact .heading-column {
		margin-bottom: 30px
	}
}
.cta-area {
	background-image: url(../images/cta-bg.jpg);
	background-position: 50%;
	background-size: cover;
	padding: 100px 0
}
@media (max-width:767px) {
	.cta-area {
		padding: 60px 0
	}
}
.cta-area__wrap {
	background-color: #fff;
	height: 250px;
	display: flex
}
@media (max-width:767px) {
	.cta-area__wrap {
		display: block;
		height: auto
	}
}
.cta-area__item {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center
}
@media (max-width:767px) {
	.cta-area__item {
		width: 100%;
		height: 160px
	}
}
.cta-area__item:not(:last-child) {
	border-right: 2px solid #f6f6f6
}
@media (max-width:767px) {
	.cta-area__item:not(:last-child) {
		border-right: none;
		border-bottom: 2px solid #f6f6f6
	}
}
.cta-area__title {
	font-weight: 700;
	font-weight: var(--bold-font-weight);
	font-size: 20px;
	letter-spacing: .05em;
	margin-bottom: 48px;
	line-height: 1.2
}
@media (max-width:767px) {
	.cta-area__title {
		font-size: 16px;
		margin-bottom: 20px
	}
}
.cta-area__content {
	text-align: center
}
.cta-area__tel {
	font-weight: 700;
	font-weight: var(--bold-font-weight);
	font-size: 32px;
	letter-spacing: .05em;
	line-height: 1.2;
	margin-bottom: 4px;
	display: inline-flex;
	align-items: baseline;
	justify-content: center
}
.cta-area__tel a {
	color: inherit
}
.cta-area__tel:before {
	content: "";
	display: block;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18.012' height='24.445'%3E%3Cpath d='M18.01 21.253a1.161 1.161 0 00-.353-.888l-3.586-3.729-.022-.006a1.207 1.207 0 00-.563-.3 1.416 1.416 0 00-1.033.1l-1.626.937a.4.4 0 01-.166.037.552.552 0 01-.154-.007l-.262-.133a3.571 3.571 0 01-.711-.545 10.647 10.647 0 01-1.069-1.2 15.228 15.228 0 01-1.336-2.085 14.946 14.946 0 01-1.087-2.207 10.192 10.192 0 01-.461-1.529 4.144 4.144 0 01-.1-1.178.559.559 0 01.079-.158.386.386 0 01.118-.122l1.393-.787a1.438 1.438 0 00.576-.606 1.124 1.124 0 00.106-.809L6.629.862a1.61 1.61 0 00-.263-.516.86.86 0 00-.465-.31 1.016 1.016 0 00-.8.114l-3.78 2.134a1.724 1.724 0 00-.523.418 3.16 3.16 0 00-.523 1.016 5.688 5.688 0 00-.217 1.126 11.791 11.791 0 00-.042 1.785A14.5 14.5 0 00.35 9.045a21.7 21.7 0 00.925 3.049 25.2 25.2 0 001.763 3.652 24.016 24.016 0 002.825 4.14 20.057 20.057 0 002.629 2.564 10.739 10.739 0 002.114 1.355 9.308 9.308 0 001.755.62 2.018 2.018 0 00.689-.024 1.721 1.721 0 00.628-.233l3.773-2.112a1.054 1.054 0 00.559-.803z' fill='%232690d4'/%3E%3C/svg%3E");
	background-size: contain;
	width: 18px;
	height: 25px;
	margin-right: 9px
}
.cta-area__note {
	letter-spacing: .05em;
	font-size: 14px
}
@media (min-width:768px) {
	.only-mobile {
		display: none
	}
}
@media (max-width:767px) {
	.only-pc {
		display: none
	}
}
.text-center {
	text-align: center
}
@media (max-width:767px) {
	.text-center--only-pc {
		text-align: left
	}
}
.text-center img {
	margin-left: auto;
	margin-right: auto
}
.text-left {
	text-align: left
}
.text-right {
	text-align: right
}
.mb0 {
	margin-bottom: 0!important
}
.mb10 {
	margin-bottom: 10px
}
.mb15 {
	margin-bottom: 15px
}
.mb20 {
	margin-bottom: 20px
}
.mb25 {
	margin-bottom: 25px!important
}
.mb30 {
	margin-bottom: 30px
}
.mb35 {
	margin-bottom: 35px
}
.mb40 {
	margin-bottom: 40px
}
.mb50 {
	margin-bottom: 50px
}
@media (max-width:767px) {
	.mb50 {
		margin-bottom: 25px
	}
}
.mb60 {
	margin-bottom: 60px
}
@media (max-width:767px) {
	.mb60 {
		margin-bottom: 30px
	}
}
.mb80 {
	margin-bottom: 80px
}
@media (max-width:767px) {
	.mb80 {
		margin-bottom: 40px
	}
}
.mt0 {
	margin-top: 0!important
}
.mt15 {
	margin-top: 15px
}
.mt20 {
	margin-top: 20px
}
.pb0 {
	padding-bottom: 0
}
.lt0 {
	letter-spacing: 0
}
.text-red {
	color: #fa5d74;
	color: var(--red-color)
}
.fwbold {
	font-weight: 700;
	font-weight: var(--bold-font-weight)
}
.indent {
	text-indent: -1em;
	padding-left: 1em
}
