@charset "utf-8";
.inner-box {
    width: 90%;
    max-width: 910px;
    margin: 0 auto;
}

.ttl-style2 {
    width: 96%;
    margin-left: 2%;
    margin-right: 2%;
    color: #505050;
    padding: 0.5em 0.5em 0.5em 1em;
    display: inline-block;
    line-height: 1.3;
    background: #d4f4d7;
    vertical-align: middle;
    border-radius: 25px 0px 0px 25px;
    font-size: 1.3em;
    box-sizing: border-box;
}

.marker {
  background: linear-gradient(transparent 60%, #FFF000 60%);
}

.worries-box {
  background-color: #D2D2D2;
  color: #585858;
  position: relative;
  margin-bottom:5rem;
}

.worries-box::after {
  content: "";
  position: absolute;
  /* ↓ 領域の真下に配置するための指定です */
  top: 100%;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  
  /* ↓ ここから三角形をつくる指定 */
  border-style: solid;
  border-top-width: 50px;
  border-right-width: 50vw;
  border-bottom-width: 0; /* ← 【重要】下ボーダーを0にして余計な線を消す */
  border-left-width: 50vw;
  
  border-top-color: #D2D2D2;
  border-right-color: transparent;
  border-bottom-color: transparent; /* ← 念のため下ボーダーの色も透明に */
  border-left-color: transparent;
  
  /* ← 【重要】三角形を作るときは要素自体の高さと幅を0にします */
  width: 0;
  height: 0; 
}

/*
.worries-box::after {
  content: "";
  border-top-width: 50px;
  border-right-width: 50vw;
  border-left-width: 50vw;
  border-bottom-width: 0;
  box-sizing: border-box;
  border-style: solid;
  border-top-color: #D2D2D2;
  border-left-color: transparent;
  border-right-color: transparent;
  width: 100%;
  height: 40px;
  display: block;
  margin-left: auto;
  margin-right: auto;
  right: 0;
  left: 0;
  position: absolute;
}
  */


.worries-box img {
  max-width: 100px;
}

.worries-line-main {
  color: #FFFFFF;
  position: absolute;
  display: block;
  top: -20px;
  left: 1rem;
  right: 1rem;
  background-color: #585858;
  border-radius: 9999px;
  padding: 14px 10px;
  max-width: 720px;
  text-align: center;
  font-weight: 600;
  margin: 0 auto;
}

.worries-title {
  color: #585858;
  font-weight: 600;
  font-size: 1.25em;
  text-align: center;
}

.worries-lines {
  color: #212529;
  background-color: #FFFFFF;
  border: 2px solid #585858;
  border-radius: 9999px;
  padding: 10px;
  max-width: 600px;
  text-align: center;
  margin: 0 auto;
  font-size: 1em;
}


.swiper-container {
    margin-inline: auto;
    width: 80%;
    position: relative;
  }
  .swiper {
    width: 80%;
  }
  .swiper-slide img {
    height: auto;
    width: 100%;
  }

  /* 前への矢印 */
.swiper-button-prev {
    left: -20px;
    color: #0162AF;
  }
  /* 次への矢印 */
  .swiper-button-next {
    right: -20px;
    color: #0162AF;
  }
  /* ページネーション */
  .swiper-pagination-bullets.swiper-pagination-horizontal {
    bottom: -25px;
  }

 
.app-box .row,
.sns-box .row {
  margin-left: 0;
  margin-right: 0;
}

.f1class-caption,
.f2class-caption {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: normal;
  color: #FFFFFF;
  border-radius: 5px;
  padding: 2px 10px;
}
.f1class-caption {
  background-color: #F39B33;
}
.f2class-caption {
  background-color: #d48123;
}

.copyright {
  color: #737373;
}

  @media screen and (min-width: 960px) {
	/* 960px以上に適用されるCSS（PC用） */
    .ttl-style2 {
        font-size: 1.5em;
    }

    .worries-box img {
      max-width: 160px;
    }

    .worries-box::after {
      border-right-width: 480px;
      border-left-width: 480px;
    }

    .worries-lines {
      font-size: 1.2em;
    }
    
    /* 前への矢印 */
    .swiper-button-prev {
        left: -40px;
        color: #0162AF;
    }
    /* 次への矢印 */
    .swiper-button-next {
        right: -40px;
        color: #0162AF;
    }
}