@charset "utf-8";@charset "UTF-8";
.image {
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
}

.image img {
	display: block;
	width: 100%;
	height: auto;
}

.pc_only {
    display: block;
}
.sp_only {
    display:none;
}

.top-pc-kasaneru{
  position: relative;
  text-align: center;
}

.top-pc-kasaneru img.imagup{
  position: absolute;
  top:50%;
  left: 50%;
  transform: translate(-50%,40%);
 width: 30%;
}


.box2 {
   text-align:center;
   padding-top:10%;
   padding-bottom:5%;
margin:0 auto;
}

.box3 {
   text-align:center;
   padding-top:10%;
   padding-bottom:5%;
width:100%;
margin:0 auto;
}

.parent {
    display: grid;
    grid-template-columns: repeat(2, 0.4fr);
    grid-template-rows: repeat(1, 0.3fr);
    gap: 2em;
    justify-content: center;
margin:0 auto;
    margin-bottom: 3%;
width:75%;
}

.parent02 {
    display: grid;
    grid-template-columns: repeat(1, 0.81fr);
    grid-template-rows: repeat(1, 1fr);
    justify-content: center;
    justify-items: center;
width:40%;
margin:0 auto;
margin-top:10%;
    margin-bottom: 10%;
}     

.credit {
     text-align: left;
    font-size: 15px;    
font-family: "Helvetica", "游ゴシック", sans-serif;
margin-top: 20px;
margin-right: 0;
width:100%;
}

.text01 {
    text-align:left;
    font-size: 50px;    
font-family: "Optima", "游ゴシック", sans-serif;
margin: 0 auto;
margin-top: 50px;
width:70%;
}

.text02 {
 font-size: 15px;
text-align:justify;
width:98%;
margin-top: 30px;
margin-bottom: 30px;
margin: 0 auto;
font-family: "Helvetica", "游ゴシック", sans-serif;
}  

.text03 {
    margin: 0 auto;
    text-align: center;
    font-size: 20px;    
width:70%;
font-family: "Optima", "游ゴシック", sans-serif;
margin-top: 8%;
margin-bottom: 8%;
}


.background {
height: auto;
	background-color: #fffaf0;
padding-bottom:5%;
}


@keyframes infinity-scroll-right {
from {
  transform: translateX(-100%);
}
  to {
  transform: translateX(0%);
}
}
.scroll-infinity__list--right{
  animation :infinity-scroll-right 80s infinite linear 0.5s both;
}

.scroll-infinity__wrap {
  display: flex;
  overflow: hidden;
}
.scroll-infinity__list {
  display: flex;
  list-style: none;
  padding: 0
}

.scroll-infinity__item {
  width: calc(100vw / 4);

}
.scroll-infinity__item>img {
  width: 100%;
}
/*===============================================
SMP
===============================================*/
@media (max-width:430px) {
section {
  max-width: 300px;
  margin: 0 auto;
}

.pc_only {
    display: none;
}
.sp_only {
    display:block;
}

.box {
   padding-top:20%;
   padding-bottom:10%;
}

.box2 {
   padding-top:20%;
   padding-bottom:12%;
margin-top:3%;
width100%;
}

.box3 {
margin-top:3%;
width:100%;
}

.parent {
    display: block;
width:98%;
}
.parent02 {
    display: block;
width:100%;
}



.div1{
    padding:4%;
}
.div2{
    padding:2%;
width: 85%;
margin:0 auto;
}    

.div3{
    padding:0;
}    


.text01 {
    margin: 0 auto;
    font-size: 21px;    
width:90%;
margin-top: 8%;
}

.text02 {
margin-top:15px;
     text-align: justyfy;
    font-size: 13px;   
width:100%;
}

.text03 {
    margin: 0 auto;
    text-align: center;
    font-size: 14px;    
width:90%;
margin-top:20%;
margin-bottom:20%;
}

.credit {
     text-align: left;
    font-size: 10px;   
margin-right: 0;
width:100%;
}

.parent .credit{
width:85%;
margin:0 auto;
margin-top:15px;
}

.scroll-infinity__item {
  width: calc(100vw / 2.2);
}

.top-pc-kasaneru img.imagup{
  position: absolute;
  top:50%;
  left: 50%;
  transform: translate(-50%,50%);
 width: 50%;
}

}
