@charset "UTF-8";

body {
  font-family: "Arial","Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  color:#333333;
  font-size: 18px;
}

h1 {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-size: 35px;
}

h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 30px;
  padding-top:50px;
}

h3 {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 24px;
  padding:10px 0px 10px 0px;
}

h4 {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-size: 18px;
  padding-top:20px;
}

.english{
  font-family: "Pinyon Script", cursive;
  font-weight: 400;
  font-style: normal;
  font-size: 64px;
}

.english_gradient{
  font-family: "Pinyon Script", cursive;
  font-weight: 400;
  font-style: normal;
  font-size: 64px;
  display: inline-block;
  padding:0 10px 3px 0;/*はみ出し対策*/
  background: linear-gradient(180deg, #6a158d 0%, #c00051 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

@media (min-width: 576px) {
  h1 {
    font-size: 35px;
  }
  h4 {
    font-size: 18px;
  }
  .english_gradient{
    font-size: 64px;
  }
  .english{
    font-size: 64px;
  }
}
@media (min-width: 768px) {
  h1 {
    font-size: 50px;
  }
  h4 {
    font-size: 20px;
  }
  .english_gradient{
    font-size: 95px;
  }
  .english{
    font-size: 95px;
  }
}
@media (min-width: 992px) {
  h1 {
    font-size: 50px;
  }
  h4 {
    font-size: 22px;
  }
  .english_gradient{
    font-size: 95px;
  }
  .english{
    font-size: 95px;
  }
}
@media (min-width: 1200px) {
  h1 {
    font-size: 50px;
  }
  h4 {
    font-size: 22px;
  }
  .english_gradient{
    font-size: 95px;
  }
  .english{
    font-size: 95px;
  }
}
@media (min-width: 1400px) {
  h1 {
    font-size: 50px;
  }
  h4 {
    font-size: 22px;
  }
  .english_gradient{
    font-size: 95px;
  }
  .english{
    font-size: 95px;
  }
}

.header_style{
  /*background: rgba(255,255,255,0.6);*/
  background: linear-gradient(180deg, rgba(255,255,255,0.7) 0%,rgba(255,255,255,0) 100%);
  color: #333333;
  font-size: 16px;
  border-top: 5px solid;
  border-image: linear-gradient(to right, #6a158d, #c00051) 1;
}

footer{
  color:#ffffff;
  background-color:#c00051;
  padding: 20px;
}

.text_white{
  color:#ffffff;
}

.contents_height{
  min-height:620px;
}

.top_background{
  background-image:url(/images/background.jpg);
  background-size:contain;
  background-repeat: no-repeat;
  background-position: center bottom;
  background-color: #85BCDF;
}

.services_background{
  background-image:url(/images/services_background.png?2024050701);
  background-size:cover; 
  background-color: #F2F2F2;
}

.services_title{
  background:linear-gradient(180deg, #C00051 0%,#600029 100%);
  width:100%;
  text-align: center;
  border-radius: 8px;
  padding: 30px 0 30px 0;
  margin:0 0 10px 0;
}

.achievements_title{
  background:linear-gradient(180deg, #6A158D 0%,#350B47 100%);
  width:100%;
  text-align: center;
  border-radius: 8px;
  padding: 30px 0 30px 0;
  margin:0 0 10px 0;
}

.icon{
  height:100px;
  width:auto;
}

.card_box{
  background-color: #ffffff;
  border-radius: 8px;
  padding: 10px;
  box-shadow: 0px 5px 6px 0px rgba(0, 0, 0, 0.1);
  border: 1px solid #eeeeee;
}

.card_box_text{
  margin:0 20px 20px 20px;
  text-align: left;
}

.achievements_background{
  background-image:url(/images/achievements_background.png?2024050701);
  background-size:cover; 
  background-color: #F2F2F2;
}

.profile_background{
  background:linear-gradient(180deg, #6a158d 0%,#c00051 100%);
}

.overview_background{
  background-image:url(/images/overview_background.png?2024050801);
  background-size:cover; 
  background-color: #F2F2F2;
}

.bc_purple{
  color:#6a158d;
}

.bc_purple_light{
  background-color:#f5e9fa;
}

.bc_red-purple{
  color: #c00051;
}

.bc_red-purple_light{
  background-color:#fcf3f8;
}

.bc_red{
  color:#c81841;
}

.bc_gold{
  color:#a58920;
}

.bc_light-blue_aa{
  color:#74a4d1;
}

.bc_light-blue_love{
  color:#85bcdf;
}

  /* fadeIn */
  
  .fadeIn{
    animation-name:fadeInAnime;
    animation-duration:1s;
    animation-fill-mode:forwards;
    opacity:0;
    }
    
    @keyframes fadeInAnime{
      from {
        opacity: 0;
      }
    
      to {
        opacity: 1;
      }
    }

/* fadeUp */

.fadeUp{
  animation-name:fadeUpAnime;
  animation-duration:0.5s;
  animation-fill-mode:forwards;
  opacity:0;
  }
  
  @keyframes fadeUpAnime{
    from {
      opacity: 0;
    transform: translateY(100px);
    }
  
    to {
      opacity: 1;
    transform: translateY(0);
    }
  }
  
  /* スクロールをしたら出現する要素にはじめに透過0を指定　*/
   
  .fadeInTrigger,
  .fadeUpTrigger{
      opacity: 0;
  }


  /*========= 光りながら出現させるためのCSS ===============*/

.glowAnime span{opacity: 0;}

/*アニメーションで透過を0から1に変化させtext-shadowをつける*/
.glowAnime.glow span{ animation:glow_anime_on 3s ease-out forwards; }

@keyframes glow_anime_on{
  0% { opacity:0; text-shadow: 0 0 0 #fff,0 0 0 #fff;}
  50% { opacity:1;text-shadow: 0 0 10px #fff,0 0 15px #fff; }
  100% { opacity:1; text-shadow: 0 0 0 #fff,0 0 0 #fff;}
}


/*========= LoadingのためのCSS ===============*/

/* Loading背景画面設定　*/
#splash {
  /*fixedで全面に固定*/
position: fixed;
width: 100%;
height: 100%;
z-index: 9999;
background:#F2F2F2;
text-align:center;
color:#fff;
}

/* Loading画像中央配置　*/
#splash_logo {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}

/* Loading アイコンの大きさ設定　*/
#splash_logo img {
width:220px;
}