@charset "utf-8";@charset "UTF-8";
/* --- 非表示 --- */
#footer {
    display: none;
}

.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;
display:block;
}

.top-pc-kasaneru img.imagup{
  position: absolute;
  top:50%;
  left: 50%;
  transform: translate(-50%,-50%);
  color: #fff;
 width: 40%;
}

.top-sp-kasaneru{
display: none;
}

.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%;
margin-top:5%;
width:80%;
}

.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%;
}     

.parent3 {
    display: grid;
    grid-template-columns: repeat(3, 0.4fr);
    grid-template-rows: repeat(1, 0.3fr);
    justify-content: center;
    margin-bottom: 3%;
}

.parent05 {
    display: grid;
    grid-template-columns: repeat(1, 0.81fr);
    grid-template-rows: repeat(1, 1fr);
    justify-content: center;
    justify-items: center;
width:50%;
margin:0 auto;
}     

.parent06 {
    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: right;
    font-size: 15px;    
font-family: "Helvetica", "游ゴシック", sans-serif;
margin-top: 20px;
margin-right: 0;
width:100%;
color: #5e80c4;
}

.text01 {
    margin: 0 auto;
    text-align: center;
    font-size: 16px;    
font-family: "Helvetica", "游ゴシック", sans-serif;
margin-top: 100px;
width:50%;
}

.text02 {
 font-size: 50px;
text-align:center;
width:70%;
margin-top: 30px;
margin-bottom: 30px;
margin: 0 auto;
font-family: "Helvetica", "游ゴシック", sans-serif;
font-weight:bold;
color:#5e80c4;
}  

.text03 {
    margin: 0 auto;
    text-align: center;
    font-size: 16px;    
width:70%;
font-family: "Helvetica", "游ゴシック", sans-serif;
margin-top: 2%;
}

.text04 {
    font-size: 15px;
    font-family: "游ゴシック", "Hiragino Kaku Gothic Pro","Meiryo", sans-serif;
    text-align: center;
    width: 50%;
    margin: 0 auto;
    margin-bottom: 10%;
margin-top: 5%;
}

.border{
	border: solid 1px #454545;
padding: 3%;
width:40%;
margin:0 auto;
margin-bottom:5%;
}

.background {
height: auto;
	background-color: #ffffff;
}

.center img {
margin: 0 auto;
text-align: center;
}

/*===============================================
SMP
===============================================*/
@media (max-width:430px) {
section {
  max-width: 300px;
  margin: 0 auto;
}

.top-sp-kasaneru{
  position: relative;
  text-align: center;
display:block;
}

.top-pc-kasaneru{
display:none;
}

.top-sp-kasaneru img.imagup{
  position: absolute;
  top:50%;
  left: 50%;
  transform: translate(-50%,-50%);
  color: #fff;
 width: 80%;
}

.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:95%;
}
.parent02 {
    display: block;
width:100%;
}

.parent03 {
    display: block;
width:60%;
margin:0 auto;
}

.parent04 {
display: grid;
    grid-template-columns: repeat(2, 0.8fr);
    grid-template-rows: repeat(1, 0.3fr);
    justify-content: center;
    margin-bottom: 3%;
}

.parent05 {
width:70%;
margin:0 auto;
}     

.parent06 {
    display: block;
width:60%;
margin:0 auto;
margin-top: 30%;
margin-bottom: 40%;
}

.div1{
    padding:4%;
}
.div2{
    padding:4%;
}    

.div3{
    padding:0;
}    


.text01 {
    margin: 0 auto;
    text-align: center;
    font-size: 12px;    
margin-top: 50px;
width:90%;
}

.text02 {
    margin: 0 auto;
    text-align: center;
    font-size: 35px;    
width:90%;
}

.text03 {
    margin: 0 auto;
    text-align: center;
    font-size: 12px;    
width:90%;
}

.text04 {
width:90%;
font-size: 10px;
}


.credit {
     text-align: right;
    font-size: 10px;   
margin-top: 10px;
margin-right: 0;
width:100%;
}

.parent02 .credit{
width:90%;
margin:0 auto;
}

.border{
	border: solid 0.5px #454545;
padding: 4%;
width:77%;
margin:0 auto;
margin-top: 15%;
margin-bottom:15%;
}
}

/* --- ロゴのアニメーション--- */
@keyframes revealLogo {
  from {
    clip-path: inset(0 100% 0 0);
    opacity: 0;
  }
  to {
    clip-path: inset(0 0 0 0);
    opacity: 1;
  }
}

.imagup {
  animation: revealLogo 1.8s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards;
  opacity: 0;
}
