@charset "utf-8";

/*  =============================================================

　　共通モジュール設定

============================================================= */

/*  AOSフェードイン処理
---------------------------------------------*/
[data-aos=fade-up]{transform:translate3d(0,30px,0)}

.sec01,.sec02,.sec03 {
  overflow-x: hidden;
}

/*  box
---------------------------------------------*/
.boxBg01 {
  padding: 60px 40px;
  border-radius: 30px;
  background-color: rgba(80,141,168,0.8);
}

@media screen and (max-width: 640px){
  .boxBg01 {
    padding: 30px 6%;
  }
}

/*  セクションタイトル
---------------------------------------------*/
.sectionTitle {
  position: relative;
  margin: 0 0 80px;
  padding: 0 0 30px;
  font-size: 4.4rem;
  text-align: center;
}

.sectionTitle::after {
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  right: 0;
  width: 936px;
  height: 17px;
  margin: 0 auto;
  background-image: url(/img/title-underline.svg);
  background-repeat: no-repeat;
}

.sectionTitle .text {
  font-weight: 700;
}


@media screen and (max-width: 820px){
  .sectionTitle {
    margin: 0 0 40px;
    font-size: 3.2rem;
    text-align: center;
    line-height: 1.5;
  }

  .sectionTitle::after {
    position: absolute;
    content: "";
    bottom: 0;
    left: 0;
    right: 0;
    width: 80%;
    height: 17px;
    margin: 0 auto;
    background-image: url(/img/title-underline.svg);
    background-repeat: no-repeat;
  }
}

@media screen and (max-width: 640px){
  .sectionTitle {
    margin: 0 0 40px;
    font-size: 2.2rem;
    padding: 0 0 10px;
    text-align: center;
    line-height: 1.5;
  }

  .sectionTitle::after {
    position: absolute;
    content: "";
    bottom: 0;
    left: 0;
    right: 0;
    width: 90%;
    height: 8px;
    margin: 0 auto;
    background-image: url(/img/title-underline.svg);
    background-repeat: no-repeat;
  }
}