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


@media screen and (max-width: 767px) {

/* contents-top */

.contents-top {
	width: 100%;
    padding: 60px 0px;
}


/* title_contents-top */

.title_contents-top {
    margin-bottom: 30px;
}

.title_contents-top h3 {
    font-size: 32px;
}

/* main-img-top */
    
    .main-img-top .lay01 .inner {
        gap:20px 0px;
        flex-direction: column;
    }
    
    .text-box img {
      height: 45px;
        width: auto;
    }

    @keyframes fadeDownIn {
      0% {
        opacity: 0;
        transform: translateY(-50px);
      }
      100% {
        opacity: 1;
        transform: translateY(-30px);
      }
    }

    @keyframes fadeDownIn2 {
      0% {
        opacity: 0;
        transform: translateY(50px);
      }
      100% {
        opacity: 1;
        transform: translateY(30px);
      }
    }

    @keyframes moveDown {
      0% {
        transform: translateY(-30px);
      }
      100% {
        transform: translateY(0px);
      }
    }
    
    @keyframes moveUp {
      0% {
        transform: translateY(30px);
      }
      100% {
        transform: translateY(0px);
      }
    }
    
    .main-img-top .lay02 {
        gap:50px;
    }
    
    .main-img-top .lay02 h2 img.sp-view {
        height: 105px;
        width: auto;
    }
    
    @keyframes moveDown2 {
      0% {
        transform: translateY(0px);
      }
      100% {
        transform: translateY(110px);
      }
    }
    
    .main-img-top .lay02 .logo-group {
        height: 180px;
    }
    
    .main-img-top .lay02 .logo-group li {
        height: 180px;
    }
    
    .main-img-top .lay02 .logo-group li img {
        max-width: 75%;
        max-height: 180px;
    }
    


/* container */

.container {
	width: 100%;
    padding-top: 50px;
}

.container > section:not(:last-child) {
    margin-bottom: 70px;
}

.container p {
	line-height: 2;
}
    
/* contents01 */
    
.contents01 h4 {
    font-size: 22px;
    margin-bottom: 30px;
}

/* contents02 */

.contents02::before {
	display: none;
}

.contents02 .box-inner {
    padding-top: 60px;
    padding-left: 0px;
    padding-bottom: 0px;
}
    
.contents02 .box-img {
    margin-top: 40px;
}
    
.contents02 .box-img {
    width: 100%;
    height: 450px;
    overflow: hidden;
}


/* layout01 */

.layout01 .box:not(:last-child) {
    margin-bottom: 40px;
}

.layout01 .box-value .item {
    padding-left: 0px;
    gap:10px 0px;
}

.layout01 .box-value .item::before {
left: 10px;
    font-size: 22px;
}

.layout01 .box-value .item::after {
	width: 100%;
	height: 2px;
}

.layout01 h5 {
    font-size: 30px;
    margin-bottom: 25px;
}

.layout01 h5::before {
	width: 300px;
	height: 15px;
    margin-bottom: -5px;
}

.layout01 h6 {
    font-size: 18px;
    padding-left: 35px;
}

.layout01 p {
    font-size: 14px;
    letter-spacing: 0.05em;
}

.layout01 .box-value p {
    font-size: 14px;
letter-spacing: 0.15em;
    flex: auto;
    width: 100%;
    padding-left: 35px;
}



/* layout02 */

.layout02 h4 {
    padding-top: 30px;
}

.layout02 p {
    letter-spacing: 0.1em;
}


/* layout03 */

.layout03 > .box:not(:last-child) {
    margin-bottom: 50px;
}
    
.layout03 .box {
   max-width: 400px;
    margin: 0px auto;
}

.layout03 .box-wrap {
  justify-content: center;
    gap:50px;
}

.layout03 .box-wrap .box {
    width: 100%;
}

.layout03 a {
    min-height: 200px;
  justify-content: center;
    text-align: center;
    padding-left: 0px;
    background-position: center;
}

.layout03 .box-link01 a {
    background-image: url("../../images/top/back-link01-sp.png");
}

.layout03 .box-link02 a {
    background-image: url("../../images/top/back-link02-sp.png");
}

.layout03 .box-link03 a {
    background-image: url("../../images/top/back-link03-sp.png");
}


.layout03 .box-wrap a {
    min-height: 200px;
}

.layout03 h6 {
    font-size: 36px;
}
    
.layout03 .box-link04 h6 {
    margin-bottom: 20px;
}

.layout03 .box-link04 span {
    font-size: 14px;
letter-spacing: 0.2em;
    width: 240px;
    height: 50px;
    padding-top: 17px;
    padding-left: 40px;
}

.layout03 .box-link04 span::before {
left: 50px;
top: 15px;
	height: 22px;
}

    .pc-view {
        display: none;
    }
    .sp-view {
        display: inline-block;
    }
   
}
