@charset "UTF-8";
/*----------------------
     setting
---------------------------------------- */
@-webkit-keyframes fadeUpAnime {
  from {
    opacity: 0;
    -webkit-transform: translateY(100px);
            transform: translateY(100px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes fadeUpAnime {
  from {
    opacity: 0;
    -webkit-transform: translateY(100px);
            transform: translateY(100px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@-webkit-keyframes fadeUpAnime2 {
  from {
    opacity: 0;
    margin-top: 100px;
  }
  to {
    opacity: 1;
    margin-top: 0;
  }
}

@keyframes fadeUpAnime2 {
  from {
    opacity: 0;
    margin-top: 100px;
  }
  to {
    opacity: 1;
    margin-top: 0;
  }
}

@-webkit-keyframes upDownAnime {
  0%, 100% {
    opacity: 1;
    margin-top: 0;
  }
  50% {
    opacity: 1;
    margin-top: -20px;
  }
}

@keyframes upDownAnime {
  0%, 100% {
    opacity: 1;
    margin-top: 0;
  }
  50% {
    opacity: 1;
    margin-top: -20px;
  }
}

@-webkit-keyframes leftUpAnime2 {
  0% {
    -webkit-transform: translate(30px, 30px);
            transform: translate(30px, 30px);
    opacity: 0;
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}

@keyframes leftUpAnime2 {
  0% {
    -webkit-transform: translate(30px, 30px);
            transform: translate(30px, 30px);
    opacity: 0;
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}

@-webkit-keyframes leftUpAnime {
  from {
    opacity: 0;
    -webkit-transform: translate(30px, 30px);
            transform: translate(30px, 30px);
  }
  to {
    opacity: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}

@keyframes leftUpAnime {
  from {
    opacity: 0;
    -webkit-transform: translate(30px, 30px);
            transform: translate(30px, 30px);
  }
  to {
    opacity: 1;
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}

@-webkit-keyframes fadeRightAnime {
  from {
    opacity: 0;
    -webkit-transform: translateX(-100px);
            transform: translateX(-100px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}

@keyframes fadeRightAnime {
  from {
    opacity: 0;
    -webkit-transform: translateX(-100px);
            transform: translateX(-100px);
  }
  to {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}

@-webkit-keyframes fadeInAnime {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes fadeInAnime {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@-webkit-keyframes fadeLeftAnime {
  from {
    opacity: 0;
    left: 100%;
  }
  to {
    opacity: 1;
    left: 0;
  }
}

@keyframes fadeLeftAnime {
  from {
    opacity: 0;
    left: 100%;
  }
  to {
    opacity: 1;
    left: 0;
  }
}

/*----------------------
     parts
---------------------------------------- */
.el_base_text {
  line-height: 1.6;
}

.el_base_text__l {
  line-height: 2;
}

.el_btn_base {
  margin-left: auto;
  margin-right: auto;
  display: block;
  padding: 1em;
  text-align: center;
  border-radius: 2.5rem;
  width: 30rem;
  min-width: 30rem;
  font-weight: 700;
  z-index: 1;
  overflow: hidden;
  -webkit-transition: .3s;
  transition: .3s;
}

.el_btn_base:hover {
  opacity: 1;
}

.el_btn__black {
  background: #232323;
  border: 2px solid #232323;
  color: #fff;
}

.el_btn__black:hover {
  color: #232323;
  background: #fff;
}

.el_btn__border {
  background: #fff;
  border: 2px solid #232323;
  color: #232323;
}

.el_btn__border:hover {
  color: #fff;
  background: #232323;
}

.el_btn__green {
  background: #00aa14;
  border: 2px solid #00aa14;
  color: #fff;
}

.el_btn__green:hover {
  color: #00aa14;
  background: #fff;
}

.el_btn__pink {
  background: #e619a0;
  border: 2px solid #e619a0;
  color: #fff;
}

.el_btn__pink:hover {
  color: #e619a0;
  background: #fff;
}

.el_text__xlarge {
  font-size: 2rem;
}

.el_text__large {
  font-size: 1.8rem;
}

.el_text__normal {
  font-size: 1.6rem;
}

.el_text__small {
  font-size: 1.4rem;
}

.el_text__xsmall {
  font-size: 1.2rem;
}

.el_link__u_line {
  text-decoration: underline;
}

.el_link__pink {
  color: #e619a0;
}

.el_page_title {
  text-align: center;
}

.el_page_title img {
  width: auto;
  height: 1.4rem;
}

.el_page_title_en {
  margin-bottom: calc(1.6rem * 1);
}

.el_page_title_en img {
  height: 3rem;
}

.el_title {
  margin-bottom: calc(1.6rem * 2);
  text-align: center;
}

.el_title img {
  width: auto;
  height: 2.6rem;
}

.el_title_en {
  margin-bottom: calc(1.6rem * 2);
  text-align: center;
}

.el_title_en img {
  width: auto;
  height: 1.3rem;
}

@media (max-width: 767px) {
  .el_title img {
    height: auto;
    max-width: 90%;
  }
}

.el_title__mid {
  margin-bottom: calc(1.6rem * 2);
}

.el_title__mid img {
  width: auto;
  height: 4.8rem;
}

@media (max-width: 767px) {
  .el_title__mid img {
    height: 2.4rem;
  }
}

.el_title__large img {
  width: auto;
  height: 7rem;
}

.el_title__large_caption {
  font-size: 1.8rem;
  font-weight: 700;
}

@media (max-width: 767px) {
  .el_title__large img {
    width: 100vw;
    max-width: 90%;
    height: auto;
  }
}

.el_block__shadow {
  -webkit-box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}

.el_block__bg_white {
  background: #fff;
  padding: 6.4rem 8rem;
}

@media (max-width: 767px) {
  .el_block__bg_white {
    padding: 2.4rem;
  }
}

.el_icon_list {
  list-style-type: disc;
  list-style-position: outside;
}

.el_icon_list .el_icon_list_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  margin: 0 0 0.5rem;
  line-height: 1.4;
}

.el_icon_list .el_icon_list_item:before {
  content: attr(data-icon);
  margin: 0 0.5rem 0 0;
}

.el_icon_list .el_icon_list_title {
  font-weight: 700;
  margin-bottom: calc(1.6rem * 0.5);
}

.el_contents_title__l_border {
  border-left: 7px solid #0573be;
  padding: 0.5em;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, "Arimo", sans-serif;
  font-weight: 700;
  font-size: 2.8rem;
  line-height: 1.4;
}

.el_contents_title__l_border__green {
  border-left: 7px solid #00aa14;
}

@media (max-width: 767px) {
  .el_contents_title__l_border {
    font-size: 2rem;
  }
}

.el_bb {
  border-bottom: 1px solid #fff;
  padding-bottom: 2.4rem;
}
