@charset "UTF-8";
/* mainvisual
------------------------------------------------- */
.mainvisual {
  width: 100%;
  height: 43.75em; /*700px*/
  margin-top: 150px;
}
@media (max-width: 767px) {
  .mainvisual {
    margin-top: 42px;
  }
}

.mainvisual .minner {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  max-width: 1024px;
  margin: 0 auto;
}

.mainvisual h1 {
  width: 27.125em;
  height: auto;
  position: absolute;
  top: 8em;
  left: 19em;
  z-index: 2;
}

.mainvisual .swiper-container {
  width: 100%;
  height: 43.75em;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}

.mainvisual .swiper-container .swiper-pagination {
  bottom: 1em;
}

.mainvisual .swiper-container .swiper-pagination-bullet {
  width: 0.4375em;
  height: 0.4375em;
  background: #fff;
}

.mainvisual .swiper-container .swiper-pagination-bullet-active {
  color: #fff;
  background: #fff;
}

.mainvisual .swiper-container .swiper-slide {
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
}

.mainvisual .swiper-container .slide01 {
  background-image: url("../images/mainvisual1.jpg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.mainvisual .swiper-container .slide02 {
  background-image: url("../images/mainvisual2.jpg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.mainvisual .swiper-container .slide03 {
  background-image: url("../images/mainvisual3.jpg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

@media only screen and (max-width: 750px) {
  .mainvisual {
    width: 100%;
    height: 120vw;
  }
  .mainvisual h1 {
    width: 74vw;
    height: auto;
    position: absolute;
    top: 19vw;
    left: 13vw;
    z-index: 2;
  }
  .mainvisual .swiper-container {
    width: 100%;
    height: 120vw;
    padding-bottom: 3.3333333333vw; /* 25px */
    -webkit-box-sizing: content-box;
            box-sizing: content-box;
  }
  .mainvisual .swiper-container .swiper-pagination-bullet {
    width: 0.9333333333vw;
    height: 0.9333333333vw;
  }
  .mainvisual .swiper-container .slide01 {
    background-image: url("../images/mainvisual1_sp.jpg");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
  }
  .mainvisual .swiper-container .slide02 {
    background-image: url("../images/mainvisual2_sp.jpg");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
  }
  .mainvisual .swiper-container .slide03 {
    background-image: url("../images/mainvisual3_sp.jpg");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
  }
}
/* navi_pc
------------------------------------------------- */
.navi_pc {
  background-color: #27B9D2;
}

.navi_pc .navi_items_pc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.navi_pc .navi_items_pc li {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 25%;
  border-left: 1px solid #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1;
  font-weight: 500;
  background-image: url("../common/images/icon03_1.png");
  background-repeat: no-repeat;
  background-position: bottom 0.2em center;
  background-size: 0.56em auto;
  background-color: #27B9D2;
  padding: 0.7em 0 0.8em 0;
}

.navi_pc .navi_items_pc li:last-child {
  border-right: 1px solid #fff;
}

.navi_pc .navi_items_pc a {
  color: #fff;
}
@media (max-width: 767px) {
  .navi_pc {
    margin: 0 -2px;
  }
  .navi_pc .inner {
    padding: 0;
  }
  .navi_pc .navi_items_pc li {
    text-align: center;
    background-position: bottom 0.3em center;
  }
  .navi_pc .navi_items_pc a {
    font-size: clamp(11px, 1.1vw, 14px);
  }
}
.navi_pc .navi_items_pc li:hover {
  text-decoration: none;
  background-color: #2fc7e1;
  opacity: 0.8;
}
/* path
------------------------------------------------- */
#path ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 auto;
  line-height: 2.5;
  padding: 0.5em 0 5.4em 0;
}

#path ul li::after {
  content: "＞";
  padding: 0 0.5em;
}

#path ul li:last-child::after {
  content: "";
}

@media only screen and (max-width: 750px) {
  #path ul {
    font-size: 3.467vw;
    padding: 3.5vw 0 9vw 0;
  }
}
/* cont1
------------------------------------------------- */
.cont1 {
  background-image: url("../images/bg01.png");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
}

.cont1 h2 {
  width: 28.3125em;
  margin: 0 auto;
}

.cont1 .outline .box {
  background-image: url("../images/emb01.png");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: 41.375em auto;
}

.cont1 .outline p {
  text-align: center;
  line-height: 2;
  padding-top: 2em;
  margin-bottom: 3em;
}

.cont1 h3 {
  text-align: center;
  margin-bottom: 1em;
}

.cont1 dl {
  margin-left: 22.75em;
  line-height: 1.2;
  padding-bottom: 6.4375em;
}

.cont1 dt {
  float: left;
  clear: left;
  border: 1px solid #000;
  width: 3.6em;
  text-align: center;
  margin-right: 1em;
  margin-bottom: 0.5em;
}

.cont1 dd {
  margin-bottom: 0.75em;
}

.cont1 .pics {
  margin-bottom: 6.75em;
}

.cont1 .pics ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.cont1 .pics li {
  width: 15.375em;
  height: auto;
  margin-right: 1em;
}

.cont1 .pics li:last-child {
  margin-right: 0;
}

.cont1 .entry {
  width: 50em;
  padding-bottom: 8em;
}

@media only screen and (max-width: 750px) {
  .cont1 {
    background-image: url("../images/bg01_sp.png");
    background-repeat: no-repeat;
    background-position: top center;
    background-size: cover;
    margin-top: -13.33vw;
    padding-top: 13.33vw;
  }
  .cont1 h2 {
    width: 66.66vw;
    margin: 0 auto 3vw;
  }
  .cont1 .outline .box {
    background-image: url("../images/emb01_sp.png");
    background-repeat: no-repeat;
    background-position: top center;
    background-size: 92vw auto;
    padding: 2vw 0;
    margin-bottom: 4vw;
  }
  .cont1 .outline p {
    width: 100%;
    font-size: 3.73vw;
    text-align: left;
    line-height: 1.78;
    padding-top: 0;
    margin: 0 auto 6vw;
  }
  .cont1 h3 {
    text-align: center;
    margin-bottom: 1em;
    font-size: 4.8vw;
    line-height: 1.389;
  }
  .cont1 dl {
    margin-left: 16.53vw;
    line-height: 1.2;
    padding-bottom: 4vw;
  }
  .cont1 dt {
    font-size: 3.2vw;
    float: left;
    clear: left;
    border: 1px solid #000;
    width: 3.6em;
    text-align: center;
    margin-right: 1em;
    margin-bottom: 0.5em;
  }
  .cont1 dd {
    font-size: 4vw;
    margin-bottom: 2vw;
  }
  .cont1 .pics {
    padding: 0 4vw;
    margin-bottom: 8vw;
  }
  .cont1 .pics ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .cont1 .pics li {
    width: 28vw;
    height: auto;
    margin-right: 2vw;
    margin-bottom: 2vw;
  }
  .cont1 .pics li:nth-child(3) {
    margin-right: 0;
  }
  .cont1 .pics li:last-child {
    margin-right: 0;
  }
  .cont1 .entry {
    width: 95.333vw;
    padding-bottom: 10.267vw;
  }
}
/* cont2
------------------------------------------------- */
.cont2 h2 {
  background-image: url("../images/bg03.jpg");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
  color: #fff;
  height: 7.92em;
  text-align: center;
  padding-top: 1.76em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.cont2 h2 span {
  display: block;
}

.cont2 .prize_box {
  padding-top: 7.6875em;
  padding-bottom: 5em;
}

.cont2 .bg1 {
  background-image: url("../images/bg04.png");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
}

.cont2 .bg2 {
  background-image: url("../images/bg09.png");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
}

.cont2 .bg3 {
  background-image: url("../images/bg06.png");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
}

.cont2 .bg4 {
  background-image: url("../images/bg07.png");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
}

.cont2 .bg5 {
  background-image: url("../images/bg08.png");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
}

.cont2 .bg6 {
  background-image: url("../images/bg05.png");
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
}

.inner2 {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  max-width: 1024px;
  margin: 0 auto;
  padding: 0 3.125em;
}

.cont2 .prize_box .position {
  position: relative;
}

.cont2 .prize_box .position.right .img1 {
  margin-left: auto;
}

.cont2 .prize_box .position .position-right {
  position: absolute;
  top: 0;
  right: 0;
}

.cont2 .prize_box .position .position-left {
  position: absolute;
  top: 0;
  left: 0;
}

.cont2 .prize_box .flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.cont2 .prize_box .flex.reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.cont2 .prize_box .img1 {
  width: 39.625em;
  position: relative;
}

.cont2 .prize_box .img1.prize1::after {
  content: "";
  display: inline-block;
  width: 15em;
  height: 15em;
  background-image: url("../images/prize01.png");
  background-size: contain;
  position: absolute;
  right: -17.5em;
  top: -10em;
}

.cont2 .prize_box .img1.prize2::after {
  content: "";
  display: inline-block;
  width: 15em;
  height: 15em;
  background-image: url("../images/prize02.png");
  background-size: contain;
  position: absolute;
  left: -17.5em;
  top: -10em;
}

.cont2 .prize_box .img1.prize3::after {
  content: "";
  display: inline-block;
  width: 15em;
  height: 15em;
  background-image: url("../images/prize03.png");
  background-size: contain;
  position: absolute;
  right: -17.5em;
  top: -10em;
}

.cont2 .prize_box .img1.prize5::after {
  content: "";
  display: inline-block;
  width: 15em;
  height: 15em;
  background-image: url("../images/prize05.png");
  background-size: contain;
  position: absolute;
  right: -17.5em;
  top: -10em;
}

.cont2 .prize_box .img1.prize4::after {
  content: "";
  display: inline-block;
  width: 15em;
  height: 15em;
  background-image: url("../images/prize04.png");
  background-size: contain;
  position: absolute;
  left: -17.5em;
  top: -10em;
}

.cont2 .prize_box .team {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 21.875em;
  background-color: #fff;
  padding: 2.3125em 1em 2em 2.3125em;
  margin-top: 8.75em;
}

.cont2 .prize_box .team.pb30 {
  padding-bottom: 4em;
}

.cont2 .prize_box .team h3 {
  margin-bottom: 0.5em;
  font-weight: normal;
}

.cont2 .prize_box .team.color1 {
  border-bottom: 2px solid #CAAB3E;
}

.cont2 .prize_box .team.color2 {
  border-bottom: 2px solid #A5A5A5;
}

.cont2 .prize_box .team.color3 {
  border-bottom: 2px solid #00A73C;
}

.cont2 .prize_box .team.color4 {
  border-bottom: 2px solid #12B0C4;
}

.cont2 .prize_box .team.color5 {
  border-bottom: 2px solid #4374C8;
}

.cont2 .prize_box .team .team-name {
  height: 5.75em;
}

.cont2 .title dt {
  color: #fff;
  width: 4.428em;
  text-align: center;
  margin-bottom: 1em;
}

.cont2 .title dd {
  line-height: 1.333;
}

.cont2 .title.color1 dt {
  background-color: #CAAB3E;
}

.cont2 .title.color2 dt {
  background-color: #A5A5A5;
}

.cont2 .title.color3 dt {
  background-color: #00A73C;
}

.cont2 .title.color4 dt {
  background-color: #12B0C4;
}

.cont2 .title.color5 dt {
  background-color: #FF961E;
}

.cont2 .title.color6 dt {
  background-color: #4374C8;
}

.cont2 .prize_box .voice {
  width: 35em;
  margin-top: 2.3125em;
  margin-right: 2em;
}

.cont2 .prize_box .flex.reverse .voice {
  margin-right: 0;
  margin-left: 2em;
}

.cont2 .prize_box .voice h4 {
  padding-left: 0.5em;
  margin-bottom: 0.6em;
}

.cont2 .prize_box .voice h4.color1 {
  border-left: 5px solid #CAAB3E;
  color: #CAAB3E;
}

.cont2 .prize_box .voice h4.color2 {
  border-left: 5px solid #A5A5A5;
  color: #A5A5A5;
}

.cont2 .prize_box .voice h4.color3 {
  border-left: 5px solid #00A73C;
  color: #00A73C;
}

.cont2 .prize_box .voice h4.color4 {
  border-left: 5px solid #12B0C4;
  color: #12B0C4;
}

.cont2 .prize_box .voice h4.color5 {
  border-left: 5px solid #4374C8;
  color: #4374C8;
}

.cont2 .prize_box .voice p {
  line-height: 1.9;
}

.cont2 .prize_box .img2 {
  width: 21.75em;
  padding-top: 6.5em;
}

.cont2 .finalist {
  padding-bottom: 6em;
}

.cont2 .finalist .inner2 {
  position: relative;
}

.cont2 .finalist h3 {
  width: 26.5em;
  margin: 0 auto 2.5em;
  padding-top: 7.5em;
}

.cont2 .finalist .note {
  position: absolute;
  right: 3.125em;
  top: 9em;
}

.cont2 .finalist .flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.cont2 .finalist .finalist_box {
  background-image: url("../images/emb02.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 28em auto;
  width: 28em;
  height: 26.6em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 3em 1em 2em;
  text-align: center;
  position: relative;
  margin: 0;
}

.cont2 .finalist .finalist_box h4 {
  line-height: 1.3;
  font-weight: normal;
  margin-bottom: 0.2em;
}

.cont2 .finalist .finalist_box .team-name {
  margin-bottom: 0.4em;
}

.cont2 .finalist .finalist_box .team-name dt {
  display: inline-block;
}

.cont2 .finalist .finalist_box .team-name dd {
  display: inline-block;
}

.cont2 .finalist .finalist_box .title dt {
  margin: 0 auto 0.4em;
}

.cont2 .finalist .finalist_box .title dd {
  line-height: 1.33;
}

.cont2 .finalist .finalist_box .title dd.img1 {
  width: 15.96em;
  margin: 0 auto;
  position: absolute;
  bottom: 2.8em;
  left: 6.04em;
}

.cont2 .finalist .finalist_box .title dd.img2 {
  width: 12em;
  margin: 0 auto;
  position: absolute;
  bottom: 2.5em;
  left: 50%;
  margin-left: -6em;
}

.cont2 .finalist .finalist_box .title dd.txt1 {
  width: 32em;
  text-align: center;
  margin: 0 auto;
  position: absolute;
  bottom: -0.6em;
  left: 0;
}

@media only screen and (max-width: 750px) {
  .cont2 {
    margin-top: -13.33vw;
    padding-top: 13.33vw;
  }
  .cont2 h2 {
    background-image: url("../images/bg03_sp.jpg");
    background-repeat: no-repeat;
    background-position: top center;
    background-size: cover;
    height: 32vw;
    padding-top: 9.733vw;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    font-size: 3.733vw;
  }
  .cont2 h2 span {
    font-size: 6.133vw;
  }
  .cont2 .prize_box {
    padding-top: 4vw;
    padding-bottom: 6vw;
  }
  .inner2 {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    max-width: 750px;
    margin: 0 auto;
    padding: 0 4vw;
  }
  .cont2 .prize_box .position {
    position: static;
  }
  .cont2 .prize_box .position.right .img1 {
    margin-left: 0;
  }
  .cont2 .prize_box .position .position-right {
    position: static;
  }
  .cont2 .prize_box .position .position-left {
    position: static;
  }
  .cont2 .prize_box .flex {
    display: block;
  }
  .cont2 .prize_box .img1 {
    width: 100%;
    position: relative;
    margin: 0 auto;
  }
  .cont2 .prize_box .img1.prize1::after {
    content: "";
    display: inline-block;
    width: 24vw;
    height: 24vw;
    background-image: url("../images/prize01.png");
    background-size: contain;
    position: absolute;
    right: 3.8vw;
    top: 52vw;
  }
  .cont2 .prize_box .img1.prize2::after {
    content: "";
    display: inline-block;
    width: 24vw;
    height: 24vw;
    background-image: url("../images/prize02.png");
    background-size: contain;
    position: absolute;
    left: 62.33vw;
    top: 52vw;
  }
  .cont2 .prize_box .img1.prize3::after {
    content: "";
    display: inline-block;
    width: 24vw;
    height: 24vw;
    background-image: url("../images/prize03.png");
    background-size: contain;
    position: absolute;
    right: 3.8vw;
    top: 52vw;
  }
  .cont2 .prize_box .img1.prize5::after {
    content: "";
    display: inline-block;
    width: 24vw;
    height: 24vw;
    background-image: url("../images/prize05.png");
    background-size: contain;
    position: absolute;
    left: 62.33vw;
    top: 52vw;
  }
  .cont2 .prize_box .img1.prize4::after {
    content: "";
    display: inline-block;
    width: 24vw;
    height: 24vw;
    background-image: url("../images/prize04.png");
    background-size: contain;
    position: absolute;
    left: 62.33vw;
    top: 52vw;
  }
  .cont2 .prize_box .img1.prize3::after {
    content: "";
    display: inline-block;
    width: 24vw;
    height: 24vw;
    background-image: url("../images/prize03.png");
    background-size: contain;
    position: absolute;
    right: 3.8vw;
    top: 52vw;
  }
  .cont2 .prize_box .team {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    background-color: #fff;
    padding: 4.26vw 5vw 4.26vw 4.8vw;
    margin-top: 0;
  }
  .cont2 .prize_box .team.pb30 {
    padding-bottom: 4.26vw;
  }
  .cont2 .prize_box .team h3 {
    font-size: 5.333vw;
    margin-bottom: 0;
  }
  .cont2 .prize_box .team .team-name {
    margin-bottom: 3vw;
    height: auto;
  }
  .cont2 .prize_box .team .team-name dt {
    font-size: 3.467vw;
  }
  .cont2 .prize_box .team .team-name dd {
    font-size: 3.467vw;
  }
  .cont2 .prize_box .team .title dt {
    color: #fff;
    width: 14vw;
    font-size: 3.2vw;
    text-align: center;
    margin-bottom: 1vw;
  }
  .cont2 .prize_box .team .title dd {
    font-size: 3.733vw;
    line-height: 1.36;
  }
  .cont2 .prize_box .voice {
    width: 92vw;
    margin-top: 4vw;
    margin-right: 0;
  }
  .cont2 .prize_box .flex.reverse .voice {
    margin-right: 0;
    margin-left: 0;
  }
  .cont2 .prize_box .voice h4 {
    font-size: 4.8vw;
    padding-left: 2vw;
    margin-bottom: 2vw;
  }
  .cont2 .prize_box .voice p {
    line-height: 1.78;
    font-size: 3.733vw;
  }
  .cont2 .prize_box .img2 {
    width: 42.667vw;
    padding-top: 2vw;
    margin: 0 auto;
  }
  .cont2 .finalist {
    padding: 4vw 0;
  }
  .cont2 .finalist h3 {
    width: 80vw;
    margin: 0 auto;
    padding: 4.267vw 0;
  }
  .cont2 .finalist .note {
    position: relative;
    text-align: right;
    right: 0;
    top: 0;
  }
  .cont2 .finalist .flex {
    display: block;
  }
  .cont2 .finalist .finalist_box {
    background-image: url("../images/emb02_sp.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 94vw auto;
    width: 92vw;
    padding: 10vw 0;
    text-align: center;
  }
  .cont2 .finalist .finalist_box h4 {
    font-size: 5.067vw;
    line-height: 1.26;
  }
  .cont2 .finalist .finalist_box .team-name {
    margin-bottom: 2vw;
    font-size: 3.467vw;
  }
  .cont2 .finalist .finalist_box .title dt {
    margin: 0 auto 0.4em;
    font-size: 3.2vw;
  }
  .cont2 .finalist .finalist_box .title dd {
    font-size: 4vw;
    line-height: 1.4;
  }
  .cont2 .finalist .finalist_box .title dd.img1 {
    width: 69.92vw;
    position: absolute;
    bottom: 9.5vw;
    left: 11.04vw;
  }
  .cont2 .finalist .finalist_box .title dd.img2 {
    width: 45vw;
    position: absolute;
    bottom: 11vw;
    left: 50%;
    margin-left: -22.5vw;
  }
  .cont2 .finalist .finalist_box .title dd.txt1 {
    width: 100%;
    text-align: center;
    margin: 0 auto;
    position: absolute;
    bottom: -4vw;
    left: 0;
  }
}
/* cont3
------------------------------------------------- */
.cont3 {
  margin-bottom: 5.25em;
}

.cont3 h2 {
  margin-top: 6.167em;
  margin-bottom: 1.3em;
  text-align: center;
  color: #00A63C;
  border-top: 2px solid #00A63C;
  border-bottom: 2px solid #00A63C;
  background-color: #EFFFDB;
  padding: 0.28em 0;
  position: relative;
}

.cont3 h2::after {
  content: "";
  display: inline-block;
  width: 1.67em;
  height: 2.3em;
  background-image: url("../images/icon01.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top center;
  position: absolute;
  top: -3em;
  left: 11.5em;
}

.cont3 .point {
  line-height: 2;
  margin-bottom: 3.6em;
}

.cont3 .flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.cont3 .point_box {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 18.125em;
  border: 1px solid #00A63C;
  position: relative;
  padding: 5.2em 2em 2em 2em;
}

.cont3 .point_box.num1::before {
  content: "";
  display: inline-block;
  width: 4.1875em;
  height: 6.6875em;
  background-image: url("../images/num01.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top center;
  position: absolute;
  top: -3em;
  left: 6.8125em;
}

.cont3 .point_box.num2::before {
  content: "";
  display: inline-block;
  width: 4.1875em;
  height: 6.6875em;
  background-image: url("../images/num02.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top center;
  position: absolute;
  top: -3em;
  left: 6.8125em;
}

.cont3 .point_box.num3::before {
  content: "";
  display: inline-block;
  width: 4.1875em;
  height: 6.6875em;
  background-image: url("../images/num03.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top center;
  position: absolute;
  top: -3em;
  left: 6.8125em;
}

.cont3 .point_box p {
  line-height: 2;
}

@media only screen and (max-width: 750px) {
  .cont3 {
    margin-top: -13.33vw;
    padding-top: 13.33vw;
    margin-bottom: 6.667vw;
  }
  .cont3 h2 {
    margin-top: 28.267vw;
    margin-bottom: 5.333vw;
    border-top: 4px solid #00A63C;
    border-bottom: 4px solid #00A63C;
    background-color: #EFFFDB;
    padding: 3vw 0;
    position: relative;
    font-size: 5.333vw;
  }
  .cont3 h2::after {
    content: "";
    display: inline-block;
    width: 13.33vw;
    height: 18.267vw;
    background-image: url("../images/icon01.png");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: top center;
    position: absolute;
    top: -22vw;
    left: 38.66vw;
  }
  .cont3 .point {
    line-height: 1.78;
    margin-bottom: 10.67vw;
    font-size: 3.733vw;
  }
  .cont3 .flex {
    display: block;
  }
  .cont3 .point_box {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    border: 1px solid #00A63C;
    position: relative;
    padding: 10vw 5.5vw 5vw 5.5vw;
    margin-bottom: 9.333vw;
  }
  .cont3 .point_box.num1::before {
    content: "";
    display: inline-block;
    width: 9.733vw;
    height: 15.467vw;
    background-image: url("../images/num01.png");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: top center;
    position: absolute;
    top: -6.667vw;
    left: 40.8vw;
  }
  .cont3 .point_box.num2::before {
    content: "";
    display: inline-block;
    width: 9.733vw;
    height: 15.467vw;
    background-image: url("../images/num02.png");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: top center;
    position: absolute;
    top: -6.667vw;
    left: 40.8vw;
  }
  .cont3 .point_box.num3::before {
    content: "";
    display: inline-block;
    width: 9.733vw;
    height: 15.467vw;
    background-image: url("../images/num03.png");
    background-repeat: no-repeat;
    background-size: contain;
    background-position: top center;
    position: absolute;
    top: -6.667vw;
    left: 40.8vw;
  }
  .cont3 .point_box p {
    line-height: 2;
  }
}
/* cont4
------------------------------------------------- */
.cont4 {
  margin-bottom: 4em;
}

h2.title {
  background-color: #27B9D2;
  border: 1px solid #d9f1f2;
  color: #fff;
  text-align: center;
  line-height: 1.6;
  margin-bottom: 1em;
}

.cont4 p {
  line-height: 2;
}

@media only screen and (max-width: 750px) {
  .cont4 {
    margin-bottom: 8vw;
    margin-top: -13.33vw;
    padding-top: 13.33vw;
  }
  h2.title {
    background-color: #27B9D2;
    border: 1px solid #d9f1f2;
    color: #fff;
    text-align: center;
    line-height: 1.6;
    margin-bottom: 5vw;
    font-size: 4.8vw;
    padding: 1.5vw 0;
  }
  .cont4 p {
    line-height: 1.786;
    font-size: 3.733vw;
  }
}
/* endingArea
------------------------------------------------- */
.endingArea .headTitle03 {
  text-align: center;
  background-color: #d9f1f2;
  padding: 0.3em 0;
  margin-bottom: 0.5em;
  font-weight: normal;
}

.endingArea .note {
  text-align: right;
  margin-bottom: 2em;
}

.endingArea .entry {
  margin-bottom: 5em;
}

.endingArea .entry dl {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-left: 1px solid #dcdcdc;
  padding-left: 1.5em;
  width: 33%;
}

.endingArea .entry dt {
  border: 1px solid #00A63C;
  color: #00A63C;
  display: inline-block;
  padding: 0.2em 1.5em;
}

.endingArea .entry dt {
  margin: 0 0 0.6em;
}

.endingArea .entry > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  height: 58.5em;
}

.endingArea .entry dd {
  line-height: 2;
  padding-bottom: 1.4em;
}
.endingArea .entry dd .note{
  display: block;
  position: relative;
  margin-top: 5px;
  padding-left: 16px; 
  font-size: 14px;
  text-align: left;
}
.endingArea .entry dd .note::before{
  display: block;
  content: "※";
  position: absolute;
  top: 3px;
  left: 0;
  font-size:  12px;
}
@media only screen and (min-width: 751px) {
  .endingArea .spon_neo {
    display: none !important;
  }
}
@media only screen and (max-width: 750px) {
  .endingArea .headTitle03 {
    padding: 4vw 0;
    margin-bottom: 2vw;
    font-weight: normal;
    font-size: 4.8vw;
    line-height: 1.38;
  }
  .endingArea .note {
    margin-bottom: 2vw;
  }
  .endingArea .entry {
    margin-bottom: 8vw;
    font-size: 3.733vw;
  }
  .endingArea .entry > div {
    display: block;
    height: auto;
  }
  .endingArea .entry dl {
    border: none;
    padding: 0;
    width: 100%;
  }
  .endingArea .entry dt {
    background: #ccedd8;
    border: 2px solid #00A63C;
    color: #00A63C;
    display: block;
    font-size: 4.8vw;
    padding: 0.3em 1.5em;
    position: relative;
    text-align: center;
    cursor: pointer;
  }
  .endingArea .entry dt:before {
    content: "";
    width: 3vw;
    height: 3vw;
    border: 0px;
    border-top: solid 2px #00A63C;
    border-right: solid 2px #00A63C;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 50%;
    right: 5vw;
    -webkit-transition: 0.2s;
    transition: 0.2s;
  }
  .endingArea .entry dt.opn:before {
    right: 3vw;
    top: 20%;
    -webkit-transform: rotate(135deg);
            transform: rotate(135deg);
  }
  .endingArea .entry dt.opn {
    background: #fff;
  }
  .endingArea .entry dt {
    margin: 0.6em 0;
  }
  .endingArea .entry dd {
    padding: 2vw 0;
    line-height: 1.5;
  }
  .endingArea .entry dd {
    display: none;
  }
  .endingArea .pcon_neo {
    display: none !important;
  }
  .endingArea .entry dd .note{
    margin-top: 8px;
    font-size: 13px;
  }
  .endingArea .entry dd .note::before{
    top: 1px;
    font-size:  11px;
  }
}
/* cont5
------------------------------------------------- */
.cont5 {
  margin-bottom: 7.5em;
}

.cont5 h2 {
  margin-bottom: 1.33em;
}

.cont5 .contest_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.cont5 .btn {
  width: calc(33.333% - 15px);
}

.cont5 .btn a {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  text-align: center;
  border: 1px solid #00A63C;
  background-color: #CCEDD8;
  background-image: url("../common/images/icon02.png");
  background-repeat: no-repeat;
  background-position: right 1em center;
  background-size: 0.57em auto;
  padding: 0.7em 0;
}

.cont5 .btn {
  margin-right: 1em;
}

.cont5 .btn:last-child {
  margin-right: 0;
}

.cont5 .btn a:hover {
  text-decoration: none;
  opacity: 0.8;
}

@media only screen and (max-width: 750px) {
  .cont5 {
    margin-top: -13.33vw;
    padding-top: 13.33vw;
    margin-bottom: 13.333vw;
  }
  .cont5 .contest_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .cont5 .btn {
    margin-right: 0;
    width: calc(33.333% - 5px);
  }
  .cont5 .btn a {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    background-position: right 2vw center;
    background-size: 2.533vw auto;
    padding: 4vw 0;
  }
  .cont5 .btn a:hover {
    text-decoration: none;
    opacity: 1;
  }
}