@charset "UTF-8";

/* =========================================================================================================================================

スタイルシート横幅：1501pxから

========================================================================================================================================= */
@media screen and (min-width: 1501px) {
img{
    max-width: 100%;
    height: auto;
    width /***/:auto;
    border: 0px;
}
#container{
    width:100%;
}


#a21 {
    width: 100%;
    display: block;
    z-index: 4;
    position: absolute;
    text-align: center;
    height: 100vh;
    background-color: rgba(255,255,255,0.6);
}

 
div#a22 {
    width: 30%;
    display: block;
    margin: 0 auto;
    padding: 18% 0 0 0;
}
 
.a23 {
    transform-origin: center top;
    animation: show 1s both;
    color: #ffffff;
    text-shadow:0px 2px 5px rgba(3,3,3,0.33);
}
h1.a23 {
    font-size: 3.4vw;
} 
p.a23 {
    font-size: 1.6vw;
}
 
p.a23:last-child {
    margin: 0;
}
 
.dh { animation-delay: 1.0s; }
.d1 { animation-delay: 2.0s; }
.d1h { animation-delay: 2.5s; }
.d2 { animation-delay: 3.5s; }
 
@keyframes show {
    0% {
        transform: translate(0,50px);
        opacity: 0;
    }
    100% {
        transform: translate(0,0);
        opacity: 1;
    }
}

/*ここからスクロールボタンのCSS*/

#a25 {
    width: 100%;
    display: block;
    z-index: 4;
    position: absolute;
    text-align: center;
    padding: 93vh 0 0 0;
}
#a24 {
  padding-top: 60px;
  color: #00b0ec;
}
#a24 span {
  position: absolute;
  top: 86vh;
  left: 49.8%;
  width: 6vh;
  height: 6vh;
  margin-left: -23px;
  border: 1px solid #fff;
  border-radius: 100%;
  box-sizing: border-box;
}
#a24 span::after {
  position: absolute;
  top: 50%;
  left: 50%;
  content: '';
  width: 16px;
  height: 16px;
  margin: -12px 0 0 -8px;
  border-left: 1px solid #fff;
  border-bottom: 1px solid #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  box-sizing: border-box;
}
#a24 span::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  content: '';
  width: 6vh;
  height: 6vh;
  box-shadow: 0 0 0 0 rgba(255,255,255,.1);
  border-radius: 100%;
  opacity: 0;
  -webkit-animation: sdb 3s infinite;
  animation: sdb 3s infinite;
  box-sizing: border-box;
}
@-webkit-keyframes sdb {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  60% {
    box-shadow: 0 0 0 60px rgba(255,255,255,.1);
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes sdb {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  60% {
    box-shadow: 0 0 0 60px rgba(255,255,255,.1);
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
/*ここまでスクロールボタンのCSS*/


}
/* =========================================================================================================================================

スタイルシート横幅：960pxから1500まで

========================================================================================================================================= */
@media screen and (min-width: 960px) and (max-width: 1500px){
img{
    max-width: 100%;
    height: auto;
    width /***/:auto;
    border: 0px;
}
#container{
    width:100%;
}


#a21 {
    width: 100%;
    display: block;
    z-index: 4;
    position: absolute;
    text-align: center;
    height: 100vh;
    background-color: rgba(255,255,255,0.6);
}

 
div#a22 {
    width: 33%;
    display: block;
    margin: 0 auto;
    padding: 27vh 0 0 0;
}
 
.a23 {
    transform-origin: center top;
    animation: show 1s both;
    color: #ffffff;
    text-shadow:0px 2px 5px rgba(3,3,3,0.33);
}
h1.a23 {
    font-size: 3.4vw;
} 
p.a23 {
    font-size: 1.6vw;
}
 
p.a23:last-child {
    margin: 0;
}
 
.dh { animation-delay: 1.0s; }
.d1 { animation-delay: 2.0s; }
.d1h { animation-delay: 2.5s; }
.d2 { animation-delay: 3.5s; }
 
@keyframes show {
    0% {
        transform: translate(0,50px);
        opacity: 0;
    }
    100% {
        transform: translate(0,0);
        opacity: 1;
    }
}



/*ここからスクロールボタンのCSS*/

#a25 {
    width: 100%;
    display: block;
    z-index: 4;
    position: absolute;
    text-align: center;
    padding: 93vh 0 0 0;
}
#a24 {
  padding-top: 60px;
  color: #00b0ec;
}
#a24 span {
  position: absolute;
  top: 86vh;
  left: 49.8%;
  width: 6vh;
  height: 6vh;
  margin-left: -23px;
  border: 1px solid #fff;
  border-radius: 100%;
  box-sizing: border-box;
}
#a24 span::after {
  position: absolute;
  top: 50%;
  left: 50%;
  content: '';
  width: 16px;
  height: 16px;
  margin: -12px 0 0 -8px;
  border-left: 1px solid #fff;
  border-bottom: 1px solid #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  box-sizing: border-box;
}
#a24 span::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  content: '';
  width: 6vh;
  height: 6vh;
  box-shadow: 0 0 0 0 rgba(255,255,255,.1);
  border-radius: 100%;
  opacity: 0;
  -webkit-animation: sdb 3s infinite;
  animation: sdb 3s infinite;
  box-sizing: border-box;
}
@-webkit-keyframes sdb {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  60% {
    box-shadow: 0 0 0 60px rgba(255,255,255,.1);
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes sdb {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  60% {
    box-shadow: 0 0 0 60px rgba(255,255,255,.1);
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
/*ここまでスクロールボタンのCSS*/




}
/* =========================================================================================================================================

スタイルシート横幅：600pxから959まで

========================================================================================================================================= */

@media screen and (min-width: 600px) and (max-width: 959px){
img{
    width: 100%;
    height: auto;
    width /***/:auto;　
}
#container{
    width:100%;
}


#a21 {
    width: 100%;
    display: block;
    z-index: 4;
    position: absolute;
    text-align: center;
    height: 100vh;
    background-color: rgba(255,255,255,0.6);
}

 
div#a22 {
    width: 67%;
    display: block;
    margin: 0 auto;
    padding: 27vh 0 0 0;
}
 
.a23 {
    transform-origin: center top;
    animation: show 1s both;
    color: #ffffff;
    text-shadow:0px 2px 5px rgba(3,3,3,0.33);
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    display: block;
    float: right;
}
h1.a23 {
    font-size: 5.4vw;
} 
p.a23 {
    font-size: 2.6vw;
}
 
p.a23:last-child {
    margin: 0;
}
 
.dh { animation-delay: 1.0s; }
.d1 { animation-delay: 2.0s; }
.d1h { animation-delay: 2.5s; }
.d2 { animation-delay: 3.5s; }
 
@keyframes show {
    0% {
        transform: translate(0,50px);
        opacity: 0;
    }
    100% {
        transform: translate(0,0);
        opacity: 1;
    }
}


/*ここからスクロールボタンのCSS*/

#a25 {
    width: 100%;
    display: block;
    z-index: 4;
    position: absolute;
    text-align: center;
    padding: 93vh 0 0 0;
}
#a24 {
  padding-top: 60px;
  color: #00b0ec;
}
#a24 span {
  position: absolute;
  top: 86vh;
  left: 49.8%;
  width: 6vh;
  height: 6vh;
  margin-left: -23px;
  border: 1px solid #fff;
  border-radius: 100%;
  box-sizing: border-box;
}
#a24 span::after {
  position: absolute;
  top: 50%;
  left: 50%;
  content: '';
  width: 16px;
  height: 16px;
  margin: -12px 0 0 -8px;
  border-left: 1px solid #fff;
  border-bottom: 1px solid #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  box-sizing: border-box;
}
#a24 span::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  content: '';
  width: 6vh;
  height: 6vh;
  box-shadow: 0 0 0 0 rgba(255,255,255,.1);
  border-radius: 100%;
  opacity: 0;
  -webkit-animation: sdb 3s infinite;
  animation: sdb 3s infinite;
  box-sizing: border-box;
}
@-webkit-keyframes sdb {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  60% {
    box-shadow: 0 0 0 60px rgba(255,255,255,.1);
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes sdb {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  60% {
    box-shadow: 0 0 0 60px rgba(255,255,255,.1);
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
/*ここまでスクロールボタンのCSS*/




}

/* =========================================================================================================================================

スタイルシート横幅：599pxまで

========================================================================================================================================= */
@media only screen and (max-width:599px){
img{
    max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
    width/***/:auto;
}
#container{
    width:100%;
}


#a21 {
    width: 100%;
    display: block;
    z-index: 4;
    position: absolute;
    text-align: center;
    height: 100vh;
    background-color: rgba(255,255,255,0.6);
}

 
div#a22 {
    width: 69%;
    display: block;
    margin: 0 auto;
    padding: 30vh 0 0 0;
}
 
.a23 {
    transform-origin: center top;
    animation: show 1s both;
    color: #ffffff;
    text-shadow:0px 2px 5px rgba(3,3,3,0.33);
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    display: block;
    float: right;
}
h1.a23 {
    font-size: 8.4vw;
} 
p.a23 {
    font-size: 5.6vw;
}
 
p.a23:last-child {
    margin: 0;
}
 
.dh { animation-delay: 1.0s; }
.d1 { animation-delay: 2.0s; }
.d1h { animation-delay: 2.5s; }
.d2 { animation-delay: 3.5s; }
 
@keyframes show {
    0% {
        transform: translate(0,50px);
        opacity: 0;
    }
    100% {
        transform: translate(0,0);
        opacity: 1;
    }
}


/*ここからスクロールボタンのCSS*/

#a25 {
    width: 100%;
    display: block;
    z-index: 4;
    position: absolute;
    text-align: center;
    padding: 93vh 0 0 0;
}
#a24 {
  padding-top: 60px;
  color: #00b0ec;
}
#a24 span {
  position: absolute;
  top: 86vh;
  left: 49.8%;
  width: 6vh;
  height: 6vh;
  margin-left: -23px;
  border: 1px solid #fff;
  border-radius: 100%;
  box-sizing: border-box;
}
#a24 span::after {
  position: absolute;
  top: 50%;
  left: 50%;
  content: '';
  width: 16px;
  height: 16px;
  margin: -12px 0 0 -8px;
  border-left: 1px solid #fff;
  border-bottom: 1px solid #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  box-sizing: border-box;
}
#a24 span::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  content: '';
  width: 6vh;
  height: 6vh;
  box-shadow: 0 0 0 0 rgba(255,255,255,.1);
  border-radius: 100%;
  opacity: 0;
  -webkit-animation: sdb 3s infinite;
  animation: sdb 3s infinite;
  box-sizing: border-box;
}
@-webkit-keyframes sdb {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  60% {
    box-shadow: 0 0 0 60px rgba(255,255,255,.1);
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes sdb {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  60% {
    box-shadow: 0 0 0 60px rgba(255,255,255,.1);
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
/*ここまでスクロールボタンのCSS*/





}
* {
    /*font-family: 'Noto Serif JP', serif;*/
    /*フォントは「https://fonts.google.com/?selection.family=Dancing+Script|M+PLUS+1p|M+PLUS+Rounded+1c|Noto+Serif+JP」
    から自由に変更することができます*/
}