f@charset "utf-8";
h1, h2, h3, h4, h5, h6, address {
  font-weight: normal;
  font-style: normal;
  margin-bottom: 0px;
  font-size: 12px;
}
body {
  animation: fadeIn 1s ease 0s 1 normal;
  -webkit-animation: fadeIn 1s ease 0s 1 normal;
}
@keyframes fadeIn {
  0% {
  opacity: 0
  }
100% {
  opacity: 1
  }
}
@-webkit-keyframes fadein {
  0% {
  opacity: 0
  }
100% {
  opacity: 1
  }
}
.minc{
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
}
body{
  font-size: 100%;
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight : 400;
  font-style: normal;
  padding-top: 0px;
  padding-left: 0px;
  padding-right: 0px;
  padding-bottom: 0px;
  margin-top: 0px;
  margin-left: 0px;
  margin-right: 0px;
  margin-bottom: 0px;
  border-width: 0px 0px 0px 0px;
  min-width: 1024px;
  color: black;
  background-color: white;
  line-height: 2;
  background-repeat: repeat;
}
.ebg{
  font-family: "EB Garamond", serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}
@media print {
  body{
  display: none;
}
}
ul{
  margin: 0;
  padding: 0;
}
img {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-touch-callout: none;
  -moz-user-select: none;
  touch-callout: none;
  user-select: none;
}
td{
  font-size: 100%;
  vertical-align: top;
  text-align: left;
  border: none;
}
a{
  color: #ab191f;
  text-decoration: none;
  font-weight: bold;
}
a:link{
  color: #ab191f;
  text-decoration: none;
  font-weight: bold;
}
a:visited{
  color: #ab191f;
  text-decoration: none;
  font-weight: bold;
}
a:hover{
  color: #ab191f;
  text-decoration: none;
  font-weight: bold;
}
a:active{
  color: #ab191f;
  text-decoration: none;
  font-weight: bold;
}
.ups a{
  transition: 0.3s;
! /* 0.3?b??g???????? */
}
.ups a:hover{
  transform: scale(1.1);
/* 1.1?{
  ??g?? */
}
.bigger{
  font-size: 125%;
}
.bigest{
  font-size: 150%;
  line-height: 1em;
}
.bigest2{
  font-size: 200%;
  line-height: 1em;
}
.introcatch1{
  padding-left: 40px;
  border-left-style: solid;
  boder-left-color: #ad1f25;
  border-left-width: 3px;
  font-size: 300%;
  border-left-color: #cd2922;
  text-align: left;
  line-height: 1em;
  padding-bottom: 24px;
  letter-spacing: -2px;
}
.smaller{
  font-size: 90%;
}
.smaller2{
  font-size: 90%;
  line-height: 1.5em;
}
.futo{
  font-weight: bold;
}
.futo500{
  font-weight : 500;
}
.dan1{
  padding-left: 1em;
  text-indent: -1em;
}
.dan2{
  padding-left: 2em;
  text-indent: -2em;
}
.target{
  width: 100%;
  height: 0px;
}
.div_contents{
  vertical-align: top;
  text-align: left;
  font-size: 16px;
  max-width: 1200px;
}
.sen2{
  height: 1px;
  width: 100%;
  border-top-width: 1px;
  border-left-width: 0px;
  border-right-width: 0px;
  border-top-style: solid;
  border-top-color: :#cd2922;
  border-bottom-style: none;
  border-top-color: #cd2922;
}
.sen{
  margin-bottom: 19px;
  height: 1px;
  width: 100%;
  border-top-width: 1px;
  border-top-style : solid;
  border-left-width: 0px;
  border-right-width: 0px;
  border-top-color : #cccccc;
}
.sp5per{
  width: 5%;
}
.topmar10{
  margin-top: 10px;
}
.topmar20{
  margin-top: 20px;
}
.topmar40{
  margin-top: 40px;
}
.topmar80{
  margin-top: 80px;
}
.topmar60{
  margin-top: 60px;
}
.topmar120{
  margin-top: 120px;
}
.topmar150{
  margin-top: 150px;
}
.topmar180{
  margin-top: 180px;
}
.img100per{
  width: 100%;
}
/*
img {
  transition: opacity 0.3s ease;
}
img:hover {
  opacity: 0.7;
}
*/
.sns{
  height: 23px;
}
.footer{
  font-size: 80%;
  padding-top: 40px;
  padding-bottom : 40px;
  color : #cccccc;
  background-repeat: repeat;
  background-color : #111111;
}
.footer2{
  font-size : 90%;
  padding-top : 40px;
  padding-bottom : 40px;
  color : #cccccc;
  background-repeat: repeat;
  background-color : #000000;
}
.titles{
  font-size: 400%;
  letter-spacing: .5px;
  text-align: left;
  background-repeat: no-repeat;
  background-position: center center;
  line-height: 1em;
  width: 100%;
}
.titles_contents{
  font-size: 400%;
  letter-spacing: 0.5px;
  line-height: 1em;
  width: 100%;
  color: white;
  text-align: left;
  max-width: 1200px;
}
.bottom150{
  padding-bottom: 150px;
}
.bottom180{
  padding-bottom: 180px;
}
.bottom120{
  padding-bottom: 120px;
}
.bottom80{
  padding-bottom: 80px;
}
.bottom180{
  padding-bottom: 180px;
}
.medatsu1{
  padding-top: 40px;
  padding-left: 4%;
  padding-right: 4%;
  padding-bottom: 40px;
  border-width: 1px;
  border-style: solid;
  border-color: #cd2922;
}
.medatsu2{
  padding-top: 40px;
  padding-left: 4%;
  padding-right: 4%;
  padding-bottom: 40px;
  border-top-style: none;
  border-right-style: none;
  background-color: #f3f3f3;
}
.img80per{
  width: 80%;
}
.midashi1{
  padding-left: 5%;
  vertical-align: middle;
  text-align: left;
  border-left-width: 1px;
  border-left-style: solid;
  border-left-color: #cd2922;
}
.midashi2{
  font-size: 120%;
  padding-top: 10px;
  padding-left: 20px;
  padding-bottom: 10px;
  vertical-align: middle;
  text-align: left;
  background-image: linear-gradient(to right bottom, #cccccc, rgba(230, 225, 225, 0));
  font-weight: bold;
}
.btn, a.btn, button.btn{
  position: relative;
  display: inline-block;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  width: 300px;
  font-size: 16px;
}
a.btn-flat{
  overflow: hidden;
  padding: 1em;
  color: white;
  background: none 0% 0% / auto auto repeat scroll padding-box border-box #ea5513;
}
a.btn-flat span{
  position: relative;
}
a.btn-flat::before{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
  -webkit-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  -webkit-transform: translateX(-96%);
  transform: translateX(-96%);
  background: linear-gradient(#ff0000, #ae0000) 0% 0% / auto auto repeat scroll padding-box border-box #ff0000;
}
a.btn-flat:hover:before {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);
}
.text_red{
  color: #cd2922;
}
.text_orange{
  color: #d96c00;
}
.text_enji{
  color: #9d0000;
}
.line_gray{
  padding-left: 10px;
  margin-left: 15px;
  border-left-width: 4px;
  border-left-style: solid;
  border-left-color: #9fb099;
}
.table100{
  width: 100%;
}
.table40{
  width: 40%;
}
.mark1{
  font-weight: bold;
  color: white;
  background-color: red;
}
.grade1{
  background-image: linear-gradient(rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.1));
}
.tume{
  letter-spacing: -2px;
}
.staff1{
  padding-top: 10px;
  padding-bottom: 10px;
  width: 20%;
}
.td475{
  width: 47.5%;
}
.staff9{
  text-align: center;
  padding-top: 10px;
  padding-bottom: 10px;
  width: 10%;
}
.staff2{
  padding-top: 10px;
  padding-bottom: 10px;
  width: 70%;
}
.under1{
  padding-bottom: 2px;
  border-bottom-width: 1px;
  border-bottom-style: solid;
}
.text_right{
  text-align: right;
}
.backblack{
  color: white;
  background-color: black;
}
.archivebnr{
  width: 30%;
}
.sp13per{
  width: 13.33%;
}
.backwhite{
  color: black;
  background-color: white;
  padding-top: 40px;
  padding-left: 40px;
  padding-right: 40px;
  padding-bottom: 40px;
}
.backgray{
  color: black;
  background-color: #EBEBEB;
  padding-top: 40px;
  padding-left: 40px;
  padding-right: 40px;
  padding-bottom: 40px;
}
.back1{
  background-color: black;
  color: white;
  position: relative;
  overflow: hidden;
}
.back2{
  background-color: black;
  color: white;
  position: relative;
  overflow: hidden;
}
.back1::before,
.back2::before {
  content: '';
  position: absolute;
  inset: 0;
  background-repeat: no-repeat;
  background-position: right center;
  background-size: cover;
  transition: transform 0.6s ease, filter 0.6s ease;
  z-index: 0;
}
.back1::before {
  background-image: url(../img_top/back1.jpg);
}
.back2::before {
  background-image: url(../img_top/back2.jpg);
}
.section-link,
.section-link:link,
.section-link:visited,
.section-link:hover,
.section-link:active {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 520px;
  color: white !important;
  text-decoration: none !important;
  font-weight: inherit !important;
}
.section-link:hover::before {
  transform: scale(1.05);
  filter: brightness(0.75);
}
.section-link .div_contents {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 1200px;
  margin-top: 0 !important;
  padding-top: 80px;
  padding-bottom: 80px !important;
}
.fas{
  color: firebrick;
  font-size: 125%;
}
.top_titles_traning{
  background-image : url(../img_common/titles_training.jpg);
  background-repeat: no-repeat;
  background-position : center bottom;
  background-position-top: 150px;
  padding-top : 160px;
  padding-bottom : 90px;
  background-color : black;
}
.top_titles_show{
  background-image : url(../img_common/titles_show.jpg);
  background-repeat: no-repeat;
  background-position : center bottom;
  background-position-top: 150px;
  padding-top : 160px;
  padding-bottom : 90px;
  background-color : black;
}
/*
.tre_list{
  padding-top: 30px;
  padding-left: 7%;
  padding-right: 7%;
  padding-bottom: 30px;
  border-width: 1px 1px 1px 15px;
  border-style: solid;
  border-color: #f3f3f3 #f3f3f3 #f3f3f3 #cd2922;
  background-color: white;
  box-shadow: 5px 5px 10px #e5e5e5;
}
*/
.tre_list{
  padding-top: 30px;
  padding-left: 7%;
  padding-right: 7%;
  padding-bottom: 30px;
  border-width: 1px 1px 1px 15px;
  border-style: solid;
  border-color: #f3f3f3 #f3f3f3 #f3f3f3 transparent;
  background-color: white;
  box-shadow: 5px 5px 10px #e5e5e5;
  position: relative;
}
.tre_list:before {
  content: "";
  position: absolute;
  top: 0; 
  left: 0; 
  bottom: 0;
  width: 15px;
  height: 100%;
  background-color: #cd2922;
  z-index: 2;
}
a.linkred, a:visited.linkred, a:hover.linkred, a:active.linkred{
  color : #ec0000;
  text-decoration: none;
}
a.linkwhite, a:visited.linkwhite{
  color: #fff !important;
  text-decoration: none;
  font-weight : 300;
}
a:hover.linkwhite, a:active.linkwhite{
  color: #ab191f !important;
  text-decoration: none;
  font-weight : 300;
}
.text_gray1{
  color: #f1f1f1;
}
.text_gray2{
  color: #505050;
}
.photo_t{
  font-size: 80%;
  text-align: right;
  padding-top: 5px;
}
.img100pert{
  height: 180px;
}
.btnmail{
  color: white;
  background-color: #ab191f;
  padding-top: 15px;
  padding-left: 100px;
  padding-right: 100px;
  padding-bottom: 15px;
  border-top-left-radius: 25px 25px;
  border-top-right-radius: 25px 25px;
  border-bottom-right-radius: 25px 25px;
  border-bottom-left-radius: 25px 25px;
  border-width: 0px;
  border-style: none;
  font-size: 115%;
  cursor: pointer;
  transition: background-color 0.3s ease, transform 0.3s ease;
}
.btnmail:hover {
  background-color: #c9202a;
  transform: scale(1.12);
}
.linkred:a{
  color: #ab191f;
  text-decoration: none;
}
.linkred:hover{
  color: #ab191f;
}
.backninja{
  background-image : url(../img_show/bg_show001.jpg);
  background-repeat: no-repeat;
  background-position: center bottom;
  min-height : 1400px;
  background-color : black;
}
.backtop{
  font-size : 100%;
  vertical-align: middle;
  text-align: right;
  letter-spacing: 0.15em;
  font-weight : 300;
}
.footer_logo{
  width : 280px;
}
.foottext{
  font-weight : 200;
  font-size : 80%;
}

/* Actor Detail Page */
.actor-detail {
  display: flex;
  gap: 60px;
  align-items: flex-start;
  color: white;
}
.actor-detail-photos {
  width: 455px;
  padding-left: 90px;
  flex-shrink: 0;
  box-sizing: border-box;
}
.actor-detail-photos img {
  display: block;
  background-color: #222;
}
.actor-detail-info {
  flex: 1;
  padding-top: 4px;
}
.actor-detail-badge {
  display: block;
  width: 150px;
  text-align: center;
  margin-left: auto;
  margin-bottom: 12px;
  background-color: #ab191f;
  color: white;
  font-family: "EB Garamond", serif;
  font-size: 100%;
  letter-spacing: 0.1em;
  padding: 4px 14px;
  line-height: 1.25;
}
.actor-detail-name-ja {
  font-size: 260%;
  color: white;
  line-height: 1.2;
}
.actor-detail-name-en {
  font-size: 105%;
  margin-top: 5px;
  padding-bottom: 8px;
  color: #ab191f;
  border-bottom: 1px solid #ab191f;
}
.actor-stats-table {
  border-collapse: collapse;
  margin-top: 30px;
  width: 100%;
}
.actor-stats-table td {
  padding: 3px 0;
  color: white;
  vertical-align: middle;
  line-height: 1.5;
}
.actor-stats-label {
  color: #888888;
  width: 185px;
}
.actor-detail-career {
  margin-top: 40px;
}
.actor-detail-career-title {
  border-left: 4px solid #ab191f;
  padding-left: 12px;
  color: #bababa;
  font-size: 160%;
  line-height: 1.4;
  margin-bottom: 16px;
}
.actor-detail-career-body {
  margin-bottom: 6px;
  color: #fff;
  line-height: 1.5;
}
.actor-sub-photos {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
}
.actor-sub-photos > img {
  width: 350px;
  height: auto;
}
.actor-sub-photos > img:first-of-type {
  justify-self: end;
}

.top_titles_404 {
  background-image: url(../img_common/titles_404.jpg);
  background-repeat: no-repeat;
  background-position: center bottom;
  background-position-top: 150px;
  padding-top: 160px;
  padding-bottom: 120px;
  background-color: black;
}

/* View more hover color override */
a.news-viewmore-link:hover,
a.news-viewmore-link:hover span {
  color: #fff !important;
}

/* Title reveal animation */
.topcatch1 .title-reveal {
  display: inline-block;
  vertical-align: bottom;
  padding-bottom: 0.15em;
}
.title-reveal {
  overflow: hidden;
  padding-bottom: 0.25em;
  margin-top: -0.25em;
}
.title-reveal-elm {
  display: block;
  transform: translateY(120%);
  transition: transform 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.title-reveal-elm.is-act {
  transform: translateY(0);
}

/* Load fade-in animation */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(24px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.fade-in-up {
  animation: fadeInUp 0.8s ease-out 0.3s both;
}

/* Scroll animation */
.js-anim_elm {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 0.9s ease, transform 0.9s ease;
}
.js-anim_elm.is-act {
  opacity: 1;
  transform: translateY(0);
}

