@charset 'utf-8';
@import url('vegas.min.css');
@import url('../lib/jquery-ui/jquery-ui.min.css');

html{
	overflow-x: hidden;
	overflow-y: scroll;
	scroll-behavior: initial;
}
@media only screen and (max-width:767px) {
	html,
	body,
	header,
	.header{
		height: 100%;
	}
}
body{
	overflow-x: visible;
	overflow-y: visible;
}
html,
body,
header{
}
@media print, screen and (max-width:1180px) and (min-width:768px){
	#container .inner{
		margin-right: auto;
		margin-left: auto;
	}
}
#content{
	overflow: hidden;
}


/* =========================================================
SVG
========================================================= */
[class*='i_shiinokisou_link_bg']{
	z-index: -1;
	top: 0;
	right: -40px;
	width: 524px;
	background-color: transparent;
	background-image: url(../../svg/home/shiinokisou_link_bg.svg);
	background-repeat: no-repeat;
	background-position: right top;
	background-size: contain;
}
[class*='i_shiinokisou_link_bg']:before{
	display: block;
	width: 100%;
	height: 0;
	padding-top: 100%;
	content: '';
}
@media print,screen and (max-width: 1400px) and (min-width: 768px){
	[class*="i_shiinokisou_link_bg"] {
		top: calc((0 / (1400 + var(--sc__width))) * 100 * 1vw);
		right: calc((-40 / (1400 + var(--sc__width))) * 100 * 1vw);
		width: calc((524 / (1400 + var(--sc__width))) * 100 * 1vw);
	}
}
@media only screen and (max-width:767px) {
	[class*="i_shiinokisou_link_bg"] {
		width: calc((262 / (375 + var(--sc__width))) * 100 * 1vw);
		top: 0;
		right: calc((-20 / (375 + var(--sc__width))) * 100 * 1vw);
	}
}

[class*='i_thoughts_bg']{
	z-index: -1;
	top: 317px;
	left: 93px;
	width: 592px;
	background-color: transparent;
	background-image: url(../../svg/home/thoughts_bg.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}
[class*='i_thoughts_bg']:before{
	display: block;
	width: 100%;
	height: 0;
	padding-top: 40%;
	content: '';
}
@media print,screen and (max-width: 1400px) and (min-width: 768px){
	[class*="i_thoughts_bg"] {
		top: calc((317 / (1400 + var(--sc__width))) * 100 * 1vw);
		left: calc((93 / (1400 + var(--sc__width))) * 100 * 1vw);
		width: calc((592 / (1400 + var(--sc__width))) * 100 * 1vw);
	}
}
@media only screen and (max-width:767px) {
	[class*="i_thoughts_bg"] {
		top: calc((0 / (375 + var(--sc__width))) * 100 * 1vw);
		left: unset;
		right: calc((-30 / (375 + var(--sc__width))) * 100 * 1vw);
		width: calc((296 / (375 + var(--sc__width))) * 100 * 1vw);
	}
}

[class*='i_business_bg']{
	z-index: -1;
	right: -33px;
	bottom: -6px;
	width: 552px;
	background-color: transparent;
	background-image: url(../../svg/home/business_bg.svg);
	background-repeat: no-repeat;
	background-position: right bottom;
	background-size: contain;
}
[class*='i_business_bg']:before{
	display: block;
	width: 100%;
	height: 0;
	padding-top: 100%;
	content: '';
}
@media print,screen and (max-width: 1400px) and (min-width: 768px){
	[class*="i_business_bg"] {
		right: calc((-33 / (1400 + var(--sc__width))) * 100 * 1vw);
		bottom: calc((-6 / (1400 + var(--sc__width))) * 100 * 1vw);
		width: calc((553 / (1400 + var(--sc__width))) * 100 * 1vw);
	}
}
@media only screen and (max-width:767px) {
	[class*="i_business_bg"] {
		right: calc((-16 / (375 + var(--sc__width))) * 100 * 1vw);
		bottom: calc((-3 / (375 + var(--sc__width))) * 100 * 1vw);
		width: calc((350 / (375 + var(--sc__width))) * 100 * 1vw);
	}
}

[class*='i_recruit_bg']{
	z-index: -1;
	bottom: -7px;
	left: 50%;
	width: 377px;
	background-color: transparent;
	background-image: url(../../svg/home/recruit_bg.svg);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: contain;
	margin-left: -207px;
}
[class*='i_recruit_bg']:before{
	display: block;
	width: 100%;
	height: 0;
	padding-top: 78.93%;
	content: '';
}
@media print,screen and (max-width: 1400px) and (min-width: 768px){
	[class*="i_recruit_bg"] {
		bottom: calc((-7 / (1400 + var(--sc__width))) * 100 * 1vw);
		width: calc((377 / (1400 + var(--sc__width))) * 100 * 1vw);
		margin-left: calc((-207 / (1400 + var(--sc__width))) * 100 * 1vw);
	}
}
@media only screen and (max-width:767px) {
	[class*="i_recruit_bg"] {
		bottom: calc((-4 / (375 + var(--sc__width))) * 100 * 1vw);
		width: calc((270 / (375 + var(--sc__width))) * 100 * 1vw);
		margin-left: auto;
		left: unset;
		right: calc((-20 / (375 + var(--sc__width))) * 100 * 1vw);
	}
}

@media print, screen and (min-width:768px) {
	a i.i_arrow_circle{
  transition: transform 0.3s, filter 0.3s;
	}
	a:hover i.i_arrow_circle{
  transform: scale(1.25) rotate(-8deg);
  filter: drop-shadow(0 2px 6px rgba(0,0,0,0.16)) blur(0.5px);
	}
}

/* =========================================================
Loading
========================================================= */
#preloader {
	position: fixed;
	z-index: 99999;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	visibility: visible;
	width: 100%;
	height: 100%;
	transition: opacity 2.5s linear 1s, filter 2.5s cubic-bezier(0, 0, 0.58, 1) 1s;
	opacity: 1;
	background-color: var(--main-color--bg1);
}
#preloader.loading {
	opacity: 0;
}
#preload_text {
	position: fixed;
	z-index: 10;
	top: 50%;
	left: 50%;
	display: flex;
	justify-content: center;
	flex-flow: column nowrap;
	align-items: center;
	transition: opacity 2s ease-in, filter 2s ease-in, transform 2s ease-in;
	transform: translate(-50%, -50%) scale(0.95);
	text-align: center;
	opacity: 0;
	filter: brightness(0.8) sepia(20%);
	gap: 40px;
}
#preloader.loading #preload_text {
	opacity: 1;
	filter: brightness(1) sepia(0%);
	transform: translate(-50%, -50%) scale(1);
}
#preload_text svg {
	min-height: 1px;
}
.preload_text--logo {
	width: 147px;
}
@media only screen and (max-width:767px) {
	#preloader {
		transition: opacity 1.5s linear 0s, filter 2s cubic-bezier(0, 0, 0.58, 1) 0.5s;
	}
	#preload_text {
		top: 45vh;
		transition: opacity 0.5s linear 0s, filter 1.5s cubic-bezier(0, 0, 0.58, 1) 0s;
	}
}
@media only screen and (max-width:767px) and (orientation:landscape) {
	.preload_text--logo {
		width: 120px;
	}
	#preload_text {
		gap: 20px;
	}
}


/* =========================================================
next-scroll
========================================================= */
@keyframes next-scroll{
	0%{
		top: -150px;
	}
	20%{
		top: 0;
	}
	70%{
		top: 0;
	}
	100%{
		top: 150px;
	}
}
#next-scroll{
	position: fixed;
	z-index: 10;
	bottom: -30px;
	left: 25px;
	visibility: visible;
	width: 1em;
	margin: auto;
	cursor: pointer;
	transition: opacity 0.2s ease,visibility 0s ease 0s;
	opacity: 1;
}
#next-scroll:not(.active){
	cursor: default;
}
header.on + article #next-scroll{
	visibility: hidden;
	transition: opacity 0.2s ease,visibility 0s ease 0.2s;
	opacity: 0;
}
#next-scroll a{
	display: flex;
	justify-content: flex-end;
	flex-flow: column wrap;
	align-items: center;
	height: 100%;
	gap: 13px;
}
#next-scroll a span[class*='fs__10']{
	position: relative;
	top: 4px;
	left: 2px;
	white-space: nowrap;
	letter-spacing: 0.03em;
}
#next-scroll a .line-box{
	position: relative;
	z-index: 1;
	display: block;
	overflow: hidden;
	margin-right: 4px;
}
#next-scroll a .line-box .line{
	position: relative;
	z-index: 1;
	display: block;
	width: 1px;
	height: 150px;
	margin: 0 auto;
	animation: next-scroll 3s linear 1s infinite;
	border-right: 1px solid var(--sub-color--border4);
}
@media only screen and (max-width: 767px){
	#next-scroll{
		left: 15px;
	}
}



/* =========================================================
home-header
========================================================= */
#home-header {
	width: 100%;
}
@media only screen and (max-width: 767px){
	#home-header {
		height: 100%;
	}
}

/* =========================================================
home-header--text
========================================================= */
.home-header--text {
	position: fixed;
	z-index: 10;
	top: 337px;
	left: 50%;
	display: flex;
	justify-content: center;
	flex-flow: column nowrap;
	align-items: center;
	transition: opacity 1s linear 2s, filter 3s cubic-bezier(0, 0, 0.58, 1) 1s;
	transform: translate(-50%, -50%);
	text-align: center;
	opacity: 0;
}
.home-header--text.show {
	opacity: 1;
}
.home-header_text--svg {
	width: 147px;
}
@media print, screen and (min-width:1401px) {
	.home-header_text--svg {
		width: calc((147 / (1400 + var(--sc__width))) * 100 * 1vw);
	}
	.home-header--text {
		top: calc((337 / (1400 + var(--sc__width))) * 100 * 1vw);
	}
}
@media only screen and (max-width:767px) {
	.home-header--text {
		position: fixed;
		top: 50vh;
		width: 100%;
		transition: opacity 1s linear 1s;
	}
	.home-header_text--svg {
		width: 125px;
	}
}
@media only screen and (max-width:767px) and (orientation:landscape) {
	#nav-header-logo{
		width: 220px;
	}
	.home-header--text {
		top: 47.5vh;
	}
	.home-header_text--svg {
		width: 100px;
	}
}

/* =========================================================
Vega
========================================================= */
#vegas {
	width: 100%;
	-webkit-transform: translateZ(0);
	-webkit-perspective: 1000;
	-webkit-backface-visibility: hidden;
}
#vegas:before{
	content:"";
	width: 100%;
	display: block;
	padding-top: 56.2% !important;
}
@media print, screen and (min-width:768px) {
	#vegas {
		min-height: 675px;
	}
}
@media only screen and (max-width:767px) {
	#vegas {
		min-height: 100%;
	}
	#vegas:before{
		padding-top: 100% !important;
	}
}
.vegas-content-scrollable {
	overflow: hidden;
}
.vegas-container {
}
.vegas-overlay {
	mix-blend-mode: multiply;
	background-color: rgba(0, 0, 0, 0.2);
	background-image: none !important;
	background-repeat: repeat;
	background-position: 0 0;
	background-size: auto;
	opacity: 1 !important;
}
.vegas-animation-zoomout {
	animation: zoomout ease-out;
}
.vegas-animation-zoomin {
	animation: zoomin ease-out;
}
@keyframes zoomout {
	0% {
		transform: scale(1.5);
	}
	100% {
		transform: scale(1);
	}
}
@keyframes zoomin {
	0% {
		transform: scale(1);
	}
	100% {
		transform: scale(1.5);
	}
}
.vegas-animation-fade {
}
.vegas-animation-kenburns {
	animation: kenburns ease-in-out forwards;
}
@keyframes kenburns {
	0% {
		transform: scale(1) translate(0, 0);
	}
	100% {
		transform: scale(1.1) translate(10px, 10px);
	}
}


/* =========================================================
shiinokisou_link
========================================================= */
#shiinokisou_link {
	position: relative;
}
#shiinokisou_link .shiinokisou_link__inner {
	min-height: 0;
}
#shiinokisou_link .shiinokisou_link__bloc {
	display: flex;
	justify-content: flex-end;
	flex-flow: row-reverse wrap;
	align-items: flex-start;
	gap: 60px 7.8%;
}
#shiinokisou_link .shiinokisou_link__txt{
	display: flex;
	justify-content: flex-start;
	flex-flow: row nowrap;
	align-items: flex-start;
	gap: 59px;
}
#shiinokisou_link .shiinokisou_link--title {
	display: flex;
	justify-content: flex-start;
	flex-flow: column-reverse nowrap;
	align-items: flex-start;
	width: auto;
	order: 3;
	gap: 15px;
	margin-top: -5px;
}
#shiinokisou_link .shiinokisou_link--title .shiinokisou_link__title--en {
	letter-spacing: 0.11em;
}
#shiinokisou_link .shiinokisou_link--menu {
	display: flex;
	justify-content: flex-start;
	flex-flow: row-reverse nowrap;
	align-items: stretch;
	gap: 33px;
}
#shiinokisou_link .shiinokisou_link--menu li {
}
#shiinokisou_link .shiinokisou_link--menu li a {
	display: flex;
	justify-content: space-between;
	flex-flow: column nowrap;
	align-items: center;
	height: 100%;
	gap: 30px;
}
#shiinokisou_link .shiinokisou_link--menu li i {
}
#shiinokisou_link .shiinokisou_link--img{
	width: calc(100% - 590px);
	min-width: 285px;
}
#shiinokisou_link .shiinokisou_link--img img{
	height: 360px;
	object-fit: cover;
}
@media only screen and (max-width:767px) {
	#shiinokisou_link .shiinokisou_link__inner {
		padding-top: 115px;
		padding-bottom: 120px;
	}
	#shiinokisou_link .shiinokisou_link__bloc {
		flex-flow: column nowrap;
		gap: 0;
	}
	#shiinokisou_link .shiinokisou_link__txt{
		flex-flow: column-reverse nowrap;
		width: 100%;
	}
	#shiinokisou_link .shiinokisou_link--title {
		width: 100%;
		margin: 0;
		margin-bottom: 0;
		gap: 14px;
	}
	#shiinokisou_link .shiinokisou_link--menu {
		width: auto;
		gap: calc((40 / (375 + var(--sc__width))) * 100 * 1vw);;
		margin-left: auto;
		margin-right: auto;
	}
	#shiinokisou_link .shiinokisou_link--menu li{
	}
	#shiinokisou_link .shiinokisou_link--menu li a {
		gap: 20px;
	}
	#shiinokisou_link .shiinokisou_link--img{
		width: 100%;
		margin-top: 60px;
	}
	#shiinokisou_link .shiinokisou_link--img img{
		width: 100%;
		height: auto;
	}
}


/* =========================================================
thoughts
========================================================= */
#thoughts {
	width: 100%;
	padding-bottom: calc((30 / (1400 + var(--sc__width))) * 100 * 1vw);
	margin-bottom: 120px;
}
#thoughts .gsap-parallax {
	height: 460px;
}
@media print, screen and (min-width:1401px) {
	#thoughts .gsap-parallax {
		height: calc((460 / (1400 + var(--sc__width))) * 100 * 1vw);
	}
}
@media only screen and (max-width:767px) {
	#thoughts .gsap-parallax {
		height: calc((160 / (360 + var(--sc__width))) * 100 * 1vw);
		background-position: center bottom calc((-50 / (360 + var(--sc__width))) * 100 * 1vw);
	}
	#thoughts .gsap-parallax-img {
		background-position: center bottom calc((-50 / (360 + var(--sc__width))) * 100 * 1vw) !important;
	}
}
#thoughts .thoughts__content{
	width: 100%;
	position: relative;
}
#thoughts .thoughts__inner {
	display: flex;
	justify-content: space-between;
	flex-flow: row nowrap;
	align-items: flex-start;
	gap: 40px;
	padding-top: 0;
	padding-bottom: 0;
	position: relative;
}
#thoughts .thoughts__line{
	position: absolute;
	width: 1px;
	height: calc(100% + ((30 / (1400 + var(--sc__width))) * 100 * 1vw) + 130px);
	top: 0;
	left: 100px;
	z-index: -1;
}
#thoughts .thoughts__left {
	display: flex;
	justify-content: flex-start;
	flex-flow: column nowrap;
	align-items: flex-start;
	width: auto;
	margin-top: 94px;
}
#thoughts .thoughts--title {
	padding: 20px 0 0;
}
#thoughts .thoughts--title .sec__title--jp {
}
#thoughts .thoughts--title .sec__title--en {
	margin-top: 0.4em;
}
#thoughts .thoughts__right {
	max-width: 940px;
	width: 82.5%;
	padding-top: 114px;
}
#thoughts .thoughts__right__1 {
	display: flex;
	justify-content: space-between;
	flex-flow: row nowrap;
	align-items: flex-start;
}
#thoughts .thoughts__right__1--txt {
	max-width: 325px;
	min-width: 300px;
	width: 34.6%;
}
#thoughts .thoughts__right__1__txt--title {
}
#thoughts .thoughts__right__1__txt__title {
	display: block;
}
#thoughts .thoughts__right__1__txt--txt {
	margin-top: 19px;
}
#thoughts .thoughts__right__1__button{
	display: flex;
	justify-content: flex-start;
	flex-flow: column nowrap;
	align-items: flex-start;
	gap: 17px;
	margin-top: 53px;
}
#thoughts .thoughts__right__1--img {
	max-width: 450px;
	width: 47.4%;
	margin-top: 5px;
}
#thoughts .thoughts__right__2 {
	margin-top: 58px;
	position: relative;
}
#thoughts .thoughts__right__2 .thoughts__right__2--img {
	max-width: 220px;
	width: 23.5%;
	right: calc((-60 / (1400 + var(--sc__width))) * 100 * 1vw);
	bottom: calc((-30 / (1400 + var(--sc__width))) * 100 * 1vw);
	position: absolute;
}
@media only screen and (max-width:767px) {
	#thoughts {
		padding-bottom: 0px;
	}
	#thoughts .thoughts__inner {
		justify-content: flex-start;
		flex-flow: column nowrap;
		align-items: flex-start;
		gap: 0;
		max-width: 100%;
		padding: 0 20px;
	}
	#thoughts .thoughts--title {
		width: 100%;
		padding-top: 55px;
		padding-bottom: 55px;
	}
	#thoughts .thoughts__left {
		width: 100%;
		padding: 0;
		margin-top: 0;
	}
	#thoughts .thoughts__right {
		max-width: 100%;
		width: 100%;
		padding-top: 0;
	}
	#thoughts .thoughts__right__1 {
		justify-content: flex-start;
		flex-flow: column nowrap;
		align-items: flex-start;
	}
	#thoughts .thoughts__right__1--txt {
		max-width: 100%;
		min-width: 100%;
		width: 100%;
	}
	#thoughts .thoughts__right__1--img {
		max-width: 100%;
		width: 61.6%;
		margin-top: 52px;
	}
	#thoughts .thoughts__right__2 {
		display: flex;
		justify-content: flex-start;
		flex-flow: column nowrap;
		align-items: flex-end;
		margin-top: 60px;
	}
	#thoughts .thoughts__right__2 .thoughts__right__2--img {
		max-width: 100%;
		width: 41.3%;
		position: static;
		margin-top: 30px;
	}
}

/* =========================================================
thoughts_slider
========================================================= */
#thoughts_slider {
	max-width: 720px;
	width: 76.6%;
	padding-bottom: 30px;
}
#thoughts_slider .splide__slide {
	width: 100%;
	height: 100%;
}
#thoughts_slider .splide__slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
@media only screen and (max-width:767px) {
	#thoughts_slider {
		max-width: 100%;
		width: 100%;
	}
}


/* =========================================================
business
========================================================= */
#business {
	position: relative;
	width: 100%;
	padding-bottom: 120px;
}
#business .gsap-parallax {
	height: 460px;
}
@media print, screen and (min-width:1401px) {
	#business .gsap-parallax {
		height: calc((460 / (1400 + var(--sc__width))) * 100 * 1vw);
	}
}
@media only screen and (max-width:767px) {
	#business .gsap-parallax {
		height: calc((160 / (360 + var(--sc__width))) * 100 * 1vw);
		background-position: center bottom;
	}
	#business .gsap-parallax-img {
		background-position: center bottom !important;
	}
}
#business__sticky{
	width: 100%;
}
#business .business__inner {
	display: flex;
	justify-content: space-between;
	flex-flow: row nowrap;
	align-items: flex-start;
	gap: 40px;
	padding-top: 0;
	padding-bottom: 0;
	position: relative;
}
#business .business__line{
	position: absolute;
	width: 1px;
	height: calc(100% + 130px);
	top: 0;
	left: 100px;
	z-index: -1;
}
#business .business__left {
	display: flex;
	justify-content: flex-start;
	flex-flow: column nowrap;
	align-items: flex-start;
	width: auto;
	margin-top: 94px;
}
#business .business--title {
	padding: 20px 0 0;
}
#business .business__right {
	max-width: 940px;
	width: 82.5%;
	padding-top: 120px;
}
#business .business__right--inbox {
	width: 100%;
}
#business .business__right--img {
	display: flex;
	justify-content: flex-start;
	flex-flow: column nowrap;
	align-items: flex-start;
	width: 100%;
	gap: 60px;
}
#business .business__right__img {
	width: 100%;
}
#business .business__right__scroll {
	display: flex;
	justify-content: flex-start;
	flex-flow: row wrap;
	align-items: flex-start;
	gap: 60px 6.35%;
	width: 100%;
}
#business .business__right--txt {
	margin-top: 16px;
}
#business .business__right__link{
	width: 29.1%;
}
#business .business__right__link:nth-child(1){
	margin-top: 0;
}
#business .business__right__link:nth-child(2){
	margin-top: 60px;
}
#business .business__right__link:nth-child(3){
	margin-top: 120px;
}
#business .business__right__link:nth-child(4){
	margin-top: 0;
}
#business .business__right__link:nth-child(5){
	margin-top: 60px;
}
#business .business__right__link:nth-child(6){
	margin-top: 120px;
}
#business .business__right--link {
	width: 100%;
	display: block;
}
#business .business__right--title {
	margin-top: 24px;
}
#business .business__right--p {
	margin-top: 17px;
}
#business .business__right--arrow{
	margin-top: 22px;
	margin-left: auto;
	display: block;
}
#business .business__right__1__button {
	display: flex;
	justify-content: flex-start;
	flex-flow: column nowrap;
	align-items: flex-start;
	gap: 20px;
	margin-top: 60px;
}
@media only screen and (max-width:767px) {
	#business {
	}
	#business .business__inner {
		justify-content: flex-start;
		flex-flow: column nowrap;
		align-items: flex-start;
		gap: 0;
		max-width: 100%;
		padding: 0px 0 0px;
	}
	#business .business__left {
		flex-flow: row wrap;
		width: 100%;
		gap: 0;
		padding: 0 20px;
		margin-top: 0;
	}
	#business .business--title {
		width: 100%;
		padding-top: 55px;
		padding-bottom: 55px;
	}
	#business .business__right {
		max-width: 100%;
		width: 100%;
		padding-top: 0;
	}
	#business .business__right--inbox {
		max-width: 100%;
		width: 100%;
		margin-right: auto;
	}
	#business .business__right__img {
		max-width: 100%;
		width: 100%;
		display: block;
		overflow-x: scroll;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: thin;
		scrollbar-color: var(--main-color) var(--sub-color--border1);
		margin-top: 0;
	}
	#business .business__right__scroll {
		width: fit-content;
		gap: calc((30 / (360 + var(--sc__width))) * 100 * 1vw);
		padding: 0 20px;
		flex-flow: row nowrap;
	}
	#business .business__right__link{
		width: calc((210 / (360 + var(--sc__width))) * 100 * 1vw);
	}
	#business .business__right__link:nth-child(4){
		margin-top: 180px;
	}
	#business .business__right__link:nth-child(5){
		margin-top: 240px;
	}
	#business .business__right__link:nth-child(6){
		margin-top: 300px;
	}
	#business .business__right [class*="--title"] {
		margin-top: 26px;
		padding-bottom: 20px;
	}
	.business__right--txt {
		margin-top: 0;
		padding: 0 20px;
	}
	#business .business__right__1__button {
		padding-left: 20px;
		padding-right: 20px;
	}
}


/* =========================================================
recruit
========================================================= */
#recruit {
	width: 100%;
	position: relative;
	display: inline-block;
}
#recruit .gsap-parallax {
	height: 460px;
}
@media print, screen and (min-width:1401px) {
	#recruit .gsap-parallax {
		height: calc((460 / (1400 + var(--sc__width))) * 100 * 1vw);
	}
}
@media only screen and (max-width:767px) {
	#recruit .gsap-parallax {
		height: calc((160 / (360 + var(--sc__width))) * 100 * 1vw);
		background-position: center bottom calc((-25 / (360 + var(--sc__width))) * 100 * 1vw);
	}
	#recruit .gsap-parallax-img {
		background-position: center bottom calc((-25 / (360 + var(--sc__width))) * 100 * 1vw) !important;
	}
}
#recruit__sticky{
	margin-bottom: 120px;
}
#recruit .recruit__inner {
	display: flex;
	justify-content: space-between;
	flex-flow: row nowrap;
	align-items: flex-start;
	gap: 40px;
	padding-top: 0;
	padding-bottom: 0;
	position: relative;
}
#recruit .recruit__line{
	position: absolute;
	width: 1px;
	height: calc(100% + 130px);
	top: 0;
	left: 100px;
	z-index: -1;
}
#recruit .recruit__left {
	display: flex;
	justify-content: flex-start;
	flex-flow: column nowrap;
	align-items: flex-start;
	width: auto;
	margin-top: 94px;
}
#recruit .recruit--title {
	padding: 20px 0 0;
}
#recruit .recruit__right {
	max-width: 940px;
	width: 82.5%;
	padding-top: 120px;
}
#recruit .recruit__right .recruit__right__1 {
	position: relative;
}
#recruit .recruit__right__1--img {
	max-width: 220px;
	width: 23.5%;
	right: calc((-60 / (1400 + var(--sc__width))) * 100 * 1vw);
	top: calc((-60 / (1400 + var(--sc__width))) * 100 * 1vw);
	position: absolute;
}
#recruit .recruit__right__2 {
	display: flex;
	justify-content: space-between;
	flex-flow: row nowrap;
	align-items: flex-start;
	margin-top: 60px;
}
#recruit .recruit__right__2--txt {
	width: 34.6%;
	max-width: 325px;
}
#recruit .recruit__right__2__txt--title {
	margin-top: -7px;
}
#recruit .recruit__right__2__txt__title {
	display: block;
}
#recruit .recruit__right__2__txt--txt {
	margin-top: 20px;
}
#recruit .recruit__right__2__button {
	margin-top: 51px;
}
#recruit .recruit__right__2--img {
	width: 47.4%;
	max-width: 445px;
}
@media only screen and (max-width:767px) {
	#recruit {
	}
	#recruit .recruit__inner {
		justify-content: flex-start;
		flex-flow: column nowrap;
		align-items: flex-start;
		max-width: 100%;
		padding: 0 20px 0;
		gap: 0;
	}
	#recruit .recruit__left {
		width: 100%;
		gap: 0;
		padding: 0;
		margin-top: 0;
	}
	#recruit .recruit--title{
		width: 100%;
		padding-top: 55px;
		padding-bottom: 55px;
	}
	#recruit .recruit__right {
		max-width: 100%;
		width: 100%;
		padding-top: 0;
	}
	#recruit .recruit__right .recruit__right__1 {
		display: flex;
		justify-content: flex-start;
		flex-flow: column nowrap;
		align-items: flex-end;
		gap: 30px;
	}
	#recruit .recruit__right__1--img {
		max-width: 100%;
		width: 30%;
		top: auto;
		right: 0;
		shape-outside: url(../../img/home/recruit_p1.jpg);
		bottom:calc((-106 / (375 + var(--sc__width))) * 100 * 1vw);
	}
	#recruit .recruit__right__2 {
		display: block;
	}
	#recruit .recruit__right__2--txt {
		width: 100%;
		max-width: 100%;
	}
	#recruit .recruit__right__2__txt--title {
		margin-top: -7px;
	}
	#recruit .recruit__right__2__txt--txt {
		margin-top: 20px;
	}
	#recruit .recruit__right__2__button {
		width: 100%;
	}
	#recruit .recruit__right__2--img {
		width: 75%;
		max-width: 100%;
		margin-top: 60px;
	}
}
@media only screen and (max-width:480px) {
	#recruit .recruit__right__2__txt--txt {
		width: 100%;
	}
}

/* =========================================================
recruit_slider
========================================================= */
#recruit_slider {
	max-width: 720px;
	width: 76.6%;
	padding-bottom: 30px;
}
#recruit_slider .splide__slide {
	width: 100%;
	height: 100%;
}
#recruit_slider .splide__slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
@media only screen and (max-width:767px) {
	#recruit_slider {
		max-width: 100%;
		width: 100%;
	}
	#recruit_slider .splide__pagination{
	}
}


/* =========================================================
news
========================================================= */
#news {
	width: 100%;
	padding-bottom: 123px;
}
#news__sticky {
	width: 100%;
}
#news .news__inner {
	display: flex;
	justify-content: space-between;
	flex-flow: row nowrap;
	align-items: flex-start;
	gap: 40px;
	padding-top: 0;
	padding-bottom: 0;
	position: relative;
}
#news .news__left {
	display: flex;
	justify-content: flex-start;
	flex-flow: column nowrap;
	align-items: flex-start;
	width: auto;
	margin-top: 90px;
}
#news .news--title {
	padding: 20px 0 0;
}
#news .news--right {
	max-width: 940px;
	width: 82.5%;
	margin-top: 120px;
}
#news .news__right__button{
	margin-top: 60px;
	display: flex;
	justify-content: flex-start;
	flex-flow: row wrap;
	align-items: flex-start;
	gap: 20px 60px;
}
@media only screen and (max-width:767px) {
	#news {
		padding-bottom: 180px;
	}
	#news .news__inner {
		justify-content: flex-start;
		flex-flow: column nowrap;
		align-items: flex-start;
		gap: 0;
	}
	#news .news__left {
		width: 100%;
		gap: 0;
		margin-top: 115px;
	}
	#news .news--title {
		padding-top: 0;
	}
	#news .news--right {
		width: 100%;
		max-width: 100%;
		margin-top: 55px;
	}
}

/* =========================================================
info_news_item
========================================================= */
#info_news_item {
	border-top: 1px solid var(--sub-color--border3);
}
#info_news_item .news--bloc {
	border-bottom: 1px solid var(--sub-color--border3);
}
#info_news_item .news__bloc--link {
	display: flex;
	justify-content: flex-start;
	flex-flow: row nowrap;
	align-items: flex-start;
	padding: 25px 20px 28px 20px;
	width: 100%;
}
#info_news_item .info_news_info--date {
	font-size: 1em;
	width: 8.5em;
	letter-spacing: 0.03em;
	white-space: nowrap;
}
#info_news_item .info_news_info--title {
	font-size: 1em;
	width: calc(100% - 8.5em);
	letter-spacing: 0;
}
@media only screen and (max-width:767px) {
	#info_news_item .news__bloc--link {
		flex-flow: column nowrap;
		padding: 20px 20px 20px 20px;
		gap: 13px;
	}
	#info_news_item .info_news_info--date {
		width: 100%;
	}
	#info_news_item .info_news_info--title {
		width: 100%;
	}
}
