section#contents {
  padding: 0;
  border: none;
  border-radius: 0;
}

.chart div.wrap {
  padding: 0;
}

#chart .diagram {
  position: relative;
  margin: 0 auto;
  background-size: 100%;
  background-position: center;
}

#chart .diagram ul, #chart .diagram ul li {
  position: absolute;
  width: max-content;
  height: max-content;
}

#chart .diagram ul li a {
  display: block;
  text-decoration: none;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  background: linear-gradient(to top, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0) 100%);
}

#chart .diagram ul li a img {
  display: block;
  /* background-color: red; */
  /* opacity: 0.5; */
}

/*	main size */
#chart .diagram ul li.sz-ll a img {
  width: 233px;
  height: 337px;
}

#chart .diagram ul li.sz-l a img {
  width: 205px;
  height: 298px;
}

#chart .diagram ul li.sz-m a img {
  width: 180px;
  height: 262px;
}

#chart .diagram ul li.sz-s a img {
  width: 193px;
  height: 265px;
}

#chart .diagram ul li.sz-ss a img {
  width: 133px;
  height: 193px;
}

#chart ul li.m-haru {
  left: 289px;
  top: 142px;
}
#chart ul li.m-gaku {
  left: 619px;
  top: 142px;
}
#chart ul li.m-kirika {
  left: 177px;
  top: 620px;
}
#chart ul li.m-rinrin {
  left: 620px;
  top: 620px;
}
#chart ul li.m-mizuki {
  left: 289px;
  top: 73px;
}
#chart ul li.m-kedoin {
  left: 588px;
  top: 1207px;
}
#chart ul li.m-nagase {
  left: 61px;
  top: 1207px;
}
#chart ul li.m-kokuryu {
  left: 292px;
  top: 1207px;
}
#chart ul li.m-mizuki {
  left: 819px;
  top: 1207px;
}
#chart ul li.m-shizuku {
  left: 703px;
  top: 2547px;
}
#chart ul li.m-shingo {
  left: 308px;
  top: 1677px;
}
#chart ul li.m-kozue {
  left: 293px;
  top: 2152px;
}
#chart ul li.m-masahito {
  left: 196px;
  top: 2547px;
}
#chart ul li.m-taro {
  left: 61px;
  top: 2152px;
}
#chart ul li.m-hebijima {
  left: 46px;
  top: 1677px;
}
#chart ul li.m-jin {
  left: 593px;
  top: 1677px;
}
#chart ul li.m-himuro {
  left: 819px;
  top: 1677px;
}
#chart ul li.m-akari {
  left: 593px;
  top: 2152px;
}
#chart ul li.m-kunugi {
  left: 819px;
  top: 2152px;
}

@media all and (min-width: 768px) {
  #chart .diagram {
    background-repeat: no-repeat;
    width: 1080px;
    height: 2865px;
  }

  div.contents {
    width: 1080px;
  }
}

@media all and (max-width: 767px) {

  /*chart*/
  #chart .diagram {
    margin: 0px auto;
    overflow: hidden;
    width: 100%;
    height: 0;
    background-size: cover;
  }

  #chart .diagram {
    padding-top: calc((2865 / 1080)*100%);
    background-size: 100%;
    background-repeat: no-repeat;
  }

  #chart .diagram ul {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
  }
}

.chart div.wrap {
  box-sizing: border-box;
  /* background-color: #fff; */
}

.chart_menu {
  background-color: #fff;
  box-sizing: border-box;
}

.ch_switch {
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}

.ch_switch a {
  position: absolute;
  overflow: hidden;
  white-space: nowrap;
  text-indent: 110%;
}

@media all and (min-width: 768px) {
  .chart div#chart {
    /* padding: 0 0 22px; */
    width: 1080px;
  }

  .chart_menu {
    padding: 22px 0 0;
    width: 1080px;
    margin: 0 auto;
  }

  .ch_switch {
    width: 1080px;
    height: 130px;
    margin: 30px auto 0;
  }

  .ch_switch a {
    width: 233px;
    height: 56px;
    right: 0;
    bottom: 17px;
  }
}

@media all and (max-width: 767px) {
  .chart div.wrap {
    /* padding: 0 2% 2%; */
  }

  .chart_menu {
    padding: 2% 2% 0;
    width: auto;
    margin: 0 auto;
  }
}
