.slick-slider,
.slick-list,
.slick-track{ height: 100%; }
.slide > .slick-list,
.slide > .slick-list > .slick-track,
.slide > .slick-list > .slick-track > .slick-slide > div {
  position: relative;
  height: 100%;
}
.slide-animation{
    animation: fadezoom 8s 0s forwards;
}
@keyframes fadezoom {
	0% {
	transform: scale(1);
	}
	100% {
		transform: scale(1.2);
	}
}
.index-sdgs img{ width: 100%; }
.index-sdgs{
	width: 150px;
	bottom: 30px;
	right: 30px;
	position: absolute;
	display: block; }
.main-visual-content{
	position: absolute;
	border-radius: 40px;
	overflow: hidden;
	width: 100%;
	height: 100%; }
.main-visual-content img{
	top: 50%;
	left: 50%;
	width: 100%;
	height: 100%;
	position: absolute;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
	object-position: 50% 50%;
	object-fit: cover; }
.main-visual__text{
	left: 0;
	bottom: 0;
	position: absolute;
	color: #e0634d;
	background-color: #f1f3e9;
	border-radius: 0 40px 0 0; }
.main-visual__text:before,
.main-visual__text:after{
	content: "";
	width: 40px;
	height: 40px;
	background: url(../img/index/copy-item@2x.png);
	background-size: cover;
	position: absolute; }
.main-visual__text:before{
	left: 0;
	top: -40px; }
.main-visual__text:after{
	bottom: 0;
	display: none;
	right: -40px; }
.index-copy{
	font-size: 2vw;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	position: absolute;
	font-weight: 700;
	text-align: center;
	top: 0;
	bottom: 0;
	margin: auto;
	left: 3vw;
	transform: translateX(-50%);
}
.index-main-visual{
	position: relative;
	padding: 0 6vw; }
.index-inner{ position: relative; }
.main-copy{
	letter-spacing: -0.12em;
	padding: 0.25em 0.25em 0 0;
	font-size: 3rem; }

.index-copy{ font-size: 2vw; }
@media screen and (min-width: 750px) {
	.main-copy{ font-size: 5.8rem; }
	.main-visual__text:after{ display: block; }
}
@media screen and (min-width: 896px) {
	.index-copy{ font-size: 1.2rem; }
}
@media screen and (min-width: 1024px) {
	.main-visual__text{
	}
	.index-main-visual{ padding: 0 4vw; }
	.index-copy{ left: 2vw; }
}

.index-section{ padding: 16vw 0 18vw; }
.index-section:last-child{ padding-bottom: 0; }
.index-section .content-title01{ margin-bottom: 12vw; }
@media screen and (min-width: 750px) {
	.index-section{ padding: 100px 0; }
	.index-section .content-title01{ margin-bottom: 70px; }
}
@media screen and (min-width: 1024px) {
	.index-section{ padding: 120px 0; }
	.index-section .content-title01{ margin-bottom: 80px; }
}

/* 私たちについて */
.about-section .read h3{
	margin-top: 1em;
	margin-bottom: 0.75em;
	font-feature-settings: "palt";
}
.about-section{
	position: relative;
	padding: 0!important;
	margin: 16vw 0 18vw;
}
.about-img{
	border-radius: 20px;
	overflow: hidden; }
.about-img img{
	object-fit: cover;
	height: 100%;
	width: 100%; }
.about-section .arow-link{
	margin-top: 3em;
}
@media screen and (min-width: 750px) {
	.about-section .content-inner{ display: flex; }
	.about-section .content-item{ margin-bottom: 0; }
	.about-section{ margin: 100px 0; }
	.about-img{
		border-radius: 40px;
		width: 100%;
		max-width: 50%;
	}
	.about-section .read{
		width: 100%;
		padding-right: 80px;
		max-width: 50%; }
}
@media screen and (min-width: 1024px) {
	.about-section{ margin: 120px 0; }
	.about-section .read h3{ font-size: 4.4rem; margin-top: 0; }
}
@media screen and (min-width: 1220px) {
	.about-section .read h3{ font-size: 5rem; }
}


/* 事業内容 */

#index-service .content-title02{ margin: 1.42em 0 1.3em; }
.index-service-section .content-title02{ font-size: 2.725vw; }
@media screen and (min-width: 750px) {
	.index-service-section .content-title02{ font-size: 1.3rem; }
}
@media screen and (min-width: 1024px) {
	.index-service-section .content-title02{ font-size: 1.4rem; }
}

/* お知らせ */
.index-section .news-list__item a:before{
	content: "";
	display: block;
	position: absolute;
	z-index: -1;
	width: 100%;
	height: 100%;
	background: #f9f9f9;
	left: -100%;
	-moz-transition: .2s;
	-webkit-transition: .2s;
}
.index-section .news-list__item a:hover::before{ left: 0; }
.index-section .news-list__item a:hover{ color: #219496; }


/* 採用情報 */
.index-recruit-section{ padding-top: 0; }
.recruit-bana{
	position: relative;
	background-color: #153472;
	padding: 50px; }
.recruit-bana:after{
	content: "";
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	background: url(../img/index/recruit-cots.png); }
.recruit-bana .read{ margin: 2em auto 3em; }
.recruit-bana .link-img__over:before,
.recruit-bana .link-img__over:after{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: -1;
}
.recruit-bana .img__over__inner{
	position: relative;
	z-index: 2;
}
.recruit-bana{
	overflow: hidden;
	border-radius: 40px;
	display: block; }
.recruit-bana:hover{ opacity: .7; }
.recruit-bana .read{ max-width: 768px; }
.recruit-bana:hover figure img{ width: 103%; height: 103%; }
.recruit-bana .link-img__over:after{ background: url(../img/index/recruit-cots.png); }
@media screen and (min-width: 750px) {
	.recruit-bana .link-img__over{
		padding: auto;
		position: absolute;
		height: 100%;
	}
	.recruit-bana figure{position: relative;}
	.recruit-bana .read{ margin: 2em auto; }
	.recruit-bana figure{
	}
}
@media screen and (min-width: 1024px) {
}



/* //////////////////
F O O T E R
////////////////// */
footer{ margin-top: 18vw; }
footer .top_link{ position: absolute; }
@media screen and (min-width: 750px) {
	footer{ margin-top: 112px; }
}
@media screen and (min-width: 1024px) {
	footer{ margin-top: 120px; }
}



/* //////////////////
contact
////////////////// */
.contact-tel{
	padding: 3vw 4vw 4vw;
	border: solid 2px #bbbbbb;
	border-radius: 4px;
}
.contact-tel__inner .nom{ font-size: 5.25vw; }
.contact-tel__inner .nom{ font-size: 4.725vw; }
.contact-tel__inner strong{ font-size: 1.5em; }
.contact-tel__inner div{ position: relative; }
.contact-tel__inner div:last-child{ margin-top: 3vw; padding-top: 2vw; }
.contact-tel__inner div:last-child::before{
	content: "";
	left: 0;
	right: 0;
	margin: auto;
	width:20%;
	height: 2px;
	background: #bbbbbb;
	position: absolute;
	top: 0;
}
.contact-tel .txt-size16{ margin-top: 0.8em; }
@media screen and (min-width: 750px) {
	.contact-tel{
		padding: 0;
		border: none;
	}
	.contact-tel__inner{
		display: flex;
		justify-content: center;
	}
	.contact-tel__inner div{
		width: 50%;
		position: relative;
	}
	.contact-tel__inner .nom{
		font-size: 2.8rem;
	}
	.contact-tel__inner .nom.mail{
		font-size: 2.4rem;
	}
	.contact-tel__inner div:last-child{ margin-top: 0; padding-top: 0; }
	.contact-tel__inner div:last-child::before{
		content: "";
		width: 2px;
		height: 90%;
		bottom: 0;
		left: -1px;
		right: auto;
		background: #bbbbbb;
		position: absolute;
	}
}
@media screen and (min-width: 1024px) {
	.contact-tel__inner .nom{
		font-size: 3.6rem;
	}
	.contact-tel__inner .nom.mail{
		font-size: 3rem;
	}
}
