@charset "utf-8";

/* ------- INDEX ---------------------------------------------- */
.welfare-navi{
  border-top: 1px solid rgba(0,0,0,.30);
  font-weight: 400;
  line-height: 1.66;
}
.welfare-navi > li{
  font-weight: 700;
}
.welfare-navi > li > ul > li{
  font-weight: 400;
}
.welfare-navi > li > ul > li > a{
  background-color: #F3F3F2;
  background-image: url("../img/ic_arrow_down.svg");
  background-position: left 10px center;
  background-repeat: no-repeat;
  display: block;
  padding: 15px 15px 15px 35px;
  transition: .3s;
}

.welfare-sub-section,
.welfare-sub-icon-section{
  background-color: #F2F2F2;
}
.welfare-sub-section > .detail > h3,
.welfare-sub-icon-section > .detail > h3{
  font-weight: 700;
  line-height: 1.66;
}

.welfare-sub-icon-section-wrap{
  counter-reset: number 0;
}
.welfare-sub-icon-section > .num{
  align-self: flex-start;
  border-radius: 50%;
  background-color: #2C2C2C;
  color: #FFF;
  font-family: 'Barlow Condensed', sans-serif;
  font-weight: 500;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  text-align: center;
}
.welfare-sub-icon-section > .num:after{
  counter-increment: number 1;
  content: counter(number);
  display: block;
}
@media print, screen and (min-width:781px) {
  .welfare-navi{
    display: flex;
    justify-content: space-between;
    padding-top: 80px;
    margin-top: 80px;
  }
  .welfare-navi > li{
    font-size: 2.0rem;
    width: 23.61%;
  }
  .welfare-navi > li > ul{
    margin-top: 15px;
  }
  .welfare-navi > li > ul > li{
    font-size: 1.6rem;
    margin-top: 5px;
  }
  
  .welfare-section{
    margin-top: 100px;
  }
  .welfare-sub-section-wrap{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .welfare-sub-section{
    margin-top: 40px;
    padding: 20px;
    width: 48.15%;
  }
  .welfare-sub-section > .detail{
    padding: 30px 20px 15px;
  }
  .welfare-sub-section > .detail > h3,
  .welfare-sub-icon-section > .detail > h3{
    font-size: 2.4rem;
  }
  .welfare-sub-section > .detail > p,
  .welfare-sub-icon-section > .detail > p{
    margin-top: 20px;
  }
  .welfare-sub-section.wide{
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    justify-content: space-between;
    width: 100%;
  }
  .welfare-sub-section.wide > .detail{
    padding-top: 0;
    padding-bottom: 0;
    width: 42.3%;
  }
  .welfare-sub-section.wide > .image{
    width: 50.48%;
  }
  
  
  .welfare-sub-icon-section-wrap{
    margin-top: 40px;
  }
  .welfare-sub-icon-section{
    display: flex;
    justify-content: space-between;
    margin-top: 20px;
    padding: 40px;
  }
  .welfare-sub-icon-section > .icon,
  .welfare-sub-icon-section > .num{
    width: 120px;
  }
  .welfare-sub-icon-section > .num{
    font-size: 1.4rem;
    height: 120px;
  }
  .welfare-sub-icon-section > .num:after{
    font-size: 5.0rem;
    margin-top: 5px;
  }
  .welfare-sub-icon-section > .detail{
    width: calc(100% - 170px);
  }
  
  .welfare-sub-icon-section .col2{
    display: flex;
    justify-content: space-between;
  }
  .welfare-sub-icon-section .col2 > div{
    margin-top: 40px;
    width: 45.51%;
  }
  .welfare-sub-icon-section .col2 > div > p{
    margin-top: 20px;
  }
}
@media screen and (max-width: 780px) {
  .welfare-navi{
    padding-top: 1px;
    margin: 40px 20px 0;
  }
  .welfare-navi > li{
    margin-top: 40px;
    font-size: 2.0rem;
  }
  .welfare-navi > li > ul{
    margin-top: 15px;
  }
  .welfare-navi > li > ul > li{
    font-size: 1.6rem;
    margin-top: 5px;
  }
  
  .welfare-section{
    margin-top: 70px;
  }
  .welfare-sub-section-wrap{
    margin-left: 10px;
    margin-right: 10px;
  }
  .welfare-sub-section{
    margin-top: 20px;
    padding: 20px;
  }
  .welfare-sub-section > .detail{
    padding: 30px 20px 15px;
  }
  .welfare-sub-section > .detail > h3,
  .welfare-sub-icon-section > .detail > h3{
    font-size: 2.0rem;
  }
  .welfare-sub-section > .detail > p,
  .welfare-sub-icon-section > .detail > p{
    margin-top: 20px;
  }
  
  
  .welfare-sub-icon-section-wrap{
    margin: 40px 20px 0;
  }
  .welfare-sub-icon-section{
    margin-top: 60px;
    padding: 55px 20px 20px;
  }
  .welfare-sub-icon-section > .icon,
  .welfare-sub-icon-section > .num{
    margin: -90px auto 0;
    width: 70px;
  }
  .welfare-sub-icon-section > .num{
    font-size: 1.2rem;
    height: 70px;
  }
  .welfare-sub-icon-section > .num:after{
    font-size: 2.0rem;
    margin-top: 5px;
  }
  .welfare-sub-icon-section > .detail > h3{
    text-align: center;
    margin-top: 20px;
  }
  
  .welfare-sub-icon-section .col2{
  }
  .welfare-sub-icon-section .col2 > div{
    margin-top: 20px;
  }
  .welfare-sub-icon-section .col2 > div > p{
    margin-top: 20px;
  }
}
@media (hover: hover) and (pointer: fine){
  .welfare-navi > li > ul > li > a:hover{
    background-color: #ddd;
  }
}


