@charset "UTF-8";

#content {
min-width: inherit;
color: #333333;
font-size: 16px;
background-color: #00b9e7;
overflow-x: hidden;
}
#content .campaignInner {
max-width: 1090px;
margin: 0 auto;
padding: 0;
}
#content .dsp {
display: none;
}
#content .dpc {
display: block;
}
#content .topicPath {
margin-bottom: 0;
}
#content h2{
text-align: center;
position: relative;
z-index: 5;
}
#content a {
color: #0078ff;;
}
#content p+p {
margin-top: 20px;
}
#content p {
line-height: 1.7;
}
#content p,
#content dt,
#content dd,
#content li {
text-align: justify;
}
#content img {
height: auto;
}
@media screen and (max-width: 640px) {
#content .campaignInner {
margin: 0 28px;
}
#content .dpc {
display: none;
}
#content .dsp {
display: block;
}
}
/* -----------------------------
mainvisual
------------------------------*/

#content #mainvisual {
position: relative;
background: #74D7FF;
background: linear-gradient(0deg,rgba(116, 215, 255, 1) 65%, rgba(32, 211, 255, 1) 100%);
}
#content #mainvisual h1{
    text-align: center;
    width: 100%;
    overflow-x: hidden;
}
#content #mainvisual h1 picture{
	display: flex;
	justify-content: center;
}
#content #mainvisual h1 img {
width: 1920px;
}
@media screen and (max-width: 640px) {
#content #mainvisual h1 img {
width: 100%;
}
}
#content #mainvisual::before {
        content: "";
        position: absolute;
        animation: floating-07 1.8s ease-in-out infinite alternate-reverse;
	    z-index: 5;
}
@media screen and (min-width: 641px) {
#content #mainvisual::before {
        background: url(img/surfing.webp) no-repeat 0 0 / 467px 421px;
        height: 421px;
        width: 467px;
        bottom: -120px;
        left: calc(50% - 155px);
	
    }
}
@media screen and (max-width: 640px) {
#content #mainvisual::before {
        background: url(img/surfing.webp) no-repeat 0 0 / 65vw 58.5vw;
        height: 58.5vw;
        width: 65vw;
        bottom: -24%;
        left: 8%;
    }
}
/*wave--------------------*/
.footer_wave {
position: relative;
  left: 0;
  bottom: 0;
  width: 100%;
	margin-top: -170px;
}
@media screen and (max-width: 640px) {
.footer_wave {
margin-top: -43vw;
}
}
.parallax > use {
    animation: move-forever 12s linear infinite;
}
.parallax > use:nth-child(1) {
    animation-delay: -2s;
}
.parallax > use:nth-child(2) {
    animation-delay: -2s;
    animation-duration: 5s;
}
.parallax > use:nth-child(3) {
    animation-delay: -4s;
    animation-duration: 3s;
}
@keyframes move-forever {
    0% {
        transform: translate(-90px, 0%);
    }
    100% {
        transform: translate(85px, 0%);
    }
}
.editorial {
    display: block;
    width: 100%;
    height: 5em;
    max-height: 100vh;
    margin: 0;
  bottom: 0px;
	opacity:1;
}

@media (max-width: 50em) {
    .editorial {
        height: 3em;
    }
}

/* -----------------------------
btn
------------------------------*/
#present .btn01 {
text-align: center;
}
#present .btn01 a {
  position: relative;
  display: flex;
  justify-content: space-around;
  align-items: center;
  margin: 0 auto;
  max-width: 240px;
  padding: 10px 25px;
  color: #00b9e7;
  font-weight: bold;
  background: #FFF;
  border-radius: 9999px;
  box-shadow: 0px 5px 0px 0px rgba(204, 204, 204, 0.9);
}
#present .btn01 a:hover {
  text-decoration: none;
}
@media screen and (min-width: 641px) {
#content #present ul li .btn01{
width: 250px;
margin: 20px auto 0;
}
#present .btn01 a:hover {
  box-shadow: none;
  transform: translateY(3px);
  opacity: 0.8;
}
#content #present ul li .btn01 a{
transition: 0.2s ease-in-out;
}
}

@media screen and (max-width: 640px) {
#content #present ul li .btn01 {
width: 34vw;
margin: 10px auto 0;
}
#present .btn01 a {
  padding: 5px 0;
  font-size: 12px;
}
}
/* -----------------------------
present
------------------------------*/
#content #present {
position: relative;
margin-top: 200px;
text-align: center;
background-color: #00b9e7;
}
#content #present h2 {
margin-bottom: 24px;
}
#content .column01 {
width: 1090px;
margin: 0 auto 100px;
display: flex;
flex-wrap: wrap;
justify-content: center;
}
#content .column01 li{
position: relative;
width: 250px;
z-index: 10;
}
#content .column02 {
width: 980px;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: center;
}
#content .column02 li{
position: relative;
width: 475px;
z-index: 10;
}
@media screen and (min-width: 641px) {
#content .column01 li{
height: 517px;  
}
#content .column02 li{
height: 340px;
}
}

@media screen and (max-width: 640px) {
#content #present {
margin-top: 127px;
}
#content .column01 {
width: 85vw;
margin: 0 auto 56px;
  justify-content: space-between;
}
#content .column01 li{
position: relative;
width: 39.7vw;
}
#content .column02 {
width: 85vw;
display: block;
margin: 0 auto;
}
#content .column02 li{
width: 85vw;
}
}
/*blackpanda　animation--------------------*/

@media screen and (min-width: 641px) {
#content .column01::before {
content: "";
position: absolute;
background: url("img/kamihubuki.webp") no-repeat 0 0/ 228px 320px;
height: 320px;
width: 228px;
top: 100px;
left: calc(50% - 685px);
animation: floating-05 1.8s ease-in-out infinite alternate-reverse;
}
#content .column02 li:nth-of-type(1)::before {
content: "";
position: absolute;
background: url("img/burasagari.webp") no-repeat 0 0/ 141px 213px;
height: 213px;
width: 141px;
top: -92px;
left: 8px;
}
#content .column02 li:nth-of-type(2)::after {
content: "";
position: absolute;
background: url("img/kimepause.gif") no-repeat 0 0/ 285px 413px;
height: 413px;
width: 285px;
top: -150px;
right: -170px;
z-index: -1;
}
}

@media screen and (max-width: 640px) {
#content .column01::before {
content: "";
position: absolute;
background: url("img/kamihubuki.webp") no-repeat 0 0/ 74px 104px;
height: 104px;
width: 74px;
top: 2.5%;
left: -3vw;
animation: floating-05 1.8s ease-in-out infinite alternate-reverse;
}
#content .column01 li:nth-of-type(4)::before {
content: "";
position: absolute;
background: url("img/burasagari.webp") no-repeat 0 0/ 50px 76px;
height: 76px;
width: 50px;
top: -33px;
right: 0;
}
#content .column02 li:nth-of-type(2)::after {
content: "";
position: absolute;
background: url("img/kimepause.gif") no-repeat 0 0/ 69px 100px;
height: 100px;
width: 69px;
top: -70px;
left: -17px;
z-index: -1;
}
}
@keyframes floating-05 {
  0% {
    transform: rotate(0deg) translateY(-65%);
  }
  100% {
    transform: rotate(5deg) translateY(-65%);
  }
}
@keyframes floating-07 {
  0% {
    transform: translateY(10%);
  }
  100% {
    transform: translateY(5%);
  }
}

/*--------------------blackpanda　animation*/


@media screen and (min-width: 641px) {
#content #present ul.sp li img {
max-width: 250px;
width: 100%;
}
#content .column01 li + li,#content .column02 li + li{
margin-left: 30px;
}
#content .column01 li:nth-of-type(4n+1),#content .column02 li:nth-of-type(2n+1){
margin-left: 0;
}
#content .column01 li:nth-of-type(n+5),#content .column02 li:nth-of-type(n+3){
margin-top: 50px;
}

}
@media screen and (max-width: 640px) {
#content .column01 li:nth-of-type(n+3){
margin-top: 40px;
}
}
#content #present ul.pc li img {
max-width: 600px;
width: 100%;
}

@media screen and (max-width: 640px) {
#content #present h2 img {
width: auto;
height: 30px;
}
#content #present ul img{
    width: 100%;
  }
#content #present ul.pc li + li {
margin-top: 45px;
  }
}
/* -----------------------------
attArea
------------------------------*/
#content #attArea {
position: relative;
margin-top: 100px;
padding-bottom: 96px;
color: #FFF;
}
#content #attArea .inner{
  width: 660px;
  margin: 0 auto;
  padding: 0;
}
#content #attArea h3 {
margin-top: 34px;
margin-bottom: 14px;
font-size: 26px;
text-align: center;
}
#content #attArea dl {
word-break: break-all;
font-size: 16px;
}
#content #attArea dl div{
padding: 24px 40px 26px;
border: 1px solid #FFF;
border-radius: 20px;
}
#content #attArea dl div + div{
margin-top: 10px;
}
#content #attArea dl dt {
font-weight: bold;
}
#content #attArea ul.attList {
margin-top: 28px;
padding-left: 40px;
font-size: 14px;
}
#content #attArea ul.attList li {
position: relative;
padding-left: 1.2em;
line-height: 1.6;
}
#content #attArea ul.attList li:before {
content: "※";
position: absolute;
top: 0;
left: 0;
}
#content #attArea ol {
counter-reset: number 0;
}
#content #attArea ol li {
position: relative;
padding-left: 1.2em;
line-height: 1.6;
}
#content #attArea ol li:before {
counter-increment: number 1;
content: counter(number) ". ";
position: absolute;
top: 0;
left: 0;
}
@media screen and (max-width: 640px) {
#content #attArea {
  margin: 0;
padding: 45px 16px 46px;
}
#content #attArea h2 img{
width: auto;
height: 30px;
}
#content #attArea h3{
margin-top: 18px;
margin-bottom: 6px;
font-size: 18px;
}
#content #attArea .inner {
width: 100%;
}
#content #attArea dl div {
padding: 14px 20px 14px;
border-radius: 12px;
}
#content #attArea dl {
font-size: 12px;
}
#content #attArea ul.attList {
margin-top: 14px;
padding: 0 20px;
font-size: 12px;
}
}
#content #attArea .decoration02{
position: relative;
}
#content #attArea .decoration02::before {
position: absolute;
content: "";
}
@media screen and (min-width: 641px) {
#content #attArea dl div.decoration01::before{
position: relative;
position: absolute;
content: "";
background: url("img/shigamitsuki.webp") no-repeat 0 0 /237px 297px;
top: 40px;
left: -202px;
width: 237px;
height: 297px;
}	
}
#content #attArea .decoration02::before{
background: url("img/yubisasipanda.gif") no-repeat 0 0 /382px 463px;
bottom: -146px;
right: -400px;
width: 382px;
height: 463px;
}
@media screen and (max-width: 640px) {
#content #attArea .decoration02::before{
background-size: 71px 86px;
top: -120px;
right: -12px;
width: 71px;
height: 86px;
}
}
/* -----------------------------
campaign
------------------------------*/
#content #campaign {
background-color: #67d1f0;
padding: 100px 0 160px;
position: relative;
z-index: 5;
}
#content #campaign .linkInner {
width: 820px;
margin: 0 auto;
} 
#content #campaign .linkList {
padding-top: 40px;
}
#content #campaign .linkList li + li{
margin-top: 40px;
}
#content #campaign .linkList a {
display: block;
text-align: center;
box-shadow: 3.536px 3.536px 12px 0px rgb(0 185 231 / 80%);
}
#content #campaign .linkList a:hover {
opacity: .7;
}
#content #campaign .linkList img {
width: 100%;
}
@media screen and (max-width: 640px) {
#content #campaign {
padding: 50px 0;
}
#content #campaign h2 img {
width: auto;
height: 26px;
}
#content #campaign .linkInner {
width: 100%;
}
#content #campaign .linkList {
padding: 26px 30px 0;
}
#content #campaign .linkList li + li{
margin-top: 16px;
}
}