@charset "UTF-8";

/* color */
.color_green{
  color: #379e49 !important;
}
.color_yellow{
  color: #f7ba00 !important;
}
.color_blue{
  color: #0076c0 !important;
}

.btnColor_red{
  background-color: #ff0000;
}

.btnColor_green{
  background-color: #379e49;
}

.btnColor_yellow{
  background-color: #f7ba00;
}

.btnColor_blue{
  background-color: #0076c0;
}

@media screen and (max-width: 812px) {
  .pc_only{
    display: none;
  }
}

@media screen and (min-width: 813px) {
  .sp_only{
    display: none;
  }
}

/* container ：L5以下ページ共通部分*/
.container {
  width: 100%;
  padding: 0 4vw;
  margin-bottom: calc((190/750)*100vw);
}

/* L5_cover：L5ページ共通部分(ページタイトルからlead部分まで) */
.L5_cover{
  margin-top: calc((80/750)*100vw);
}

.L5_cover .cover_mainTtl{
  font-size: calc((36/750)*100vw);
  line-height: calc((50/750)*100vw);
}

.L5_cover .cover_lead{
  font-size: calc((22/750)*100vw);
  margin-top: calc((50/750)*100vw);
  line-height: calc((36/750)*100vw);
  letter-spacing: 0.06em;
  font-weight: 500;
  text-align: justify;
}

/* local_container：各ページによって記載内容やレイアウトが違う箇所 */
.local_container{
  width: 100%;
  margin-top: calc((50/750)*100vw);
}

/* anchor */
.anchor{
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-direction: row;
  flex-wrap: wrap;
}

.anchor_item{
  width: calc((218/690)*100%);
  display: flex;
  justify-content: center;
  align-items: center;
}

.anchor_btn{
  width: 100%;
  padding-top: calc((11/750)*100vw);
  padding-bottom: calc((11/750)*100vw);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: row;
}

.anchor_txt{
  color: #fff;
  font-size: calc((22/750)*100vw);
  letter-spacing: .058em;
  font-weight: 600;
  line-height: calc((30/750)*100vw);
  max-width: calc((161/750)*100vw);
  margin: auto 0;
}

.anchor_arrow{
  margin-bottom: calc((8/750)*100vw);
  margin-left: calc((15/750)*100vw);
  width: calc((15/750)*100vw);
  height: calc((15/750)*100vw);
  border-bottom: 3px solid #fff;
  border-right: 3px solid #fff;
  transform: rotate(45deg);
}

.anchor_sprit{
  margin-top: calc((50/750)*100vw);
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-direction: row;
  flex-wrap: wrap;
}

.anchor_sprit .anchor_item{
  width: calc((336/690)*100%);
  margin-top: calc((22/750)*100vw);
}

.anchor_sprit .anchor_item:nth-child(-n+2){
  margin-top: 0;
}
.anchor_sprit .anchor_txt{
  max-width: none;
}

@media screen and (max-width: 450px) {
  .anchor_btn .anchor_arrow{
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
  }
}

/* section_container */
.section_container{
  width: 100%;
  margin-top: calc((80/750)*100vw);
}

.section_container .section_ttl{
  font-size: calc((28/750)*100vw);
  line-height: calc((44/750)*100vw);
}

.section_container .section_inner{
  margin-top: calc((34/750)*100vw);
}

.section_container .section_lead{
  font-size: calc((22/750)*100vw);
  line-height: calc((36/750)*100vw);
  letter-spacing: 0.06em;
  font-weight: 500;
}

/* article_container */
.article_container{
  margin-top: calc((50/750)*100vw);
}

.article_list{
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
}

.article_container .article_wrap{
  margin-top: calc((50/750)*100vw);
  width: calc((1/2)*(100% - 30px));
}

.article_container .article_img{
  width: 100%;
  height: auto;
}

.article_container .article_mainTtl{
  font-size: calc((30/750)*100vw);
  line-height: calc((36/750)*100vw);
  letter-spacing: .080em;
  margin-top: calc((30/750)*100vw);
  font-weight: 500;
}

.article_container .article_subTtl{
  font-size: calc((22/750)*100vw);
  line-height: calc((36/750)*100vw);
  letter-spacing: 0.09em;
  font-weight: 500;
  margin-top: calc((22/750)*100vw);
}

/* contentsLink*/
.contentsLink{
  width: 100%;
  height: calc((71/750)*100vw);
  margin-top: calc((50/750)*100vw);
}

.contentsLink .contentsLink_btn{
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  text-align: center;
}

.contentsLink .contentsLink_txt{
  color: #fff;
  font-size: calc((24/750)*100vw);
  letter-spacing: .110em;
  font-weight: 600;
  line-height: calc((30/750)*100vw);
  margin: auto 0;
}

/* 右側のマークが四角と矢印 */
.contentsLink .arrow_transition{
  width: calc((21/750)*100vw);
  margin: auto 0;
  margin-left: calc((19/750)*100vw);
}

/*右側のマークが四角と矢印*/
.contentsLink .arrow_right{
  position: relative;
}

.contentsLink .arrow_right::after {
  content: "";
  position: absolute;
  top: 20%;
  right: calc((-24/750)*100vw);
  width: calc((18/750)*100vw);
  height: calc((18/750)*100vw);
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  transform: rotate(45deg);
}

@media screen and (max-width: 450px) {
  .contentsLink .arrow_right::after {
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
  }
}

/* 以下PCレイアウト */
@media screen and (min-width: 813px) {

  /* container */
  .container {
    max-width: 1226px;
    padding: 0 25px;
    margin-bottom: 152px;
  }

  /* L5_cover：L5ページ共通部分(ページタイトルからlead部分まで) */
  .L5_cover{
    margin: 90px 60px 0;
  }

  .L5_cover .cover_mainTtl{
    display: block;
    font-size: 52px;
    line-height: 75px;
    letter-spacing: .1em;
  }

  .L5_cover .cover_lead{
    font-size: 23px;
    letter-spacing: .1em;
    margin-top: 64px;
    line-height: 45px;
  }

  /* local_container：各ページによって記載内容やレイアウトが違う箇所 */
  .local_container{
    margin-top: 64px;
  }

  /* anchor */
  .anchor{
    padding: 0 60px;
  }

  .anchor_item{
    width: calc((316/1056)*100%);
  }

  .anchor_btn{
    padding-top: 13px;
    padding-bottom: 13px;
  }

  .anchor_txt{
    font-size: 18px;
    letter-spacing: .098em;
    font-weight: 600;
    line-height: 29px;
    max-width: none;
  }

  .anchor_arrow{
    margin-bottom: 7px;
    margin-left: 10px;
    width: 12px;
    height: 12px;
  }

  .anchor_sprit{
    margin-top: 64px;
    padding: 0 60px;
  }

  .anchor_sprit .anchor_item{
    width: calc((224/1056)*100%);
    margin-top: 0;
  }

  @media screen and (max-width: 450px) {
    .anchor_btn .anchor_arrow{
      border-bottom: 2px solid #fff;
      border-right: 2px solid #fff;
    }
  }

  /* section_container */
  .section_container{
    padding: 0 60px;
    margin-top: 110px;
  }

  .section_container .section_ttl{
    font-size: 37px;
    line-height: 35px;
  }

  .section_container .section_inner{
    margin-top: 26px;
  }

  .section_container .section_lead{
    font-size: 15px;
    line-height: 30px;
    letter-spacing: 0.09em;
  }

  /* article_container */
  .article_container{
    margin-top: 64px;
    padding: 0 60px;
  }

  .article_container .article_wrap{
    margin-top: 64px;
    width: calc((235/1056)*100%);
  }

  .article_container .article_wrap:nth-child(-n+4){
    margin-top: 0;
  }

  .article_container .article_mainTtl{
    font-size: 18px;
    line-height: 27px;
    letter-spacing: .039em;
    margin-top: 14px;
  }

  .article_container .article_subTtl{
    font-size: 18px;
    line-height: 27px;
    letter-spacing: .039em;
    margin-top: 0;
  }

  /* contentsLink*/
  .contentsLink_area{
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    padding: 0 60px;
  }

  .contentsLink{
    width: calc((502/1056)*(100% - 120px));
    height: calc((60/1176)*100vw);
    max-height: 61px;
    margin: 64px 0 0 60px;
  }

  .contentsLink_area .contentsLink{
    margin-left: 0;
    width: calc((502/1056)*100%);
  }

  .contentsLink_area .contentsLink:nth-child(2n){
    margin-left: calc((52/1056)*100%);
  }

  .contentsLink .contentsLink_btn{
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
  }

  .contentsLink .contentsLink_txt{
    font-size: calc((22/1226)*100vw);
    line-height: calc((19/1226)*100vw);
    letter-spacing: .068em;
    font-weight: 600;
    margin: auto 0;
  }

  /* 右側のマークが四角と矢印 */
  .contentsLink .arrow_transition{
    width: calc((21/1226)*100vw);
    max-width: 21px;
    margin: auto 0;
    margin-left: calc((19/1226)*100vw);
  }

  /*右側のマークが矢印*/
  .contentsLink .arrow_right::after {
    top: 0;
    right: calc((-26/1226)*100vw);
    width: calc((18/1226)*100vw);
    height: calc((18/1226)*100vw);
    max-width: 18px;
    max-height: 18px;
  }
}

@media screen and (min-width:1226px){

  .contentsLink .contentsLink_txt{
    font-size: 22px;
    line-height: 19px;
  }

  .contentsLink .arrow_transition{
    margin-left: 19px;
  }

  .contentsLink .arrow_right::after {
    right: -26px;
  }
}