@charset "UTF-8";


/* --------------------------------------------------------------------------
  common
-------------------------------------------------------------------------- */
@media screen and (min-width:768px){
  .header-parts{
    position: relative;
    height: 106px;
    z-index: 100;
  }
  .header__logo{
    position: fixed;
    padding-top: 18px;
    top: 0;
    left: 0;
  }
  .logo-pilot{
    width: 110px;
    height: 29.34px;
    position: relative;
    margin-left: 28px;
    z-index: 5;
  }
  .logo-pilot a{
    display: block;
    width: 100%;
    height: 100%;
  }
  .logo-kaku{
    width: 100px;
    margin: 13px auto;
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 3;
  }
  .logo-kaku a{
    display: block;
    width: 100%;
    height: 100%;
  }
  .header-parts.is-fixed .header-parts__inner {
    position: fixed;
    width: 100%;
    height: auto;
  }
  .header-parts.is-fixed .logo-kaku {
    width: 220px;
  }

  /* ロゴ切り替え */
  .kv-top{
    display: block;
  }
  .header-parts.is-fixed .kv-top{
    display: none;
  }
  .kv-bottom{
    display: none;
  }
  .header-parts.is-fixed .kv-bottom{
    display: block;
  }

}
@media screen and (max-width:767px){
  .header-parts{
    position: relative;
    height: 109px;
    z-index: 100;
  }
  .header__logo{
    position: fixed;
    height: 90px;
    padding-top: 13px;
  }
  .logo-pilot{
    width: 57.75px;
    height: 15.4px;
    position: relative;
    margin-left: 15px;
    z-index: 5;
  }
  .logo-pilot a{
    display: block;
    width: 100%;
    height: 100%;
  }
  .logo-kaku{
    width: 100px;
    margin: 17px auto 0;
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 3;
  }
  .logo-kaku a{
    display: block;
    width: 100%;
    height: 100%;
  }
  .header-parts.is-fixed .logo-kaku{
    width: 149px;
  }

  .header-parts.is-fixed .header-parts__inner {
    position: fixed;
    width: 100%;
    height: auto;
  }

  /* ロゴ切り替え */
  .kv-top{
    display: block;
  }
  .header-parts.is-fixed .kv-top{
    display: none;
  }
  .kv-bottom{
    display: none;
  }
  .header-parts.is-fixed .kv-bottom{
    display: block;
  }

}
/* --------------------------------------------------------------------------
  スタンプ リンク
-------------------------------------------------------------------------- */
@media screen and (min-width:768px){
  .link-stamp{
    width: 151.83px;
    height: 133px;
    z-index: 300;
    position: absolute;
    right: 19px;
    top: 313px;
    opacity: 1;
    animation: setLinkStamp .5s ease;
  }
  .link-stamp.is-move{
    /* opacity: 1; */
    position: fixed;
    top: unset;
    right: 19px;
    bottom: 22px;
    animation: moveLinkStamp 1s ease;
  }
  .link-stamp a{
    display: block;
    width: 100%;
    height: 100%;
  }

  @keyframes moveLinkStamp {
    0% {
      opacity: 0;
    }
    50%{
      opacity: 1;
    }
    100% {
      top: unset;
      bottom: 22px;
    }
  }
  @keyframes setLinkStamp {
    0% {
      top: unset;
      bottom: 22px;
      opacity: 0;
    }
    50%{
      opacity: 0;
    }
    100% {
      top: 313px;
      bottom: unset;
      opacity: 1;
    }
  }

  

}

@media screen and (min-width:768px){
  .link-stamp{
    top: 260px;
    animation: setLinkStamp .5s ease;
  }
  @keyframes setLinkStamp {
    0% {
      top: unset;
      bottom: 22px;
      opacity: 0;
    }
    50%{
      opacity: 0;
    }
    100% {
      top: 260px;
      bottom: unset;
      opacity: 1;
    }
  }

  body.is-fixed .link-stamp {
    position: fixed;
    top: unset;
    right: 19px;
    bottom: 22px;
  }

}

/* --------------------------------------------------------------------------
  mv
-------------------------------------------------------------------------- */
@media screen and (min-width:768px){
  .lower-mv-sec{
    position: relative;
    background: #F2F6FC;
    height: 168px;
    overflow: hidden;
  }
  .lower-mv-sec::after{
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: url("../img/common/bg_lower_kv_cover.png") no-repeat center top;
    background-size: cover;
    z-index: 2;
  }
  .lower-mv-sec::before{
    content: '';
    display: block;
    background: url("../img/common/bg_lower_kv_parts.png") no-repeat center center;
    background-size: cover;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 581px;
    height: 100%;
  }
  .enjoy .lower-mv-sec .c-section__inner {
    padding: 35px 0 0;
  }
  .lower-mv-sec .c-section__inner {
    padding: 48px 0 0;
    height: 100%;
  }
  .search .lower-mv-sec .c-section__inner,
  .latest .lower-mv-sec .c-section__inner {
    padding: 54px 0 0;
  }
  .lower-mv {
    position: relative;
    width: 68px;
    height: auto;
    margin: 0 auto;
    z-index: 3;
  }
  .lower-mv-text{
  }
  .lower-mv:before {
    content: '';
    display: block;
    width: 24px;
    height: 24px;
    position: absolute;
    top: -23px;
    right: -32px;
    background: url("./../img/common/icon_nav01.png") no-repeat center top;
    background-size: contain;
  }
  .story .lower-mv:before {
    background: url("./../img/common/icon_nav02.png") no-repeat center top;
    background-size: contain;
    width: 26px;
    height: 22px;
     top: -20px;
    right: -32px;
  }
  .knowledge .lower-mv:before {
    background: url("./../img/common/icon_nav03.png") no-repeat center top;
    background-size: contain;
    width: 32px;
    height: 25px;
    top: -19px;
    right: -32px;
  }
  .create .lower-mv:before {
    background: url("./../img/common/icon_nav04.png") no-repeat center top;
    background-size: contain;
    width: 23px;
    height: 29px;
    top: -29px;
    right: -32px;
  }
  .enjoy .lower-mv:before {
    background: url("./../img/common/icon_nav05.png") no-repeat center top;
    background-size: contain;
    width: 18px;
    height: 23px;
    top: -18px;
    right: -23px;
  }
  .search .lower-mv:before,
  .latest .lower-mv:before{
    display: none;
  }

}
@media screen and (max-width:1024px){
}
@media screen and (max-width:767px){
  .lower-mv-sec{
    position: relative;
    background: #F2F6FC;
    height: 140px;
    overflow: hidden;
  }
  .enjoy .lower-mv-sec {
    height: 158px;
  }
  .search .lower-mv-sec {
    height: 137px;
  }
  .lower-mv-sec::after{
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: url("../img/common/bg_lower_kv_cover_sp.png") no-repeat center top;
    background-size: cover;
    z-index: 2;
  }
  .lower-mv-sec::before{
    content: '';
    display: block;
    background: url("../img/common/bg_lower_kv_parts_sp.png") no-repeat center center;
    background-size: contain;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 346px;
    height: 100%;
  }
  .lower-mv-sec .c-section__inner {
    padding: 33px 0 0;
    height: 100%;
  }
  .search .lower-mv-sec .c-section__inner,
  .latest .lower-mv-sec .c-section__inner {
    padding: 43px 0 0;
    height: 100%;
  }
  .lower-mv {
    position: relative;
    width: 52px;
    height: auto;
    margin: 0 auto;
    z-index: 3;
  }
  .lower-mv-text{
  }
  .lower-mv:before {
    content: '';
    display: block;
    width: 22px;
    height: 22px;
    position: absolute;
    top: -15px;
    right: -30px;
    background: url("./../img/common/icon_nav01.png") no-repeat center top;
    background-size: contain;
  }
  .story .lower-mv:before {
    background: url("./../img/common/icon_nav02.png") no-repeat center top;
    background-size: contain;
    width: 32px;
    height: 26px;
    top: -20px;
    right: -39px;
  }
  .knowledge .lower-mv:before {
    background: url("./../img/common/icon_nav03.png") no-repeat center top;
    background-size: contain;
    width: 37px;
    height: 29px;
    top: -19px;
    right: -39px;
  }
  .create .lower-mv:before {
    background: url("./../img/common/icon_nav04.png") no-repeat center top;
    background-size: contain;
    width: 27px;
    height: 34px;
    top: -19px;
    right: -39px;
  }
  .enjoy .lower-mv:before {
    background: url("./../img/common/icon_nav05.png") no-repeat center top;
    background-size: contain;
    width: 24px;
    height: 30px;
    top: -21px;
    right: -39px;
  }
  .search .lower-mv:before,
  .latest .lower-mv:before{
    display: none;
  }



}



/* --------------------------------------------------------------------------
  head-link-sec
-------------------------------------------------------------------------- */
@media screen and (min-width:768px){
  .head-link-sec .c-section__inner{
    padding: 56px 50px 0;
  }
  .c-title-lower{
    font-family: 'Kiwi Maru', 'Noto Sans JP', serif;
    text-align: center;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 1.26px;
    color: var(--primary-color-100);
  }
  .bl_head-link{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 16px;
    margin-top: 24px;
    flex-shrink: 0;
  }
  .head-link__item{
    width: 192px;
    border: 1px solid var(--primary-color-100);
    border-radius: 2.5rem;
    text-align: center;
    font-size: 13px;
    line-height: 1.8;
    white-space: nowrap;
  }
  .head-link__item a{
    width: 100%;
    height: 100%;
    display: block;
    padding: calc(8/192*100%) calc(16/192*100%);
  }
  .head-link__item.current{
    background: var(--primary-color-100);
  }
  .head-link__item.current a{
    color: #fff;
  }
  .head-link__item:hover{
    background: var(--primary-color-100);
  }
  .head-link__item:hover a{
    color: #fff;
  }
  
  
}
@media screen and (max-width:767px){
  .head-link-sec .c-section__inner{
    padding: 40px 0 0;
    margin-right: 0;
  }
  .c-title-lower{
    font-family: 'Kiwi Maru', 'Noto Sans JP', serif;
    text-align: center;
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: 1.26px;
    color: var(--primary-color-100);
  }
  .bl_head-link{
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 24px;
    flex-shrink: 0;
  }
  .head-link__item{
    border: 1px solid var(--primary-color-100);
    border-radius: 2.5rem;
    text-align: center;
    font-size: 13px;
    line-height: 180%;
    min-width: 117px;
    flex-shrink: 0;
  }
  .head-link__item a{
    width: 100%;
    height: 100%;
    display: block;
    padding: 4px 26px;
  }
  .head-link__item.current{
    background: var(--primary-color-100);
  }
  .head-link__item.current a{
    color: #fff;
  }
  .head-link__item:hover{
    background: var(--primary-color-100);
  }
  .head-link__item:hover a{
    color: #fff;
  }


}

/* --------------------------------------------------------------------------
  article-sec
-------------------------------------------------------------------------- */
@media screen and (min-width:768px){
  .article-sec .c-section__inner {
    padding: 0 50px;
  }
  .article.article-card{
  }
  .article-sec .article-date{
    font-size: 13px;
    color: #000;
    opacity: .5;margin-top: 17px;
  }
  .article-card-list .article-title {
    font-size: 14px;
    margin-top: 4px;
  }
  .article-card-list__item:nth-of-type(n+5) {
    margin-top: calc(96/1020*100%);
  }
  .article-card-list__item {
    position: relative;
    width: calc(224/1020*100%);
    min-height: calc(334/1020*100%);
  }
  .article-title {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2; /* 行数制限 */
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .article-card-list {
    position: relative;
    padding: 50px 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: initial;
    gap: 0 calc(40/1020*100%);
  }
  .article-card-list::before {
    content: '';
    width: 100%;
    height: 1.194px;
    position: absolute;
    top: 0;
    left: 0;
    background: url("../img/common/line_holizonal_l.svg") no-repeat right top;
    background-size: cover;
  }
  .article-card-list::after {
    content: '';
    width: 100%;
    height: 1.194px;
    position: absolute;
    bottom: 0;
    left: 0;
    background: url("../img/common/line_holizonal_l.svg") no-repeat right top;
    background-size: cover;
  }


}
@media screen and (max-width:1200px){
  .article-sec .c-section__inner {
    padding: 0x 20px;
  }
}
@media screen and (max-width:767px){
  .article-sec .c-section__inner {
    padding: 0;
  }
  .article.article-card{
  }
  .article-sec .article-date{
    font-size: 13px;
    color: #000;
    opacity: .5;
    margin-top: 17px;
  }
  .article-card-list .article-title {
    font-size: 14px;
    margin-top: 4px;
  }

  .article ul {
    gap: 24px 30px;
  }
  .article-card-list__item {
    position: relative;
    /* width: calc(157/375*100vw); */
    width: calc((100% - 30px)/2);
  }
  .article-card-list__item .article-img{
    height: unset;
  }
  .article-title {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3; /* 行数制限 */
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .article-card-list{
    position: relative;
    padding: 48px 0;
  }
  .article-card-list::before {
    content: '';
    width: 100%;
    height: 1.2px;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    background: url("../img/common/line_holizonal_lower_sp.svg") no-repeat right top;
    background-size: cover;
  }
  
}



/* --------------------------------------------------------------------------
  bl_scroll
-------------------------------------------------------------------------- */
@media screen and (max-width:767px){

  .bl_scroll {
    overflow-x: auto;
    padding-bottom: 10px;
    -webkit-overflow-scrolling: touch;
  }
  .bl_scroll ul {
    max-width: 100%;
    /* min-width: 650px; */
    vertical-align: top;
  }
  .scrollbar::-webkit-scrollbar {
    height: 6px;
  }
  .scrollbar-thumb-rounded::-webkit-scrollbar-thumb {
    border-radius: 0.25rem;
  }
  .scrollbar-thumb-black::-webkit-scrollbar-thumb {
    background-color: #ccc;
  }
  .scrollbar::-webkit-scrollbar {
    height: 6px;
  }
  .scrollbar-thumb-rounded::-webkit-scrollbar-thumb {
    border-radius: 0.25rem;
  }
  .scrollbar-thumb-black::-webkit-scrollbar-thumb {
    background-color: #ccc;
  }
  
  
}

