@charset "utf-8";

/*
w375px換算
10px = 2.66667vw
14px = 3.73333vw
16px = 4.26666vw
17px = 4.53333vw
18px = 4.8vw
20px = 5.33333vw
22px = 5.86666vw
24px = 6.4vw
26px = 6.93333vw
30px = 8vw
*/

body {
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "メイリオ", sans-serif;
}

img,
embed,
object,
iframe {
  vertical-align: baseline;
}

a:hover {
  color: inherit;
}

/* ヘッダー */
.l-header__inner {
  font-size: 3vw;
  line-height: 1.6;
  padding: 4vw;
  margin: 0 auto;
}

.l-header__lead {
  text-align: center;
  font-size: 4.53333vw;
  font-weight: bold;
  margin: 4vw 0 0;
}

/* ナビゲーション */
.p-nav {
  display: flex;
  flex-flow: row nowrap;
}

.p-nav__linkWrap {
  display: flex;
  flex-flow: row nowrap;
}

.p-nav__link {
  font-size: 4vw;
  white-space: nowrap;
  text-decoration: underline;
  margin: auto 0 auto 2vw;
  transition-duration: .5s;
}

.p-nav__link:hover {
  text-decoration: none;
}

.p-nav__link:first-child {
  margin: auto 0;
}

/* イントロ */
/* .p-intro {
  margin-top: 4.26666vw;
} */


.p-intro__inner {
  padding: 5.33333vw 4.26666vw;
  margin: 0 auto;
}

.p-intro__titleLittle {
  text-align: center;
  font-weight: bold;
  font-size: 4.53333vw;
  margin-top: 4.53333vw;
}

.p-intro__title {
  text-align: center;
  font-weight: bold;
  font-size: 5vw;
}

.p-intro__text {
  margin-top: 4.53333vw;
}

.p-intro__text2 {
  margin-top: 6px;
  font-size: 14px;
}

/* コンテンツ */
.p-contents {
  width: 100%;
  padding: 2vw 4.26666vw 5.33333vw;
}

.p-contents01 {
  width: 100%;
  padding: 0 4.26666vw 0;
}

.p-contents__inner ,.p-contents__inner01 {
  position: relative;
  border-radius: 20px;
  padding: 5.33333vw 4.26666vw;
  margin: 8vw auto 0;
  /* background-color: #fff; */
}

.p-contents__inner01{
  margin: 0 auto 0;
}

.p-contents__inner:first-child {
  margin: 0 auto;
}

.p-contents--10ch .p-contents__inner  {
  border: solid 4px #f5a21b;
}

.p-contents--11ch .p-contents__inner  {
  border: solid 4px #009944;
}

.inner01{
  background-color: #35a0d9;
  color: #fff;
}

.inner02{
  margin-top: 20px;
  background-color: #d7102f;
  color: #fff;
}

.inner03{
  margin-top: 20px;
  background-color: #00053a;
  color: #fff;
}


.p-contents__logo {
  position: absolute;
  top: -50px;
  right: -20px;
  width: 100px;
  z-index: 1000;
}

.p-contents__titleArea {
  display: block;
}

.p-contents__title {
  display: inline-block;
  font-weight: bold;
  text-align: center;
  font-size: 1.3rem;
}

.p-contents__titleLittle {
  font-size: 4.0vw;
}

.p-contents__titleLittle01{
  font-size: 5.0vw;
  color: #023886;
}

.p-contents__titleBig {
  display: inline-block;
  text-align: center;
  font-size: 5.86666vw;
}

.p-contents__titleCap {
  font-size: 4.26666vw;
}

.p-contents__titleSub {
  font-weight: bold;
  font-size: 4.26666vw;
  margin-top: 2.66667vw;
}

.p-contents__titleSub span {
  font-size: 3.73333vw;
}

.p-contents--10ch .p-contents__title {
  border-bottom: solid 2px #f5a21b;
}

.p-contents--11ch .p-contents__title {
  border-bottom: solid 2px #009944;
}

.p-contents__caption {
  font-size: 5.86666vw;
  font-weight: bold;
  color: #d50000;
  margin-top: 2.66667vw;
}

.p-contents__textArea {
  margin-top: 5.33333vw;
}

.p-contents__text {
  font-size: 1.8vw;
  line-height: 1.6;
  font-weight: bold;
  margin-top: 1.8vw;
}

.p-contents__text01 {
  font-size: 3.73333vw;
  line-height: 1.6;
}

.p-contents__text--small {
  font-size: 2.66667vw;
  margin-top: 2.66667vw;
}

.p-contents__text--small01 {
  font-size: 2.66667vw;
}

.p-contents__text001 {
  font-size: 4.242424242424243vw;
  line-height: 1.6;
  margin-top: 5.33333vw;
  font-weight: bold;
}


.p-contents__imgArea {
  position: relative;
}

.p-contents__imgLogo {
  position: absolute;
  top: 50vw;
  right: -4vw;
  width: 30vw;
}

.p-contents__button {
  margin: 14vw 0 0;
}

.c-intro__lead{
  display: inline-block;
  width: 100%;
  text-align: left; 
  font-size: 3.73333vw;
  line-height: 1.6;
  margin-top: 5.33333vw;
}



/* コンバージョン */
.p-conversion__inner {
  padding: 5.33333vw 4.26666vw;
  margin: 0 auto;
}

.p-conversion__link {
  text-align: center;
  margin: 0 auto;
}

.p-conversion__link a {
  text-align: center;
  text-decoration: underline;
  transition-duration: .5s;
}

.p-conversion__link a:hover {
  text-decoration: none;
}

/* コンポーネント */
.c-balloon {
  padding-bottom: 9.6vw;
}

.c-balloon__contents {
  position: relative;
  display: block;
  text-align: center;
  font-weight: bold;
  font-size: 5.86666vw;
  background: #c65681;
  color: #fff;
  padding: 2.66667vw;
}

.c-balloon__contents::before {
  position: absolute;
  bottom: -8vw;
  left: 50%;
  transform: translateX(-50%);
  content: "";
  width: 4vw;
  height: 8vw;
  border: solid 2vw transparent;
  border-top: solid 4vw #c65681;
}

.c-balloon--green .c-balloon__contents {
  background: #006c7b;
}

.c-balloon--green .c-balloon__contents::before {
  border-top: solid 4vw #006c7b;
}

.c-feature {
  background-color: #f4ecf1;
  border-radius: 20px;
  padding: 5.33333vw;
  margin-top: 5.33333vw;
}

.c-feature__titleArea {
  display: flex;
  flex-direction: column;
}

.c-feature__date {
  display: inline-block;
  background-color: #c65681;
  color: #fff;
  border-radius: 100px;
  font-size: 4.26666vw;
  font-weight: bold;
  text-align: center;
  padding: 2.66667vw 5.33333vw;
  margin-right: auto;
}

.c-feature__title {
  color: #cd7ea6;
  font-size: 5.33333vw;
  font-weight: bold;
  margin-top: 2.66667vw;
}

.c-feature__text {
  font-size: 3.73333vw;
  line-height: 1.6;
  margin-top: 5.33333vw;
}

.c-information {
  display: block;
  text-align: center;
  font-size: 12px;
}

.c-video {
  max-width: 600px;
  margin: 0 auto;
  padding: 5.33333vw 4.26666vw;
}

.c-video__inner {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.c-video__inner iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.c-tab {
  font-size: 3.73333vw;
  font-weight: bold;
  color: #d82533;
  border: solid 2px #d82533;
  border-radius: 10px;
  padding: 1vw 2vw;
}

.c-button--blue {
  max-width: 100%;
  padding: 14px;
}


/* ユーティリティ */
.u-clr-f5a21b {
  color: #f5a21b;
}

.u-clr-009944 {
  color: #009944;
}

.u-clr-023886 {
  color: #023886;
}



.btn001 {
  margin: 0 auto;
  text-align: center;
  justify-content:space-around;
  display:flex;

}

/* .btn001>div>a{
 font-size: 2.0vw;
 width:calc(100%-33%);
} */



.button--blue,
a.btn--blue {
  color: #fff;
  background-color: #35a0d9;
  margin: 20px  5px  20px;
}
.btn--blue:hover,
a.btn--blue:hover {
  color: #fff;
  background: #4d88ff;
}

.btn--red,
a.btn--red {
  color: #fff;
  background-color: #d7102f;
  margin: 20px 5px 20px;
}
.btn--red:hover,
a.btn--red:hover {
  color: #fff;
  background: #d82533;
}

.btn--black,
a.btn--black {
  color: #fff;
  background-color: #000;
  margin: 20px  5px  20px;
}
.btn--black:hover,
a.btn--black:hover {
  color: #fff;
  background: #797979;
}

.blue01,.red01,.black01 {
width: calc(100%-33%);
}

.iframe-wrapper {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  margin-top: 30px;
}

.iframe-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;

}



.p-contents__img{
  width: 100%;
  margin-top:30px
}

h2.p-contents__title{
  margin-top: 5.33333vw;
  font-size: 1.2rem;
  
    }

  .br01{
    display: block;
  }

  img.logo_img01{
    width: 40px;
    height: 40px;
  }
  
  img.logo_img001 {
    margin: 10px 10px 10px 0;
    width: 35px;
    height: 35px;
    border-radius: 5px;
  }

  .logo_img01 a{
    text-decoration: none;
  }

  hr {
    text-decoration: none;
  }



  .hr1{
    box-sizing: content-box;
    height: 0;
    overflow: visible;
    border-top-width: 1px;
    margin: 0;
    clear: both;
    color: inherit;
    flex-shrink: 1;
  }

  .btn_wite01,.btn_wite02,.btn_wite03 {
    color: #35a0d9;
    background-color: #fff;
    margin: 20px  5px  20px;
  }

  .btn_wite02{
    color: #d7102f;
  }

  .btn_wite03{
    color: #00053a;
  }
  



  .btn_wite01:hover,.btn_wite02:hover,.btn_wite03:hover{
  color: #fff;
  background:#cccccc;
}

.text02{
  border:solid 1px #fff;
  /* padding: 20px; */
}

div.p-contents01{
  width: 100%;
  padding: 0 12px 0;
}

.img_area02{
  margin-top: 16px;
  padding: 10px;
}

nav {
  width: 100%;
  height: 20px;
  box-sizing: border-box;

}
ul.menu001 {
  display: flex;
  justify-content:space-around;
  padding:0 0 0 0;
  margin-bottom: 10px;
}
li.menu_1 {
  width: 110px;
  padding: 5px;
  list-style: none;
  border-radius: 5px;

}
a.menu__1 {
  display: block;
  text-decoration: none;
  color: white;
  padding: 5px;
  font-size:1.8vw;
  text-align: center;
  margin: 0 auto;
  font-weight: bold;


}

.marker {
  background:linear-gradient(transparent 95%, #fff 50%);
  display: inline;

  /* 背景の繰り返しを停止 */
  background-repeat: no-repeat;

  /* マーカーの横方向を0にして縮める */
  background-size: 0% 100%;

  /* マーカーが引かれる速度を指定 */
  transition: 2.0s;
}

/* マーカーが引かれる際に付与するクラス */
.marker.on {
  /* 横方向を100%にして、マーカーを引く */
  background-size: 100% 100%;
  background-position: 0 100%;

}

.p-section__button {
  margin: 24px auto 0;
}

.p-section__button {
  max-width: 280px;
}

.p-section__button2 {
  margin: 24px auto 0;
}

.p-section__button2 {
  max-width: 330px;
}


@media screen and (min-width: 768px) {

  /* ヘッダー */
  .l-header__inner {
    max-width: 1080px;
    font-size: 16px;
    line-height: 1.6;
    padding: 20px 60px;
  }

  .l-header__lead {
    font-size: 34px;
    margin: 32px 0 0;
  }

  /* ナビゲーション */
  .p-nav__link {
    font-size: 28px;
    white-space: nowrap;
    margin: auto 0 auto 24px;
  }

  /* MV */
  .p-hero {
    position: relative;
    background-color: #fff;
    width: 100%;
  }

  /* .p-hero::before {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    content: "";
    background-image: url(/lp/koukouyakyu/img/2023/mv.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    width: 100%;
    height: 100%;
    filter: blur(5px);
  } */

  .p-hero__inner {
    max-width: 1080px;
    margin: 0 auto;
    position: sticky;
    z-index: 100;
  }

  .p-hero__inner_sports {
    max-width: 1080px;
    margin: 0 auto;
    position: sticky;
    z-index: 100;
  }


  /* イントロ */
  .p-intro__inner {
    max-width: 1080px;
    padding: 40px 20px;
  }

  .p-intro__titleLittle {
    font-size: 34px;
    margin-top: 20px;
  }

  .p-intro__title {
    font-size: 40px;
  }

  .p-intro__text {
    font-size: 24px;
    text-align: center;
    margin-top: 20px;
  }

  .p-intro__text2 {
    font-size: 20px;
    text-align: center;
    margin-top: 10px;
  }

  /* コンテンツ */
  .p-contents {
    width: 100%;
    padding: 40px;
  }

  .p-contents__inner, .p-contents__inner01 {
    max-width: 1080px;
    padding: 40px 40px 40px 40px;
    margin: 80px auto 0;
  }

  .p-contents__inner01{
    margin: 0 auto 0;
  }


  .p-contents__titleLittle {
    font-size: 30px;
  }

  .p-contents__titleLittle01{
    font-size: 40px;
    color: #023886;
  }

  .p-contents__titleBig {
    font-size: 34px;

  }

  .p-contents__titleCap {
    font-size: 24px;
  }

  .p-contents__titleSub {
    font-size: 24px;
    margin-top: 10px;
  }

  .p-contents__titleSub span {
    font-size: 20px;
  }

  .p-contents__caption {
    font-size: 22px;
  }

  .p-contents__logo {
    position: static;
    top: 0;
    right: 0;
    width: 160px;
    margin-left: auto;
  }

  .p-contents__textArea {
    margin-top: 10px;
  }

  .p-contents__text {
    font-size: 12px;
    margin-top: 16px;
    text-align: center;
    font-weight: bold;
  }

  .p-contents__text01 {
    font-size: 18px;
  }

  .p-contents__text--small {
    font-size: 14px;
    margin-top: 4px;
  }

  .p-contents__text--small01 {
    font-size: 14px;
  }

  .p-contents__text001 {
    font-size: 22px;
    margin-top: 16px;
    font-weight: bold;
  }

  /* .p-contents__imgArea {} */

  .p-contents__imgLogo {
    top: 240px;
    right: -30px;
    width: 140px;
  }

  .p-contents__button {
    margin: 20px 0 0;
  }

  .p-conversion__inner {
    max-width: 1080px;
    padding: 60px 40px;
  }

  .p-conversion__link {
    font-size: 24px;
    text-align: center;
    margin: 24px auto 0;
  }

  .p-card__imgArea {
    margin: 18px auto 0;
    display: flex; /*横並び*/
  }
  

  /* コンポーネント */
  .c-balloon {
    padding-bottom: 86px;
  }

  .c-balloon__contents {
    font-size: 40px;
    padding: 28px;
  }

  .c-balloon__contents::before {
    bottom: -48px;
    width: 36px;
    height: 30px;
    border: solid 18px transparent;
    border-top: solid 30px #c65681;
  }

  .c-balloon--green .c-balloon__contents::before {
    border-top: solid 30px #006c7b;
  }

  .c-feature {
    background-color: #f4ecf1;
    border-radius: 20px;
    padding: 20px 30px;
    margin-top: 40px;
  }

  .c-feature__titleArea {
    flex-direction: row;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
  }

  .c-feature__date {
    font-size: 20px;
    padding: 10px 14px;
    margin-right: 0;
  }

  .c-feature__title {
    font-size: 24px;
    margin-top: 0;
    margin-left: 14px;
  }

  .c-feature__text {
    font-size: 18px;
    margin-top: 30px;
  }

  .c-information {
    font-size: 14px;
  }

  .c-video {
    padding: 0;
  }

  .c-tab {
    font-size: 16px;
    padding: 4px 8px;
  }

  /* .c-button--little {
    font-size: 20px;
    padding: 14px 32px;
  } */

  .c-button--blue {
    max-width: 100%;
    padding: 20px;
  }

  .c-intro__lead {
    font-size: 18px;
    margin-top: 12px;
    text-align: left;
  }

  /* .logo_img01{
    width: 72px;
    height: 72px;
  } */

  img.logo_img001{
    margin: 5px 10px 10px 0;
    width: 40px;
    height: 40px;
    border-radius: 10px;
    }
  


  .iframe-wrapper {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    margin-top: 16px;
  }
  
  .iframe-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;  
  }
  div.cm01{
    padding: 10px 25% 30px;

  }

  .p-contents__title {
    display: inline-block;
    font-weight: bold;
    text-align: center;
    font-size: 2.5rem;
  }

  .img_area01,.img_area02{
    display: flex;
    height: auto;
    margin: 40px 0 0 0 ;
  }
  
  .p-contents__img{
    width: 100%;
    margin:6px 30px 0 0;
    padding: 10px 0px 10px 0px;
  }

  .text01{
    width: 100%;
   padding: 0px 0px 0px 50px;
  }

  h2.p-contents__title{
margin-top: 40px;
font-size: 2.2rem;

  }

  .br01{
    display: none;
  }

  .btn001>.btn{
    width: 250px;
    }

    .btn001 {
      margin: 0 auto;
      text-align: center;
      justify-content:space-around;
      display:flex;
    
    }
    
    /* .btn001>div>a.nav{
     font-size: 1.8vw;
     width:calc(100%-33%);
    } */
    
    nav {
      width: 100%;
      height: 70px;
      box-sizing: border-box;
  
    }
    ul.menu001 {
      display: flex;
      justify-content:space-around;
      padding: 0;
 
    }
    li.menu_1 {
      width: 300px;
      padding: 10px;
      list-style: none;
      border-radius: 10px;
    }
    a.menu__1 {
      display: block;
      text-decoration: none;
      color: white;
      padding: 10px;
      font-size: 1.2rem;
      text-align: center;
      margin: 0 auto;
      font-weight: bold;
    }

    .p-section__button {
      max-width: 460px;
    }
  
    .p-section__button2 {
      max-width: 600px;
    }
  

}