@charset "UTF-8";
/*
* function.css
*
*/
/* ------------------------
  c-circles（機能詳細は別）
------------------------ */
.c-circles {
  overflow: hidden; 
  position: absolute;
  width: 100%;
  height: 100%;
}
.c-circles .c-circle {
  position: absolute;
  border-style: solid;
  border-radius: 50%;
}

.l-cover_circles {
  z-index: 1;
  top: 0;
  height: 100%;

  mix-blend-mode: overlay;
}
@media (min-width: 768px) {
  .l-cover_circles {
    height: 100%;
  }
}
.l-cover_circles .circle_01 {
  top: -145px;
  left: -153px;
  border-width: 60px;
  border-color: rgba(255, 255, 255, 0.141); 
  width: 250px;
  height: 250px;
}
@media (min-width: 768px) {
  .l-cover_circles .circle_01 {
    top: -444px;
    left: -448px;
    border-width: 190px;
    border-color: rgba(255, 255, 255, 0.102); 
    width: 786px;
    height: 786px;
  }
}
.l-cover_circles .circle_02 {
  top: -248px;
  right: -210px;
  border-width: 75px;
  border-color: rgba(255, 255, 255, 0.102); 
  width: 314px;
  height: 314px;
}
@media (min-width: 768px) {
  .l-cover_circles .circle_02 {
    top: -252px;
    right: -254px;
    border-width: 100px; 
    width: 416px;
    height: 416px;
  }
}
.l-cover_circles .circle_03 {
  right: -162px;
  bottom: -173px;
  border-width: 60px;
  border-color: rgba(255, 255, 255, 0.161); 
  width: 250px;
  height: 250px;
}
@media (min-width: 768px) {
  .l-cover_circles .circle_03 {
    top: 262px;
    right: -500px;
    border-width: 232px; 
    width: 980px;
    height: 980px;
  }
}
.l-cover_circles.is-scrollReady .c-circle {
  -webkit-transition: 0.6s opacity cubic-bezier(0, 0, 0.58, 1), 0.6s visibility cubic-bezier(0, 0, 0.58, 1), 0.6s -webkit-transform cubic-bezier(0, 0, 0.58, 1);
  transition: 0.6s opacity cubic-bezier(0, 0, 0.58, 1), 0.6s visibility cubic-bezier(0, 0, 0.58, 1), 0.6s -webkit-transform cubic-bezier(0, 0, 0.58, 1);
  transition: 0.6s opacity cubic-bezier(0, 0, 0.58, 1), 0.6s visibility cubic-bezier(0, 0, 0.58, 1), 0.6s transform cubic-bezier(0, 0, 0.58, 1);
  transition: 0.6s opacity cubic-bezier(0, 0, 0.58, 1), 0.6s visibility cubic-bezier(0, 0, 0.58, 1), 0.6s transform cubic-bezier(0, 0, 0.58, 1), 0.6s -webkit-transform cubic-bezier(0, 0, 0.58, 1); 
  -webkit-transform: translate(-50%, 0) scale(0.2); 
      -ms-transform: translate(-50%, 0) scale(0.2); 
          transform: translate(-50%, 0) scale(0.2);
}
.l-cover_circles.is-scrollReady .circle_01 {
  -webkit-transition-delay: 1s;
          transition-delay: 1s; 
  -webkit-transform: scale(0.2); 
      -ms-transform: scale(0.2); 
          transform: scale(0.2);
}
.l-cover_circles.is-scrollReady .circle_02 {
  -webkit-transition-delay: 1s;
          transition-delay: 1s; 
  -webkit-transform: scale(0.2); 
      -ms-transform: scale(0.2); 
          transform: scale(0.2);
}
.l-cover_circles.is-scrollReady .circle_03 {
  -webkit-transition-delay: 1s;
          transition-delay: 1s; 
  -webkit-transform: scale(0.2); 
      -ms-transform: scale(0.2); 
          transform: scale(0.2);
}
.l-cover_circles.is-scrollReady.is-scrollAction .circle_01 {
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
}
.l-cover_circles.is-scrollReady.is-scrollAction .circle_02 {
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
}
.l-cover_circles.is-scrollReady.is-scrollAction .circle_03 {
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
}

/* --------------------------------
   cover（機能詳細は別）
-------------------------------- */
.l-cover {
  position: relative;
}

.l-cover_inner {
  position: relative;
  z-index: 1;
  padding: 63px 0 0;
  background-repeat: no-repeat; 
  background-size: 100%;
}
@media (min-width: 768px) {
  .l-cover_inner {
    padding: 105px 0 0;
    background-size: 100%;
  }
}
.l-cover_inner::after {
  z-index: -1;
}

.l-cover_txts {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  position: relative;
  z-index: 1; 
  height: 153px;

  -webkit-box-pack: center;

      -ms-flex-pack: center;

          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (min-width: 768px) {
  .l-cover_txts {
    padding: 0; 
    height: 203px;
  }
}
.l-cover_txts.is-scrollReady .cover_h {
  visibility: hidden;
  opacity: 0;
  -webkit-transition: 0.6s opacity cubic-bezier(0, 0, 0.58, 1), 0.6s visibility cubic-bezier(0, 0, 0.58, 1), 0.6s -webkit-transform cubic-bezier(0, 0, 0.58, 1);
  transition: 0.6s opacity cubic-bezier(0, 0, 0.58, 1), 0.6s visibility cubic-bezier(0, 0, 0.58, 1), 0.6s -webkit-transform cubic-bezier(0, 0, 0.58, 1);
  transition: 0.6s opacity cubic-bezier(0, 0, 0.58, 1), 0.6s visibility cubic-bezier(0, 0, 0.58, 1), 0.6s transform cubic-bezier(0, 0, 0.58, 1);
  transition: 0.6s opacity cubic-bezier(0, 0, 0.58, 1), 0.6s visibility cubic-bezier(0, 0, 0.58, 1), 0.6s transform cubic-bezier(0, 0, 0.58, 1), 0.6s -webkit-transform cubic-bezier(0, 0, 0.58, 1);
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s; 
  -webkit-transform: translate(0, 30px); 
      -ms-transform: translate(0, 30px); 
          transform: translate(0, 30px);
}
.l-cover_txts.is-scrollReady .cover_txt {
  visibility: hidden;
  opacity: 0;
  -webkit-transition: 0.6s opacity cubic-bezier(0, 0, 0.58, 1), 0.6s visibility cubic-bezier(0, 0, 0.58, 1), 0.6s -webkit-transform cubic-bezier(0, 0, 0.58, 1);
  transition: 0.6s opacity cubic-bezier(0, 0, 0.58, 1), 0.6s visibility cubic-bezier(0, 0, 0.58, 1), 0.6s -webkit-transform cubic-bezier(0, 0, 0.58, 1);
  transition: 0.6s opacity cubic-bezier(0, 0, 0.58, 1), 0.6s visibility cubic-bezier(0, 0, 0.58, 1), 0.6s transform cubic-bezier(0, 0, 0.58, 1);
  transition: 0.6s opacity cubic-bezier(0, 0, 0.58, 1), 0.6s visibility cubic-bezier(0, 0, 0.58, 1), 0.6s transform cubic-bezier(0, 0, 0.58, 1), 0.6s -webkit-transform cubic-bezier(0, 0, 0.58, 1);
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s; 
  -webkit-transform: translate(0, 30px); 
      -ms-transform: translate(0, 30px); 
          transform: translate(0, 30px);
}
.l-cover_txts.is-scrollReady.is-scrollAction .cover_h {
  visibility: visible;
  opacity: 1;
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}
.l-cover_txts.is-scrollReady.is-scrollAction .cover_txt {
  visibility: visible;
  opacity: 1;
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}

.l-cover_h {
  position: relative;
  text-align: center;
}
.l-cover_h::after {
  content: normal;
}
.l-cover_h .sub_h {
  display: block;
  letter-spacing: 0.16em;
  color: #fff;
  font-family: "Hiragino Kaku Gothic W7 JIS2004", Meiryo;
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 1.5;
}
@media (min-width: 768px) {
  .l-cover_h .sub_h {
    letter-spacing: 0; 
    font-size: 2rem;
  }
}
.l-cover_h .main_h {
  display: inline-block;
  margin: 10px 0 0;
  letter-spacing: 0.06em;
  color: #fff;
  font-family: "NOW-GE", sans-serif;
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 1.22727;

  -ms-font-feature-settings: "normal";
}
@media (min-width: 768px) {
  .l-cover_h .main_h {
    margin-top: 3px;
    letter-spacing: 5px; 
    font-size: 4.8rem;
  }
}
.l-cover_h .main_h .change-font {
  font-family: "Montserrat", sans-serif;
  font-size: 2.4rem;
  font-weight: bold; 
  line-height: 1;
}
@media (min-width: 768px) {
  .l-cover_h .main_h .change-font {
    letter-spacing: 3px; 
    font-size: 5rem;
  }
}
.l-cover_h .detail_txt {
  display: block;
  color: #fff;
  font-family: "NOW-GE", sans-serif;
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 2.25;

  -ms-font-feature-settings: "normal";
}
@media (min-width: 768px) {
  .l-cover_h .detail_txt {
    font-size: 2.1rem;
    line-height: 1.71429;
  }
}

/* --------------------------------
   intro
-------------------------------- */
.pageContainer {
  overflow: hidden;
  position: relative;
  height: 100%;
}

.intro {
  position: relative;
  padding: 60px 0;
}
@media (min-width: 768px) {
  .intro {
    padding: 120px 0 130px;
  }
}

.intro_inner {
  display: -ms-grid;
  display: grid;

      grid-template-areas: "h" "img" "txt";
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
}
@media (min-width: 768px) {
  .intro_inner {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
        grid-template-areas: "h img" "txt img";
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.intro_h {
  margin: 8px 10px 0;
  font-family: "Hiragino Kaku Gothic W7 JIS2004", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, YuGothic, sans-serif;
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 1.54545; 

  -ms-grid-row: 1; 

  -ms-grid-column: 1; 

  grid-area: h;
}
@media (min-width: 768px) {
  .intro_h {
    display: inline-block;
    margin: 0;
    text-align: left; 
    letter-spacing: 5px;
    font-size: 3.8rem;
    line-height: 1.52632;
  }
}

.intro_txt {
  margin: 25px 10px 0;
  color: #2a445a; 
  font-size: 1.3rem;
  line-height: 1.92308;
}
@media (min-width: 768px) {
  .intro_txt {
    margin: 15px 0 0;
    max-width: 450px;
    letter-spacing: 0.32em; 
    font-size: 1.6rem;
    line-height: 2.4375;
  }
}

.intro_img_lg {
  margin-top: 36.73px; 

  -ms-grid-row: 1; 

  -ms-grid-column: 1; 

  grid-area: img;
}
@media (min-width: 768px) {
  .intro_img_lg {
    margin-top: 0; 
    max-width: 525px;
  }
}
.intro_img_lg img {
  width: 100%;
}

/* --------------------------------
   featureIndex
-------------------------------- */
.p-section {
  padding-block: 80px;
}
@media (min-width: 768px) {
  .p-section {
    padding-block: 120px;
  }
}

.p-section_h {
  text-align: center;
}
.p-section_h span {
  position: relative;
  padding-bottom: 14px; 
  font-family: "Hiragino Kaku Gothic W7 JIS2004", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, YuGothic, sans-serif;
  font-size: 2.4rem;
  font-weight: bold;
}
@media (min-width: 768px) {
  .p-section_h span {
    padding-bottom: 18px; 
    font-size: 4rem;
  }
}
.p-section_h span::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  border-radius: 3px; 
  width: 100%;
  height: 3px;
  background: #098bde;
}
@media (min-width: 768px) {
  .p-section_h span::after {
    height: 4px;
  }
}
.p-section_h__sm span {
  padding-bottom: 20px;
  font-family: "Hiragino Kaku Gothic W7 JIS2004", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, YuGothic, sans-serif;
  font-size: 1.9rem;
  font-weight: bold;
}
@media (min-width: 768px) {
  .p-section_h__sm span {
    padding-bottom: 26px;
    font-family: "Hiragino Kaku Gothic W7 JIS2004", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, YuGothic, sans-serif;
    font-size: 3.4rem;
    font-weight: bold;
  }
}
.p-section_h__sm span::after {
  width: 35px;
}
@media (min-width: 768px) {
  .p-section_h__sm span::after {
    width: 48px;
  }
}
.p-section_h.change-color {
  color: #fff;
}
.p-section_h.change-color span::after {
  background-color: #fff;
}

.about_card {
  display: -ms-grid;
  display: grid;
  margin-top: 40px; 

      grid-template-areas: "txt" "img" "btn";
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
}
@media (min-width: 768px) {
  .about_card {
    margin-top: 60px;

        grid-template-areas: "txt img" "btn img";
    -ms-grid-columns: 1fr 75px 1fr;
    grid-template-columns: 1fr 1fr;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-column-gap: 75px;
       -moz-column-gap: 75px;
            column-gap: 75px;
  }
  .about_card__reverse {
        grid-template-areas: "img txt" "img btn";
  }
}

.about_card_txts {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
  grid-area: txt;
}

@media (min-width: 768px) {
  .intro_h {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .intro_img_lg {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 2;
  }
  .about_card_txts {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
}

.about_card_h {
  text-align: center; 
  color: #098bde;
  font-family: "Hiragino Kaku Gothic W7 JIS2004", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, YuGothic, sans-serif;
  font-family: "Hiragino Kaku Gothic W7 JIS2004", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, YuGothic, sans-serif;
  font-size: 1.9rem;
  font-weight: bold;
  font-weight: bold;
}
@media (min-width: 768px) {
  .about_card_h {
    text-align: start; 
    font-family: "Hiragino Kaku Gothic W7 JIS2004", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, YuGothic, sans-serif;
    font-size: 2.4rem;
    font-weight: bold;
  }
}

.about_card_txt {
  margin-top: 20px;
  font-size: 1.3rem; 
  font-weight: 400;
}
@media (min-width: 768px) {
  .about_card_txt {
    font-size: 1.6rem;
  }
}

.about_card_img {
  border-radius: 8px;
  -webkit-box-shadow: 4px 4px 20px 2px rgba(9, 139, 222, 0.3);
          box-shadow: 4px 4px 20px 2px rgba(9, 139, 222, 0.3); 

  -ms-grid-row: 1; 

  -ms-grid-column: 1; 

  grid-area: img;
}

@media (min-width: 768px) {
  .intro_img_lg {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 3;
  }
  .about_card_txts {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .about_card_img {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 3;
  }
}
@media (max-width: 767.98px) {
  .about_card_img {
    margin: 20px 0 0;
  }
}
.about_card_img.__video video {
  overflow: hidden; 
  border-radius: 8px;
  width: 100%;
  height: auto;
}
@media (min-width: 768px) {
  .about_card_img.__video video {
    width: 522px;
  }
}
.about_card_img img {
  width: 100%;
}

.about_card_btn {
  margin: 30px auto 0; 

  -ms-grid-row: 3; 

  -ms-grid-column: 1; 

  grid-area: btn;
}
@media (min-width: 768px) {
  .about_card_btn {
    margin: 30px 0 0;
  }
}
@media (min-width: 768px) {
  .about_card__reverse .about_card_btn {
    -ms-flex-item-align: start;
        align-self: flex-start;
  }
}

.about_card_wrapper {
  margin-top: 71px;
}
@media (min-width: 768px) {
  .about_card_wrapper {
    margin-top: 120px;
  }
}

/* --------------------------------
   Merit
-------------------------------- */
.p-merit.c-bg_gradation {
  background-image: -webkit-gradient(linear, left top, right top, from(#00beff), color-stop(35%, #0098ec), color-stop(55%, #007bd7), color-stop(75%, #0062c4), to(#004bb1));
  background-image: linear-gradient(90deg, #00beff 0%, #0098ec 35%, #007bd7 55%, #0062c4 75%, #004bb1 100%);
}

.p-merit_body {
  display: block;
  margin-top: 40px; 
  border-radius: 8px;
  background-color: #fff;
}
@media (min-width: 768px) {
  .p-merit_body {
    display: -ms-grid;
    display: grid;
    margin-top: 60px; 

    -ms-grid-columns: 1fr 1fr; 

        grid-template-columns: 1fr 1fr;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.p-merit_card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 50px 26px;
  border-bottom: 1px solid #e1e8f1;

  -webkit-box-align: center;

      -ms-flex-align: center;

          align-items: center;
  gap: 23px;
}
@media (min-width: 768px) {
  .p-merit_card {
    padding: 60px 0;

    gap: 30px;
  }
}
@media (min-width: 768px) {
  .p-merit_card:nth-of-type(1) {
    border-right: 1px solid #e1e8f1;
    border-bottom: 1px solid #e1e8f1;
  }
}
@media (min-width: 768px) {
  .p-merit_card:nth-of-type(2) {
    border-bottom: 1px solid #e1e8f1; 
    border-left: 1px solid #e1e8f1;
  }
}
@media (min-width: 768px) {
  .p-merit_card:nth-of-type(3) {
    border-top: 1px solid #e1e8f1;
    border-right: 1px solid #e1e8f1;
    border-bottom: none;
  }
}
.p-merit_card:nth-of-type(4) {
  border-bottom: none;
}
@media (min-width: 768px) {
  .p-merit_card:nth-of-type(4) {
    border-top: 1px solid #e1e8f1;
    border-left: 1px solid #e1e8f1;
  }
}

.p-merit_card_h {
  display: -ms-grid;
  display: grid;
  text-align: center; 

  justify-items: center;
  gap: 10px;
}
@media (min-width: 768px) {
  .p-merit_card_h {
    gap: 12px;
  }
}
.p-merit_card_h p {
  display: inline-block;
  border-radius: 999px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background-color: #ee3556;
  color: #fff;
  font-family: "Hiragino Kaku Gothic W7 JIS2004", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, YuGothic, sans-serif;
  font-size: 1.2rem;
  font-weight: bold;

  padding-inline: 10px;
}
@media (min-width: 768px) {
  .p-merit_card_h p {
    font-size: 1.4rem;

    padding-inline: 12px;
  }
}
.p-merit_card_h h4 {
  color: #098bde;
  font-family: "Hiragino Kaku Gothic W7 JIS2004", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, YuGothic, sans-serif;
  font-family: "Hiragino Kaku Gothic W7 JIS2004", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, YuGothic, sans-serif;
  font-size: 1.9rem;
  font-weight: bold;
  font-weight: bold;
  line-height: 1.2;
}
@media (min-width: 768px) {
  .p-merit_card_h h4 {
    font-family: "Hiragino Kaku Gothic W7 JIS2004", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, YuGothic, sans-serif;
    font-size: 2.4rem;
    font-weight: bold;
  }
}

.p-merit_card_img img {
  height: 180px;
}
@media (min-width: 768px) {
  .p-merit_card_img img {
    height: 200px;
  }
}

.p-merit_card:nth-of-type(2) .p-merit_card_img,
.p-merit_card:nth-of-type(3) .p-merit_card_img {
  position: relative; 
  left: 5px;
}

.p-merit_card_txt {
  font-size: 1.2rem;
}
@media (min-width: 768px) {
  .p-merit_card_txt {
    padding: 0 60px; 
    font-size: 1.6rem;
  }
}

/*----------------------------------------
   howto
----------------------------------------*/
.p-howto_content {
  position: relative; 

  padding-block: 70px;
}
@media (min-width: 768px) {
  .p-howto_content {
    padding-block: 100px;
  }
}
.p-howto_content::before {
  content: "";
  position: absolute;
  bottom: 0;
  border-bottom: 2px solid #e1e8f1; 
  width: 100%;
}
.p-howto_content:first-of-type {
  -webkit-padding-before: 40px;
          padding-block-start: 40px;
}
@media (min-width: 768px) {
  .p-howto_content:first-of-type {
    -webkit-padding-before: 61.5px;
            padding-block-start: 61.5px;
  }
}
.p-howto_content:last-of-type {
  -webkit-padding-after: 0px;
          padding-block-end: 0px;
}
.p-howto_content:last-of-type::before {
  display: none;
}

.p-howto_slider_h {
  color: #098bde;
  font-family: "Hiragino Kaku Gothic W7 JIS2004", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, YuGothic, sans-serif;
  font-family: "Hiragino Kaku Gothic W7 JIS2004", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, YuGothic, sans-serif;
  font-size: 1.9rem;
  font-weight: bold;
  font-weight: bold;
  line-height: 1.4;
}
@media (min-width: 768px) {
  .p-howto_slider_h {
    font-size: 3.2rem;
  }
}

.p-howto_slider_txt {
  margin-top: 25px;
  font-size: 1.3rem;
}
@media (min-width: 768px) {
  .p-howto_slider_txt {
    margin-top: 21px;
    text-align: center; 
    font-size: 1.6rem;
  }
}

.p-howto_slider_mainImg {
  padding: 20px 10px;
}
@media (min-width: 768px) {
  .p-howto_slider_mainImg {
    padding: 27px 40px 30px;
  }
  .p-howto_slider_mainImg img {
    max-width: 1040px;
  }
}

.p-howto_slider_desc p {
  border: none;
  font-size: 1rem;
}
@media (min-width: 768px) {
  .p-howto_slider_desc p {
    font-size: 1.4rem;
  }
}
.p-howto_slider_desc p::before,
.p-howto_slider_desc p::after {
  display: none;
}

.slick-track {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
}

.slick-slide {
  height: auto !important;
  background-color: #f3f3f3 !important;
}

.c-setSlider_mainImg {
  background-color: #fff !important;
}

@media screen and (min-width: 767px) and (max-width: 1300px) {
  .c-setSlider_main .slick-prev {
    top: auto;
    bottom: -120px;
    left: 0px;
  }
  .c-setSlider_main .slick-next {
    top: auto;
    right: 0px; 
    bottom: -120px;
  }
}

@media screen and (min-width: 767px) and (max-width: 1024px) {
  .slick-initialized .slick-slide {
    max-width: 980px;
  }
}

@media screen and (min-width: 1025px) and (max-width: 1300px) {
  .slick-initialized .slick-slide {
    width: 95vw;
    max-width: 1120px;
  }
}

.c-setSlider {
  margin-top: 25px;
}
@media (min-width: 768px) {
  .c-setSlider {
    margin-top: 55px;
  }
}

.p-howto_card {
  -webkit-margin-before: 60px;
          margin-block-start: 60px;
}
@media (min-width: 768px) {
  .p-howto_card {
    -webkit-margin-before: 80px;
            margin-block-start: 80px;
  }
}

.p-howto_card_h {
  text-align: center;
  font-family: "Hiragino Kaku Gothic W7 JIS2004", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, YuGothic, sans-serif;
  font-family: "Hiragino Kaku Gothic W7 JIS2004", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, YuGothic, sans-serif;
  font-size: 1.9rem;
  font-weight: bold;
  font-weight: bold; 
  line-height: 1.2;
}
@media (min-width: 768px) {
  .p-howto_card_h {
    font-family: "Hiragino Kaku Gothic W7 JIS2004", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, YuGothic, sans-serif;
    font-size: 2.4rem;
    font-weight: bold;
  }
}

.p-howto_card_body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-top: 19.77px;
  padding: 23px 24px 40px;
  border-radius: 8px;
  background-color: #fff;
  -webkit-box-shadow: 4px 4px 20px 2px rgba(9, 139, 222, 0.3);
          box-shadow: 4px 4px 20px 2px rgba(9, 139, 222, 0.3);
}
@media (min-width: 768px) {
  .p-howto_card_body {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    margin-top: 30px;
    padding: 24px 20px 24px 73px;
    height: 208px; 

    gap: 40px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.p-howto_card_img {
  width: 100%; 

  padding-inline: 16px;
}
@media (min-width: 768px) {
  .p-howto_card_img {
    padding: 0;
    width: auto; 
    height: 100%;
  }
}
.p-howto_card_img img {
  width: 100%;
}

.p-howto_card_txt {
  display: -ms-grid;
  display: grid;
  margin-top: 16px;
  color: #098bde;
  font-family: "Hiragino Kaku Gothic W7 JIS2004", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, YuGothic, sans-serif;
  font-size: 1.4rem;
  font-weight: bold;

  gap: 12px;
}
@media (min-width: 768px) {
  .p-howto_card_txt {
    margin-top: 0; 
    font-size: 2rem;
  }
}
.p-howto_card_txt p {
  position: relative;
  padding-left: 28px;
}
@media (min-width: 768px) {
  .p-howto_card_txt p {
    padding-left: 38px;
  }
}
.p-howto_card_txt p::before {
  content: "";
  position: absolute;
  top: 3px;
  left: 0;
  width: 18px;
  height: 18px;
  background: url(/assets/img/common/icon_check.png) no-repeat;
  background-size: 18px 18px;
}
@media (min-width: 768px) {
  .p-howto_card_txt p::before {
    top: 7px;
    width: 22px;
    height: 22px;
    background-size: 22px 22px;
  }
}

/*---------------------------------
    Detail
---------------------------------*/
.p-detail .__2line span {
  padding-bottom: 8px;
}

.p-detail_media {
  margin-top: 40px;
}
@media (min-width: 768px) {
  .p-detail_media {
    margin-top: 60px;
  }
}

.p-detail_media_h {
  text-align: center;
  font-family: "Hiragino Kaku Gothic W7 JIS2004", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, YuGothic, sans-serif;
  font-family: "Hiragino Kaku Gothic W7 JIS2004", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, YuGothic, sans-serif;
  font-size: 1.9rem;
  font-weight: bold;
  font-weight: bold;
}
@media (min-width: 768px) {
  .p-detail_media_h {
    font-family: "Hiragino Kaku Gothic W7 JIS2004", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, YuGothic, sans-serif;
    font-size: 2.4rem;
    font-weight: bold;
  }
}

.p-detail_media_body {
  display: -ms-grid;
  display: grid;
  margin-top: 35px; 

      -ms-grid-columns: 1fr; 

      grid-template-columns: 1fr;
      grid-template-areas: "img" "txt";
}
@media (min-width: 768px) {
  .p-detail_media_body {
    margin-top: 40px; 

        grid-template-areas: "txt img";
    -ms-grid-columns: 1fr 80px 1fr;
    grid-template-columns: 1fr 1fr;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-column-gap: 80px;
       -moz-column-gap: 80px;
            column-gap: 80px;
  }
}

.p-detail_media_img {
  position: relative;
  padding: 7px;
  border-radius: 8px;
  background-color: #fff;
  -webkit-box-shadow: 4px 4px 20px 2px rgba(9, 139, 222, 0.3);
          box-shadow: 4px 4px 20px 2px rgba(9, 139, 222, 0.3); 

  -ms-grid-row: 1; 

  -ms-grid-column: 1; 

  grid-area: img;
}
@media (min-width: 768px) {
  .p-detail_media_img {
    padding: 10px;
  }
}
.p-detail_media_img img:not(.c-balloon) {
  width: 100%;
}

.p-detail_media_txts {
  margin-top: 28px; 
  line-height: 1.6;

  -ms-grid-row: 2;

  -ms-grid-column: 1;

  grid-area: txt;
}
@media (min-width: 768px) {
  .p-detail_media_txts {
    margin-top: 0;
  }
}
.p-detail_media_txts dt {
  padding-left: 12px;
  border-left: solid 4px #098bde; 
  font-family: "Hiragino Kaku Gothic W7 JIS2004", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, YuGothic, sans-serif;
  font-size: 1.4rem;
  font-weight: bold;
}
@media (min-width: 768px) {
  .p-detail_media_txts dt {
    padding-left: 14px; 
    font-size: 1.8rem;
  }
}
.p-detail_media_txts dd {
  position: relative;
  margin-top: 10px;
  padding-left: 13px; 
  font-size: var(--txt-height);

  --txt-height: 1.2rem;
  --dot-position: calc(var(--txt-height) * 1.6 / 2);
}
@media (min-width: 768px) {
  .p-detail_media_txts dd {
    margin-top: 15px;
    padding-left: 16px; 

    --txt-height: 1.6rem;
  }
}
.p-detail_media_txts dd::before {
  content: "";
  position: absolute;
  top: var(--dot-position);
  left: 0;
  border-radius: 50%;
  width: 8px;
  height: 8px;
  -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%); 
  background-color: #098bde;
}

.p-detail_media_btn {
  left: 50%;
  margin-top: 30px;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media (min-width: 768px) {
  .p-detail_media_btn {
    left: 0;
    margin-top: 40px;
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
  }
}

.p-detail_card_wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-top: 70px;

  gap: 40px;
}
@media (min-width: 768px) {
  .p-detail_card_wrapper {
    margin: 100px auto 0;
    width: 900px; 

    gap: 60px;
  }
}

.p-detail_card {
  display: -ms-grid;
  display: grid;
  overflow: hidden;
  border-radius: 8px;
  -webkit-transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1);
  transition: opacity 0.3s cubic-bezier(0, 0, 0.58, 1); 
  background-color: #fff;
  text-decoration: none !important;
  -webkit-box-shadow: 4px 4px 20px 2px rgba(9, 139, 222, 0.3);
          box-shadow: 4px 4px 20px 2px rgba(9, 139, 222, 0.3);

  -ms-grid-columns: 1fr;

      grid-template-columns: 1fr;
}
@media (min-width: 768px) {
  .p-detail_card {
    min-height: 320px;

    -ms-grid-columns: 368px auto;

        grid-template-columns: 368px auto;
  }
}
.p-detail_card:hover {
  opacity: 0.7;
}
.p-detail_card:hover .c-linkIcon-arw::after {
  opacity: 0;
}

.p-detail_card_img {
  overflow: hidden;
  position: relative;
  height: 100%;
  background-position: center; 
  background-size: cover;
}
@media (max-width: 767.98px) {
  .p-detail_card_img {
    width: 100%;
    height: auto;

    aspect-ratio: 350 / 175;
  }
}

.p-detail_card:first-of-type .p-detail_card_img {
  background-image: url(/assets/img/function/option/kintone/detail_card_img_01_sm.webp);
}
@media (min-width: 768px) {
  .p-detail_card:first-of-type .p-detail_card_img {
    background-image: url(/assets/img/function/option/kintone/detail_card_img_01_lg.webp);
  }
}

.p-detail_card:last-of-type .p-detail_card_img {
  background-image: url(/assets/img/function/option/kintone/detail_card_img_02_sm.webp);
}
@media (min-width: 768px) {
  .p-detail_card:last-of-type .p-detail_card_img {
    background-image: url(/assets/img/function/option/kintone/detail_card_img_02_lg.webp);
  }
}

.p-detail_card_content {
  padding: 30px;
}
@media (min-width: 768px) {
  .p-detail_card_content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 42px 60px; 

    -webkit-box-pack: justify; 

        -ms-flex-pack: justify; 

            justify-content: space-between;
  }
}

.p-detail_card_tag {
  display: inline-block;
  border-radius: 999px;
  background-color: #ee3556;
  text-decoration: none;
  color: #fff;
  font-family: "Hiragino Kaku Gothic W7 JIS2004", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, YuGothic, sans-serif;
  font-size: 1.2rem; 
  font-weight: bold;

  padding-inline: 8px;
}
@media (min-width: 768px) {
  .p-detail_card_tag {
    font-size: 1.4rem;

    padding-inline: 15px;
  }
}

.p-detail_card_h {
  margin-top: 10px; 
  letter-spacing: 2px;
  color: #000;
  font-family: "Hiragino Kaku Gothic W7 JIS2004", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, YuGothic, sans-serif;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.6;
}
@media (min-width: 768px) {
  .p-detail_card_h {
    font-family: "Hiragino Kaku Gothic W7 JIS2004", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, YuGothic, sans-serif;
    font-size: 2.4rem;
    font-weight: bold;
  }
}

.p-detail_card_txt {
  margin-top: 10px; 
  color: #000;
  font-size: 1.2rem;
}
@media (min-width: 768px) {
  .p-detail_card_txt {
    margin-top: 20px; 
    font-size: 1.4rem;
  }
}

.p-detail_card_btn {
  margin-top: 18px; 
  text-align: end;
  font-family: "Hiragino Kaku Gothic W7 JIS2004", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, YuGothic, sans-serif;
  font-size: 1.2rem;
  font-weight: bold;
}
@media (min-width: 768px) {
  .p-detail_card_btn {
    margin-top: 0; 
    font-size: 1.4rem;
  }
}
.p-detail_card_btn > span span {
  margin-left: 22px;
}
@media (min-width: 768px) {
  .p-detail_card_btn > span span {
    margin-left: 34px;
  }
}