@charset "UTF-8";
/*
 各ページ.css（ファイル名変更可）
 本サイト各ページ用CSS
*/


#chart.second-page .drama-box-body {
  padding: 15px;
  margin: 20px auto 0;
  display: none;
}

#chart.second-page .drama-box-body.first-open{
  display: block;
}

#chart .d-box-title {
  max-width: 297px;
  width: 100%;
  height: 55px;
  background-image: url(../images/chart/title_chart.png);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  font-size: 0;
  margin: 0 auto 10px;
}

.d-box-title__memo {
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  margin: 0 auto 35px;
}

.d-box-title__memo span{
  display: inline-block;
}

.chart-area {
  width: 100%;
  height: 100%;
  background-image: url(../images/chart/pattern-chart.png);
  background-position: center;
  background-repeat: repeat;
  position: relative;
  padding: 30px 10px;
}

.chart-area .drama-box-border-up {
  width: calc(100% + 20px);
  top: -10px;
  left: -10px;
}

.chart-area .drama-box-border-up::before {
  left: 5px;
  top: 5px;
}

.chart-area .drama-box-border-up::after {
  right: 5px;
  top: 5px;
}

.chart-area .drama-box-border-down {
  width: calc(100% + 20px);
  bottom: -10px;
  left: -10px;
}

.chart-area .drama-box-border-down::before {
  left: 5px;
  bottom: 5px;
}

.chart-area .drama-box-border-down::after {
  right: 5px;
  bottom: 5px;
}

.chart-area .drama-box-border-left {
  height: calc(100% + 20px);
  top: -10px;
  left: -10px;
}

.chart-area .drama-box-border-left::before {
  left: 10px;
  top: 10px;
}

.chart-area .drama-box-border-left::after {
  left: 10px;
  bottom: 10px;
}

.chart-area .drama-box-border-right {
  height: calc(100% + 20px);
  top: -10px;
  right: -10px;
}

.chart-area .drama-box-border-right::before {
  right: 10px;
  top: 10px;
}

.chart-area .drama-box-border-right::after {
  right: 10px;
  bottom: 10px;
}


.chart-img {
  padding: 84.14% 0;
  background: url(../images/chart/chart.png) no-repeat center center;
  background-size: contain;
}

.chart-map{
  max-width: 910px;
  width: 100%;
  margin: 0 auto;
  background-image: url(../images/chart/chart.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  padding-top: 161.32%;
  position: relative;
}

#sp-map.chart-map{
  background-image: url(../images/chart/chart_special.png);
  padding-top: 195.605%;
}

.chart-map-click{
  position: absolute;
  cursor: pointer;
}

.is-reg .chart-map-click.small{
  width: 12.3%;
  padding-top: 16.5%;
}
.is-reg .chart-map-click.medium{
  width: 15.1%;
  padding-top: 20%;
}
.is-reg .chart-map-click.large{
  width: 16.5%;
  padding-top: 22%;
}
.is-reg .chart-map-click.ex-large{
  width: 16.5%;
  padding-top: 21.7%;
}
.is-reg .chart-map-click#kyoko{
  top: 27%;
  left: 3.1%;
}
.is-reg .chart-map-click#ito{
  top: 24%;
  left: 28.5%;
}
.is-reg .chart-map-click#mitsuhashi{
  top: 24%;
  right: 28.2%;
}
.is-reg .chart-map-click#riko{
  top: 27%;
  right: 2.5%;
}
.is-reg .chart-map-click#imai{
  top: 54%;
  left: 2%;
}
.is-reg .chart-map-click#tanigawa{
  top: 77.4%;
  left: 2%;
}
.is-reg .chart-map-click#shiori{
  top: 55.9%;
  left: 5.7%;
}
.is-reg .chart-map-click#nami{
  top: 73.7%;
  left: 5.7%;
}
.is-reg .chart-map-click#ichiro{
  top: 0;
  left: 37.5%;
}
.is-reg .chart-map-click#manami{
  top: 0;
  right: 28.8%;
}
.is-reg .chart-map-click#tetsuo{
  top: 4.5%;
  right: 2.9%;
}
.is-reg .chart-map-click#mukunoki{
  top: 53.6%;
  right: 27.5%;
}
.is-reg .chart-map-click#sakamoto{
  top: 86%;
  right: 32.2%;
}
.is-reg .chart-map-click#sorimachi{
  top: 86%;
  right: 2.1%;
}
.is-reg .chart-map-click#mizutani{
  top: 70.5%;
  right: 32.2%;
}
.is-reg .chart-map-click#yamaguchi{
  top: 70.5%;
  right: 2.1%;
}
.is-reg .chart-map-click#sagawa {
  top: 53.8%;
  right: 2.8%;
}
.is-reg .chart-map-click#akemi {
  top: 11.5%;
  left: 5.3%;
}
.is-reg .chart-map-click#katagiri {
  top: 61%;
  left: 29.5%;
}
.is-reg .chart-map-click#sagara {
  top: 80%;
  left: 29.5%;
}

.is-sp .chart-map-click.small{
  width: 12.2%;
  padding-top: 14.3%;
}
.is-sp .chart-map-click.medium{
  width: 14.3%;
  padding-top: 17.5%;
}
.is-sp .chart-map-click.large{
  width: 16.6%;
  padding-top: 21%;
}
.is-sp .chart-map-click.ex-large{
  width: 17.6%;
  padding-top: 21.9%;
}
.is-sp .chart-map-click#kyoko{
  top: 22%;
  left: 1.4%;
}
.is-sp .chart-map-click#ito{
  top: 20.3%;
  left: 27%;
}
.is-sp .chart-map-click#mitsuhashi{
  top: 20.3%;
  right: 28.2%;
}
.is-sp .chart-map-click#riko{
  top: 22%;
  right: 2.5%;
}
.is-sp .chart-map-click#imai{
  top: 45.3%;
  left: 36.5%;
}
.is-sp .chart-map-click#tanigawa{
  top: 65.9%;
  left: 36.5%;
}
.is-sp .chart-map-click#shiori{
  top: 55.9%;
  left: 5.7%;
}
.is-sp .chart-map-click#nami{
  top: 73.7%;
  left: 5.7%;
}
.is-sp .chart-map-click#ichiro{
  top: 0;
  left: 35%;
}
.is-sp .chart-map-click#manami{
  top: 0;
  right: 29.8%;
}
.is-sp .chart-map-click#tetsuo{
  top: 4.3%;
  right: 3.5%;
}
.is-sp .chart-map-click#mukunoki{
  top: 45.6%;
  right: 23.5%;
}
.is-sp .chart-map-click#master{
  top: 89.5%;
  right: 29%;
}
.is-sp .chart-map-click#monouri{
  top: 89.5%;
  left: 34.5%;
}
.is-sp .chart-map-click#sakamoto{
  top: 76.5%;
  right: 24.5%;
}
.is-sp .chart-map-click#sorimachi{
  top: 76.5%;
  right: 4.5%;
}
.is-sp .chart-map-click#mizutani{
  top: 60.5%;
  right: 24.5%;
}
.is-sp .chart-map-click#yamaguchi{
  top: 60.5%;
  right: 4.5%;
}
.is-sp .chart-map-click#sagawa {
  top: 46.5%;
  right: 4.5%;
}
.is-sp .chart-map-click#akemi {
  top: 8.7%;
  left: 3.6%;
}


.chart-popup-modal{
  display: none;
}

.chart-popup-area{
  display: flex;
  height: 100%;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 50;
  overflow: auto;
  padding: 30px 20px;
  background: rgba(8, 6, 6, 0.5);
}

.chart-popup-bg {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 10;
}
.chart-popup-photo {
  position: relative;
  max-width: 490px;
  width: 100%;
  margin: auto;
  display: block;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  z-index: 100;
}

.is-imai,
.is-ito,
.is-katagiri,
.is-mitsuhashi,
.is-mukunoki,
.is-tanigawa,
.is-tetsuo{
  max-height: 680px;
  height: 120vw;
}

.is-akemi,
.is-ichiro,
.is-kyoko,
.is-manami,
.is-riko,
.is-sagara,
.is-tetsuo,
.is-yamaguchi{
  max-height: 650px;
  height: 116vw;
}

.is-mizutani,
.is-sagawa,
.is-sakamoto,
.is-sorimachi{
  max-height: 620px;
  height: 111vw;
}

.is-shiori,
.is-nami{
  max-height: 585px;
  height: 109vw;
}
.is-monouri,
.is-master{
  max-height: 615px;
  height: 114vw;
}


.chart-popup-link a{
  display: block;
  max-width: 326px;
  width: 70%;
  padding-top: 12.245%;
  margin: auto;
  position: absolute;
  bottom: 4%;
  left: 0;
  right: 0;
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url(../images/chart/btn.png);
}

.chart-tab-area {
  margin-top: 15px;
  padding: 40px 10px;
}

.chart-tab-area .drama-box-border-up {
  height: 0;
}

.chart-tab-list {
  display: flex;
  flex-flow: wrap;
  justify-content: center;
  width: calc(100% - 30px);
  margin: 0 auto;
  padding: 0;
  position: relative;
}

#special .chart-tab-list{
  display: none;
}

.chart-tab-list::after {
  content: "";
  position: absolute;
  height: 5px;
  width: calc(100% + 30px);
  background: #000;
  bottom: -5px;
  left: -15px;
}

.chart-tab-item {
  max-width: 280px;
  width: 31%;
  padding-top: 80px;
  background-size: contain;
  background-position: center bottom;
  background-repeat: no-repeat;
  margin-left: 20px;
  cursor: pointer;
}

.chart-tab-item:hover{
  filter:brightness(150%);
}

.chart-tab-item:first-child {
  margin-left: 0;
}

.chart-tab-seiran {
  background-image: url(../images/chart/seiran.jpg);
}

.chart-tab-nanba {
  background-image: url(../images/chart/nanba.jpg);
}

.chart-tab-akehisa {
  background-image: url(../images/chart/akehisa.jpg);
}

.chart-class-title {
  background: center left no-repeat;
  background-size: contain;
  font-size: 0;
  padding-top: 28px;
  width: calc(100% - 30px);
  margin: 0 auto 20px;
}

.chart-class-title#class-m {
  background-image: url(../images/chart/other/nanba/kyouore_chart_class-m.png);
}

.chart-class-title#class-r {
  background-image: url(../images/chart/other/nanba/kyouore_chart_class-r.png);
  margin-top: 50px;
}

[class*="chart-list-box-"].is-open {
  display: block;
}

#special .chart-list-box-nanba{
  display: block;
  margin: 0 auto;
}

[class*="chart-list-box-"] {
  display: none;
  margin-top: 30px;
}

.chart-school-list {
  display: flex;
  flex-flow: wrap;
  margin: 0 auto;
  padding: 0;
  width: calc(100% - 30px);
}

.chart-school-item {
  width: 15%;
  margin-left: 2%;
  margin-top: 0;
  font-family: 'FOT-ロダン ProN M', 'RodinProN-M';
}

.chart-school-item:nth-child(6n+1) {
  margin-left: 0;
}

.chart-school-item:nth-child(n+7) {
  margin-top: 2%;
}

.chart-chara-photo {
  background: no-repeat center center;
  background-size: contain;
  padding-top: 94%;
}

.chart-chara-name {
  color: #fff;
  text-align: center;
}

.chart-list-box-nanba .chart-chara-name {
  background-color: #9f0410;
}

.chart-list-box-akehisa .chart-chara-name {
  background-color: #043b9f;
}

.chart-list-box-seiran .chart-chara-name {
  background-color: #1281b6;
}

.chart-chara-name::after{
  content: "役";
  font-size: 12px;
  margin-left: 2px;
}

.chart-cast-name {
  background-color: #000;
  color: #fff;
  text-align: center;
  font-size: 12px;
}

.chart-select__list{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.chart-select__item{
  max-width: 490px;
  width: calc(50% - 10px);
}

.chart-select__item:not(:first-child){
  margin-left: 20px;
}

.chart-select__item div{
  transition: all 0.3s;
  padding-top: 17%;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}

.chart-select__item div:hover{
  cursor: pointer;
  opacity: 0.7;
}

.is-regular.chart-select__item div{
  background-image: url(../images/chart/select_btn_regular.png);
}
.is-special.chart-select__item div{
  background-image: url(../images/chart/select_btn_special.png);
}

@media only screen and (max-width: 600px) {
  .chart-select__list{
    width: calc(100% - 40px);
    margin: 0 auto;
  }
  .chart-select__item{
    width: calc(50% - 5px);
  }
  .chart-select__item:not(:first-child){
    margin-left: 10px;
  }
}

/* ---------------------------------
 SP用
--------------------------------- */
@media only screen and (max-width: 600px) {
  #chart .d-box-title {
    width: auto;
    height: auto;
    padding-top: 8.5%;
  }

  #chart .d-box-title__memo {
    font-size: 16px;
    margin-bottom: 5%;
  }

  .chart-class-title {
    margin-top: 15px;
    width: calc(100% - 10px);
    padding-top: 5.495%;
  }

  .chart-tab-area {
    padding: 5.56% 2.78%;
  }

  .chart-tab-list {
    width: calc(100% - 10px);
  }

  .chart-tab-list::after {
    height: 3px;
    bottom: -3px;
    width: calc(100% + 10px);
    left: -5px;
  }

  .chart-school-list {
    width: calc(100% - 10px);
  }

  .chart-school-item {
    width: 32%;
  }

  .chart-school-item:nth-child(3n+1) {
    margin-left: 0;
  }

  .chart-school-item:nth-child(n+7) {
    margin-top: 0%;
  }

  .chart-school-item:nth-child(n+4) {
    margin-top: 2%;
  }

  .chart-chara-name{
    font-size: 12px;
  }
  .chart-chara-name::after {
    font-size: 10px;
  }
  .chart-cast-name{
    font-size: 10px;
  }
}

/* ---------------------------------
 ~tablet
--------------------------------- */
@media screen and (max-width: 992px) {
  .chart-tab-item {
    max-width: 280px;
    width: 32%;
    padding-top: 9.175%;
    margin-left: 2%;
  }
}

/* ---------------------------------
 tablet FONT用
--------------------------------- */
@media screen and (min-width : 601px) {}
