@charset "utf-8";
/* CSS Document */
body{
	position: relative;
}
section{
	background-color: #fff;
	position: relative;
	z-index: 1;
}
.loading-screen {
	position: fixed;
	inset: 0;
	background: white;
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 9999;
	opacity: 1;
	animation: loadfadeIn 1.5s ease forwards;
}
.fade-out {
	animation: fadeOut 1.2s ease forwards !important;
	animation-delay: 4s;
}
.loading-screen .loading-text {
	font-size: 4rem;
	text-align: center;
	animation: floatUp 4s ease-in-out forwards;
	animation-delay: 4s;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	will-change: transform;
}
@keyframes floatUp {
	from {
		transform: translate(-50%, -50%) scale(1);
	}
	to {
		transform: translate(-50%, -100vh) scale(1.5);
	}
}
.loadtxt01, .loadtxt02, .loadtxt03 {
	opacity: 0;
	padding: 0 1rem;
	line-height: 1;
	display: inline-block;
	animation: loadfadeIn 1.5s ease forwards;
}
.loadtxt01 {
	animation-delay: 0.5s;
}
.loadtxt02 {
	animation-delay: 1s;
}
.loadtxt02::first-letter {
	font-size: 5rem;
	color: #cfc9b7;
}
.loadtxt03 {
	animation-delay: 1.5s;
}
@keyframes loadfadeIn {
	to {
		opacity: 1;
	}
}
@keyframes fadeOut {
	0% {
		opacity: 1;
		transform: scale(1);
	}
	100% {
		opacity: 0;
		filter: blur(2px);
		visibility: hidden;
	}
}
.text-container {
	display: inline-block;
	overflow: hidden;
}
.char {
	opacity: 0;
	transform: translateY(-20px);
	display: inline-block;
	animation: fadeInUp 0.5s forwards;
}
@keyframes fadeInUp {
	to {
		opacity: 1;
		transform: translateY(0);
	}
}
.char:nth-of-type(5), .char:nth-of-type(8) {
	padding-right: 1rem;
}
#top-head.h_rl{
	display: none;
}
.scroll01{
	position: absolute;
	height: 100vh;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
	z-index: 9998;
	width: 100%;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
}
.scroll-down-box{
	display: block;
	position: relative;
	text-decoration: none;
}
.scroll-down-box svg{
	fill: #fff;
}
.scroll-down-box .scroll-text{
	width: 100px;
	height: auto;
	-webkit-animation: rotation 10s infinite linear;
	animation: rotation 10s infinite linear;
}
.scroll-down-box .scroll-icon{
	width: 25px;
	height: auto;
	position: absolute;
	top: 50%;
	left: 50%;
	-ms-transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	-webkit-transition: all 0.2s ease-in;
	transition: all 0.2s ease-in;
}
.scroll-down-box:hover .scroll-icon{
	-webkit-animation: move 1s infinite linear;
	animation: move 1s infinite linear;
}

@keyframes rotation {
	from {-webkit-transform: rotate(0deg); transform: rotate(0deg);}
	to {-webkit-transform: rotate(359deg); transform: rotate(359deg);}
}
@-webkit-keyframes rotation {
    from {-webkit-transform: rotate(0deg); transform: rotate(0deg);}
    to {-webkit-transform: rotate(359deg); transform: rotate(359deg);}
}

@keyframes move {
    0% {-ms-transform: translate(-50%,-50%); -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%);}
    25% {-ms-transform: translate(-50%,-35%); -webkit-transform: translate(-50%,-35%); transform: translate(-50%,-35%);}
    50% {-ms-transform: translate(-50%,-50%); -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%);}
    75% {-ms-transform: translate(-50%,-65%); -webkit-transform: translate(-50%,-65%); transform: translate(-50%,-65%);}
    100% {-ms-transform: translate(-50%,-50%); -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%);}
}
@-webkit-keyframes move {
    0% {-ms-transform: translate(-50%,-50%); -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%);}
    25% {-ms-transform: translate(-50%,-40%); -webkit-transform: translate(-50%,-40%); transform: translate(-50%,-40%);}
    50% {-ms-transform: translate(-50%,-50%); -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%);}
    75% {-ms-transform: translate(-50%,-60%); -webkit-transform: translate(-50%,-60%); transform: translate(-50%,-60%);}
    100% {-ms-transform: translate(-50%,-50%); -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%);}
}
.slick-slide{
	height: 1200px !important;
}
.mv_slide_box .main_mv01::before, .mv_slide_box .main_mv02::before, .mv_slide_box .main_mv03::before{
	display: block;
	content: "";
	background-image: url("../img/index_mv01.png");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: top center;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
}
.mv_slide_box .main_mv02::before{
	background-image: url("../img/index_mv02.png");
}
.mv_slide_box .main_mv03::before{
	background-image: url("../img/index_mv03.png");
}
.sc_imgbox{
	overflow: hidden;
}
.sc_img {
	display: block;
	content: "";
	background-image: url("../img/index_sc_img.png");
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center top;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 10;
	transition: transform 0.2s ease-out, opacity 0.2s ease-out;
}
.sc_img2 {
	display: block;
	content: "";
	background-image: url("../img/index_sc_img2.png");
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center top;
	position: fixed;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	z-index: 10;
	transition: transform 0.2s ease-out, opacity 0.2s ease-out;
}
.sc_img3 {
	display: block;
	content: "";
	background-image: url("../img/index_sc_img3.png");
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center top;
	position: fixed;
	top: 0;
	right: 0;
	transform: translateY(-50%);
	width: 100%;
	height: 100%;
	z-index: 10;
	transition: transform 0.2s ease-out, opacity 0.2s ease-out;
}
.sc_img4 {
	display: block;
	content: "";
	background-image: url("../img/index_sc_img4.png");
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center top;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 10;
	transition: opacity 0.3s ease-out;
}
#video-container {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	overflow: hidden;
	z-index: 9998;
	clip-path: circle(100% at 50% 50%);
	transition: clip-path 0.3s ease, opacity 0.5s ease, transform 0.3s ease;
}
#bg-video {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.main_box{
	width: 90%;
	max-width: 1400px;
	margin: 0 auto;
}
.mv_box_wrap{
	padding: 0 0 10rem;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	z-index: 2;
	display: block; /* 最初は表示 */
}
.spacer {
	height: 3000px;
	z-index: 0;
}
.scroll_box p{
	position: absolute;
	display: inline-block;
	right: 2vw;
	bottom: 0;
    z-index: 9997;
    padding: 10px 10px 110px;
    font-size: 14px;
    line-height: 1;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    text-decoration: none;
    writing-mode: vertical-lr;
    transition: 0.2s;
    overflow: hidden;
}
.scroll_box p::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 1px;
    height: 52%;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, 0.8) 35%, rgba(0, 0, 0, 0.8) 70%, rgba(0, 0, 0, 0) 100%);
	animation: sdl01 1.5s cubic-bezier(1, 0, 0, 1) infinite;
}
@keyframes sdl01 {
	0% {
		transform: scale(1, 0);
		transform-origin: 0 0;
	}
	50% {
		transform: scale(1, 1);
		transform-origin: 0 0;
	}
	50.1% {
		transform: scale(1, 1);
		transform-origin: 0 100%;
	}
	100% {
		transform: scale(1, 0);
		transform-origin: 0 100%;
	}
}
.h1_wrap{
	position: absolute;
	left: 22vw;
	bottom: 24%;
	transform: rotate(90deg);
}
h1.ttl01{
	font-size: 3rem;
}
.h1_wrap .en_b{
	font-size: 9rem;
	padding: 0 1.5rem 0 0;
}
.catch_wrap{
	position: absolute;
	left: 5vw;
	top: 30%;
	transform: translateY(-50%);
	font-size: 3rem;
}
.catch_wrap .en_s{
	font-size: 2rem;
}
.catch_wrap .h1_txt{
	font-size: 3rem;
	line-height: 1.8;
}
.catch_img{
	position: absolute;
	left: 1%;
	bottom: 0;
	width: 26.5vw;
}
h2.ttl02 {
	font-size: 6rem;
	line-height: 1;
	margin-bottom: 3rem;
}
h3.ttl03 {
	font-size: 2.6rem;
	line-height: 1;
	margin-bottom: 2rem;
	color: #cfc9b7;
}
/*news*/
#News {
	display: flex;
	justify-content: center;
}
.news{
	margin-top: 1550px;
	box-shadow: 0 0 6px 0 #aaa;
}
.news .main_box{
	display: flex;
	max-width: 1000px;
}
.news .button{
	margin-left: .7rem;
}
.news .main_box .l_box{
	width: 30%;
}
.news .main_box .in_news{
	width: 70%;
}
.news .main_box .in_news .widget-entry-cards figure, .in_news .post-update{
	display: none;
}
.news .main_box .in_news .new-entry-card-date{
	display: block;
}
.news h2.ttl02{
	margin-bottom: 1rem;
}
.news .in_news .widget-entry-card-content{
	margin-left: 0;
	display: flex;
	flex-flow: row-reverse;
	align-items: baseline;
}
.news .in_news a{
	border-bottom: 1px dashed #eee;
	padding-bottom: 1rem;
	margin-bottom: 1rem;
}
.news .in_news a:hover{
	background-color: transparent;
	opacity: .7;
	color: #91744c;
}
.news .in_news .post-date{
	width: 125px;
	font-size: 2.4rem;
	line-height: 1.3;
	font-weight: 400;
	padding-bottom: 0;
}
.news .in_news .entry-date{
	margin: 0;
}
.news .in_news .card-title{
	width: calc(100% - 125px);
}
/*about*/
.img_cange{
	position: relative;
	z-index: 0;
}
.img_cange::before{
	display: block;
	content: "";
	background-image: url("../img/index_bg01.jpg");
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	transform: translateY(0);
	transition: transform 0.1s linear;
	will-change: transform;
	transform: translateY(var(--parallax-offset, 0));
}
.img_cange.active::before{
	display: block;
	content: "";
	background-image: url("../img/index_bg02.jpg");
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	transform: translateY(0);
}
.about{
	background-color: transparent;
	position: relative;
	min-height: 100vh;
}
.about .main_box{
	position: absolute;
	left: 13%;
	top: 50%;
	transform: translate(0,-50%);
	max-width: 1000px;
	width: 100%;
}
.about .ttl02, .about p{
	opacity: 0;
	transition: opacity 0.6s ease, transform 0.6s ease;
}
.about .active .ttl02, .about p.active {
	opacity: 1;
}
.about .button a::before{
	background-color: #cfc9b7;
}
/*service*/
.service{
	margin-top: -5rem;
	border-radius: 12rem;
	z-index: 2;
	box-shadow: 0 0 6px 0 #aaa;
}
.service #ttl_pll{
	font-size: 20rem;
	opacity: 0;
	transition: font-size 0.5s ease-out, opacity 1s ease-out;
}
.service .r_box{
	width: 50%;
	padding-left: 2rem;
}
.service .actionbox {
	position: relative;
	width: 50%;
	padding: 10rem 0;
}
.service .actionbox img {
    max-width: 300px;
    display: block;
    margin: 0 auto;
    box-shadow: 0 0 6px 0 #675D50;
}
.service .actionbox::before {
	display: block;
	content: "";
	background-image: url(../img/index_service_gp02.jpg);
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) rotate(0);
	width: 100%;
	max-width: 300px;
	height: 100%;
	max-height: 350px;
	box-shadow: 0 0 6px 0 #675D50;
}
.service .actionbox.active::before {
	animation: lmove 1s forwards .2s;
}
@keyframes lmove{
	0% {
		transform: translate(-50%, -50%) rotate(0);
		transform-origin: 0 0;
	}
	100% {
		transform: translate(-90%, -40%) rotate(-25deg);
		transform-origin: 40% 50%;
	}
}
.service .actionbox::after {
	display: block;
	content: "";
	background-image: url(../img/index_service_gp03.jpg);
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) rotate(0);
	width: 100%;
	max-width: 300px;
	height: 100%;
	max-height: 350px;
	z-index: -1;
	box-shadow: 0 0 6px 0 #675D50;
}
.service .actionbox.active::after {
	animation: rmove 1s forwards .2s;
}
@keyframes rmove{
	0% {
		transform: translate(-50%,-50%) rotate(0);
		transform-origin: 0 0;
	}
	100% {
		transform: translate(-10%,-45%) rotate(25deg);
		transform-origin: 40% 50%;
	}
}
/*business*/
.business{
	background-color: rgb(252, 254, 255);
    background-image: radial-gradient(rgb(230, 227, 218) 30%, transparent 30%);
    background-size: 5px 5px;
	position: relative;
	border-bottom: 8rem solid #ada48a;
	padding-bottom: 0;
	margin-top: -10rem;
	padding-top: 20rem;
}
.business .main_box{
	position: relative;
	z-index: 1;
}
.business .main_box::before, .business .main_box::after{
	display: block;
	content: "";
	background-image: url("../img/index_business03.png");
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: contain;
	width: 17vw;
	height: 50%;
	position: absolute;
	left: 38%;
	bottom: -3%;
	transform: translateX(-50%);
}
.business .main_box::after{
	background-image: url("../img/index_business04.png");
	width: 10vw;
	height: 40%;
	position: absolute;
	left: 20%;
	transform: translateX(0);
}
.business .mv_img_am li {
	width: 5vw;
	position: absolute;
	top: 35%;
	right: 2%;
	transform: rotate(-30deg);
	opacity: 0;
}
.business .mv_img_am .move_img {
    animation: mvmove 2.4s infinite;
}
.business .mv_img_am  li {
    width: 5vw;
    position: absolute;
    top: 45%;
    right: 7%;
    transform: rotate(-30deg);
    opacity: 0;
}
.business .mv_img_am li.img_am02.move_img {
    top: 29%;
    right: 6%;
    animation: mvmove 2.4s infinite .4s;
}
.business .mv_img_am li.img_am03.move_img {
    top: 25%;
    right: 14%;
    animation: mvmove 2.4s infinite .8s;
}
.business .mv_img_am li.img_am04.move_img {
    top: 10%;
    right: 11%;
    animation: mvmove 2.4s infinite 1.2s;
}
@keyframes mvmove {
	0% {
		opacity: 0;
	}
	10% {
		opacity: 1;
	}
	30% {
		opacity: 1;
	}
	40% {
		opacity: 0;
	}
	100% {
		opacity: 0;
	}
}
.business .l_box{
	padding-top: 5%;
}
.business .l_box, .business .r_box{
	width: 50%;
}
.business .l_box .button::before{
	background-color: #a39b91;
}
.business .r_box {
	padding-top: 5.5%;
	position: relative;
	z-index: 5;
}
.business .r_box p{
	width: 75%;
	margin: 3rem auto 0;
	border-radius: 40rem 40rem 0 0;
	box-shadow: 0 0 0 2px #ada48a;
	position: relative;
	z-index: 5;
}
.business .r_box p::before{
	display: block;
	content: "";
	background-image: url("../img/index_business02.png");
	background-size: contain;
	background-position: center bottom;
	background-repeat: no-repeat;
	width: 130%;
	height: 100%;
	position: absolute;
	left: 50%;
	bottom: -2%;
	transform: translateX(-50%) scale(1.2);
	opacity: 0;
	transition: opacity 0.6s ease, transform 0.6s ease;
}
.business .r_box.active p::before{
	opacity: 1;
	transform: translateX(-50%) scale(1);
}
.business .r_box p img{
	display: block;
	margin: 0 auto;
	border-radius: 40rem 40rem 0 0;
	padding: 2rem;
}
/*
.business .r_box li{
	width: 30%;
	max-width: 200px;
	height: 30%;
	position: absolute;
	left: 50%;
	top: -8%;
	transform: translateX(-50%);
}
.business .r_box li:nth-child(2){
	width: 40%;
	max-width: 200px;
	height: 30%;
	position: absolute;
	left: 0;
	top: 4%;
	z-index: -1;
	transform: rotate(-20deg);
}
.business .r_box li:nth-child(3){
	width: 30%;
	max-width: 180px;
	height: 30%;
	position: absolute;
	left: auto;
	right: 5%;
	top: 6%;
	z-index: -1;
	transform: rotate(15deg);
}
*/
/*
.business .actionimg {
	opacity: 0;
	transform: translate(30px, 30px);
	transition: opacity 1.8s ease-out, transform 1.8s ease-out;
	display: block;
	margin: 40px auto;
}
.business .actionimg.busimg02 {
	transform: translateX(0);
}
.business .actionimg.busimg03 {
	transform: scale(0.8) translateY(0);
}
.business .actionimge.hide {
	opacity: 0;
}
.actionimg.busimg01.show {
	animation: fadeUpLeft 0.8s ease-out forwards;
	animation-delay: .5s;
}
@keyframes fadeUpLeft {
	0% {
		opacity: 0;
		transform: translate(30px, 30px);
	}
	100% {
		opacity: 1;
		transform: translate(-15px, -15px);
	}
}
.actionimg.busimg02.show {
	animation: swingIn 1s ease-in-out forwards;
	animation-delay: 0.8s;
}
@keyframes swingIn {
	0% {
		opacity: 0;
		transform: rotate(-20deg);
	}
	35% {
		opacity: 1;
		transform: rotate(-5deg);
	}
	70% {
		opacity: 1;
		transform: rotate(-20deg);
	}
	100% {
		opacity: 1;
		transform: rotate(0);
	}
}
.actionimg.busimg03.show {
	animation: zoomBounce 0.8s ease-out forwards;
	animation-delay: 1.2s;
}
@keyframes zoomBounce {
	0% {
		opacity: 0;
		transform: scale(0.8);
	}
	60% {
		opacity: 1;
		transform: scale(1.1);
	}
	100% {
		opacity: 1;
		transform: scale(1);
	}
}
*/
/*
.business .img_sbox_wrap {
	margin-top: 45vh;	
}
.business .img_sbox{
	overflow: hidden;
	z-index: 0;
}
.business .img_sbox li img{
	width: 90%;
	max-width: 400px;
}
*/
/*recruit*/
.recruit .img_box{
	position: relative;
	z-index: 1;
	width: 100%;
	left: -9%;
	padding-bottom: 10rem;
}
.recruit .img_box .move_img img {
	opacity: 1;
	transition: translate 1s cubic-bezier(0, 0.5, 0.6, 1), 
	opacity 0.6s cubic-bezier(0, 0.5, 0.6, 1);
	width: 100%;
	height: 100%;
	transition-delay: 1s;
}
.recruit .img_box .move_img:nth-child(1) img {
    translate: 0 25%;
}
.recruit .img_box .move_img:nth-child(2) img {
    translate: 4% -5%;
}
.recruit .img_box .move_img:nth-child(3) img {
     translate: 8% 31%;
}
.recruit .img_box .move_img.active:nth-child(1) img {
    translate: 0 15%;
}
.recruit .img_box .move_img.active:nth-child(2) img {
    translate: 4% 4%;
}
.recruit .img_box .move_img.active:nth-child(3) img {
    translate: 8% 21%;
}
/*access*/
.access{
	box-shadow: 0 7px 5px 0 #3e2f19;
	position: relative;
	padding-top: 15rem;
}
.access::before {
	display: block;
	content: "";
	width: 100%;
	height: 100%;
	background: #F0EDE4;
	background: -webkit-linear-gradient(rgba(251, 250, 247, 1) 0%, rgba(222, 218, 206, 1) 100%);
	background: -o-linear-gradient(rgba(251, 250, 247, 1) 0%, rgba(222, 218, 206, 1) 100%);
	background: linear-gradient(rgba(251, 250, 247, 1) 0%, rgba(222, 218, 206, 1) 100%);
	border-radius: 90rem 90rem 0 0;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translate(-50%, -30%);
	z-index: -1;
	opacity: 0;
}
.access.active::before{
	animation: upfadeIn 1.5s forwards .5s;
}
@keyframes upfadeIn{
	0%{
		opacity: 0;
		transform: translate(-50%, 30%);
	}
	50%{
		opacity: 1;
	}
	100%{
		opacity: 1;
		transform: translate(-50%, 0);
	}
}
.access .acc_txt{
	width: 50%;
}
.access .acc_txt li{
	border-bottom: 1px solid #aaa;
	padding-bottom: 1.5rem;
	margin-bottom: 1.5rem;
}
.access .acc_txt li:last-child{
	border-bottom: none;
	padding-bottom: 0;
	margin-bottom: 0;
}
.access .acc_txt li dl{
	display: flex;
	align-items: center;
}
.access .acc_txt li dt{
	width: 120px;
	font-size: 2rem;
}
.access .acc_txt li dd{
	width: calc(100% - 120px);
}
.access .acc_txt li dd dt{
	font-size: 1.6rem;
	width: 70px;
	margin-right: 2rem;
	background-color: #cfc9b7;
	text-align: center;
	padding: .5rem 0;
}
.access .box_r{
	width: 50%;
}
.access .img_box{
	position: relative;
	z-index: 1;
	width: 70%;
	right: -9%;
}
.access .img_box.move_img li img {
	opacity: 1;
	transition: translate 1s cubic-bezier(0, 0.5, 0.6, 1), 
	opacity 0.6s cubic-bezier(0, 0.5, 0.6, 1);
	width: 100%;
	height: 100%;
	transition-delay: 1s;
}
.access .img_box.move_img li:nth-child(1) img {
    translate: 25% 0;
}
.access .img_box.move_img li:nth-child(2) img {
    translate: -5% 4%;
}
.access .img_box.move_img li:nth-child(3) img {
     translate: 31% 8%;
}
.access .img_box.move_img.active li:nth-child(1) img {
    translate: 15% 0;
}
.access .img_box.move_img.active li:nth-child(2) img {
    translate: 4% 4%;
}
.access .img_box.move_img.active li:nth-child(3) img {
    translate: 21% 8%;
}
@media screen and (max-width: 1366px){
	.h1_wrap {
		left: 48vw;
		bottom: 7%;
		transform: rotate(0deg);
	}
	.sc_img, .sc_img2, .sc_img3{
		background-size: contain
	}
	.catch_img{
		left: -2%;
		bottom: 5%;
		width: 33.5vw;
	}
	.recruit .img_box .move_img{
		width: calc(100%/3);
	}
}
@media screen and (max-width: 1199px){
	.about .main_box{
		left: 50%;
		width: 90%;
		transform: translate(-50%, -50%);
	}
	.service .actionbox img, .service .actionbox::before, .service .actionbox::after{
		max-width: 250px;
		max-height: 291px;
	}
	.business .mv_img_am li{
		top: 40%;
	}
	.business .mv_img_am li.img_am04.move_img{
		top: 14%;
	}
	.access .img_box{
		width: 80%;
	}
}
@media screen and (max-width: 1024px) and (orientation: portrait){
	.h1_wrap, .catch_wrap, .catch_img{
		z-index: 999;
	}
	.mv_slide_box .main_mv01::before{
		background-image: url("../img/index_mv01_sp.png");
	}
	.mv_slide_box .main_mv02::before{
		background-image: url("../img/index_mv02_sp.png");
	}
	.mv_slide_box .main_mv03::before{
		background-image: url("../img/index_mv03_sp.png");
	}
	.sc_img {
		background-image: url("../img/index_sc_img_sp.png");
	}
	.sc_img2 {
		background-image: url("../img/index_sc_img2_sp.png");
	}
	.sc_img3{
		background-image: url("../img/index_sc_img3_sp.png");
	}
}
@media screen and (max-width: 999px){
	#top-head.slidein nav#js-nav .nav{
		width: 100%;
		background: #F0ECE0;
        background: -webkit-linear-gradient(rgba(240, 236, 224, 1) 30%, rgba(222, 218, 206, 1) 100%);
        background: -o-linear-gradient(rgba(240, 236, 224, 1) 30%, rgba(222, 218, 206, 1) 100%);
        background: linear-gradient(rgba(240, 236, 224, 1) 30%, rgba(222, 218, 206, 1) 100%);
		border-radius: 37rem 37rem 0 0;
		max-width: none; 
		box-shadow: none;
	}
/*
	header .slidein .logo.d_pc_but{
		max-width: 160px;
		margin: 0 auto;
	}
*/
	.catch_img{
		left: -4%;	
		bottom: 12%;
		width: 40.5vw;
	}
	.h1_wrap{
		left: auto;
		right: 2vw;
		bottom: auto;
		top: 26.5vh;
	}
	h1.ttl01 {
		font-size: 2rem;
	}
	.h1_wrap .en_b{
		font-size: 7rem;
	}
	h2.ttl02, .service #ttl_pll{
		font-size: 4.8rem;
	}
	.catch_wrap{
		left: 2.5vw;
		text-shadow: 1px 1px 0 #FFF, -1px -1px 0 #FFF, -1px 1px 0 #FFF, 1px -1px 0 #FFF, 0px 1px 0 #FFF, 0 -1px 0 #FFF, -1px 0 0 #FFF, 1px 0 0 #FFF;
	}
	.news{
		margin-top: 1500px;
	}
	.about{
		min-height: 80vh;
	}
	.service .actionbox{
		width: 80%;
		padding: 0;
		margin: 0 auto;
	}
	.service .r_box{
		width: 100%;
		padding: 0;
		margin-top: 8rem;
	}
	.business{
		min-height: auto;
	}
	.business .mv_img_am li{
		width: 8vw;
	}
	.business .mv_img_am li.img_am02.move_img{
		top: 28%;
		right: 3%;
	}
	.business .r_box {
		padding-top: 17.5%;
	}
	.business .r_box p{
		width: 95%;
	}
	.business .main_box::before{
		width: 23vw;
		bottom: -2%;
	}
	.business .main_box::after{
		width: 14vw;
		left: 10%;
		bottom: -2%;
	}
	.access::before{
		border-radius: 35rem 35rem 0 0;
	}
	.access .acc_txt{
		width: 55%;
	}
	.access .box_r {
		width: 45%;
	}
	.access .img_box {
		width: 83%;
	}
	.access .acc_txt li dl dl{
		flex-wrap: wrap;
	}
	.access .acc_txt li dt{
		font-size: 1.8rem;
	}
	.access .acc_txt li dd dd{
		width: 100%;
	}
}
@media screen and (max-width: 767px){
	.loading-screen .loading-text{
		font-size: 3rem;
	}
	.mv_box_wrap, .mv_box{
		padding: 0;
	}
	.sc_img, .sc_img2, .sc_img3 ,.mv_slide_box .main_mv01::before, .mv_slide_box .main_mv02::before, .mv_slide_box .main_mv03::before{
		background-size: 140%;
    }
	.catch_img{
		bottom: 14%;
		width: 47.5vw;
	}
	.h1_wrap{
		top: auto;
		bottom: 0;
		right: 10vw;
	}
	h2.ttl02, .service #ttl_pll{
		font-size: 4rem;
	}
	h3.ttl03{
		font-size: 2.3rem;
	}
	.news .main_box{
		flex-wrap: wrap;
	}
	.news .main_box .l_box, .news .main_box .in_news{
		width: 100%;
	}
	.service{
		padding: 10rem 0 8rem;
		border-radius: 6rem;
	}
	.business .mv_img_am li {
		width: 14vw;
		top: 46%;
	}
	.business .mv_img_am li.img_am02.move_img{
		top: 33%;
	}
	.business .mv_img_am li.img_am03.move_img{
		right: 24%;
		top: 28%;
	}
	.business .mv_img_am li.img_am04.move_img{
		right: 16%;
		top: 16%;
	}
	.business .l_box{
		width: 70%;
	}
	.business .r_box{
		width: 60%;
		padding-top: 0;
		margin: -20% 0 0 auto;
	}
	.business .r_box p img{
		padding: 1rem;
	}
	.business .main_box::before {
		width: 32vw;
		left: 28%;
	}
	.business .main_box::after {
		width: 16vw;
		left: -4%;
		bottom: -1%;
	}
	.recruit{
		padding-bottom: 0;
	}
	.recruit .flex{
		flex-flow: wrap;
	}
	.recruit .box_l, .recruit .box_r{
		width: 100%;
	}
	.recruit .img_box{
		left: 0;
	}
	.recruit .img_box .move_img{
		width: calc(97%/3);
	}
	.access {
		padding-top: 10rem;
    }
	.access::before {
		border-radius: 22rem 22rem 0 0;
    }
	.access .acc_txt, .access .box_r, .access .img_box{
		width: 100%;
	}
	.access .img_box{
		margin-top: 2rem;
		right: 3%;
	}
	.access .img_box.move_img li img{
		width: 85%;
	}
}
@media screen and (max-width: 480px){
	.loading-screen .loading-text{
		font-size: 3rem;
		width: 100%;
	}
	.loading-screen .loading-text .loadtxt02::first-letter{
		font-size: 4rem;
	}
	.h1_wrap .en_b{
		font-size: 6rem;
	}
	.catch_img{
		bottom: 10%;
		width: 59.5vw;
	}
	h2.ttl02, .service #ttl_pll{
		font-size: 3.2rem;
		margin-bottom: 1.5rem;
	}
	h3.ttl03 {
		font-size: 1.8rem;
	}
	.button a{
		font-size: 1.9rem;
		margin: 1rem 0;
	}
	.news .in_news .widget-entry-card-content{
		flex-flow: column;
	}
	.news .in_news .post-date, .news .in_news .card-title{
		width: 100%;
		font-size: 1.4rem;
	}
	.news .in_news .post-date{
		font-size: 1.3rem;
		padding-bottom: 0;
		color: #ada48a;
	}
	.about {
		padding: 5rem 0 8rem;
	}
	.about .main_box{
		position: relative;
		top: 3rem;
		left: 0;
		transform: translate(0,0);
	}
	.service{
		padding: 7rem 0 5rem;
	}
	.service .actionbox{
		width: 55%;
	}
	.access .acc_txt li dt {
		width: 95px;
		font-size: 1.6rem;
	}
	.access .acc_txt li dd {
		width: calc(100% - 95px);
		font-size: 1.3rem;
	}
	.access .acc_txt li dd dt{
		font-size: 1.3rem;
		padding: .3rem 1rem;
	}
/*
	.access .img_box li{
		margin-bottom: 2%;
	}
*/
	.business{
		border-bottom: 5rem solid #ada48a;
	}
}
@media screen and (max-width: 375px){
	.sc_img, .sc_img2, .sc_img3 ,.mv_slide_box .main_mv01::before, .mv_slide_box .main_mv02::before, .mv_slide_box .main_mv03::before{
		background-size: 120%;
    }
	.catch_img{
		bottom: 14%;
		width: 48.5vw;
	}
	.catch_wrap{
		left: 5.5vw;
		top: 22%;
	}
	.catch_wrap .en_s{
		font-size: 1.5rem;
	}
	.catch_wrap .h1_txt{
		font-size: 2rem;
	}
	.h1_wrap .en_b{
		font-size: 5rem;
	}
	h1.ttl01 {
		font-size: 1.8rem;
	}
}