section#contents {
  padding: 0;
}

.chart div.wrap {
  padding: 0;
}

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

#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-l a img {
  width: 174px;
  height: 255px;
}

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

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

#chart ul li.sawadakyoka {
  left: 245px;
  top: 389px;
}

#chart ul li.sawadarintaro {
  left: 492px;
  top: 389px;
}

#chart ul li.hinataakari {
  left: 757px;
  top: 389px;
}

#chart ul li.fuwahayate {
  left: 403px;
  top: 787px;
}

#chart ul li.higashimuraseita {
  left: 156px;
  top: 787px;
}

#chart ul li.vanessa {
  left: 49px;
  top: 91px;
}

#chart ul li.aoyamakenshin {
  left: 392px;
  top: 91px;
}

#chart ul li.asagisuzu {
  left: 784px;
  top: 91px;
}

#chart ul li.higashimuranijiro {
  left: 441px;
  top: 1116px;
}

#chart ul li.iwaimio {
  left: 613px;
  top: 1116px;
}

#chart ul li.kodamachihiro {
  left: 650px;
  top: 763px;
}

#chart ul li.mikako {
  left: 221px;
  top: 91px;
}

#chart ul li.oishiriho {
  left: 588px;
  top: 91px;
}

#chart ul li.sawadayoko {
  left: 49px;
  top: 389px;
}

#chart ul li.shibamitsuko {
  left: 48px;
  top: 1116px;
}
#chart ul li.takamizawaanna {
  left: 244px;
  top: 1116px;
}

@media all and (min-width: 768px) {
  #chart .diagram {
    background-repeat: no-repeat;
    height: 1381px;
    /* margin: 20px 140px; */
  }

  div.contents {
    width: 980px;
  }
}

@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((1381 / 980)*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.wrap {
    /* padding: 0 0 22px; */
    width: 980px;
  }

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

  .ch_switch {
    width: 980px;
    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;
  }
}
