@charset "UTF-8";
/* CSS INFORMATION -====================================================
File name : spkikaku.css
Description : スペシャル企画
===================================================================== */
/* =====================================================================
    spkikaku
======================================================================*/
.spkikaku {
  padding: 9.5rem 0 42.5rem;
}
.spkikaku .sec_ttl {
  margin-left: calc(-6 / 680 * 100%);
  width: calc(692 / 680 * 100%);
}

.spkikaku_article {
  position: relative;
  padding: calc(90 / 680 * 100%) calc(45 / 680 * 100%);
  background-color: #fff;
  border-radius: 4rem;
}
.spkikaku_article:nth-child(odd)::before {
  content: "";
  position: absolute;
  display: block;
  top: -10rem;
  left: -25.5rem;
  width: 51rem;
  height: 51rem;
  background: url(../images/common/img_deco1.png) no-repeat center/contain;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .spkikaku_article:nth-child(odd)::before {
    top: -28rem;
    left: -33.4rem;
  }
}
.spkikaku_article:nth-child(even):before {
  content: "";
  position: absolute;
  display: block;
  top: -10rem;
  right: -25.5rem;
  width: 51rem;
  height: 51rem;
  background: url(../images/common/img_deco1.png) no-repeat center/contain;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .spkikaku_article:nth-child(even):before {
    top: -28rem;
    right: -33.4rem;
  }
}
.spkikaku_article:not(:last-child) {
  margin-bottom: 8rem;
}
.spkikaku_article h3 {
  position: relative;
  text-align: center;
  margin-bottom: 6rem;
  padding-bottom: 5.5rem;
  font-size: 133%;
  font-weight: 700;
  line-height: 1.25;
  color: #f8699d;
}
.spkikaku_article h3::before {
  content: "";
  position: absolute;
  display: block;
  bottom: 0;
  left: 0;
  width: 100%;
  -o-border-image: linear-gradient(to right, #fcd950 8%, #f37a7b 27%, #ea7fa3 55%, #a2a9ff 75%, #53d6e8 100%) 1/0 0 2px 0;
     border-image: -webkit-gradient(linear, left top, right top, color-stop(8%, #fcd950), color-stop(27%, #f37a7b), color-stop(55%, #ea7fa3), color-stop(75%, #a2a9ff), to(#53d6e8)) 1/0 0 2px 0;
     border-image: linear-gradient(to right, #fcd950 8%, #f37a7b 27%, #ea7fa3 55%, #a2a9ff 75%, #53d6e8 100%) 1/0 0 2px 0;
  border-style: solid;
}
.spkikaku_article_contents > *:not(:last-child) {
  margin-bottom: 5rem;
}
.spkikaku_article .img_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 3rem;
}
.spkikaku_article .img_list li {
  position: relative;
  margin-bottom: 4.0677966102%;
  width: 67.7966101695%;
}
.spkikaku_article .img_list li::before {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  left: 50%;
  width: 100%;
  padding-top: 66.66%;
  border-radius: 4rem;
  background: linear-gradient(45deg, #fcd950 8%, #f37a7b 27%, #ea7fa3 55%, #a2a9ff 75%, #53d6e8 100%);
  -webkit-filter: blur(2rem);
          filter: blur(2rem);
  -webkit-transform: translate(-50%, 0) scale(-1, -1);
          transform: translate(-50%, 0) scale(-1, -1);
}
.spkikaku_article .img_list li img {
  position: relative;
  border-radius: 2rem;
  overflow: hidden;
}
.spkikaku_article .img_list li figure {
  position: relative;
}
.spkikaku_article .img_list li figure figcaption {
  position: relative;
  text-align: center;
  width: 100%;
  padding: 0.4em 0;
  font-size: 2.2rem;
  font-weight: 500;
  line-height: 1.2;
  z-index: 1;
}
.spkikaku_article .img_list.column2 li {
  margin-right: 4.0677966102%;
  width: 47.4576271186%;
}
.spkikaku_article .img_list.column2 li:nth-child(2n), .spkikaku_article .img_list.column2 li:last-child {
  margin-right: 0;
}
.spkikaku_article p {
  text-align: center;
  font-weight: 500;
  line-height: 1.666;
}

@media screen and (min-width: 768px) {
  .spkikaku {
    padding-top: 6rem;
  }
  .spkikaku .sec_ttl {
    margin-left: auto;
    width: calc(509 / 1080 * 100%);
  }
  .spkikaku_article {
    margin: 0 auto 5rem;
    padding: calc(80 / 1080 * 100%) calc(145 / 1080 * 100%);
    max-width: 880px;
  }
  .spkikaku_article:not(:last-child) {
    margin-bottom: 8rem;
  }
  .spkikaku_article h3 {
    margin-bottom: 6rem;
    padding-bottom: 4rem;
    font-size: 160%;
    line-height: 1.333;
  }
  .spkikaku_article .img_list li {
    margin-bottom: 3rem;
  }
  .spkikaku_article .img_list li figure figcaption {
    font-size: 1.8rem;
  }
  .spkikaku_article p {
    font-size: max(2.2rem, 18px);
  }
}
/* =====================================================================
    line
======================================================================*/
.line {
  padding: 9.5rem 0 42.5rem;
}
.line .sec_ttl {
  margin-left: calc(-6 / 680 * 100%);
  width: calc(692 / 680 * 100%);
}
.line .head {
  margin-bottom: 8rem;
}
.line .head_txt {
  text-align: center;
  margin-bottom: 5rem;
}
.line .head_txt span {
  display: inline-block;
  font-size: 155%;
  line-height: 1.5;
  color: #fff;
}

.line_img {
  margin: 0 auto;
  width: calc(380 / 680 * 100%);
}

.line_article {
  position: relative;
  padding: calc(90 / 680 * 100%) calc(45 / 680 * 100%);
  background-color: #fff;
  border-radius: 4rem;
}
.line_article:nth-child(odd)::before {
  content: "";
  position: absolute;
  display: block;
  top: -10rem;
  left: -25.5rem;
  width: 51rem;
  height: 51rem;
  background: url(../images/common/img_deco1.png) no-repeat center/contain;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .line_article:nth-child(odd)::before {
    top: -28rem;
    left: -33.4rem;
  }
}
.line_article:nth-child(even):before {
  content: "";
  position: absolute;
  display: block;
  top: -10rem;
  right: -25.5rem;
  width: 51rem;
  height: 51rem;
  background: url(../images/common/img_deco1.png) no-repeat center/contain;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .line_article:nth-child(even):before {
    top: -28rem;
    right: -33.4rem;
  }
}
.line_article:not(:last-child) {
  margin-bottom: 8rem;
}
.line_article h3 {
  position: relative;
  text-align: center;
  margin-bottom: 6rem;
  padding-bottom: 5.5rem;
  font-size: 133%;
  font-weight: 700;
  line-height: 1.25;
  color: #f8699d;
}
.line_article h3::before {
  content: "";
  position: absolute;
  display: block;
  bottom: 0;
  left: 0;
  width: 100%;
  -o-border-image: linear-gradient(to right, #fcd950 8%, #f37a7b 27%, #ea7fa3 55%, #a2a9ff 75%, #53d6e8 100%) 1/0 0 2px 0;
     border-image: -webkit-gradient(linear, left top, right top, color-stop(8%, #fcd950), color-stop(27%, #f37a7b), color-stop(55%, #ea7fa3), color-stop(75%, #a2a9ff), to(#53d6e8)) 1/0 0 2px 0;
     border-image: linear-gradient(to right, #fcd950 8%, #f37a7b 27%, #ea7fa3 55%, #a2a9ff 75%, #53d6e8 100%) 1/0 0 2px 0;
  border-style: solid;
}
.line_article_contents > *:not(:last-child) {
  margin-bottom: 5rem;
}
.line_article .img_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 3rem;
}
.line_article .img_list li {
  position: relative;
  margin-bottom: 4.0677966102%;
  width: 67.7966101695%;
}
.line_article .img_list li::before {
  content: "";
  position: absolute;
  display: block;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  border-radius: 4rem;
  background: linear-gradient(45deg, #fcd950 8%, #f37a7b 27%, #ea7fa3 55%, #a2a9ff 75%, #53d6e8 100%);
  -webkit-filter: blur(2rem);
          filter: blur(2rem);
  -webkit-transform: translate(-50%, -50%) scale(-1, -1);
          transform: translate(-50%, -50%) scale(-1, -1);
}
.line_article .img_list li img {
  position: relative;
  border-radius: 2rem;
  overflow: hidden;
}
.line_article .img_list li figure {
  position: relative;
}
.line_article .img_list li figure figcaption {
  text-align: center;
  width: 100%;
  padding: 0.4em 0;
  font-size: 2rem;
  font-weight: 500;
}
.line_article .img_list.column2 li {
  margin-right: 4.0677966102%;
  width: 47.4576271186%;
}
.line_article .img_list.column2 li:nth-child(2n), .line_article .img_list.column2 li:last-child {
  margin-right: 0;
}
.line_article p {
  text-align: center;
  font-weight: 500;
  line-height: 1.666;
}

@media screen and (min-width: 768px) {
  .line {
    padding-top: 6rem;
  }
  .line .sec_ttl {
    margin-left: auto;
    width: calc(509 / 1080 * 100%);
  }
  .line_img {
    width: calc(380 / 1080 * 100%);
  }
  .line_article {
    margin: 0 auto 5rem;
    padding: calc(80 / 1080 * 100%) calc(145 / 1080 * 100%);
    max-width: 880px;
  }
  .line_article:not(:last-child) {
    margin-bottom: 8rem;
  }
  .line_article h3 {
    margin-bottom: 6rem;
    padding-bottom: 4rem;
    font-size: 160%;
    line-height: 1.333;
  }
  .line_article .img_list li {
    margin-bottom: 3rem;
  }
  .line_article .img_list li figure figcaption {
    font-size: 1.8rem;
  }
  .line_article p {
    font-size: max(2.2rem, 18px);
  }
}/*# sourceMappingURL=spkikaku.css.map */