@font-face {
  font-family: 'm-plus-rounded-1c';
  src: url('/um/library/fonts/M_PLUS_Rounded_1c/MPLUSRounded1c-Medium.ttf') format("truetype");
  font-weight: 400;
  font-style: normal;
}
body {
  position: relative;
  z-index: 0;
  background: none;
}
body::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(../img/bg_main.png);
  background-position: center top;
  background-attachment: fixed;
  opacity: 0.5;
  z-index: -1;
}
@media all and (min-width: 768px) {
body::before {background-size: auto;}
}
@media all and (max-width: 767px) {
body::before {
	background-size:60%;}
}

h2 {
  font-weight: 400
}
@media all and (max-width: 768px) {
  h2 {
    font-weight: 600
  }
}
h3 {
  border-left: 3px solid #ff4b78;
  color: #656565;
  font-family: "m-plus-rounded-1c", 'Noto Sans JP', 'Noto Sans', sans-serif;
  font-weight: 400
}
#container div, #container span, #container p {
  color: #656565;
}
.btn a {
  border: 2px solid rgba(255, 75, 120, 1);
}
.btn a span {
  color: rgba(255, 75, 120, 1);
}
.btn a::after {
  filter: invert(35%) sepia(85%) saturate(4800%) hue-rotate(330deg) brightness(95%) contrast(105%);
}
.unit {
  border-radius: 0px;
}
.unit h2 {
  font-family: "m-plus-rounded-1c", 'Noto Sans JP', 'Noto Sans', sans-serif;
}
.info_sub .sub_txt {
  padding: 5.4rem;
  background-color: #fff;
  border-radius: 30px;
}
@media all and (max-width: 768px) {
  .info_sub .sub_txt {
    padding: 2.4rem;
    border-radius: 15px;
  }
}
/*#program*/
#program_nav .ind_mn-p span::after {
  border-top: 2px solid #ff4b78;
  border-right: 2px solid #ff4b78;
}
#program_nav li span {
  color: #656565;
}
/*#about*/
#about {
  background-color: rgba(255, 215, 225, 1);
}
#about h2 {
  color: #656565;
}
#about #program_info-set {
  background-color: rgba(255, 255, 255, 1);
  border-radius: 30px;
  color: rgb(59, 63, 74);
  padding: 2.5em 2em;
}
@media all and (max-width: 768px) {
  #about #program_info-set {
    padding: 1.5em 2em;
  }
}
#about .info_sub {
  background-color: rgba(255, 255, 255, 1);
  border-radius: 15px;
  padding: 1.5em;
  background-image: url(../img/bg_characte2r.png);
  background-size: cover;
  background-position: center center;
  background-attachment: fixed;
  margin: 1rem 0;
}
@media (min-width: 992px) {
  #about .info_sub {
    padding: 2.5em;
    border-radius: 30px;
  }
}
#about .photo {
  margin: 0 auto
}
/*#stream*/
#stream h2 {
  color: #656565;
}
/*#relation*/
#relation {
  background-color: rgba(255, 75, 120, 1);
}
#relation .info_sub {
  border-radius: 30px;
}
#relation .info_txt {
  color: #656565;
}
/*#official_sns*/
#official_sns {
  background-color: rgba(255, 75, 120, 1);
}
#official_sns h2 {
  color: rgba(255, 255, 255, 1);
}
#official_sns ul {
  border-radius: 30px;
  background-color: rgba(255, 255, 255, 1);
}
#official_sns #sns_caution {
  color: rgba(255, 255, 255, 1);
}
@media all and (max-width: 768px) {
  #about #program_info-set, #character .info_sub, #relation .info_sub, #official_sns ul {
    border-radius: 15px;
  }
}

#share_txt, #cr { color: #fff!important;}
