@charset "UTF-8";
/* トップページ
----------------------------------------------- */
@media print, screen and (min-width: 1000px) {
  #container {
    margin-top: -112px;
  }
}
@media print, screen and (max-width: 999px) {
  #container {
    margin-top: -80px;
  }
}

.main_content {
  position: relative;
}
@media print, screen and (min-width: 1000px) {
  .main_content {
    padding: 130px 0 50px 150px;
    background: url(../img/main_img.jpg);
    background-size: cover;
  }
}
@media print, screen and (max-width: 999px) {
  .main_content {
    padding: 90px 20px 40px;
    background: url(../img/main_img-sp.jpg);
    background-size: cover;
  }
}
.main_content strong {
  margin-bottom: 10px;
  padding: 5px 20px;
  font-weight: 700;
  color: #fff;
  background: rgba(255, 0, 13, 0.85);
  display: inline-block;
}
@media print, screen and (min-width: 1000px) {
  .main_content strong {
    font-size: 18px;
  }
}
@media print, screen and (max-width: 999px) {
  .main_content strong {
    font-size: 12px;
    text-align: center;
  }
}
.main_content h2 {
  font-weight: 700;
}
@media print, screen and (min-width: 1000px) {
  .main_content h2 {
    font-size: 60px;
  }
}
@media print, screen and (max-width: 999px) {
  .main_content h2 {
    font-size: 25px;
  }
}
@media print, screen and (min-width: 1000px) {
  .main_content h2 span {
    font-size: 70px;
  }
}
@media print, screen and (max-width: 999px) {
  .main_content h2 span {
    font-size: 29px;
  }
}
.main_content h3 {
  margin-top: 5px;
  font-weight: 700;
  line-height: 1;
}
@media print, screen and (min-width: 1000px) {
  .main_content h3 {
    margin-bottom: 20px;
    font-size: 70px;
  }
}
@media print, screen and (max-width: 999px) {
  .main_content h3 {
    font-size: 26px;
  }
}
@media print, screen and (min-width: 1000px) {
  .main_content h3 span {
    font-size: 82px;
  }
}
@media print, screen and (max-width: 999px) {
  .main_content h3 span {
    font-size: 30px;
  }
}

.-font_size18 {
  margin-bottom: 30px;
  font-size: 18px;
}
@media print, screen and (min-width: 1000px) {
  .-line_content-area01 a {
    padding: 10px 30px;
  }
}
.main_text {
  padding: 15px 20px;
  color: #fff;
  background: linear-gradient(to right bottom, #73C523, #78DF14);
  font-weight: 700;
  text-align: center;
}
@media print, screen and (min-width: 1000px) {
  .main_text {
    font-size: 18px;
  }
}
@media print, screen and (max-width: 999px) {
  .-sp_text-sub {
    margin: 45px 20px 25px;
  }
  .-sp_text-sub img {
    margin: 0 auto 15px;
    width: 220px;
    display: block;
  }
  .-sp_text-sub p {
    font-size: 17px;
    text-align: center;
  }
}

.s_caption {
  background: #f9f9f9;
}
@media print, screen and (min-width: 1000px) {
  .s_caption {
    padding-top: 75px;
    padding-bottom: 90px;
  }
}
@media print, screen and (max-width: 999px) {
  .s_caption {
    padding: 45px 20px 50px;
  }
}
.s_caption h2 {
  font-weight: 700;
  text-align: center;
  position: relative;
}
@media print, screen and (min-width: 1000px) {
  .s_caption h2 {
    margin: 0 auto 40px;
    width: 400px;
    font-size: 36px;
  }
}
@media print, screen and (max-width: 999px) {
  .s_caption h2 {
    margin: 0 auto 20px;
    width: 290px;
    font-size: 26px;
  }
}
.s_caption h2::before {
  content: "";
  width: 53px;
  height: 50px;
  background: url(../img/item_img01.png);
  background-size: cover;
  position: absolute;
  transform: translateX(-50%);
}
@media print, screen and (min-width: 1000px) {
  .s_caption h2::before {
    top: -23%;
    left: 23%;
  }
}
@media print, screen and (max-width: 999px) {
  .s_caption h2::before {
    top: -30%;
    left: 23%;
  }
}

@media print, screen and (min-width: 1000px) {
  .s_caption-area-flex {
    display: flex;
    justify-content: space-between;
  }
}
.-s_caption-list {
  border-radius: 15px;
  background: #fff;
  box-shadow: 4px 4px 5px rgba(0, 0, 0, 0.2);
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
}
@media print, screen and (min-width: 1000px) {
  .-s_caption-list {
    padding: 15px 25px 30px;
    width: 30%;
  }
}
@media print, screen and (max-width: 999px) {
  .-s_caption-list {
    padding: 15px 15px 30px;
  }
}
.-s_caption-list h3 {
  color: #78DF14;
  font-size: 42px;
  font-weight: 600;
}
@media print, screen and (max-width: 999px) {
  .-s_caption-list h3 {
    position: relative;
    z-index: 100;
  }
}
.-s_caption-list img {
  margin-left: auto;
  margin-right: auto;
  display: block;
}
.-s_caption-list h4 {
  font-weight: 700;
  text-align: center;
}
@media print, screen and (min-width: 1000px) {
  .-s_caption-list h4 {
    font-size: 22px;
  }
}
@media print, screen and (max-width: 999px) {
  .-s_caption-list h4 {
    font-size: 18px;
  }
}
.-s_caption-list span {
  color: #78DF14;
}
@media print, screen and (min-width: 1000px) {
  .-s_caption-list span {
    font-size: 22px;
  }
}
@media print, screen and (min-width: 1000px) {
  .-s_caption-list .-font_size28 {
    font-size: 28px;
  }
}
@media print, screen and (max-width: 999px) {
  .-s_caption-list .-font_size28 {
    font-size: 25px;
  }
}
@media print, screen and (min-width: 1000px) {
  .-s_caption-list:nth-of-type(1) img {
    margin-top: 15px;
    margin-bottom: 21px;
    width: 130px;
  }
}
@media print, screen and (max-width: 999px) {
  .-s_caption-list:nth-of-type(1) img {
    margin-top: -38px;
    margin-bottom: 15px;
    width: 111px;
  }
}
@media print, screen and (min-width: 1000px) {
  .-s_caption-list:nth-of-type(2) img {
    margin-top: 30px;
    margin-bottom: 30px;
    width: 195px;
  }
}
@media print, screen and (max-width: 999px) {
  .-s_caption-list:nth-of-type(2) img {
    margin-top: -38px;
    margin-bottom: 15px;
    width: 175px;
  }
}
.-s_caption-list:nth-of-type(3) img {
  margin-bottom: 20px;
}
@media print, screen and (min-width: 1000px) {
  .-s_caption-list:nth-of-type(3) img {
    width: 160px;
  }
}
@media print, screen and (max-width: 999px) {
  .-s_caption-list:nth-of-type(3) img {
    margin-top: -50px;
    width: 118px;
  }
}
@media print, screen and (max-width: 999px) {
  .-s_caption-list:not(:last-of-type) {
    margin-bottom: 20px;
  }
}

.s_schedule {
  background: #eaf6ff;
  position: relative;
}
@media print, screen and (min-width: 1000px) {
  .s_schedule {
    padding-bottom: 110px;
  }
}
@media print, screen and (max-width: 999px) {
  .s_schedule {
    padding-bottom: 50px;
  }
}

.s_schedule-title {
  background: url(../img/back_img01.png);
  background-size: cover;
  background-position: center bottom;
  position: relative;
}
@media print, screen and (min-width: 1000px) {
  .s_schedule-title {
    margin-bottom: 60px;
    padding-top: 80px;
    padding-bottom: 125px;
  }
}
@media print, screen and (max-width: 999px) {
  .s_schedule-title {
    margin-bottom: 30px;
    padding-top: 50px;
    padding-bottom: 80px;
  }
}
.s_schedule-title h2 {
  font-weight: 700;
  color: #fff;
  text-align: center;
  position: relative;
  z-index: 10;
}
@media print, screen and (min-width: 1000px) {
  .s_schedule-title h2 {
    font-size: 42px;
  }
}
@media print, screen and (max-width: 999px) {
  .s_schedule-title h2 {
    font-size: 32px;
  }
}
@media print, screen and (max-width: 999px) {
  .s_schedule-title h2::before {
    content: "";
    width: 321px;
    height: 13px;
    background: rgba(255, 0, 13, 0.85);
    position: absolute;
    top: 33px;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
  }
}
.s_schedule-title h2::after {
  content: "";
  background: rgba(255, 0, 13, 0.85);
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
@media print, screen and (min-width: 1000px) {
  .s_schedule-title h2::after {
    width: 608px;
    height: 20px;
    bottom: -5px;
  }
}
@media print, screen and (max-width: 999px) {
  .s_schedule-title h2::after {
    width: 140px;
    height: 13px;
    bottom: 0;
  }
}
.s_schedule-title img {
  max-width: 1202px;
  width: 100%;
  position: absolute;
  bottom: 56px;
  left: 50%;
  transform: translateX(-50%);
}
.s_schedule-article {
  margin-bottom: 40px;
}
@media print, screen and (min-width: 1000px) {
  .s_schedule-article {
    display: flex;
    justify-content: space-between;
    flex-flow: row-reverse;
  }
}
@media print, screen and (min-width: 1000px) {
  .s_schedule-article-text {
    width: 480px;
  }
}
.s_schedule-article-text h3 {
  margin-bottom: 20px;
  font-size: 1.4rem;
  font-weight: bold;
}
.s_schedule-article-text p {
  margin-bottom: 10px;
  font-weight: 1.2rem;
}

.-s_about-article-margin {
  margin-bottom: 30px;
}

@media print, screen and (min-width: 1000px) {
  .s_schedule-article-illust {
    width: 480px;
  }
}
@media print, screen and (max-width: 999px) {
  .s_schedule-article-illust {
    margin: 0 auto 20px;
    max-width: 320px;
    width: 70%;
  }
}
.s_schedule-article-illust h4 {
  margin-top: 10px;
  font-size: 1.1rem;
  font-weight: bold;
}
.s_schedule-article-illust h5 {
  font-size: 1.3rem;
  font-weight: bold;
}
.s_schedule-sub_title {
  margin-bottom: 40px;
  text-align: center;
}
@media print, screen and (max-width: 999px) {
  .s_schedule-sub_title {
    position: relative;
    z-index: 1000;
  }
}
.s_schedule-sub_title h3 {
  margin-bottom: 15px;
  font-weight: 700;
}
@media print, screen and (min-width: 1000px) {
  .s_schedule-sub_title h3 {
    font-size: 40px;
  }
}
@media print, screen and (max-width: 999px) {
  .s_schedule-sub_title h3 {
    font-size: 34px;
  }
  .s_schedule-sub_title h3 span {
    font-size: 24px;
  }
}
.s_schedule-sub_title strong {
  font-size: 16px;
  font-weight: 700;
  color: #78DF14;
}

@media print, screen and (min-width: 1000px) {
  .s_schedule-area-flex {
    margin-bottom: 60px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
}
.-s_schedule-list {
  border-radius: 10px;
  box-shadow: 4px 4px 5px rgba(0, 0, 0, 0.2);
}
@media print, screen and (min-width: 1000px) {
  .-s_schedule-list {
    margin-bottom: 30px;
    width: 480px;
    display: flex;
    flex-direction: column;
  }
}
@media print, screen and (max-width: 999px) {
  .-s_schedule-list {
    margin-bottom: 20px;
  }
}
.-s_schedule-list h4 {
  font-weight: 700;
  color: #fff;
  background: linear-gradient(to right bottom, #73C523, #78DF14);
  border-radius: 10px;
  text-align: center;
}
@media print, screen and (min-width: 1000px) {
  .-s_schedule-list h4 {
    padding-top: 8px;
    padding-bottom: 8px;
    font-size: 24px;
  }
}
@media print, screen and (max-width: 999px) {
  .-s_schedule-list h4 {
    padding-top: 5px;
    padding-bottom: 5px;
    font-size: 20px;
  }
}

.-s_schedule-list-box {
  background: #fff;
  position: relative;
  border-radius: 10px;
  z-index: 100;
}
@media print, screen and (min-width: 1000px) {
  .-s_schedule-list-box {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
  }
}
@media print, screen and (min-width: 1000px) {
  .-s_schedule-list-text {
    margin: 15px;
    flex-grow: 1;
  }
}
@media print, screen and (max-width: 999px) {
  .-s_schedule-list-text {
    margin: 15px 10px;
  }
}
.-s_schedule-list-text h5 {
  font-weight: 700;
}
@media print, screen and (min-width: 1000px) {
  .-s_schedule-list-text h5 {
    margin-bottom: 20px;
    font-size: 23px;
  }
}
@media print, screen and (max-width: 999px) {
  .-s_schedule-list-text h5 {
    margin-bottom: 15px;
    font-size: 20px;
  }
}
.-s_schedule-list-text dl {
  margin-bottom: 12px;
  display: flex;
  align-items: flex-start;
}
@media print, screen and (min-width: 1000px) {
  .-s_schedule-list-text dl {
    justify-content: space-between;
  }
}
.-s_schedule-list-text dt {
  padding: 2px 0;
  color: #78DF14;
  border: 1px solid #78DF14;
  border-radius: 17px;
  font-weight: 700;
  text-align: center;
}
@media print, screen and (min-width: 1000px) {
  .-s_schedule-list-text dt {
    width: 65px;
  }
}
@media print, screen and (max-width: 999px) {
  .-s_schedule-list-text dt {
    margin-right: 10px;
    font-size: 13px;
    max-width: 65px;
    width: 100%;
  }
}
@media print, screen and (min-width: 1000px) {
  .-s_schedule-list-text dd {
    width: 358px;
    font-size: 16px;
  }
}
@media print, screen and (max-width: 999px) {
  .-s_schedule-list-text-sub {
    border-bottom: 0;
  }
}

.-s_schedule-btn {
  display: none;
}
.-s_schedule-btn:checked ~ .-s_schedule-acc {
  position: absolute;
  bottom: 25px;
  right: 0;
}
.-s_schedule-btn:checked ~ .-s_schedule-acc img {
  transform: rotate(180deg);
  transition: 0.5s;
}
.-s_schedule-btn:checked ~ .-s_calendar-sp {
  margin-top: -15px;
  height: auto;
  opacity: 1;
}

@media print, screen and (max-width: 999px) {
  .-s_schedule-acc {
    margin: -15px 10px;
    display: block;
    text-align: center;
    position: absolute;
    bottom: 25px;
    right: 0;
  }
  .-s_schedule-acc img {
    width: 43px;
    height: 43px;
    transition: 0.5s;
  }
}

.-s_schedule-list-calendar {
  padding: 0 15px;
}
@media print, screen and (max-width: 999px) {
  .-s_schedule-list-calendar .-s_schedule-list-text-sub {
    margin: 0px -5px 15px;
  }
}

@media print, screen and (max-width: 999px) {
  .-s_calendar-sp {
    height: 0;
    display: block;
    overflow: hidden;
    opacity: 0;
    transition: 0.5s;
    cursor: pointer;
  }
}

.-s_schedule-list-data {
  border-top: 1px solid #78DF14;
}
.-s_schedule-list-data p {
  font-weight: 700;
  color: #78DF14;
  display: flex;
  align-items: center;
}
@media print, screen and (min-width: 1000px) {
  .-s_schedule-list-data p {
    font-size: 16px;
    align-items: center;
  }
}
.-s_schedule-list-data p::before {
  content: "";
  margin-right: 10px;
  width: 30px;
  height: 30px;
  background: url(../img/icon_item01.png);
  background-size: cover;
}
@media print, screen and (min-width: 1000px) {
  .-s_schedule-list-data {
    margin: 0 15px;
    padding: 15px 0;
  }
}
@media print, screen and (max-width: 999px) {
  .-s_schedule-list-data {
    margin: 0 10px;
    padding: 15px 0;
  }
}

.-s_postion-img01 {
  position: absolute;
  left: 0;
}
@media print, screen and (min-width: 1000px) {
  .-s_postion-img01 {
    width: 394px;
    height: 446px;
    background: url(../img/back_img03.png);
    background-size: cover;
    transform: translateY(-40%);
  }
}
@media print, screen and (max-width: 999px) {
  .-s_postion-img01 {
    width: 133px;
    height: 211px;
    background: url(../img/back_img03-sp.png);
    background-size: cover;
    transform: translateY(-65%);
  }
}

.-s_postion-img02 {
  position: absolute;
  right: 0;
}
@media print, screen and (min-width: 1000px) {
  .-s_postion-img02 {
    width: 306px;
    height: 420px;
    background: url(../img/back_img04.png);
    background-size: cover;
    transform: translateY(-59%);
  }
}
@media print, screen and (max-width: 999px) {
  .-s_postion-img02 {
    width: 150px;
    height: 195px;
    background: url(../img/back_img04-sp.png);
    background-size: cover;
    transform: translateY(-200%);
  }
}

.-s_postion-img03 {
  position: absolute;
  left: 0;
}
@media print, screen and (min-width: 1000px) {
  .-s_postion-img03 {
    width: 338px;
    height: 438px;
    background: url(../img/back_img05.png);
    background-size: cover;
    transform: translateY(-45%);
  }
}
@media print, screen and (max-width: 999px) {
  .-s_postion-img03 {
    width: 161px;
    height: 206px;
    background: url(../img/back_img05.png);
    background-size: cover;
    transform: translateY(-59%);
  }
}

@media print, screen and (min-width: 1000px) {
  .-s_postion-img04 {
    width: 414px;
    height: 354px;
    background: url(../img/back_img06.png);
    background-size: cover;
    position: absolute;
    right: 34px;
    transform: translateY(-72%);
  }
}

@media print, screen and (min-width: 1000px) {
  .s_schedule-area-link {
    margin: auto;
    width: 580px;
    height: 90px;
    display: flex;
    position: relative;
    z-index: 1000;
    box-sizing: border-box;
  }
}
.s_schedule-area-link p {
  margin: auto;
  width: 100%;
  height: 100%;
  font-size: 26px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
}
.s_about {
  background: linear-gradient(to bottom right, #73C523, #78DF14);
  position: relative;
}
@media print, screen and (min-width: 1000px) {
  .s_about {
    padding-top: 120px;
    padding-bottom: 90px;
  }
}
@media print, screen and (max-width: 999px) {
  .s_about {
    padding-top: 40px;
    padding-bottom: 60px;
  }
}
.s_about::before {
  content: "";
  background: url(../img/back_img07.png);
  background-size: cover;
  position: absolute;
  top: 0;
  right: 0;
}
@media print, screen and (min-width: 1000px) {
  .s_about::before {
    width: 707px;
    height: 356px;
  }
}
@media print, screen and (max-width: 999px) {
  .s_about::before {
    width: 92%;
    height: 187px;
  }
}
.s_about::after {
  content: "";
  background: url(../img/back_img08.png);
  background-size: cover;
  position: absolute;
  bottom: 0;
  left: 0;
}
@media print, screen and (min-width: 1000px) {
  .s_about::after {
    width: 508px;
    height: 258px;
  }
}
@media print, screen and (max-width: 999px) {
  .s_about::after {
    width: 92%;
    height: 188px;
  }
}

@media print, screen and (min-width: 1000px) {
  .s_about-area {
    margin-bottom: 70px;
    display: flex;
  }
}
@media print, screen and (max-width: 999px) {
  .s_about-area {
    margin-bottom: 40px;
    position: relative;
    z-index: 1000;
  }
}

@media print, screen and (min-width: 1000px) {
  .s_about-area-illust {
    margin-right: 4.7%;
    max-width: 580px;
    width: 100%;
  }
}
@media print, screen and (max-width: 999px) {
  .s_about-area-illust {
    margin-bottom: 20px;
    padding-right: 20px;
    max-width: 393px;
    width: 100%;
    box-sizing: border-box;
  }
}

.s_about-area-text {
  color: #fff;
}
@media print, screen and (min-width: 1000px) {
  .s_about-area-text {
    margin-top: 60px;
    max-width: 635px;
    width: 100%;
  }
}
.s_about-area-text h2 {
  font-weight: 700;
}
@media print, screen and (min-width: 1000px) {
  .s_about-area-text h2 {
    margin-bottom: 40px;
    font-size: 42px;
  }
}
@media print, screen and (max-width: 999px) {
  .s_about-area-text h2 {
    margin: 0 0 25px 20px;
    font-size: 36px;
  }
}
.s_about-area-text h2 span {
  display: block;
}
@media print, screen and (min-width: 1000px) {
  .s_about-area-text h2 span {
    margin-top: 10px;
    font-size: 24px;
  }
}
@media print, screen and (max-width: 999px) {
  .s_about-area-text h2 span {
    font-size: 22px;
  }
}
.s_about-area-text h3 {
  margin-bottom: 20px;
  font-weight: 700;
}
@media print, screen and (min-width: 1000px) {
  .s_about-area-text h3 {
    font-size: 80px;
  }
}
@media print, screen and (max-width: 999px) {
  .s_about-area-text h3 {
    margin-left: 20px;
    font-size: 44px;
  }
}
.s_about-area-text .-line_content {
  height: 60px;
  font-weight: 700;
  display: flex;
  justify-content: center;
}
@media print, screen and (min-width: 1000px) {
  .s_about-area-text .-line_content {
    width: 438px;
    font-size: 18px;
  }
}
@media print, screen and (max-width: 999px) {
  .s_about-area-text .-line_content {
    margin: auto;
    max-width: 353px;
    width: 100%;
    font-size: 16px;
  }
}
.s_about-area-text a {
  color: #fff;
}

@media print, screen and (min-width: 1000px) {
  .-font_size23 {
    margin-bottom: 40px;
    font-size: 23px;
    max-width: 582PX;
    width: 100%;
    line-height: 1.6;
  }
}
@media print, screen and (max-width: 999px) {
  .-font_size23 {
    margin: 0 20px 30px;
    font-size: 15px;
  }
}

.s_about-article {
  margin: auto;
  padding: 0 20px;
  box-sizing: border-box;
}
@media print, screen and (min-width: 1000px) {
  .s_about-article {
    max-width: 940px;
    width: 100%;
  }
}
@media print, screen and (max-width: 999px) {
  .s_about-article {
    position: relative;
    z-index: 1000;
  }
}
.s_about-article h4 {
  padding: 10px 0;
  font-weight: 700;
  background: #f2d048;
  border-radius: 10px 10px 0 0;
  text-align: center;
}
@media print, screen and (min-width: 1000px) {
  .s_about-article h4 {
    font-size: 22px;
  }
}
@media print, screen and (max-width: 999px) {
  .s_about-article h4 {
    font-size: 20px;
  }
}

.s_about-article-flex {
  background: #fff;
  border-radius: 0 0 10px 10px;
  box-shadow: 4px 4px 5px rgba(0, 0, 0, 0.2);
}
@media print, screen and (min-width: 1000px) {
  .s_about-article-flex {
    padding: 20px;
    display: flex;
    align-items: center;
    position: relative;
  }
}
@media print, screen and (max-width: 999px) {
  .s_about-article-flex {
    padding: 15px 20px 20px;
  }
}

@media print, screen and (min-width: 1000px) {
  .-s_article-illust {
    margin-right: 20px;
    max-width: 189px;
    width: 100%;
  }
}
@media print, screen and (max-width: 999px) {
  .-s_article-illust {
    margin: 0 auto 20px;
    max-width: 313px;
    width: 100%;
  }
}

@media print, screen and (max-width: 999px) {
  .-s_article-text {
    margin-bottom: 20px;
  }
}
.-s_article-text h5 {
  margin-bottom: 20px;
  font-weight: 700;
  display: flex;
}
@media print, screen and (min-width: 1000px) {
  .-s_article-text h5 {
    font-size: 22px;
    align-items: baseline;
  }
}
@media print, screen and (max-width: 999px) {
  .-s_article-text h5 {
    font-size: 17px;
    align-items: center;
    justify-content: center;
    text-align: center;
  }
}
.-s_article-text h5::before {
  content: "";
  height: 2px;
  background: linear-gradient(to bottom right, #73C523, #78DF14);
}
@media print, screen and (min-width: 1000px) {
  .-s_article-text h5::before {
    width: 40px;
    transform: rotate(60deg);
  }
}
@media print, screen and (max-width: 999px) {
  .-s_article-text h5::before {
    width: 51px;
    transform: rotate(66deg);
  }
}
.-s_article-text h5::after {
  content: "";
  height: 2px;
  background: linear-gradient(to bottom right, #73C523, #78DF14);
}
@media print, screen and (min-width: 1000px) {
  .-s_article-text h5::after {
    width: 40px;
    transform: rotate(-60deg);
  }
}
@media print, screen and (max-width: 999px) {
  .-s_article-text h5::after {
    width: 51px;
    transform: rotate(-66deg);
  }
}
.-s_article-text p {
  font-size: 18px;
  font-weight: 700;
}
.-s_article-text-flex {
  display: flex;
  align-items: self-end;
  flex-wrap: wrap;
  gap: 10px;
}
@media print, screen and (max-width: 999px) {
  .-s_article-text-flex li:last-of-type {
    margin-left: 20px;
  }
}

.-s_article-text-list {
  padding: 5px 13px;
  color: #fff;
  background: linear-gradient(90deg, #73C523, #78DF14);
  border-radius: 45px;
}
.-s_article-bubble {
  color: rgba(255, 0, 13, 0.85);
  font-weight: 700;
}
@media print, screen and (min-width: 1000px) {
  .-s_article-bubble {
    width: 132px;
    height: 123px;
    background: url(../img/icon_item02.png);
    background-size: cover;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: absolute;
    right: 18px;
  }
}
@media print, screen and (max-width: 999px) {
  .-s_article-bubble {
    padding: 10px 20px;
    border: 2px solid #ff000d;
    border-radius: 6px;
    text-align: center;
    position: relative;
  }
}
.-s_article-bubble a {
  color: rgba(255, 0, 13, 0.85);
}
@media print, screen and (min-width: 1000px) {
  .-s_article-bubble a {
    margin-left: 8px;
  }
}
@media print, screen and (min-width: 1000px) {
  .-s_article-bubble p {
    margin-left: 8px;
    font-size: 13px;
  }
}
@media print, screen and (max-width: 999px) {
  .-s_article-bubble p {
    font-size: 18px;
  }
}
@media print, screen and (min-width: 1000px) {
  .-s_article-bubble p span {
    font-size: 16px;
    display: block;
  }
}
.-s_article-bubble strong {
  display: block;
}
@media print, screen and (min-width: 1000px) {
  .-s_article-bubble strong {
    font-size: 15px;
  }
}
@media print, screen and (max-width: 999px) {
  .-s_article-bubble strong {
    font-size: 18px;
  }
}
@media print, screen and (min-width: 1000px) {
  .-s_article-bubble strong span {
    font-size: 21px;
  }
}
@media print, screen and (max-width: 999px) {
  .-s_article-bubble strong span {
    font-size: 26px;
  }
}
@media print, screen and (max-width: 999px) {
  .-s_article-bubble::after {
    content: "";
    width: 49px;
    height: 49px;
    background: url(../img/icon_item04-sp.png);
    background-size: cover;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    display: block;
  }
}

@media print, screen and (min-width: 1000px) {
  .s_qa {
    margin: 90px 20px;
  }
}
@media print, screen and (max-width: 999px) {
  .s_qa {
    margin: 50px 20px;
  }
}
.s_qa h3 {
  font-weight: 700;
  text-align: center;
}
@media print, screen and (min-width: 1000px) {
  .s_qa h3 {
    margin-bottom: 50px;
    font-size: 44px;
  }
}
@media print, screen and (max-width: 999px) {
  .s_qa h3 {
    margin-bottom: 40px;
    font-size: 32px;
  }
}

.s_qa-area {
  margin-left: auto;
  margin-right: auto;
  background: #f6f6f6;
  border-radius: 10px;
}
@media print, screen and (min-width: 1000px) {
  .s_qa-area {
    padding: 20px;
    max-width: 900px;
    width: 100%;
  }
}
@media print, screen and (max-width: 999px) {
  .s_qa-area {
    padding: 10px 10px 20px;
  }
}
.s_qa-area:not(:last-of-type) {
  margin-bottom: 15px;
}
.-s_qa-btn {
  display: none;
}
.-s_qa-btn:checked ~ .-s_qa-answer {
  height: auto;
  opacity: 1;
}

.-s_qa-title {
  font-weight: 700;
  display: block;
  position: relative;
  cursor: pointer;
}
@media print, screen and (min-width: 1000px) {
  .-s_qa-title {
    margin-bottom: 15px;
    padding-bottom: 15px;
    font-size: 23px;
    border-bottom: 1px dashed #292929;
  }
}
@media print, screen and (max-width: 999px) {
  .-s_qa-title {
    padding-right: 8%;
    font-size: 15px;
    display: flex;
    align-items: center;
  }
}
.-s_qa-title span {
  margin-right: 15px;
  color: #fff;
  background: linear-gradient(to bottom, #73C523, #78DF14);
  border-radius: 50px;
  text-align: center;
  display: inline-block;
}
@media print, screen and (min-width: 1000px) {
  .-s_qa-title span {
    width: 38px;
    height: 38px;
  }
}
@media print, screen and (max-width: 999px) {
  .-s_qa-title span {
    max-width: 32px;
    width: 100%;
    height: 32px;
    font-size: 20px;
  }
}
.-s_qa-title::before, .-s_qa-title::after {
  content: "";
  height: 3px;
  background: linear-gradient(to bottom, #73C523, #78DF14);
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
@media print, screen and (min-width: 1000px) {
  .-s_qa-title::before, .-s_qa-title::after {
    width: 26px;
    right: 5%;
  }
}
@media print, screen and (max-width: 999px) {
  .-s_qa-title::before, .-s_qa-title::after {
    width: 21px;
    right: 2%;
  }
}
.-s_qa-title::after {
  transform: translateY(-50%) rotate(90deg);
}

.-s_qa-answer {
  height: 0;
  display: block;
  overflow: hidden;
  opacity: 0;
  transition: 0.5s;
  cursor: pointer;
}
@media print, screen and (min-width: 1000px) {
  .-s_qa-answer {
    font-size: 16px;
  }
}
@media print, screen and (max-width: 999px) {
  .-s_qa-answer p {
    margin-top: 20px;
    padding-top: 15px;
    font-size: 13px;
    border-top: 1px dashed #292929;
  }
}

.s_contact {
  background: #eaf6ff;
}
@media print, screen and (min-width: 1000px) {
  .s_contact {
    padding: 90px 20px;
  }
}
@media print, screen and (max-width: 999px) {
  .s_contact {
    padding: 40px 20px 50px;
  }
}

.s_contact-title {
  margin-bottom: 40px;
  text-align: center;
}
.s_contact-title h3 {
  margin-bottom: 15px;
  font-weight: 700;
}
@media print, screen and (min-width: 1000px) {
  .s_contact-title h3 {
    font-size: 44px;
  }
}
@media print, screen and (max-width: 999px) {
  .s_contact-title h3 {
    font-size: 32px;
  }
}
@media print, screen and (min-width: 1000px) {
  .s_contact-title p {
    font-size: 18px;
  }
}
@media print, screen and (max-width: 999px) {
  .s_contact-title p {
    font-size: 16px;
  }
}

.s_contact-form {
  margin: auto;
}
@media print, screen and (min-width: 1000px) {
  .s_contact-form {
    max-width: 800px;
    width: 100%;
  }
}
.s_contact-form input, .s_contact-form textarea {
  padding: 10px;
  width: 100%;
  border: 1px solid #e2e2e2;
  border-radius: 6px;
  box-sizing: border-box;
}
@media print, screen and (min-width: 1000px) {
  .s_contact-form input, .s_contact-form textarea {
    font-size: 20px;
  }
}
@media print, screen and (max-width: 999px) {
  .s_contact-form input, .s_contact-form textarea {
    font-size: 16px;
  }
}
@media print, screen and (min-width: 1000px) {
  .s_contact-form p {
    display: flex;
    justify-content: center;
  }
}
@media print, screen and (max-width: 999px) {
  .s_contact-form p {
    font-size: 13px;
    text-align: center;
  }
}
.s_contact-form p a {
  border-bottom: 1px solid #292929;
}
@media print, screen and (max-width: 999px) {
  .s_contact-form p a {
    display: inline-block;
  }
}

@media print, screen and (min-width: 1000px) {
  .-contact_form-list {
    margin-bottom: 20px;
  }
}
@media print, screen and (max-width: 999px) {
  .-contact_form-list dl {
    margin-bottom: 10px;
  }
}
.-contact_form-list dt {
  margin-bottom: 5px;
}
@media print, screen and (min-width: 1000px) {
  .-contact-form-flex {
    display: flex;
    justify-content: space-between;
  }
}
@media print, screen and (min-width: 1000px) {
  .-contact-form-flex dl {
    width: 48%;
  }
}
.-contact_form-item {
  font-weight: 700;
}
@media print, screen and (min-width: 1000px) {
  .-contact_form-item {
    font-size: 20px;
  }
}
@media print, screen and (max-width: 999px) {
  .-contact_form-item {
    font-size: 16px;
  }
}
.-contact_form-item span {
  font-weight: 400;
  color: rgba(255, 0, 13, 0.85);
}
@media print, screen and (min-width: 1000px) {
  .-contact_form-item span {
    font-size: 14px;
  }
}
@media print, screen and (max-width: 999px) {
  .-contact_form-item span {
    font-size: 12px;
  }
}

.-contact_form-submit {
  text-align: center;
}
@media print, screen and (min-width: 1000px) {
  .-contact_form-submit {
    margin-top: 25px;
  }
}
@media print, screen and (max-width: 999px) {
  .-contact_form-submit {
    margin-top: 15px;
  }
}

.-submit_btn {
  font-weight: 700;
  color: #fff;
  background: linear-gradient(90deg, #73C523, #78DF14);
  border: 0;
  border-radius: 45px;
  cursor: pointer;
}
@media print, screen and (min-width: 1000px) {
  .-submit_btn {
    width: 445px;
    height: 60px;
    line-height: 60px;
    font-size: 26px;
  }
}
@media print, screen and (max-width: 999px) {
  .-submit_btn {
    width: 302px;
    height: 48px;
    line-height: 48px;
    font-size: 20px;
  }
}

@media print, screen and (max-width: 999px) {
  .-sp_link {
    padding: 15px 20px;
    background: #f9f9f9;
    width: 100%;
    height: 70px;
    font-weight: 700;
    position: fixed;
    bottom: 0;
    box-sizing: border-box;
    z-index: 2000;
  }
  .-sp_link a {
    color: #fff;
  }
}

@media print, screen and (max-width: 999px) {
  .-sp_link-flex {
    display: flex;
    justify-content: space-between;
  }
  .-sp_link-flex div {
    max-width: 165px;
    width: 100%;
    height: 40px;
    line-height: 40px;
    border-radius: 30px;
    box-shadow: 4px 4px 5px rgba(0, 0, 0, 0.2);
    text-align: center;
  }
}

@media print, screen and (max-width: 999px) {
  .-sp_link-contact {
    margin-right: 10px;
    background: #000;
  }
}

@media print, screen and (max-width: 999px) {
  .-sp_link-line {
    background: #06c755;
  }
}/*# sourceMappingURL=style.css.map */