@charset "UTF-8";
html {
  font-size: 0.6666666667vw;
  scroll-behavior: smooth;
}

@media screen and (max-width: 767px) {
  html {
    font-size: 1.3333333333vw;
  }
}
@media screen and (min-width: 1500px) {
  html {
    font-size: 10px;
  }
}
html {
  overflow-x: hidden;
  overflow-y: auto;
}
html.fix {
  overflow-y: hidden;
}
html.fix body {
  overflow-y: hidden;
  height: 100%;
}

body {
  overflow-x: hidden;
  background: #fff;
}

.forPC {
  display: block;
}

.forSP {
  display: none;
}

@media screen and (max-width: 767px) {
  .forPC {
    display: none;
  }

  .forSP {
    display: block;
  }
}
img {
  width: 100%;
  height: auto;
}

header {
  width: 100%;
  height: 7rem;
  border-bottom: 2px solid #03af7a;
}
@media screen and (max-width: 767px) {
  header {
    height: 12rem;
    background: #fff;
    position: relative;
  }
}
header .inner {
  width: 130rem;
  height: 100%;
  margin: auto;
  padding: 0 1.2rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 767px) {
  header .inner {
    width: 100%;
    padding: 0 2.2rem;
  }
}
header .inner h1 {
  width: 18.8804rem;
}
@media screen and (max-width: 767px) {
  header .inner h1 {
    width: 28.897rem;
  }
}
header .inner ul {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 4.95rem;
}
@media screen and (max-width: 767px) {
  header .inner ul {
    flex-direction: column;
    align-items: flex-start;
    gap: 7.8rem;
    background: #03af7a;
    padding: 13.4rem 0 16.7rem 20rem;
  }
}
header .inner ul li {
  position: relative;
}
@media screen and (max-width: 767px) {
  header .inner ul li {
    width: 100%;
    height: 100%;
  }
}
header .inner ul li::after {
  content: '';
  width: 0.7854rem;
  height: 2.1538rem;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg id="header_footer" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 7.85 21.54"%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%2303af7a;stroke-width:0px;%7D%3C/style%3E%3C/defs%3E%3Cpath class="cls-1" d="M0,21.54L6.12,0h1.74L1.78,21.54H0Z"/%3E%3C/svg%3E');
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  right: -2.475rem;
  transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
  header .inner ul li::after {
    display: none;
  }
}
header .inner ul li:last-of-type::after {
  display: none;
}
header .inner ul li a {
  font-size: 2.2rem;
  font-weight: 500;
  color: #03af7a;
}
@media screen and (max-width: 767px) {
  header .inner ul li a {
    font-size: 4.2rem;
    font-weight: 700;
    color: #fff;
    position: relative;
    padding-left: 2.3rem;
    line-height: 1;
    width: 100%;
    height: 100%;
    display: block;
    z-index: 3;
  }
  header .inner ul li a::before {
    content: '';
    width: 1.07rem;
    height: 1.07rem;
    border-radius: 50%;
    background: #fff;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
  }
}

.kv {
  background: #f2f5f7;
  width: 100%;
  height: 80rem;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .kv {
    height: 121.4rem;
  }
}
.kv img.kyv {
  height: 100%;
  width: auto;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

.bnr01 {
  width: 38.337rem;
  position: absolute;
  bottom: 2.2rem;
  left: calc(50% + 24rem);
}
@media screen and (max-width: 767px) {
  .bnr01 {
    width: 50.3rem;
    bottom: auto;
    right: auto;
    top: 39.8rem;
    left: 50%;
    transform: translateX(-50%);
  }
}

.announce {
  width: 100%;
  height: 6.7rem;
  font-size: 4rem;
  font-weight: 700;
  color: #03af7a;
  text-align: center;
  border-top: 0.2rem solid #03af7a;
  border-bottom: 0.2rem solid #03af7a;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #03af7a;
}
@media screen and (max-width: 767px) {
  .announce {
    height: 27.3rem;
  }
}
.announce p {
  color: #fff;
}
@media screen and (max-width: 767px) {
  .announce p {
    font-size: 4rem;
    font-weight: 600;
    line-height: 6.4rem;
  }
  .announce p span {
    width: 20.7rem;
    text-align: center;
    display: block;
    border-bottom: 0.4rem solid #fff;
    margin: auto auto 1.8rem;
  }
}

.intro {
  padding-top: 8rem;
  text-align: center;
  padding-bottom: 7.2rem;
}
@media screen and (max-width: 767px) {
  .intro {
    width: 100%;
    padding-top: 6rem;
    padding-bottom: 0;
    background: #fff;
  }
}
.intro h2 {
  font-size: 3.9rem;
  font-weight: 700;
  line-height: 1;
  color: #03af7a;
  display: inline;
  margin-bottom: 1.4rem;
}
@media screen and (max-width: 767px) {
  .intro h2 {
    font-size: 6rem;
    line-height: 9.6rem;
    margin-bottom: 4rem;
  }
}
.intro h2 span {
  position: relative;
  padding-bottom: 0.4rem;
  margin-bottom: 2rem;
  display: inline-block;
}
@media screen and (max-width: 767px) {
  .intro h2 span {
    padding-bottom: 0;
    margin-bottom: 0.5rem;
  }
}
.intro h2 span:nth-of-type(1) {
  font-size: 3rem;
}
@media screen and (max-width: 767px) {
  .intro h2 span:nth-of-type(1) {
    font-size: 4.59rem;
  }
}
.intro h2 span::after {
  content: '';
  width: 104%;
  height: 0.3rem;
  background: #fa872d;
  position: absolute;
  bottom: -0.4rem;
  left: -2%;
}
@media screen and (max-width: 767px) {
  .intro h2 span::after {
    width: 102%;
    bottom: 0;
    left: -1%;
  }
}
.intro > p {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 3.8rem;
  color: #666666;
}
@media screen and (max-width: 767px) {
  .intro > p {
    margin-top: 4rem;
    font-size: 3.7em;
    font-weight: 600;
    line-height: 6rem;
  }
}
.intro .pop {
  width: 62rem;
  height: 14rem;
  border-radius: 7rem;
  background: #fffaa5;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin: 3.8rem auto auto;
  flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  .intro .pop {
    width: 100%;
    height: 25.8rem;
    border-radius: 0;
  }
}
.intro .pop p {
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 3.6rem;
  color: #03af7a;
}
@media screen and (max-width: 767px) {
  .intro .pop p {
    font-size: 3.2rem;
    font-weight: 500;
    line-height: 5.4rem;
  }
}
.intro .pop p.attention {
  font-size: 1.6rem;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .intro .pop p.attention {
    font-size: 2.6rem;
    font-weight: 500;
    line-height: 3.9rem;
  }
}

section h2 {
  font-size: 3.5rem;
  font-weight: 700;
  letter-spacing: 0.6rem;
  color: #fff;
  margin: auto auto 5.8rem;
  display: inline-block;
  text-align: center;
  line-height: 10.8rem;
  width: auto;
  height: 10.8rem;
  padding: 0 5.6rem;
  background: #03af7a;
  border-radius: 5.4rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  section h2 {
    font-size: 5.5rem;
    letter-spacing: 0;
    line-height: 21.4rem;
    width: 70.8rem;
    height: 21.4rem;
    border-radius: 10.7rem;
    margin: auto auto 9rem;
  }
}
section h2::after {
  content: '';
  width: 10.1599rem;
  height: 5.0519rem;
  background: url("../img/bg_h2.png") no-repeat;
  background-size: 100%;
  position: absolute;
  bottom: -2.6rem;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 767px) {
  section h2::after {
    width: 16.4957rem;
    height: 8.20242rem;
    bottom: -4.1rem;
  }
}
@media screen and (max-width: 767px) {
  section h2.steps {
    line-height: 7.5rem;
    padding-top: 3rem;
  }
}

section.episode {
  width: 100%;
  padding-top: 7.2rem;
  text-align: center;
  background: #f2f5f7;
  padding-bottom: 6.2rem;
}
@media screen and (max-width: 767px) {
  section.episode {
    padding-top: 9.2rem;
    padding-bottom: 3rem;
  }
}
section.episode .content {
  width: 130rem;
  margin: auto;
  border: 0.1rem solid #03af7a;
  border-radius: 3rem;
  background: #fff;
  padding: 5.7rem 4rem;
}
@media screen and (max-width: 767px) {
  section.episode .content {
    width: 67rem;
    border-radius: 4.75rem;
    padding: 28.4rem 4.5rem 4.8rem;
  }
}
section.episode .content h3 {
  height: 7.6329rem;
  display: inline-block;
  position: relative;
  font-size: 2.6rem;
  font-weight: 700;
  color: #fff;
}
@media screen and (max-width: 767px) {
  section.episode .content h3 {
    height: 19rem;
    font-size: 3.6rem;
    line-height: 4.89rem;
  }
}
section.episode .content h3::before {
  content: '';
  width: 1.2rem;
  height: 7.6329rem;
  background-color: white;
  clip-path: polygon(0% 0%, 0% 100%, 100% 50%);
  position: absolute;
  top: 0;
  left: -1px;
}
@media screen and (max-width: 767px) {
  section.episode .content h3::before {
    width: 1.6rem;
    height: 19rem;
    left: -0.1rem;
  }
}
section.episode .content h3::after {
  content: '';
  width: 1.2rem;
  height: 7.6329rem;
  background-color: white;
  clip-path: polygon(100% 0%, 100% 100%, 0% 50%);
  position: absolute;
  top: 0;
  right: -1px;
}
@media screen and (max-width: 767px) {
  section.episode .content h3::after {
    width: 1.6rem;
    height: 19rem;
    right: -0.1rem;
  }
}
section.episode .content h3 img.icon_story {
  position: absolute;
  top: -1.6rem;
  left: -10.5rem;
  width: 8.017rem;
}
@media screen and (max-width: 767px) {
  section.episode .content h3 img.icon_story {
    width: 15rem;
    top: -21.6rem;
    left: 15rem;
  }
}
section.episode .content h3 img.icon_support {
  position: absolute;
  top: -1.6rem;
  left: -10.5rem;
  width: 8.9299rem;
}
@media screen and (max-width: 767px) {
  section.episode .content h3 img.icon_support {
    width: 17.4rem;
    top: -22rem;
    left: 15rem;
  }
}
section.episode .content h3 span {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
section.episode .content h3.story {
  width: 76.58rem;
  background: #008572;
}
@media screen and (max-width: 767px) {
  section.episode .content h3.story {
    width: 48.5rem;
  }
}
section.episode .content h3.support {
  width: 88.78rem;
  background: #00a2ae;
}
@media screen and (max-width: 767px) {
  section.episode .content h3.support {
    width: 48.5rem;
    margin-top: 25rem;
  }
}
section.episode .content p.h3Sub {
  font-size: 2.3rem;
  font-weight: 700;
  color: #008572;
  text-align: center;
  margin-top: 1.6rem;
}
@media screen and (max-width: 767px) {
  section.episode .content p.h3Sub {
    font-size: 2.7rem;
  }
}
section.episode .content p.h3Sub.support {
  color: #00a2ae;
}
section.episode .content p.example {
  font-size: 2.16rem;
  font-weight: 500;
  color: #03af7a;
  background: #fff;
  margin-top: 3.7rem;
  text-align: center;
  position: relative;
}
@media screen and (max-width: 767px) {
  section.episode .content p.example {
    font-size: 2.85rem;
  }
}
section.episode .content p.example::after {
  content: '';
  width: 100%;
  height: 0.12rem;
  background: #03af7a;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
section.episode .content p.example span {
  padding: 0 1.6rem;
  background: #fff;
  position: relative;
  z-index: 2;
}
section.episode .gaiyou {
  width: 130rem;
  margin: 2.7rem auto auto;
}
@media screen and (max-width: 767px) {
  section.episode .gaiyou {
    width: 67rem;
  }
}
section.episode .gaiyou h3 {
  font-size: 2.5rem;
  font-weight: 600;
  color: #fa872d;
  width: 100%;
  height: 6.2rem;
  border: 1px solid #fa872d;
  border-radius: 1rem;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3Csvg id='_繝ｬ繧､繝､繝ｼ_1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 25.8 11.73'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:none;stroke:%23fa872d;stroke-linecap:round;stroke-miterlimit:10;stroke-width:2.1px;%7D%3C/style%3E%3C/defs%3E%3Cpolyline class='cls-1' points='24.75 1.05 12.9 10.39 1.05 1.05'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 2.7rem;
  background-position: center right 2.3rem;
  cursor: pointer;
  position: relative;
  z-index: 2;
  transition: all 0.4s ease;
}
@media screen and (max-width: 767px) {
  section.episode .gaiyou h3 {
    border-radius: 1.6rem;
    font-size: 3.5rem;
    line-height: 4.9rem;
    height: 14.8rem;
    background-size: 4.2rem;
  }
}
section.episode .gaiyou h3.open {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg id='_繝ｬ繧､繝､繝ｼ_1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 25.8 11.73'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:none;stroke:%23fa872d;stroke-linecap:round;stroke-miterlimit:10;stroke-width:2.1px;%7D%3C/style%3E%3C/defs%3E%3Cpolyline class='cls-1' points='1.05 10.68 12.9 1.34 24.75 10.68'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 2.7rem;
  background-position: center right 2.3rem;
}
@media screen and (max-width: 767px) {
  section.episode .gaiyou h3.open {
    background-size: 4.2rem;
  }
}
section.episode .gaiyou .content {
  border: 1px solid #fa872d;
  border-radius: 1rem;
  padding: 0 3rem 0;
  text-align: left;
  margin-top: -1.2rem;
  overflow: hidden;
  height: 0;
  transition: height 0.4s ease;
}
@media screen and (max-width: 767px) {
  section.episode .gaiyou .content {
    margin-bottom: 2.8rem;
  }
}
section.episode .gaiyou .content.open {
  height: auto;
  padding: 4rem 3rem 3rem;
}
section.episode .gaiyou .content p {
  font-size: 1.8rem;
  line-height: 3rem;
  color: #666666;
}
@media screen and (max-width: 767px) {
  section.episode .gaiyou .content p {
    font-size: 2.6rem;
    line-height: 4.4rem;
  }
}
section.episode .gaiyou .content p a {
  padding-right: 2.4rem;
  color: #003ee7;
  text-decoration: underline;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14.21 13.5'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:none;stroke:%23003ee7;stroke-miterlimit:10;stroke-width:1.2px;%7D%3C/style%3E%3C/defs%3E%3Cpolyline class='cls-1' points='4.94 1.15 .6 1.15 .6 12.9 12.35 12.9 12.35 8.57'/%3E%3Cpolyline class='cls-1' points='9.43 .6 13.61 .6 13.61 4.78'/%3E%3Cline class='cls-1' x1='7.47' y1='6.75' x2='13.61' y2='.6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: top 0.8rem right 0.2rem;
  background-size: 1.6rem;
}
@media screen and (max-width: 767px) {
  section.episode .gaiyou .content p a {
    background-size: 2.1rem;
    background-position: top 1rem right 0.2rem;
    padding-right: 2.8rem;
  }
}
section.episode .gaiyou p.fordetail {
  margin-top: 2.5rem;
  margin-bottom: 1rem;
}
section.episode .gaiyou p.fordetail a {
  text-decoration: underline;
  font-size: 1.6rem;
  font-weight: 500;
  color: #666666;
  padding-right: 2rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14.21 13.5'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:none;stroke:%23666666;stroke-miterlimit:10;stroke-width:1.2px;%7D%3C/style%3E%3C/defs%3E%3Cpolyline class='cls-1' points='4.94 1.15 .6 1.15 .6 12.9 12.35 12.9 12.35 8.57'/%3E%3Cpolyline class='cls-1' points='9.43 .6 13.61 .6 13.61 4.78'/%3E%3Cline class='cls-1' x1='7.47' y1='6.75' x2='13.61' y2='.6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: top 0.4rem right 0.2rem;
  background-size: 1.6rem;
}
@media screen and (max-width: 767px) {
  section.episode .gaiyou p.fordetail a {
    font-size: 2.5rem;
    background-size: 2rem;
    background-position: top 1rem right 0.2rem;
    padding-right: 3rem;
  }
}
section.episode .gaiyou p.fordetailPost a {
  text-decoration: underline;
  font-size: 1.92rem;
  font-weight: 500;
  color: #666666;
  padding-right: 2rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14.21 13.5'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:none;stroke:%23666666;stroke-miterlimit:10;stroke-width:1.2px;%7D%3C/style%3E%3C/defs%3E%3Cpolyline class='cls-1' points='4.94 1.15 .6 1.15 .6 12.9 12.35 12.9 12.35 8.57'/%3E%3Cpolyline class='cls-1' points='9.43 .6 13.61 .6 13.61 4.78'/%3E%3Cline class='cls-1' x1='7.47' y1='6.75' x2='13.61' y2='.6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: top 0.6rem right 0.2rem;
  background-size: 1.6rem;
}
@media screen and (max-width: 767px) {
  section.episode .gaiyou p.fordetailPost a {
    font-size: 3rem;
    background-size: 2rem;
    background-position: top 1.2rem right 0.2rem;
    padding-right: 3rem;
  }
}

.dlBox {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  row-gap: 2.5rem;
  margin: 2rem auto 8rem;
}
@media screen and (max-width: 767px) {
  .dlBox {
    margin: 3.8rem auto 8rem;
  }
}
.dlBox.dlbox3 {
  margin-bottom: 0;
}
.dlBox dl {
  width: 59.6rem;
  border-radius: 1rem;
  overflow: hidden;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 767px) {
  .dlBox dl {
    width: 100%;
  }
}
.dlBox dl dt {
  border-radius: 1rem;
  width: 100%;
  height: 9.2rem;
  padding: 0 2.5rem;
  font-size: 2.5rem;
  font-weight: 600;
  color: #03af7a;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 26.85 12.92"%3E%3Cpolyline fill="none" stroke="%2303af7a" stroke-linecap="round" stroke-miterlimit="10" stroke-width="3.15" points="1.57 1.57 13.42 10.92 25.27 1.57"/%3E%3C/svg%3E');
  background-repeat: no-repeat;
  background-size: 2.37rem;
  background-position: center right 2.25rem;
  cursor: pointer;
  position: relative;
  z-index: 2;
  border-radius: 1rem;
  text-align: left;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .dlBox dl dt {
    font-size: 3.5rem;
    line-height: 4.8rem;
    text-align: left;
    padding: 0 3.8rem;
    background-size: 3.7rem;
    background-position: center right 2.2rem;
    height: 13rem;
    display: flex;
    align-items: center;
  }
}
.dlBox dl dt.open {
  background-image: url('data:image/svg+xml;utf8,<svg id="_繝ｬ繧､繝､繝ｼ_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 26.85 12.92"><polyline fill="none" stroke="%2303af7a" stroke-linecap="round" stroke-miterlimit="10" stroke-width="3.15" points="25.27 11.35 13.42 2.01 1.57 11.35"/></svg>');
  background-repeat: no-repeat;
  background-size: 2.37rem;
  background-position: center right 2.25rem;
  border-radius: 1rem 1rem 0 0;
}
@media screen and (max-width: 767px) {
  .dlBox dl dt.open {
    background-size: 3.7rem;
    background-position: center right 2.2rem;
  }
}
.dlBox dl dt.c01 {
  background-color: #fffaa5;
}
.dlBox dl dt.c02 {
  background-color: #ffd999;
}
.dlBox dl dt.c03 {
  background-color: #cdeaff;
}
.dlBox dl dd {
  background: #f2f5f7;
  padding: 0 2.8rem;
  overflow: hidden;
  height: 0;
  transition: height 0.5s ease;
}
.dlBox dl dd.open {
  border-radius: 0 0 1rem 1rem;
}
@media screen and (max-width: 767px) {
  .dlBox dl dd.open {
    padding: 0 3.4rem 3.8rem;
  }
}
.dlBox dl dd.dd01.open, .dlBox dl dd.dd02.open {
  height: 48rem;
}
@media screen and (max-width: 767px) {
  .dlBox dl dd.dd01.open, .dlBox dl dd.dd02.open {
    height: auto;
  }
}
.dlBox dl dd.dd03.open, .dlBox dl dd.dd04.open {
  height: 57rem;
}
@media screen and (max-width: 767px) {
  .dlBox dl dd.dd03.open, .dlBox dl dd.dd04.open {
    height: auto;
  }
}
.dlBox dl dd.dd05.open, .dlBox dl dd.dd06.open {
  height: 48rem;
}
@media screen and (max-width: 767px) {
  .dlBox dl dd.dd05.open, .dlBox dl dd.dd06.open {
    height: auto;
  }
}
.dlBox dl dd .dd-inner {
  min-height: 0;
  padding: 3rem 0 2rem;
  font-size: 1.8rem;
  line-height: 2.9rem;
  color: #666666;
  text-align: justify;
}
@media screen and (max-width: 767px) {
  .dlBox dl dd .dd-inner {
    font-size: 2.8rem;
    line-height: 4.43rem;
  }
}

section.post {
  width: 100%;
  background: #ffead7;
  padding: 7.6rem 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
section.post p {
  width: 77.2rem;
  height: 14rem;
}
@media screen and (max-width: 767px) {
  section.post p {
    width: 49.8rem;
    height: 33.6rem;
  }
}
section.post p a {
  padding: 0 0 0 6.7rem;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  font-size: 5.047rem;
  font-weight: 600;
  letter-spacing: 0.53rem;
  color: #fff;
  border-radius: 7rem;
  overflow: hidden;
  background-color: #fa6e50;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 119.52 53.88'%3E%3Cstyle%3E.cls-1%7Bfill:none;stroke:%23fff;stroke-width:2.4px;stroke-miterlimit:10;%7D.cls-2%7Bfill:%23fff;stroke:%23fa872d;stroke-width:1.79px;stroke-miterlimit:10;%7D%3C/style%3E%3Crect class='cls-2' x='46.82' y='.9' width='71.81' height='52.08'/%3E%3Cpolyline class='cls-2' points='46.82 17.41 82.72 36.47 118.62 17.41'/%3E%3Cpolyline class='cls-1' points='9.85 15.77 1.2 15.77 1.2 39.21 24.64 39.21 24.64 30.56'/%3E%3Cpolyline class='cls-1' points='18.82 14.67 27.15 14.67 27.15 23.01'/%3E%3Cline class='cls-1' x1='14.9' y1='26.93' x2='27.15' y2='14.67'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 11.7rem;
  background-position: center right 5.8rem;
  box-shadow: -0.5rem 1rem 0 #03af7a;
  transition: all 0.4s ease;
}
@media screen and (max-width: 767px) {
  section.post p a {
    border-radius: 16.8rem;
    font-size: 6.35rem;
    line-height: 8.1rem;
    text-align: center;
    padding-top: 5rem;
    background-image: url('data:image/svg+xml;charset=utf8,%3Csvg id="_繝ｬ繧､繝､繝ｼ_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 223.68 215.39"%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:none;stroke:%23fff;stroke-width:3.02px;%7D.cls-1,.cls-2%7Bstroke-miterlimit:10;%7D.cls-2%7Bfill:%23fff;stroke:%23fa872d;stroke-width:2.26px;%7D%3C/style%3E%3C/defs%3E%3Crect class="cls-2" x="1.13" y="1.13" width="90.45" height="65.61"/%3E%3Cpolyline class="cls-2" points="1.13 21.93 46.36 45.94 91.58 21.93"/%3E%3Cpolyline class="cls-1" points="200.37 184.36 189.47 184.36 189.47 213.88 219 213.88 219 202.98"/%3E%3Cpolyline class="cls-1" points="211.67 182.97 222.17 182.97 222.17 193.47"/%3E%3Cline class="cls-1" x1="206.73" y1="198.41" x2="222.17" y2="182.97"/%3E%3C/svg%3E');
    background-repeat: no-repeat;
    background-size: 22.1rem;
    background-position: top 4.2rem left 20.4rem;
    box-shadow: -0.8rem 1.7rem 0 #03af7a;
  }
}
section.post p a:hover {
  opacity: 1;
  transform: scale(1.1);
}

section.camp {
  width: 100%;
  background-color: #ffffff;
  /* 背景色 */
  text-align: center;
  padding-bottom: 6.5rem;
  padding-top: 6.9rem;
  position: relative;
  overflow: hidden;
  background: url("../img/bg_dot2.png") no-repeat top center #fff;
  background-size: 300rem;
}
section.camp::after {
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  /* 回転しても端が切れないよう大きめに */
  background-image: radial-gradient(#009e41 2px, transparent 2px);
  background-size: 40px 40px;
  transform: rotate(45deg);
  /* ここで45度回転 */
}
@media screen and (max-width: 767px) {
  section.camp {
    background: url("../img/bg_dot_sp.png") no-repeat top -0.5rem center #fff;
    background-size: 75rem;
    padding-top: 10.6rem;
    padding-bottom: 8.4rem;
  }
  section.camp::after {
    top: -500%;
    left: -500%;
    width: 1000%;
    height: 1000%;
    background-image: radial-gradient(#009e41 1px, transparent 1px);
    background-size: 4rem 4rem;
    transform: rotate(45deg);
  }
}
section.camp h2 {
  position: relative;
  z-index: 2;
}
section.camp .inner {
  width: 130rem;
  margin: auto auto auto;
  border: 1px solid #03af7a;
  border-radius: 3rem;
  padding: 3.8rem 5rem 3.8rem;
  background: #fff;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  section.camp .inner {
    width: 67rem;
    padding: 3.8rem 0 3.8rem;
  }
}
section.camp .inner h3 {
  font-size: 3.4rem;
  font-weight: 600;
  color: #03af7a;
  margin-bottom: 1.2rem;
}
@media screen and (max-width: 767px) {
  section.camp .inner h3 {
    font-size: 5.4rem;
    line-height: 8rem;
  }
}
section.camp .inner p.lead {
  font-size: 2.2rem;
  font-weight: 700;
  color: #03af7a;
  margin-bottom: 2.4rem;
}
@media screen and (max-width: 767px) {
  section.camp .inner p.lead {
    font-size: 3.52rem;
    line-height: 5.67rem;
  }
}
section.camp .inner ul.prizes {
  width: 119.6rem;
  margin: auto auto 1.6rem;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  section.camp .inner ul.prizes {
    width: 100%;
    flex-direction: column;
    row-gap: 6.8rem;
    margin: 4rem auto 1.6rem;
  }
}
section.camp .inner ul.prizes li {
  width: 27.8rem;
}
@media screen and (max-width: 767px) {
  section.camp .inner ul.prizes li {
    width: 100%;
  }
}
section.camp .inner ul.prizes li figure {
  width: 100%;
  margin-bottom: 1.5rem;
}
section.camp .inner ul.prizes li figure figcaption {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 2.4rem;
  color: #666666;
}
@media screen and (max-width: 767px) {
  section.camp .inner ul.prizes li figure figcaption {
    font-size: 3.2rem;
    font-weight: 500;
    line-height: 4.2rem;
  }
}
section.camp .inner ul.prizes li p {
  font-size: 2rem;
  font-weight: 500;
  line-height: 2.8rem;
  color: #03af7a;
  background: #fffaa5;
  border: 1px solid #03af7a;
  border-radius: 1.6rem;
  width: 100%;
  height: 12.6rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  section.camp .inner ul.prizes li p {
    font-size: 3.5rem;
    line-height: 4.9rem;
    width: 41.9rem;
    height: auto;
    padding: 2rem 0 3.8rem;
    border-radius: 2.9rem;
    margin: auto;
  }
}
section.camp .inner ul.prizes li p span {
  font-size: 3.9rem;
  font-weight: 600;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  section.camp .inner ul.prizes li p span {
    font-size: 6.8rem;
  }
}
section.camp .inner ul.prizes li p span span {
  font-size: 70%;
  margin-left: 0.2rem;
}
section.camp .inner p.attention {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 2.7rem;
  color: #666666;
  text-align: left;
}
@media screen and (max-width: 767px) {
  section.camp .inner p.attention {
    font-size: 2.6rem;
    line-height: 4.4rem;
    padding: 0 3.6rem;
  }
}

section.steps {
  text-align: center;
  padding-top: 7.7rem;
  padding-bottom: 6.3rem;
  width: 100%;
  background-color: #ffffff;
  /* 下地の色 */
  background-image: url("../img/bg_step.svg");
  background-repeat: repeat;
  background-size: 300rem auto;
}
@media screen and (max-width: 767px) {
  section.steps {
    background-size: 500rem auto;
  }
}

ul.flow {
  width: 130rem;
  margin: 2rem auto auto;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  ul.flow {
    width: 100%;
    overflow: visible;
    display: block;
    margin: -1rem auto auto;
  }
}
ul.flow .slick-list {
  padding: 8rem 0 !important;
}
ul.flow li {
  width: 39.4rem;
  height: 41.6rem;
  position: relative;
  padding: 4.4rem 0 0;
  border: 2px solid #03af7a;
  border-radius: 3rem;
  box-sizing: border-box;
  background: #fff;
  color: #666666;
}
@media screen and (max-width: 767px) {
  ul.flow li {
    width: 100%;
    height: 63.3rem;
    margin: 0 7.5rem;
    padding: 8.2rem 0 0;
  }
}
ul.flow li:nth-of-type(1) {
  background: #03af7a;
}
ul.flow li:nth-of-type(1)::after {
  display: none;
}
ul.flow li::after {
  content: '';
  width: 2.39rem;
  height: 6.8693rem;
  position: absolute;
  top: 17.2rem;
  left: -4rem;
  background-image: url("data:image/svg+xml,%3Csvg id='_繝ｬ繧､繝､繝ｼ_1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 23.91 68.69'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23fa872d;stroke-width:0px;%7D%3C/style%3E%3C/defs%3E%3Cpolyline class='cls-1' points='0 68.69 23.91 34.35 0 0'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}
@media screen and (max-width: 767px) {
  ul.flow li::after {
    display: none;
  }
}
ul.flow li p.numero {
  position: absolute;
  top: -4.8rem;
  left: -4.8rem;
  width: 9.6rem;
  height: 9.6rem;
  box-sizing: border-box;
  background: #fa872d;
  border: 2px solid #03af7a;
  font-size: 1.72rem;
  font-weight: 600;
  text-align: center;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  border-radius: 50%;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  ul.flow li p.numero {
    width: 14.6rem;
    height: 14.6rem;
    top: -7.3rem;
    left: 50%;
    transform: translateX(-50%);
    font-size: 2.6rem;
  }
}
ul.flow li p.numero span {
  font-size: 4rem;
}
@media screen and (max-width: 767px) {
  ul.flow li p.numero span {
    font-size: 6.2rem;
  }
}
ul.flow li h3 {
  font-size: 2.8rem;
  font-weight: 700;
  color: #03af7a;
  margin-bottom: 1.5rem;
}
@media screen and (max-width: 767px) {
  ul.flow li h3 {
    font-size: 4.26rem;
  }
}
ul.flow li h3.white {
  color: #fff;
}
ul.flow li p.date {
  font-size: 2.3rem;
  font-weight: 700;
  line-height: 3rem;
}
@media screen and (max-width: 767px) {
  ul.flow li p.date {
    font-size: 3.5rem;
    line-height: 4.5rem;
  }
}
ul.flow li p.date.white {
  color: #fff;
}
ul.flow li p.date span {
  font-size: 1.8rem;
  font-weight: 600;
  display: block;
  margin-bottom: 0.9rem;
}
@media screen and (max-width: 767px) {
  ul.flow li p.date span {
    font-size: 2.7rem;
  }
}
ul.flow li p.lead {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 3.7rem;
  margin-top: 1rem;
}
@media screen and (max-width: 767px) {
  ul.flow li p.lead {
    font-size: 3.6rem;
    line-height: 5.6rem;
  }
}
ul.flow li p.lead.white {
  color: #fff;
}
ul.flow li p.attention {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 2.7rem;
}
@media screen and (max-width: 767px) {
  ul.flow li p.attention {
    font-size: 2.4rem;
  }
}
ul.flow li p.attention.white {
  color: #fff;
}
ul.flow li figure {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .slick-prev {
    text-indent: -9999px;
    background-color: transparent;
    background-image: url("data:image/svg+xml,%3Csvg id='_繝ｬ繧､繝､繝ｼ_1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 23.91 68.69'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23fa872d;stroke-width:0px;%7D%3C/style%3E%3C/defs%3E%3Cpolyline class='cls-1' points='0 68.69 23.91 34.35 0 0'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
    width: 3.6374rem;
    height: 10.4519rem;
    border: none;
    position: absolute;
    top: 50%;
    left: 2.5rem;
    transform: translateY(-50%) scaleX(-1);
    z-index: 2;
  }
}
.slick-prev.slick-disabled {
  display: none !important;
}

@media screen and (max-width: 767px) {
  .slick-next {
    text-indent: -9999px;
    background-color: transparent;
    background-image: url("data:image/svg+xml,%3Csvg id='_繝ｬ繧､繝､繝ｼ_1' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 23.91 68.69'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%23fa872d;stroke-width:0px;%7D%3C/style%3E%3C/defs%3E%3Cpolyline class='cls-1' points='0 68.69 23.91 34.35 0 0'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
    width: 3.6374rem;
    height: 10.4519rem;
    border: none;
    position: absolute;
    top: 50%;
    right: 2.5rem;
    transform: translateY(-50%);
  }
}
.slick-next.slick-disabled {
  display: none !important;
}

section.join {
  width: 100%;
  background: #f2f5f7;
  padding-top: 6.2rem;
  padding-bottom: 5.8rem;
}
section.join .inner {
  width: 130rem;
  margin: auto;
  border: 1px solid #03af7a;
  border-radius: 3rem;
  background: #fff;
  padding: 3.3rem 0 3.3rem;
}
@media screen and (max-width: 767px) {
  section.join .inner {
    width: 67rem;
    padding: 5.8em 0 3.3rem;
  }
}
section.join .inner h2 {
  width: 76.35rem;
  height: 8rem;
  border-radius: 4rem;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2.6rem;
  font-weight: 700;
  color: #fff;
  background: #03af7a;
  margin: auto auto 2rem;
  line-height: 1;
  padding: 0;
  letter-spacing: 0.3rem;
}
@media screen and (max-width: 767px) {
  section.join .inner h2 {
    width: 61.8rem;
    height: 18.4rem;
    font-size: 4.16rem;
    line-height: 5.9rem;
    border-radius: 9.2rem;
  }
}
section.join .inner h2::after {
  display: none;
}
section.join .inner p.lead {
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 3rem;
  color: #666666;
  margin-bottom: 1rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  section.join .inner p.lead {
    font-size: 3.5rem;
    line-height: 5.8rem;
  }
}
section.join .inner p.attention {
  font-size: 1.6rem;
  font-weight: 500;
  color: #666666;
  text-align: center;
}
@media screen and (max-width: 767px) {
  section.join .inner p.attention {
    font-size: 2.6rem;
  }
}
section.join .inner .how {
  margin: 4.2rem auto auto;
  width: 96.49rem;
  height: 19.6rem;
  border: 0.14rem solid #03af7a;
  border-radius: 0.95rem;
  background: #fffaa5;
  box-shadow: -0.4rem 0.4rem 0 #03af7a;
  position: relative;
  padding: 1.3rem 0 0 3.4rem;
  display: flex;
  justify-content: flex-start;
  gap: 2.1rem;
  flex-direction: column;
}
@media screen and (max-width: 767px) {
  section.join .inner .how {
    width: 61rem;
    height: auto;
    border-radius: 1.5rem;
    flex-direction: column;
    padding: 2.3rem 0 10.2rem 0;
    text-align: center;
  }
}
section.join .inner .how p.btnX {
  width: 32rem;
  height: 5.48rem;
  position: absolute;
  bottom: -2.2rem;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 767px) {
  section.join .inner .how p.btnX {
    width: 51.3rem;
    height: 8.7rem;
    bottom: -4.35rem;
  }
}
section.join .inner .how p.btnX a {
  width: 100%;
  height: 100%;
  padding-left: 6rem;
  box-sizing: border-box;
  border: 0.14rem solid #03af7a;
  border-radius: 2.74rem;
  font-size: 2.6rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.7rem;
  color: #fff;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 2.1rem;
  background-color: #009fff;
  background-image: url('data:image/svg+xml;utf8,<svg id="_繝ｬ繧､繝､繝ｼ_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 57.13 23.37"><defs><style>.cls-1{stroke-width:1.29px;}.cls-1,.cls-2{fill:none;stroke:white;stroke-miterlimit:10;}.cls-2{stroke-linecap:round;stroke-width:2.13px;}</style></defs><polyline class="cls-2" points="44.05 1.06 55.57 11.68 44.05 22.3"/><polyline class="cls-1" points="5.3 4.96 .65 4.96 .65 17.56 13.25 17.56 13.25 12.91"/><polyline class="cls-1" points="10.12 4.36 14.6 4.36 14.6 8.85"/><line class="cls-1" x1="8.01" y1="10.95" x2="14.6" y2="4.36"/></svg>');
  background-repeat: no-repeat;
  background-position: center right 1.6rem;
  background-size: 5.49rem;
  box-shadow: -0.4rem 0.4rem 0 #03af7a;
  transition: all 0.4s ease;
}
@media screen and (max-width: 767px) {
  section.join .inner .how p.btnX a {
    font-size: 4.1rem;
    border-radius: 4.35rem;
    padding-left: 9.4rem;
    gap: 3.4rem;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 91.41 37.38"><style>.c1{stroke-linecap:round;stroke-width:3.4px;fill:none;stroke:white;stroke-miterlimit:10;}.c2{fill:none;stroke:white;stroke-miterlimit:10;stroke-width:2.06px;}</style><polyline class="c1" points="70.49 1.7 88.91 18.69 70.49 35.68"/><polyline class="c2" points="8.48 7.93 1.03 7.93 1.03 28.09 21.2 28.09 21.2 20.65"/><polyline class="c2" points="16.19 6.98 23.36 6.98 23.36 14.15"/><line class="c2" x1="12.82" y1="17.53" x2="23.36" y2="6.98"/></svg>');
    background-repeat: no-repeat;
    background-position: center right 3rem;
    background-size: 8.78rem;
    letter-spacing: 1.2rem;
  }
}
section.join .inner .how p.btnX a:hover {
  transform: scale(1.1);
  opacity: 1;
}
section.join .inner .how p.btnX a img {
  width: 3.56rem;
  height: auto;
}
@media screen and (max-width: 767px) {
  section.join .inner .how p.btnX a img {
    width: 5.7rem;
  }
}
section.join .inner .how h3 {
  font-size: 2.775rem;
  font-weight: 600;
  color: #03af7a;
  padding-top: 1.1rem;
  letter-spacing: 0.4rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  section.join .inner .how h3 {
    font-size: 4.44rem;
  }
}
section.join .inner .how ul {
  width: 86.8rem;
  display: flex;
  justify-content: flex-start;
  gap: 2rem;
}
@media screen and (max-width: 767px) {
  section.join .inner .how ul {
    width: 100%;
    flex-direction: column;
    row-gap: 2rem;
  }
}
section.join .inner .how ul li {
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 2.8rem;
  letter-spacing: 0.1rem;
  color: #666666;
  padding-left: 4.4rem;
  background: url("../img/how_step01.png") no-repeat left top 0.6rem;
  background-size: 2.8537rem;
}
@media screen and (max-width: 767px) {
  section.join .inner .how ul li {
    font-size: 3.38rem;
    line-height: 5.1rem;
    background: url("../img/how_step01.png") no-repeat center top;
    background-size: 5.14rem;
    padding-top: 8.2rem;
    padding-left: 0;
  }
}
section.join .inner .how ul li:nth-of-type(2) {
  background: url("../img/how_step02.png") no-repeat left top 0.6rem;
  background-size: 2.8537rem;
}
@media screen and (max-width: 767px) {
  section.join .inner .how ul li:nth-of-type(2) {
    background: url("../img/how_step02.png") no-repeat center top;
    background-size: 5.14rem;
    padding-top: 8.2rem;
  }
}
section.join .inner ul.tags {
  width: 95rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8.2rem;
  row-gap: 1.7rem;
  margin: 6rem auto auto;
}
@media screen and (max-width: 767px) {
  section.join .inner ul.tags {
    width: 61rem;
    margin: 10rem auto auto;
    row-gap: 3.6rem;
  }
}
section.join .inner ul.tags li {
  width: 43.0164rem;
  height: 9.37562rem;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 431.16 94.76"><path fill="%23f2f5f7" stroke="%2303af7a" d="M391.91.5H39.26C17.85.5.5,17.85.5,39.26h0c0,21.4,17.35,38.76,38.76,38.76h145.94c16.11,1.42,13.61,16.24,30.39,16.24s14.28-14.83,30.39-16.24h145.94c21.4,0,38.76-17.35,38.76-38.76h0c0-21.4-17.35-38.76-38.76-38.76Z"/></svg>');
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  padding-top: 1rem;
  font-size: 1.8rem;
  line-height: 2.6rem;
  font-weight: 600;
  color: #03af7a;
  text-align: center;
}
@media screen and (max-width: 767px) {
  section.join .inner ul.tags li {
    width: 100%;
    height: 13.6931rem;
    font-size: 2.6rem;
    line-height: 3.7rem;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 611.46 138.39"><path fill="%23f2f5f7" stroke="%2303af7a" stroke-width="1.46" d="M554.13.73H57.33C26.07.73.73,26.07.73,57.33h0c0,31.26,25.34,56.6,56.6,56.6h98.47c23.53,2.07,19.87,23.72,44.38,23.72s20.85-21.65,44.38-23.72h309.55c31.26,0,56.6-25.34,56.6-56.6h0c0-31.26-25.34-56.6-56.6-56.6Z"/></svg>');
    background-repeat: no-repeat;
    padding-top: 2rem;
  }
}
@media screen and (max-width: 767px) {
  section.join .inner ul.tags li:nth-of-type(2) {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 611.46 138.39"><path fill="%23f2f5f7" stroke="%2303af7a" stroke-width="1.46" d="M554.13.73H57.33C26.07.73.73,26.07.73,57.33h0c0,31.26,25.34,56.6,56.6,56.6h309.55c23.53,2.07,19.87,23.72,44.38,23.72s20.86-21.65,44.38-23.72h98.47c31.26,0,56.6-25.34,56.6-56.6h0c0-31.26-25.34-56.6-56.6-56.6Z"/></svg>');
    background-repeat: no-repeat;
  }
}
section.join .inner p.announceBottom {
  margin: 2.9rem auto auto;
  text-align: center;
}
section.join .inner p.announceBottom span {
  font-size: 2.6rem;
  font-weight: 600;
  line-height: 1;
  color: #fa872d;
  display: inline-block;
  padding: 0 2.5rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  section.join .inner p.announceBottom span {
    font-size: 4.16rem;
  }
}
section.join .inner p.announceBottom span::before {
  content: '';
  width: 0.892rem;
  height: 2.39388rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10.92 25.94'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:none;stroke:%23fa872d;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;%7D%3C/style%3E%3C/defs%3E%3Cline class='cls-1' x1='1' y1='1' x2='9.92' y2='24.94'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 767px) {
  section.join .inner p.announceBottom span::before {
    top: 0.5rem;
    width: 1.42731rem;
    height: 3.8302rem;
  }
}
section.join .inner p.announceBottom span::after {
  content: '';
  width: 0.892rem;
  height: 2.39388rem;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10.92 25.94'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:none;stroke:%23fa872d;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;%7D%3C/style%3E%3C/defs%3E%3Cline class='cls-1' x1='9.92' y1='1' x2='1' y2='24.94'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
  position: absolute;
  top: 0;
  right: 0;
}
@media screen and (max-width: 767px) {
  section.join .inner p.announceBottom span::after {
    top: 0.5rem;
    width: 1.42731rem;
    height: 3.8302rem;
  }
}

section.more {
  width: 100%;
  background: #f2f5f7;
  padding-top: 0;
  padding-bottom: 9.3rem;
}
section.more h3 {
  font-size: 3rem;
  font-weight: 700;
  color: #03af7a;
  text-align: center;
  margin-bottom: 4rem;
}
@media screen and (max-width: 767px) {
  section.more h3 {
    font-size: 4.8rem;
    line-height: 6.65rem;
  }
}
section.more ul.bnrs {
  width: 130rem;
  margin: auto;
  display: flex;
  justify-content: center;
  gap: 1.6rem;
}
@media screen and (max-width: 767px) {
  section.more ul.bnrs {
    width: 67rem;
    flex-wrap: wrap;
    justify-content: space-between;
    row-gap: 2rem;
  }
}
@media screen and (max-width: 767px) {
  section.more ul.bnrs li {
    width: 32.5rem;
  }
}

footer {
  width: 100%;
  background: #03af7a;
  color: #fff;
  padding-top: 3.4rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  footer {
    padding-top: 4.8rem;
  }
}
footer > .inner {
  width: 130rem;
  margin: auto auto 1.95rem;
  padding-left: 1.4rem;
}
@media screen and (max-width: 767px) {
  footer > .inner {
    width: 100%;
    text-align: center;
    padding-left: 0;
    padding-bottom: 2rem;
  }
}
footer > .inner h3 {
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 1.8rem;
}
@media screen and (max-width: 767px) {
  footer > .inner h3 {
    font-size: 2.8rem;
  }
}
footer > .inner p {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 2.6rem;
}
@media screen and (max-width: 767px) {
  footer > .inner p {
    font-size: 2.4rem;
    line-height: 4.2rem;
  }
}
footer .bottom {
  width: 100%;
  border-top: 1px solid #fff;
}
footer .bottom .inner {
  width: 130rem;
  margin: auto;
  padding: 1.6rem 1.4rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 767px) {
  footer .bottom .inner {
    width: 100%;
    flex-direction: column;
    padding: 0 0;
  }
}
footer .bottom .inner ul {
  display: flex;
  justify-content: flex-start;
  gap: 3.3rem;
}
@media screen and (max-width: 767px) {
  footer .bottom .inner ul {
    width: 100%;
    border-bottom: 1px solid #fff;
    padding: 3rem;
    justify-content: space-between;
  }
}
footer .bottom .inner ul li a {
  font-size: 1.6rem;
  font-weight: 500;
  color: #fff;
}
@media screen and (max-width: 767px) {
  footer .bottom .inner ul li a {
    font-size: 2.4rem;
  }
}
footer .bottom .inner p.rights {
  font-size: 1.4rem;
}
@media screen and (max-width: 767px) {
  footer .bottom .inner p.rights {
    font-size: 2.2rem;
    line-height: 3.76rem;
    text-align: center;
    padding: 3.4rem 0;
  }
}

.backtop {
  width: 7.81753rem;
  height: 7.0955rem;
  position: absolute;
  top: -8.55rem;
  right: 1.1rem;
}
.backtop a {
  width: 100%;
  height: 100%;
  display: block;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg id='header_footer' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 92.02 83.52'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:%2303af7a;stroke-width:0px;%7D.cls-2%7Bfill:none;stroke:%2303af7a;stroke-linecap:round;stroke-miterlimit:10;stroke-width:3.23px;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M46.01,3.78c23.28,0,42.22,17.31,42.22,38.58s-18.55,37.37-42.22,37.37S3.78,63.32,3.78,42.37,22.73,3.78,46.01,3.78M46.01,0C20.6,0,0,18.97,0,42.37s20.6,41.15,46.01,41.15,46.01-17.75,46.01-41.15S71.42,0,46.01,0h0Z'/%3E%3Cpath class='cls-1' d='M21.68,46.56c.23-.19.45-.38.63-.55.19-.18.4-.38.63-.62.19-.19.41-.43.65-.7s.5-.58.78-.92.56-.68.85-1.03.57-.68.83-.99c.46-.54.93-.85,1.4-.9s1.01.19,1.61.76c.36.32.73.67,1.11,1.06s.75.78,1.13,1.17c.37.39.71.75,1.02,1.1.36.38.77.82,1.22,1.3s.92.98,1.39,1.5c.47.51.91.99,1.32,1.42l-1.57,1.7c-.36-.46-.75-.93-1.15-1.42-.41-.49-.81-.97-1.2-1.44-.39-.47-.75-.89-1.07-1.25-.23-.28-.49-.57-.78-.89-.28-.31-.56-.62-.84-.93s-.54-.58-.78-.84c-.24-.26-.43-.46-.58-.61-.28-.27-.51-.39-.7-.38-.19.02-.41.17-.66.47-.17.21-.37.46-.58.75-.22.29-.45.59-.68.9-.23.31-.46.62-.68.92-.22.3-.41.55-.58.77-.17.23-.35.48-.53.74-.18.26-.34.49-.46.69l-1.73-1.78ZM31.55,41.28c0-.37.09-.71.27-1.02.18-.31.43-.56.74-.74.31-.19.65-.28,1.02-.28s.71.09,1.02.28c.31.19.55.44.74.74.18.31.27.65.27,1.02s-.09.71-.27,1.02c-.18.31-.43.56-.74.74-.31.18-.65.27-1.02.27s-.71-.09-1.02-.27c-.31-.18-.55-.43-.74-.74-.18-.31-.27-.65-.27-1.02ZM32.51,41.28c0,.3.1.55.31.75.21.2.46.3.76.3s.54-.1.74-.3c.21-.2.31-.45.31-.75s-.1-.54-.31-.74-.46-.31-.74-.31-.55.1-.76.31-.31.46-.31.74Z'/%3E%3Cpath class='cls-1' d='M39.33,43.75c.18.01.41.03.7.05.28.02.58.03.89.04.31,0,.6,0,.88,0h8.66c.38,0,.73-.01,1.05-.04.31-.03.57-.04.78-.06v2.26c-.18-.01-.45-.03-.79-.05-.35-.02-.69-.03-1.03-.03h-8.66c-.45,0-.9,0-1.35.02-.45.02-.82.03-1.11.06v-2.26Z'/%3E%3Cpath class='cls-1' d='M57.22,42.18c.27.14.57.31.9.5.33.2.67.4,1.01.62.34.21.66.42.97.61s.55.36.74.51l-1.04,1.6c-.22-.16-.49-.34-.78-.54-.3-.2-.62-.4-.95-.62-.34-.21-.67-.42-.99-.61s-.62-.36-.87-.5l1.02-1.58ZM56.86,49.92c.6-.11,1.21-.24,1.82-.4.62-.16,1.23-.36,1.84-.59.61-.23,1.19-.51,1.76-.82.9-.51,1.73-1.08,2.51-1.72.78-.63,1.48-1.31,2.1-2.03.62-.72,1.14-1.46,1.56-2.22l1.1,1.94c-.73,1.1-1.63,2.14-2.72,3.14-1.09.99-2.28,1.86-3.58,2.61-.54.31-1.14.6-1.78.86-.64.27-1.27.5-1.9.7s-1.18.34-1.66.42l-1.07-1.89ZM59.66,38.55c.26.14.55.31.88.51.33.2.67.41,1.01.63s.66.43.97.62.55.37.74.52l-1.06,1.57c-.21-.15-.47-.33-.78-.53s-.62-.41-.95-.62-.66-.42-.98-.62c-.32-.2-.61-.37-.86-.52l1.02-1.57ZM66.59,38.83c.14.21.3.47.48.76.18.29.36.59.54.89.18.3.32.58.44.83l-1.25.54c-.15-.32-.3-.62-.44-.9s-.3-.55-.46-.82-.34-.54-.53-.79l1.22-.51ZM68.77,38.07c.16.2.33.45.51.73s.36.57.54.87.33.57.46.8l-1.23.56c-.16-.32-.32-.62-.48-.89s-.32-.54-.49-.79c-.17-.26-.34-.51-.54-.77l1.23-.51Z'/%3E%3Cpath class='cls-1' d='M31.49,70.2v-10.05h-3.39v-1.78h8.93v1.78h-3.41v10.05h-2.13Z'/%3E%3Cpath class='cls-1' d='M45.4,70.43c-1.02,0-1.93-.25-2.71-.75s-1.4-1.21-1.84-2.14c-.44-.92-.66-2.02-.66-3.29s.22-2.37.66-3.28,1.06-1.6,1.84-2.08,1.69-.72,2.71-.72,1.94.24,2.72.73c.78.49,1.39,1.18,1.83,2.08.44.9.66,1.99.66,3.27s-.22,2.37-.66,3.29c-.44.92-1.05,1.63-1.83,2.14s-1.69.75-2.72.75ZM45.4,68.59c.62,0,1.16-.18,1.62-.54.46-.36.81-.86,1.06-1.51.25-.65.38-1.41.38-2.29s-.13-1.65-.38-2.28-.61-1.12-1.06-1.46c-.46-.34-1-.51-1.62-.51s-1.16.17-1.62.51c-.46.34-.81.83-1.06,1.46-.25.63-.37,1.39-.37,2.28s.12,1.64.37,2.29c.25.65.6,1.15,1.06,1.51.46.36,1,.54,1.62.54Z'/%3E%3Cpath class='cls-1' d='M55.38,70.2v-11.82h3.73c.89,0,1.67.11,2.35.34s1.22.61,1.62,1.14.6,1.25.6,2.16-.2,1.6-.59,2.17c-.39.57-.93.99-1.62,1.26-.68.27-1.45.41-2.3.41h-1.68v4.34h-2.11ZM57.49,64.19h1.52c.87,0,1.53-.18,1.95-.54.43-.36.64-.9.64-1.62s-.22-1.23-.67-1.52c-.45-.29-1.11-.43-2-.43h-1.44v4.11Z'/%3E%3Cpolyline class='cls-2' points='61.76 30.37 46.01 14.61 30.25 30.37'/%3E%3C/svg%3E");
  text-indent: -9999px;
}

.toPost {
  width: 49.8054rem;
  height: 9.2rem;
  position: fixed;
  bottom: 1.2rem;
  right: 1.2rem;
  z-index: 3;
  opacity: 0;
  transition: opacity 0.5s;
  pointer-events: none;
  position: fixed;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.5s, visibility 0.5s;
}
.toPost.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: all;
}
.toPost a {
  width: 100%;
  height: 100%;
  border-radius: 4.6rem;
  font-size: 3.257rem;
  font-weight: 500;
  letter-spacing: 0.4rem;
  color: #fff;
  padding-left: 4.2rem;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  background-color: #fa6e50;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 119.52 53.88'%3E%3Cstyle%3E.cls-1%7Bfill:none;stroke:%23fff;stroke-width:2.4px;stroke-miterlimit:10;%7D.cls-2%7Bfill:%23fff;stroke:%23fa872d;stroke-width:1.79px;stroke-miterlimit:10;%7D%3C/style%3E%3Crect class='cls-2' x='46.82' y='.9' width='71.81' height='52.08'/%3E%3Cpolyline class='cls-2' points='46.82 17.41 82.72 36.47 118.62 17.41'/%3E%3Cpolyline class='cls-1' points='9.85 15.77 1.2 15.77 1.2 39.21 24.64 39.21 24.64 30.56'/%3E%3Cpolyline class='cls-1' points='18.82 14.67 27.15 14.67 27.15 23.01'/%3E%3Cline class='cls-1' x1='14.9' y1='26.93' x2='27.15' y2='14.67'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: 7.5771rem;
  background-position: center right 3.5rem;
  box-shadow: -0.36rem 0.7rem 0 #03af7a;
}

@media screen and (max-width: 767px) {
  .toPostSP {
    width: 65.4rem;
    height: 12rem;
    position: absolute;
    top: 117.4rem;
    left: 4.8rem;
    z-index: 2;
    transition: opacity 0.3s ease;
  }
}
.toPostSP.fix {
  position: fixed;
  top: auto;
  bottom: 4rem;
  left: 4.8rem;
  z-index: 3;
}
@media screen and (max-width: 767px) {
  .toPostSP a {
    width: 100%;
    height: 100%;
    border-radius: 6rem;
    font-size: 4.277rem;
    font-weight: 500;
    letter-spacing: 0.4rem;
    color: #fff;
    padding-left: 5.8rem;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    background-color: #ff6244;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 119.52 53.88'%3E%3Cstyle%3E.cls-1%7Bfill:none;stroke:%23fff;stroke-width:2.4px;stroke-miterlimit:10;%7D.cls-2%7Bfill:%23fff;stroke:%23fa872d;stroke-width:1.79px;stroke-miterlimit:10;%7D%3C/style%3E%3Crect class='cls-2' x='46.82' y='.9' width='71.81' height='52.08'/%3E%3Cpolyline class='cls-2' points='46.82 17.41 82.72 36.47 118.62 17.41'/%3E%3Cpolyline class='cls-1' points='9.85 15.77 1.2 15.77 1.2 39.21 24.64 39.21 24.64 30.56'/%3E%3Cpolyline class='cls-1' points='18.82 14.67 27.15 14.67 27.15 23.01'/%3E%3Cline class='cls-1' x1='14.9' y1='26.93' x2='27.15' y2='14.67'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: 9.95rem;
    background-position: center right 4.8rem;
    box-shadow: -0.48rem 0.96rem 0 #00b176;
  }
}

/*
body[data-scrolling="true"] .toPostSP.fix {
  opacity: 0; pointer-events: none;
}
*/
/* SPサイズ(767px以下)の時 */
/*
@media screen and (max-width: 767px) {
  [data-scrolling="true"] .toPost,
  body[data-scrolling="true"] .toPost {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transition: none !important;
  }

}
*/
@media screen and (max-width: 767px) {
  .menuBtn {
    position: absolute;
    top: 0;
    right: 3rem;
    width: 12rem;
    height: 12rem;
  }

  #menu-open {
    width: 100%;
    height: 100%;
    display: block;
    position: relative;
  }
  #menu-open:hover, #menu-open:visited, #menu-open:active, #menu-open:focus {
    opacity: 1;
  }
  #menu-open span {
    position: absolute;
    width: 8rem;
    height: 0.5rem;
    background: #03af7a;
    transition: all 0.4s ease;
  }
  #menu-open span:nth-of-type(1) {
    top: 3rem;
    left: 3.3rem;
  }
  #menu-open span:nth-of-type(2) {
    top: 5.5rem;
    left: 3.3rem;
  }
  #menu-open span:nth-of-type(3) {
    top: 8rem;
    left: 3.3rem;
  }
  #menu-open.open span:nth-of-type(1) {
    width: 9.434rem;
    top: 5.4rem;
    left: 2.8rem;
    transform: rotate(30deg);
  }
  #menu-open.open span:nth-of-type(2) {
    top: 5.7rem;
    left: 3.3rem;
    transform: translateX(100vw);
  }
  #menu-open.open span:nth-of-type(3) {
    width: 9.434rem;
    top: 5.4rem;
    left: 2.8rem;
    transform: rotate(-30deg);
  }

  #menu-panel {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    top: 12rem;
    left: 0;
    background: rgba(0, 0, 0, 0.5);
    width: 100%;
    height: 100%;
  }

  #menu-panel.open {
    opacity: 1;
    visibility: visible;
    z-index: 10;
  }
}
.android16-chrome147 section h2.steps {
  font-size: 4rem;
  position: relative;
  z-index: 3;
}
.android16-chrome147 .toPostSP a {
  font-size: 3.6rem;
}
