@charset "UTF-8";
/**************************************
	base
***************************************/
/* ---------------------------------------------------------
スタイルリセット
----------------------------------------------------------*/
@import url("https://fonts.googleapis.com/css?family=M+PLUS+1p:400,500,700,900");
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-style: normal;
  font-weight: normal;
}

h1, h2, h3, h4, h5, h6, td, th, p, ul, li, dt, dd {
  font-size: 1em;
}

ul li {
  list-style: none;
}

article, header, footer, aside, figure, figcaption, nav, section {
  display: block;
}

body {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

img {
  vertical-align: bottom;
}

/* ---------------------------------------------------------
変数
----------------------------------------------------------*/
/*break point
-----------------------*/
/*color
-----------------------*/
/*font family
-----------------------*/
/* ---------------------------------------------------------
mixin
----------------------------------------------------------*/
/*メディアクエリ
-----------------------*/
/*  clearfix
-----------------------*/
/*  font-size
-----------------------*/
/*  transition
-----------------------*/
/* render text
----------------------*/
/* ---------------------------------------------------------
初期設定
----------------------------------------------------------*/
html {
  color: #fff;
  background-color: #000;
  font-size: 14px;
  line-height: 1.2;
  letter-spacing: normal;
}

body {
  font-family: "M PLUS 1p", sans-serif;
}

html,
body {
  position: relative;
  min-width: 1060px;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

a {
  text-decoration: none;
  color: #000;
}

img {
  width: 100%;
  height: auto;
  vertical-align: middle;
}

table {
  width: 100%;
  border-collapse: collapse;
}

.clearfix::before, .clearfix::after {
  content: "";
  display: table;
}
.clearfix::after {
  clear: both;
}

/******************************
 	base sp
*******************************/
@media screen and (max-width: 767px) {
  html {
    min-width: 100%;
  }
}
/**************************************

common.scss

***************************************/
.pc {
  display: block;
}

.sp {
  display: none;
}

.tablet-br {
  display: none;
}

.sp528-br {
  display: none;
}

.secTitle {
  display: block;
  min-height: 60px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.secTitle.u-introduction {
  background-image: url("../img/topPage_img-title-introduction.png");
}
.secTitle.u-news {
  background-image: url("../img/topPage_img-title-news.png");
}
.secTitle.u-information {
  background-image: url(../img/topPage_img-title-information.png);
}
.secTitle.u-new-song {
  background-image: url(../img/topPage_img-title-new-song.png);
}
.secTitle.u-profile {
  background-image: url(../img/topPage_img-title-kizuna.png);
}
.secTitle.u-contact {
  background-image: url(../img/topPage_img-title-contact.png);
}

.contentContainer {
  background: rgba(50, 65, 72, 0.6);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.row__container {
  display: block;
}
.row__container .row {
  width: 100%;
}

@media screen and (min-width: 769px) and (max-width: 1030px) {
  .tablet-br {
    display: block;
  }

  .sp528-br {
    display: none;
  }

  .sp {
    display: none;
  }
}
@media screen and (min-width: 320px) and (max-width: 538px) {
  .tablet-br {
    display: none;
  }

  .sp528-br {
    display: block !important;
  }
}
/******************************
    SP
*******************************/
@media screen and (max-width: 767px) {
  html,
body {
    min-width: auto;
  }

  .pc {
    display: none;
  }

  .sp {
    display: block;
  }

  .tablet-br {
    display: none;
  }

  .sp528-br {
    display: none;
  }

  .secTitle {
    display: block;
    min-height: 45px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
}
/**************************************
	header
***************************************/
.toggleLang {
  margin: 0 auto;
  padding: 2px;
  width: 100%;
  max-width: 124px;
  position: absolute;
  top: 11.5px;
  right: 77.5px;
  z-index: 100;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #000;
  border-radius: 10px;
}
.toggleLang__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.toggleLang__link {
  margin-right: 2px;
  width: 62px;
  display: block;
}
.toggleLang__link:last-child {
  margin-right: 0;
}
.toggleLang__linkE {
  padding: 8px 0;
  left: 0.1em;
  display: block;
  text-align: center;
  font-weight: bold;
  background-color: #3d3d3d;
  color: rgba(255, 255, 255, 0.4);
  border-radius: 10px;
  -webkit-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.toggleLang__linkE.u-active {
  background-color: #e358c5;
  opacity: 1;
  color: white;
}
.toggleLang__linkE:hover {
  background-color: #e358c5;
  opacity: 1;
  color: white;
}

/******************************
    header sp
*******************************/
@media screen and (max-width: 767px) {
  .toggleLang {
    margin: 0 auto;
    padding: 2px;
    width: 100%;
    max-width: 124px;
    position: absolute;
    top: 11.5px;
    right: 11.5px;
    border-radius: 10px;
  }
  .toggleLang__link {
    margin-right: 2px;
    width: 62px;
  }
  .toggleLang__linkE {
    padding: 8px 0;
    border-radius: 10px;
  }
}
/**************************************
footer
***************************************/
footer {
  margin: 35px auto 0;
  padding-bottom: 17.5px;
  width: 100%;
}
footer .footer__container {
  margin: 0 auto;
  width: auto;
  display: block;
  color: #fff;
  text-align: center;
  position: relative;
  z-index: 100;
}
footer .footer__container h2 {
  margin-bottom: 30px;
  font-size: 14px;
  font-weight: 600;
}
footer .footer__container .media__icons {
  margin: 0 auto;
  width: 100%;
  display: block;
  font-size: 0;
  letter-spacing: 0;
}
footer .footer__container .media__icons .icon__container {
  margin: 0 auto;
  margin-right: 2%;
  width: 30px;
  display: inline-block;
  -webkit-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
footer .footer__container .media__icons .icon__container:hover {
  opacity: 0.7;
}
footer .footer__container .media__icons .icon__container.youtube {
  margin-right: 1%;
  width: 140px;
}
footer .footer__container .media__icons .icon__container.ai-channel {
  width: 120px;
}
footer .footer__container .media__icons .icon__container.controller {
  width: 50px;
}
footer .footer__container .media__icons .icon__container a {
  display: block;
}
footer .footer__container .media__icons .icon__container img {
  width: 100%;
}
footer .footer__container .credits {
  margin: 62px auto 0;
}
footer .footer__container .credits p {
  font-weight: 600;
}

/******************************
    footer sp
*******************************/
@media screen and (max-width: 767px) {
  footer {
    margin: 0 auto 0;
    padding: 35px 0 17.5px;
    width: 100%;
    position: relative;
  }
  footer:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url(../img/footer_bg-black-effect.png);
    display: none;
  }
  footer .footer__container {
    margin: 0 auto;
    width: auto;
    display: block;
    color: #fff;
    text-align: center;
    position: relative;
    z-index: 100;
  }
  footer .footer__container h2 {
    margin-bottom: 30px;
    font-size: 14px;
    font-weight: 600;
  }
  footer .footer__container .media__icons {
    margin: 0 auto;
    width: 100%;
    display: block;
    font-size: 0;
    letter-spacing: 0;
  }
  footer .footer__container .media__icons .icon__container {
    margin: 0 auto;
    margin-right: auto;
    margin-bottom: 3%;
    width: 30px;
    display: inline-block;
  }
  footer .footer__container .media__icons .icon__container.margin__right__10px {
    margin-right: 15px;
  }
  footer .footer__container .media__icons .icon__container.margin__right__15px {
    margin-right: 20px;
  }
  footer .footer__container .media__icons .icon__container.youtube {
    margin-right: 15px;
    width: 140px;
  }
  footer .footer__container .media__icons .icon__container.ai-channel {
    width: 120px;
  }
  footer .footer__container .media__icons .icon__container.controller {
    width: 50px;
  }
  footer .footer__container .media__icons .icon__container a {
    display: block;
  }
  footer .footer__container .media__icons .icon__container img {
    width: 100%;
  }
  footer .footer__container .credits {
    margin: 15px auto 0;
  }
  footer .footer__container .credits p {
    font-weight: 600;
  }
}
/**************************************
home.scss
***************************************/
/*-- cutom scroll --*/
.simplebar-track {
  width: 9px;
  background: rgba(250, 250, 250, 0);
  border-radius: 10px;
}
.simplebar-track.vertical .simplebar-scrollbar {
  width: 9px;
  right: 0px;
}
.simplebar-track.vertical .simplebar-scrollbar::before {
  background: #fff;
}
.simplebar-track.horizontal {
  display: none;
}

.home {
  margin: auto;
  width: 100%;
  max-width: 1060px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  background-image: url(../img/bg.jpg);
}
.home .bg__color {
  margin: auto;
  width: 100%;
  max-width: 1060px;
  min-height: 70vh;
  position: absolute;
  left: 0;
  right: 0;
}

main {
  margin: auto;
  position: relative;
  width: 100%;
  max-width: 1060px;
}
main .overlay {
  overflow: hidden;
  width: 100vw;
  height: 100vh;
  position: fixed;
  z-index: 99;
}
main .bg__girl__container {
  margin: 0 auto;
  max-width: 983px;
  min-width: 820px;
  display: block;
  overflow: hidden;
}
main .bg__girl {
  margin: 0 auto;
  display: block;
  width: 100%;
  max-width: 980px;
  height: auto;
  position: fixed;
  top: 0;
  left: 0;
  right: -79px;
  z-index: 0;
}
main .bg__girl.animation {
  top: auto !important;
  bottom: 0px;
}
main .sticky {
  position: fixed;
  top: 0;
  width: 100%;
}

section {
  padding: 0;
  width: 100%;
  max-width: 910px;
  position: relative;
  z-index: 99;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.kizunaImg {
  position: relative;
  min-height: 52vh;
}
@media screen and (min-width: 768px) and (max-height: 900px) {
  .kizunaImg {
    min-height: 100vh;
    min-height: 545px;
  }
}
.kizunaImg .logo {
  position: absolute;
  top: 50%;
  left: 5%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  max-width: 26%;
}

.sec02 {
  margin: 0 auto 14px;
  width: 100%;
  position: relative;
}
.sec02 .contentContainer {
  padding: 16px 32px 16px 25px;
}
.sec02__conText {
  font-size: 16px;
  line-height: 1.87;
  letter-spacing: 0.02em;
}
.sec02__conText.u-blueText {
  color: #76ecfb;
}

.sec03 {
  margin: 0 auto 17px;
  width: 100%;
  position: relative;
}
.sec03 .contentContainer {
  padding: 16px 32px 16px 25px;
}
.sec03__newsList {
  height: 150px;
  overflow-y: hidden;
}
.sec03__newsItem {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.sec03__newsDate {
  margin-right: 16px;
}
.sec03__newsDate, .sec03__newsCont {
  font-size: 16px;
  line-height: 1.87;
  letter-spacing: 0.02em;
}

.sec03__conText {
  display: block;
  font-size: 16px;
  line-height: 1.87;
  letter-spacing: 0.02em;
  color: #fff;
}
.sec03__conText:hover {
  opacity: 0.7;
}
.sec03__conText--underline {
  border-bottom: 1px solid #fff;
  padding-bottom: 2px;
}

.sec04 {
  margin: 0 auto 17px;
  width: 100%;
}
.sec04 .contentContainer {
  padding: 26px 32px 39px 25px;
  position: relative;
}
.sec04 .contentContainer:after {
  content: "";
  position: absolute;
  top: 0;
  right: 58.5px;
  width: 193px;
  height: 100%;
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
  background-image: url(../img/topPage_logo-info-logo.png);
}
.sec04__infoList {
  display: block;
}
.sec04__infoItem {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.sec04__infoLabel {
  margin-right: 16px;
  width: 13%;
  text-align: right;
}
.sec04__infoLabel, .sec04__infoCont {
  font-size: 19px;
  line-height: 1.72;
  letter-spacing: normal;
}

.sec04__infoCorrection {
  margin-left: 125px;
  margin-bottom: 5px;
  font-size: 19px;
  line-height: 0.82;
  letter-spacing: normal;
}

.sec05 {
  margin: 0 auto 14px;
  width: 100%;
}
.sec05 .contentContainer {
  padding: 10px;
}
.sec05 .contentContainer__inner {
  padding: 16px 32px 16px 25px;
  background-color: #000;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  -webkit-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.sec05 .contentContainer__inner:hover {
  opacity: 0.7;
}
.sec05 .contentContainer__inner.u-bannerEN:hover {
  opacity: 1;
}
.sec05__conText {
  font-size: 16px;
  line-height: 1.87;
  letter-spacing: 0.02em;
  text-align: center;
}

.sec06 {
  margin: 0 auto 19px;
  width: 100%;
}
.sec06 .contentContainer {
  padding: 0;
}
.sec06__youtube {
  width: 100%;
  height: 510px;
}

.sec07 {
  margin: 0 auto 19px;
  width: 100%;
}
.sec07 .contentContainer {
  padding: 23px 37px 27px 27px;
}
.sec07__youtube {
  width: 100%;
  height: 510px;
}
.sec07__conText {
  font-size: 16px;
  line-height: 1.87;
}

.sec08 {
  margin: 0 auto 19px;
  width: 100%;
  position: relative;
}
.sec08 .contentContainer {
  padding: 13px 14px 16.5px 27px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.sec08__conText {
  width: calc(100% - 205px);
  font-size: 16px;
  line-height: 1.87;
}
.sec08__kizunaThumb {
  width: 175px;
}

.sec09 {
  margin: 0 auto 14px;
  width: 100%;
}
.sec09 .contentContainer {
  padding: 16px 32px 16px 25px;
  background-color: rgba(0, 0, 0, 0.6);
}
.sec09__conText {
  display: block;
  font-size: 16px;
  line-height: 1.87;
  letter-spacing: 0.02em;
  text-align: center;
  color: #fff;
  position: relative;
  -webkit-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.sec09__conText:hover {
  opacity: 0.7;
}
.sec09__conText--underline {
  border-bottom: 1px solid #fff;
  padding-bottom: 2px;
}

/******************************
    SP
*******************************/
@media screen and (max-width: 767px) {
  .home {
    background-image: none;
  }
  .home .bg__color {
    display: block;
    width: 100%;
    min-height: 100vh;
    position: fixed;
  }
  .home .bg__colorEffect {
    display: block;
    width: 100%;
    min-height: 100vh;
    position: fixed;
    bottom: 0;
  }

  main {
    padding: 0;
    position: relative;
  }
  main .bg__girl {
    margin: 0 auto;
    position: relative;
    display: none;
    width: 100%;
    max-width: 3000px;
    height: auto;
    position: fixed;
    top: 5px;
    left: 0;
    right: 0;
    z-index: 0;
  }

  section {
    margin: auto;
    padding: 0;
    width: 100%;
    max-width: 87%;
    position: relative;
    z-index: 99;
  }

  .kizunaImg {
    padding: 0 0 40px;
    position: fixed;
    min-height: 0;
    height: auto;
    width: calc(100% - 6.5%);
    right: 0;
  }
  .kizunaImg .logo {
    position: absolute;
    top: 50%;
    left: 5%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    max-width: 26%;
  }

  .sec02 {
    margin-bottom: 14px;
    width: 100%;
    position: relative;
    padding: 250px 0 0;
  }
}
@media screen and (max-width: 767px) and (orientation: landscape) {
  .sec02 {
    padding: 375px 0 57.5px 0;
    padding: 100vh 0 57.5px 0;
  }
}
@media screen and (max-width: 767px) {
  .sec02 .contentContainer {
    padding: 4% 4% 4% 6%;
  }
}
@media screen and (max-width: 767px) {
  .sec02__conText {
    font-size: 14px;
  }
}
@media screen and (max-width: 767px) {
  .sec03 {
    margin: 0 auto 17px;
  }
  .sec03 .contentContainer {
    padding: 4% 4% 4% 6%;
  }
  .sec03__newsList {
    height: 300px;
    overflow-y: hidden;
  }
  .sec03__newsItem {
    width: calc(100% - 20px);
    margin-bottom: 20px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .sec03__newsItem:last-child {
    margin-bottom: 0;
  }
  .sec03__newsDate {
    margin-right: 0;
  }
  .sec03__newsDate, .sec03__newsCont {
    font-size: 14px;
  }
}
@media screen and (max-width: 767px) {
  .sec04 {
    margin: 0 auto 17px;
    width: 100%;
  }
  .sec04 .contentContainer {
    padding: 4% 4% 4% 6%;
    position: relative;
  }
  .sec04 .contentContainer:after {
    content: "";
    position: absolute;
    top: 0;
    right: 4%;
    width: 22%;
    height: 100%;
    z-index: 1;
    opacity: 0.6;
  }
  .sec04__infoList {
    position: relative;
    z-index: 2;
  }
  .sec04__infoItem {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .sec04__infoLabel {
    margin-right: 10px;
    width: 78px;
  }
  .sec04__infoCont {
    width: calc(100% - 88px);
  }
  .sec04__infoLabel, .sec04__infoCont {
    font-size: 15px;
  }
  @media screen and (max-width: 767px) {
    .sec04__infoCorrection {
      margin-top: -5px;
      margin-left: 80px;
      margin-bottom: 5px;
      font-size: 15px;
      line-height: 1.00;
    }
  }

}
@media screen and (max-width: 767px) {
  .sec05 {
    margin: 0 auto 14px;
    width: 100%;
  }
  .sec05 .contentContainer {
    padding: 5px;
  }
  .sec05 .contentContainer__inner {
    padding: 4% 4% 4% 6%;
  }
  .sec05__conText {
    font-size: 14px;
  }
}
@media screen and (max-width: 767px) {
  .sec06 {
    margin: 0 auto 19px;
    width: 100%;
  }
  .sec06__youtube {
    width: 100%;
    height: 510px;
  }
}
@media screen and (max-width: 767px) {
  .sec07 {
    margin: 0 auto 19px;
    width: 100%;
  }
  .sec07__youtube {
    width: 100%;
    height: 510px;
  }
  .sec07 .contentContainer {
    padding: 4% 4% 4% 6%;
  }
  .sec07__conText {
    font-size: 14px;
  }
}
@media screen and (max-width: 767px) {
  .sec08 {
    margin: 0 auto 19px;
  }
  .sec08 .contentContainer {
    padding: 4% 4% 4% 6%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .sec08__conText {
    width: 100%;
    font-size: 14px;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .sec08__kizunaThumb {
    margin-bottom: 15px;
    width: 100%;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}
@media screen and (max-width: 767px) {
  .sec09 {
    margin: 0 auto 14px;
  }
  .sec09 .contentContainer {
    padding: 4% 4% 4% 6%;
  }
  .sec09__conText {
    font-size: 14px;
  }
}
.cooperation__container {
  padding: 10px 0px 10px 0px;
  margin: 0% 7% 0% 7%;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  background-position: center;
  background: rgba(0,0,0,0.4);
}

.cooperation__container h2 {
  font-stretch: expanded;
}

.cooperation__logos {
  display: flex;
  flex-wrap: wrap;
  place-content: space-evenly;
  box-sizing: border-box;
}

.cooperation__logos li {
  list-style: none;
  padding:0 5px;
  box-sizing:border-box;
}

.cooperation__logos li img {
  width: auto;
  height: 50px;
}

.technical_cooperation__container {
  padding: 10px 0px 10px 0px;
  margin: 0% 7% 0% 7%;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  background-position: center;
  background: rgba(0,0,0,0.4);
}

.technical_cooperation__logos {
  display: flex;
  justify-content: center;
  align-content: space-around;
  flex-wrap: wrap;
}

.technical_cooperation__logos li {
  list-style: none;
  padding:  unset;
}

.technical_cooperation__logos li img {
  width: auto;
  height: 90px;
}

.livestreaming_cooperation__container {
  padding: 10px 0px 10px 0px;
  margin: 0% 7% 0% 7%;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  background-position: center;
  background: rgba(0,0,0,0.4);
}

.livestreaming_cooperation__container h2 {
  font-stretch: expanded;
}

.livestreaming_cooperation__logos {
  display: flex;
  flex-wrap: wrap;
  place-content: space-evenly;
  box-sizing: border-box;
}

.livestreaming_cooperation__logos li {
  list-style: none;
  padding:0 5px;
  box-sizing:content-box;
  padding: 10px 10px 10px 10px;
}

.livestreaming_cooperation__logos li img {
  width: auto;
  height: 50px;
}