@charset "utf-8";

/* 社会貢献 - - - - - - - - - - - - - - - - - - -*/
#socialcontribution{
  color:#000;
  }
#socialcontribution .page_visual__inner .headerTtl__jp{
  font-size: 30pt;
  line-height: 1;
  margin-top: 8px;
}
@media (min-width: 1080px) {
  #socialcontribution .page_visual__inner .headerTtl__jp{font-size: 60px;}

  #socialcontribution .bread_crumbs,
  #socialcontribution section.wrap {
    width: calc(670% / 7.50);
    max-width: 1422px;
    transition: width .4s;
    & img {width: 100%;}
  }
  #socialcontribution .page_visual__inner .sentence {font-size: 18px;line-height: 1.75;}
}

@media (min-width: 1540px){
  #socialcontribution .bread_crumbs,
  #socialcontribution section.wrap {
    width: 100%;
  }
}

.page_visual__inner .headerTtl + .sentence {
    margin-top: 1em;
    font-size: 1.5rem;
    text-align:left;
  }
#socialcontribution h3 {
  font-size:1.8rem;
  position:relative;
  margin-bottom:25px;
  letter-spacing:0.1em;
  line-height:1.4;

  height: 100%;
}

#socialcontribution h3 {text-wrap: initial;}
#socialcontribution h3 span{
  display:block;
  align-items:center;
  /* word-break: auto-phrase; */
}
#socialcontribution h3 span.list_title {
    margin-top:10px;
    color:#999999;
    font-size:small;
  }
#socialcontribution h3::before {
    position: absolute;
    bottom: -12px;
    left: 50%;
    content: "";
    width: 100%;
    height: 3px;
    transform: translateX(-50%);
    background:#999999;
}
#socialcontribution h3:after {
    position: absolute;
    bottom: -12px;
    left: 0;
    content: '';
    width: 48%;
    height: 3px;
    background: #0059B2;
    transform: scaleX(0.3);
    transform-origin: left top;
    transition: transform .3s;
  }
#socialcontribution .font-black{
  color:#000;
  }
#socialcontribution section:first-child {
  padding:25px 0 100px;
}
main.is_socialcontribution .page_visual__inner {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: fit-content;
    height: fit-content;
    color:#fff;
  }
main.is_socialcontribution .page_visual__wrapper {
    height: 300px;
    background-image: url(/special_50th/wp-content/themes/50th/assets/images/socialcontribution/mv_social@1.5x.webp);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    position: relative;
    text-align:center;
    margin-top: 50px;
  }
.is_socialcontribution .page_visual__inner .headerTtl__en {
    color: #008cff;
    font-size: 10pt;
    line-height: 1;
  }
#socialcontribution .flex-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 20px;
  }
#socialcontribution .flex-wrap {
    flex-wrap: wrap;
  }
#socialcontribution .jstfy-center {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
#socialcontribution .align-items-center {
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
#socialcontribution .align-items-stretch {
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
}
#socialcontribution .flex-container .post_List_item{
    width:48.8%;
    background:#f2f2f2;
    cursor:pointer;
    padding:2%;
    padding-bottom: 25px;
  }
#socialcontribution .flex-container .post_List_item .post-thumbnail{
  margin-top: auto;
  /* margin-top: 11px; */
  margin-left: auto;
  margin-right: auto;
}
#socialcontribution .flex-container .post_List_item a {
  /* display:block; */
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  height: 100%;
}
#socialcontribution .flex-container .post_List_item img{
    width:100%;
  }

@media (min-width: 1080px) {
  #socialcontribution section:first-child {
    padding:25px 36px 100px;
  }
  #socialcontribution .flex-container .post_List_item {
    /* width: 49%; */
    padding-bottom: 50px;
  }
  /* #socialcontribution .jstfy-center {justify-content: space-between;} */
  #socialcontribution .flex-container .post_List_item .post-thumbnail{
    max-width: 365px;
    margin-top: 37px;
    margin-left: auto;
    margin-right: auto;
  }

   main.is_socialcontribution .page_visual__wrapper {
        height: 448px;
        margin-top: 100px;
   }
    .is_socialcontribution .page_visual__inner .headerTtl__en {
        font-size: 1.8rem;
    }
    .is_socialcontribution .page_visual__inner .headerTtl__jp {
        font-size: 6rem;
    }
    .is_socialcontribution .page_visual__inner .headerTtl + .sentence {
        margin-top: 45px;
        font-size: 1.6rem;
        text-align:center;
        letter-spacing: 1.25px;
        line-height: 1.55;
    }

}
@media (max-width: 766px) {
  main.is_socialcontribution {margin-top: 50px;}
  main.is_socialcontribution .page_visual__inner {
        width:85%;
        margin:auto;
    }
     #socialcontribution h3 {
        font-size:1.8rem;
        letter-spacing: 0.14rem;
    }
    #socialcontribution .flex-container .post_List_item {
        width: 100%;
        padding: 5%;
    }
}

/* END 社会貢献 - - - - - - - - - - - - - - - - -*/

/* 次の１０年 - - - - - - - - - - - - - - - - - - -*/
#goingforward{
  color:#000;
}
#goingforward .font-blue {
   color:#0059b2;
  }
#goingforward .bg01,
#goingforward .bg02,
#goingforward .bg03{
    position:relative
  }
#goingforward .bg01::after,
#goingforward .bg03::after{
    position: absolute;
    top: auto;
    bottom: 5%;
    left: 0;
    z-index: -1;
    width: 37%;
    height: 100%;
    background-color: #f2f2f2;
    background-position: top center;
    background-repeat: no-repeat;
    background-size: cover;
    content: '';
  }
#goingforward .bg02::after{
    position: absolute;
    top: auto;
    bottom: 5%;
    right: 0;
    z-index: -1;
    width: 37%;
    height: 100%;
    background-color: #f2f2f2;
    background-position: top center;
    background-repeat: no-repeat;
    background-size: cover;
    content: '';
  }
#goingforward .page_visual__inner .headerTtl__jp{
  font-size: 30pt;
  line-height: 1;
  margin-top: 8px;
}
@media (min-width: 1080px) {
  #goingforward .page_visual__inner .headerTtl__jp{font-size: 60px;}
  #goingforward .bread_crumbs,
  #goingforward section.wrap {
    width: calc(670% / 7.50);
    max-width: 1422px;
    transition: width .4s;
    & img {width: 100%;}
  }
}

@media (min-width: 1540px){
  #goingforward .bread_crumbs,
  #goingforward section.wrap {
    width: 100%;
  }
}
.page_visual__inner .headerTtl + .sentence {
    margin-top: 1em;
    font-size: 1.5rem;
    text-align:left;
  }
#goingforward h3 {
    font-size:3.5rem;
    position:relative;
    margin-top:20px;
  }
#goingforward h3 span{
    display:block;
    align-items:center;
  }
#goingforward h3::before {
    position: absolute;
    bottom: -12px;
    left: 50%;
    content: "";
    width: 100%;
    height: 3px;
    transform: translateX(-50%);
    background:#999999;
}
#goingforward h3:after {
    position: absolute;
    bottom: -12px;
    left: 0;
    content: '';
    width: 48%;
    height: 3px;
    background: #0059B2;
    transform: scaleX(0.3);
    transform-origin: left top;
    transition: transform .3s;
  }
#goingforward .font-black{
  color:#000;
  }
#goingforward .text{
  margin-top:40px;
  line-height:2.1;
  font-size:1.6rem;
  letter-spacing: 1.25px;
}
#goingforward section:first-child {
  padding:25px 0 100px;
}
main.is_goingforward .page_visual__inner {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: fit-content;
  height: fit-content;
  color:#fff;
}
main.is_goingforward .page_visual__wrapper {
    height: 300px;
    background-image: url(/special_50th/wp-content/themes/50th/assets/images/goingforward/mv_goingforward@1.5x.webp);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    position: relative;
    text-align:center;
    margin-top: 50px;
  }
.is_goingforward .page_visual__inner .headerTtl__en {
    color: #008cff;
    font-size: 10pt;
    line-height: 1;
  }
/* video */
#goingforward #top-movie{
    position: relative;
    padding-top: 56.25%; /* 16:9 アスペクト比 */
    height: 0;
    margin-top:25px;
    background:#000000;
/*    background:#191919;*/
  }
#goingforward #top-movie iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding:5%;
  }

#goingforward .play-btn .thumb {
position:absolute;
width:100%;
height:100%;
left:0;
top:0;
z-index:1;
  }
#goingforward .play-btn .btn {
    display: block;
    width: 20%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit- transform: translateY(-50%) translateX(-50%);
    z-index:2;
  }
#goingforward .play-btn.playActive{
    display:none;
  }

@media (min-width: 1080px) {
  #goingforward section:first-child {
    padding:25px 36px 100px;
  }

   main.is_goingforward .page_visual__wrapper {
        height: 448px;
        margin-top: 100px;
   }
    .is_goingforward .page_visual__inner .headerTtl__en {
        font-size: 1.8rem;
    }
    .is_goingforward .page_visual__inner .headerTtl__jp {
        font-size: 6rem;
    }
    .is_goingforward .page_visual__inner .headerTtl + .sentence {
        margin-top: 45px;
        font-size: 1.8rem;
        text-align:center;
    }
}
@media (max-width: 766px) {
  main.is_goingforward .page_visual__wrapper {height: 325px;margin-top: 50px;}
  main.is_goingforward .page_visual__inner {
    width:85%;
    margin:auto;
  }
  #goingforward h3 {
    font-size:1.8rem;
    letter-spacing: 0.14rem;
  }
}

/* END 次の１０年 - - - - - - - - - - - - - - - - -*/



/* ページ内リンク - - - - - - - - - - - - - - - - - */
.other_pageLinks {
  padding: 50px 0;

  li {
    width: 100%;
    aspect-ratio: 670 / 446;
    position: relative;
    &:not(:first-child){margin-top: 20px;}

    .boxLabel {
      position: absolute;
      left: 0;
      bottom: 0;
      height: 77.5px;
      font-weight: 600;

      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: flex-start;

      color: #fff;
      background-color: #0059B2;
      padding: 0 10px;

      font-family: "Noto Serif JP", serif;
      font-weight: 100;
      line-height: 1;

      &_en {
        font-size: 12pt;
      }

      &_jp {
        font-size: 35pt;
        font-weight: 100;
      }
    }
  }
}


@media (min-width: 1080px){
  .other_pageLinks {
    display: flex;
    justify-content: center;
    gap: 20px;

    & li {
      aspect-ratio: 386 / 257;
      max-width: 386px;
      width: 33%;
      &:not(:first-child){margin-top: 0px;}

      & .boxLabel {
        padding: 0 20px;
        height: 88px;
      }
      & .boxLabel_en {
        font-size: 1.6rem;
        margin-bottom: 10px;
      }
      & .boxLabel_jp {
        font-size: 4rem;
      }
    }
  }
}
/* END ページ内リンク - - - - - - - - - - - - - - - */


.headerTtl .headerTtl__jp {font-weight: 600!important;}
