@charset "UTF-8";
/* CSS Document */


/* animation_box */

.animation_box {
  transition: 1s ease;
	opacity: 0;
	transition-delay: .5s;
	transform: translateY(0px);
}

.main-img-top .animation_box2 {
	transform: translateY(70px);
	transition-delay: 1.5s;
}

.animation_box.effect {
	opacity: 1;
	transform: translateY(0px);
}



/* main-img-top */

.main-img-top {
	width: 100%;
}

.main-img-top .box-inner {
	width: 100%;
	position: relative;
	text-align: center;
	padding-bottom: 12%;
}

.main-img-top .box-img {
	width: 100%;
	position: relative;
}

.main-img-top .box-img::before {
	content: "";
	position: absolute;
left: 0px;
bottom: 0px;
	width: 100%;
	height: 40%;
	display: block;
	  background : -moz-linear-gradient(50% 39.51% 90deg,rgba(0, 0, 0, 1) 0%,rgba(0, 0, 0, 0) 100%);
  background : -webkit-linear-gradient(90deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%);
  background : -webkit-gradient(linear,50% 39.51% ,50% -60.49% ,color-stop(0,rgba(0, 0, 0, 1) ),color-stop(1,rgba(0, 0, 0, 0) ));
  background : -o-linear-gradient(90deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%);
  background : -ms-linear-gradient(90deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%);
  -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#000000', endColorstr='#000000' ,GradientType=0)";
  background : linear-gradient(0deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%);
}

.main-img-top .box-img img {
	width: 100%;
height: 100vh;
}

.main-img-top .box-text {
	position: absolute;
left: 0px;
bottom: 0px;
    width: 100%;
    text-align: center;
}

.main-img-top .box-text img {
	width: 100%;
height: auto;
	max-width: 96%;
}


/* contents-top */

.contents-top {
	width: 100%;
	max-width: 100%;
}

.contents-top img {
	width: 100%;
height: auto;
}


.contents01 .midashi-box h2::before, .contents03 .midashi-box h2::before {
	content: "";
	position: absolute;
left: 0px;
top: 40px;
	width: 1000px;
	height: 1px;
	background-color: #FFF;
	display: block;
	margin-left: -1030px;
}


/* contents01 */

.contents01 {
	width: 100%;
	padding: 140px 0px 40px;
}

.contents01 .box-inner {
	width: 100%;
	display: flex;
  justify-content: flex-end;
flex-wrap: wrap;
	gap:0px 5%;
}

.contents01 .box-detail {
	width: 530px;
	padding-top: 70px;
}

.contents01 .box-img {
	width: 50%;
}

.contents01 .box-img img {
	width: 100%;
	max-height: 620px;
}

.contents01 p {
line-height: 2.2;
	opacity: 0.8;
	padding: 40px 0px 50px;
}


/* contents02 */

.contents02 {
	width: 100%;
	height: 1280px;
	text-align: center;
	background-image: url("top/images/back01.jpg");
background-position: center center;
background-repeat: no-repeat;
background-size: cover;
	display: flex;
  justify-content: center;
align-items: center;
flex-wrap: wrap;
}

.contents02 .box-inner {
	width: 90%;
	max-width: 1420px;
}

.contents02 .box-business {
	display: flex;
  justify-content: space-between;
flex-wrap: wrap;
	padding: 70px 0px;
}

.contents02 .box-business .box {
	width: 23.5%;
	text-align: left;
}

.contents02 .box-business .box-img {
	position: relative;
	overflow: hidden;
}

.contents02 .box-business .box-img img {
	transition:.5s all;
}

.contents02 .box-business .box-img:hover img {
	transform:scale(1.2,1.2);
  transition:.5s all;
}

.contents02 .box-business .box-text {
	padding-top: 30px;
}

.contents02 h4, .contents02 h5 {
	line-height: 1.2;
	font-weight: 400;
}

.contents02 h4 {
	font-family: "Zen Old Mincho", serif;
	font-size: 26px;
	letter-spacing: 0.05em;
}

.contents02 h5 {
	font-family: "Kaisei Opti", serif;
	font-size: 15px;
	letter-spacing: 0.1em;
	opacity: 0.5;
	padding-top: 7px;
}

.contents02 p {
	line-height: 2.2;
	opacity: 0.8;
	padding-top: 50px;
}


/* contents03 */

.contents03 {
	width: 100%;
}

.contents03 .lay01, .contents03 .lay03 {
	width: 1240px;
}

.contents03 .lay02 {
	width: 100%;
	max-height: 620px;
	overflow: hidden;
	margin-bottom: 70px;
	padding-top: 10px;
}

.contents03 .lay02 .box {
	height: 620px !important;
}

.contents03 .box-img {
	position: relative;
	height: 620px;
}

.contents03 .box-img div {
	position: absolute;
	left: -50px;
	z-index: 1;
}

.contents03 .lay02 .box01 .box-img div {
top: 50px;
}

.contents03 .lay02 .box02 .box-img div {
bottom: 20px;
}

.contents03 .lay02 .box03 .box-img div {
top: 160px;
	z-index: 2;
}

.contents03 .lay02 .box05 .box-img div {
bottom: 0px;
	z-index: 2;
}


.contents03 .loop-slider .box01, .contents03 .loop-slider .box04 {
	width: 32vw !important;
}

.contents03 .loop-slider .box02 {
	width: 16vw !important;
}

.contents03 .loop-slider .box03 {
	width: 12vw !important;
}

.contents03 .loop-slider .box05 {
	width: 22vw !important;
}





.sp-view {
    display: none;
}

html, body {
    height: 100%;
}


