#wrapper{
	overflow: hidden;
}

.top-image {
	width: 100%;
    max-width: 100%;
	position: relative;
    margin: 0 auto;
	height: 100vh;
	background: url("../img/main.png") center center no-repeat;
	background-size: cover;
}
.top-image .logo {
	position: absolute;
	left: 30px;
	top: 30px;
	width: 60%;
	max-width: 350px;
    z-index: 3;
}
.top-image .logo img{
	width: 100%;
	height: auto;
}
.top-image .photo {
	width: 100%;
	position: relative;
    overflow-x: hidden;
}
.top-image .catch {
    width: 45%;
    position: absolute;
    top: 50%;
    left: 0;
	right: 0;
    margin: auto;
    -webkit-transform: translate(0, -50%); 
    transform: translate(0, -50%);
    z-index: 3;
}
.top-image img {
	width: 100%;
	max-width: 100%;
	height: auto;
}
.top-image .scroll{
	width: 6px;
	position: absolute;
	bottom: 15px;
	right: 20px;
}

@media print , screen and (max-width: 768px) {
.top-image .logo {
	left: 10px;
	top: 20px;
}
.top-image .scroll{
	width: 4px;
	position: absolute;
	bottom: 10px;
	right: 20px;
}
.top-image .catch {
	width: 60%;
}

}


@media print , screen and (max-width: 560px) {
.top-image .catch {
	width: 70%;
}
}

.concept{
	position: relative;
	padding: 0 0 8%;
	background: url("../img/concept_back.png") left bottom no-repeat;
	background-size: 90% auto;
}
.concept .left{
	position: absolute;
	left: 0;
	top: 5%;
	width: 90%;
 }
.concept .right{
	position: absolute;
	right: 0;
	bottom:25%;
	width: 25%;
}
.concept .concept-copy{
	max-width: 800px;
	margin: auto;
	padding-left: 10%;
}

.concept p{
	margin-bottom: 6%;
}
.concept .sign{
	padding: 10px;
	margin: 8% auto;
}

@media print , screen and (max-width: 560px) {
.concept .concept-copy{
	padding-left: 8%;
}
.concept{
	position: relative;
	padding: 0 0 8%;
	background: url("../img/concept_back.png") left bottom no-repeat;
	background-size: 100% auto;
}
.concept .left{
	position: absolute;
	left: 0;
	top: 5%;
	width: 130%;
 }
.concept .right{
	position: absolute;
	right: 0;
	bottom:25%;
	width: 45%;
}
}
@media print , screen and (max-width: 480px) {
.concept .concept-copy{
	padding-left: 5%;
}
}

.company{
	position: relative;
	background: #0a0f13;
	padding: 8% 10px;
}
.company .title{
	position: absolute;
	right: 5%;
	top: -80px;
	width: 45%;
}
.company .title h2{
	padding: 0 10px;
	font-weight: 500;
}

.company .c-left{
	position: absolute;
	left: 0;
	top: 0;
	width: 30%;
	opacity: 0.7;
}
.company .c-right{
	position: absolute;
	right: 0;
	bottom: 0;
	width: 30%;
	opacity: 0.7;
}
.company .outline{
	max-width: 1000px;
	margin: auto;
	padding: 5% 0 5%;
	
}

.associated{
	max-width: 1000px;
	margin: auto;
	padding: 5% 10px;
}
.associated .title-s{
	text-align: center;
	margin-bottom: 5%;
}
.associated .title-s h3{
	text-align: center;
	color: #d7f1f7;
	font-weight: 500;
}
.associated .title-s p{
	color: #7dcce3;
	font-weight: 300;
	text-align: center;
}

.associated .waku{
	margin: auto;
	border: 1px solid #848789;
	padding: 30px;
	margin: 6% auto 0;
}
.associated .waku h4{
	padding: 10px;
	margin-bottom: 10px;
}
.associated .waku h4 a{
	display: block;
	text-decoration: none;
	position: relative;
	padding-left: 25px;
	color: #fff;
}
.associated .waku h4 a:hover{
	color: #476570;
}
.associated .waku h4 a::before {
    content: "";
	position: absolute;
	left: 0;
	top: 40%;
  transform: translateY(-50%);
    display: block;
    width: 12px;
    height: 12px;
    border-top: 2px solid #476570;
    border-right: 2px solid #476570;
    transform: rotate(45deg);
}
.associated .waku .logomark{
	width: 25%;
	padding-right: 20px;
	text-align: center;
}
.associated .waku .logomark img{
	max-width: 150px;
	width: 100%;
	height: auto;
}
.associated .waku .txt{
	width: 75%;
}
.associated .waku p{
	font-size: clamp(13px, 1.5vw, 15px);
	line-height: 1.6em;
}

.copyright{
	text-align: center;
	padding: 10px;
	font-size: 1.3rem;
}

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

@media print , screen and (max-width: 960px) {
.company .title{
	top: -60px;
}
}
@media print , screen and (max-width: 768px) {
.company .title{
	top: -50px;
}
}
@media print , screen and (max-width: 530px) {

.associated .waku{
	margin: auto;
	border: 1px solid #848789;
	padding: 30px 10px;
	margin: 6% auto 0;
}
.company .title{
	top: -30px;
}
.associated .waku .logomark{
	width: 50%;
	padding:0;
	text-align: center;
}
.associated .waku .txt{
	width: 100%;
}
}