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

.main-contents section {
	margin-bottom: 150px;
}

/* animation_box */

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

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

/*contents01*/

.contents01 .lay01, .contents01 .lay02 {
	width: 1240px;
	text-align: center;
}

.contents01 p {
	padding-top: 60px;
	line-height: 2.5;
}

/*contents02*/

.contents02 .box {
	width: 100%;
	border-bottom-style : solid;
border-color : rgba(255, 255, 255, 0.5);
border-width : 1px;
	padding: 100px 0px;
	display: flex;
  justify-content: center;
	flex-wrap: wrap;
	gap:0px 45px;
}

.contents02 .box:nth-child(1) {
	padding-top: 0px;
}

.contents02 .box-img {
	width: 680px;
	position: relative;
}

.contents02 .box-text {
	width: 500px;
	padding-top: 80px;
	position: relative;
}

.contents02 h4 img {
	height: 120px;
	width: auto;
}

.contents02 h5 {
	font-family: "Kaisei Opti", serif;
	font-size: 25px;
line-height: 1.2;
letter-spacing: 0.05em;
font-weight: 400;
	padding: 40px 0px 80px;
	position: relative;
}

.contents02 h5::before {
	content: "";
	position: absolute;
right: 0px;
top: 110px;
	width: 1500px;
	height: 1px;
	background-color: rgba(255, 255, 255, 0.5);
	display: block;
	margin-right: -500px;
	z-index: -1;
}

.contents02 .box:last-child h5::before {
top: 130px;
}

.contents02 h6 {
	font-family: "Zen Old Mincho", serif;
	font-size: 30px;
line-height: 1.4;
letter-spacing: 0.1em;
font-weight: 400;
	margin-bottom: 30px;
}


/*contents03*/

.contents03 .box-inner {
	width: 90%;
	max-width: 1330px;
	height: 210px;
	border-style : solid;
border-color : rgba(255, 255, 255, 0.5);
border-width : 1px;
	background-image: url("images/back01.jpg");
background-position: left center;
background-repeat: no-repeat;
background-size: 70% auto;
}

.contents03 .box-inner a {
	display: flex;
  justify-content: space-between;
flex-wrap: wrap;
	align-items: center;
	position: relative;
	width: 100%;
	height: 210px;
}

.contents03 .box-inner a::before {
	content: "";
	position: absolute;
left: 15px;
top: 15px;
	right: 15px;
	bottom: 15px;
	border-style : solid;
border-color : rgba(255, 255, 255, 0.5);
border-width : 1px;
	display: block;
}

.contents03 .box-inner .lay01 {
	width: 50%;
	text-align: center;
}

.contents03 .box-inner .lay02 {
	flex: 1;
	text-align: right;
	padding-right: 60px;
}

.contents03 .box-inner .lay03 {
	position: absolute;
right: 60px;
bottom: 40px;
}

.contents03 h3 {
	font-family: "Kaisei Opti", serif;
	font-size: 70px;
line-height: 0.9;
letter-spacing: 0.35em;
font-weight: 400;
	text-shadow: 0px 0px 8px rgba(0,0,0,1);
}

.contents03 h4 {
	font-family: "Zen Old Mincho", serif;
	font-size: 28px;
line-height: 1.2;
letter-spacing: 0.2em;
font-weight: 400;
	margin-bottom: 10px;
}

.contents03 h6 {
	font-family: "Kaisei Opti", serif;
	font-size: 20px;
  font-weight: 500;
  color: #FFF;
  line-height: 1.2;
  letter-spacing: 0.15em;
  display: inline-block;
	position: relative;
	padding-right: 40px;
}

.contents03 h6::after {
  content: "";
	position: absolute;
right: 10px;
top: 0px;
background-image: url("../common/images/link-arrow02.svg");
background-position: right center;
background-repeat: no-repeat;
	background-size: auto 22px;
	width: 29px;
	height: 100%;
	transition: .5s;
}

.contents03 a:hover h6::after {
	right: 0px;
}


.sp-view {
    display: none;
}

html, body {
    height: 100%;
}
