@charset "utf-8";

.container, .container .inner{
  position: relative;
}

/* Title
----------------------------------*/
.blockH1{
  position: relative;
  margin-top: 40px;
  margin-bottom: 40px;
}
.blockH1_inner{
  position: relative;
  height: 400px;
  padding-top: 136px;
  color: #fff;
  border-radius: 16px;
  overflow: hidden;
  z-index: 1;
}
.blockH1_inner::before, .blockH1_inner::after{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-repeat:no-repeat;
  background-position: 50% 50%;
  background-size: cover;
  z-index: -1;
}
.blockH1_inner::after{
  background: linear-gradient(265.24deg, rgba(63, 82, 113, 0) 7.63%, rgba(79, 100, 133, 0.7) 67.15%);
  mix-blend-mode: darken;
}
.blockH1 h1{
  margin-top: -40px;
  padding-left: 80px;
  font-size: 5.6rem;
  font-weight: 700;
  line-height: 1.5;
}
.blockH1-en{
  padding-left: 5px;
  font-family: "Lato", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
}

.blockH1-sm{
  margin-bottom: 56px;
}
.blockH1-sm .blockH1_inner{
  height: auto;
  padding-top: 0;
}
.blockH1-sm .blockH1_inner::before, .blockH1-sm .blockH1_inner::after{
  display: none;
}
.blockH1-sm  h1{
  margin-top: -40px;
  padding-left: 0;
  color: var(--gy800);
}
.blockH1-sm .blockH1-en{
  color: var(--bl300);
}

.container h2:not(.block_ttl), .container .ttl_h3{
  margin-bottom: 16px;
  font-size: 3.2rem;
}
.container .ttl_h3{
  margin-top: 80px;
}
.inner .block_ttl:not(:first-child){
  padding-top: 80px;
}
.bgGy_inner .block_ttl-noen{
  margin-top: 0;
}
.block_subttl{
  margin: 40px 0 16px;
  font-family: "Lato", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
}
.people .blockH1_inner::before{ background-image: url("../img/people/bg_boxh1.jpg")}
@media screen and (min-width:950px){
  .business .blockH1_inner::before{ background-image: url("../img/business/bg_boxh1.jpg")}
  .workstyle .blockH1_inner::before{ background-image: url("../img/workstyle/bg_boxh1.jpg?v=2")}
  .health .blockH1_inner::before{ background-image: url("../img/health/bg_boxh1.jpg")}
  .sdgs .blockH1_inner::before{ background-image: url("../img/sdgs/bg_boxh1.jpg?v=2")}
  .lifestyle .blockH1_inner::before{ background-image: url("../img/lifestyle/bg_boxh1.jpg?v=2")}
  .news .blockH1_inner::before{ background-image: url("../img/news/bg_boxh1.jpg")}
  .recruit .blockH1_inner::before{ background-image: url("../img/recruit/bg_boxh1.jpg")}
  
  .blockH1 .inner{
    padding-left: 40px;
    padding-right: 40px;
  }
  .blockH1 .blockCircle{
    position: absolute;
    width: 529px;
    height: 529px;
    top: 136px;
    right: -210px;
    filter: blur(3px);
    mix-blend-mode: multiply;
    z-index: 1;
  }
  .blockH1-sm{
    width: 892px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (max-width:949px){ 
  .blockH1{
    margin-top: 0;
    margin-bottom: 24px;
  }
  .blockH1_inner{
    height: 224px;
    padding-top: 0; 
    border-radius: 8px;
  }
  .blockH1 h1{
    position: absolute;
    bottom: 24px;
    padding: 0 24px;
    font-size: 3.6rem;
    line-height: 1.4;
  }
  .blockH1-en{
    padding-left: 3px;
    font-size: 2rem;
  }
  .business .blockH1_inner::before{ background-image: url("../img/business/bg_boxh1-sp.jpg")}
  .workstyle .blockH1_inner::before{ background-image: url("../img/workstyle/bg_boxh1-sp.jpg?v=2")}
  .health .blockH1_inner::before{ background-image: url("../img/health/bg_boxh1-sp.jpg")}
  .sdgs .blockH1_inner::before{ background-image: url("../img/sdgs/bg_boxh1-sp.jpg?v=2")}
  .lifestyle .blockH1_inner::before{ background-image: url("../img/lifestyle/bg_boxh1-sp.jpg?v=2")}
  .news .blockH1_inner::before{ background-image: url("../img/news/bg_boxh1-sp.jpg")}
  .recruit .blockH1_inner::before{ background-image: url("../img/recruit/bg_boxh1-sp.jpg")}
  .blockH1 .blockCircle{
    display: none;
  }
  .blockH1-sm{
    margin-bottom: 40px;
  }
  .blockH1-sm .blockH1_inner{
    height: auto;
    padding-top: 0;
  }
  .blockH1-sm  h1{
    position: static;
    margin-top: 1px;
    padding: 0;
  }
  .container h2:not(.block_ttl){
    font-size: 2.5rem;
  }
  .container  .ttl_h3{
    margin-bottom: 4px;
    font-size: 2.4rem;
  }
  .block_subttl{
    font-size: 2rem;
  }
  .imgSP100{
    width: 100%;
    height: auto;
  }
}

/* ==============================================================
/*     Text
/* ============================================================== */
.lead{
  line-height: 1.7;
}

/* ==============================================================
/*     Link
/* ============================================================== */
.blockContents a{
  text-decoration: underline;
}
.liAnchor{
  display: flex;
  margin-top: 80px;
  justify-content: center;
}
.liAnchor li{
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
}
.liAnchor li:not(:last-child){
  margin-right: 24px;
}
.liAnchor li a{
  display: block;
  position: relative;
  width: 198px;
  padding: 2px 0 54px;
  color: var(--bl300);
  background: var(--wh);
  border: 1px solid var(--bl300);
  border-radius: 16px;
}
.liAnchor span{
  font-family: "Lato", sans-serif;
  font-size: 1rem;
}
.liAnchor li a::before,
.liAnchor li a::after{
  content: "";
  position: absolute;
  bottom: 28px;
  left: calc(50% - 1px);
  width: 2px;
  height: 12px;
  border-radius: 2px;
  background-color: var(--bl300);
  transform-origin: 50% calc(100% - 1px);
}
.liAnchor li a::before {
  transform: rotate(45deg);
}
.liAnchor li a::after {
  transform: rotate(-45deg);
}
@media screen and (min-width:950px){
  .liAnchor a:hover{
  }
}
@media screen and (max-width:949px){
  .liAnchor{
    margin-top: 24px;
  }
  .liAnchor li{
    width: calc(33.3333% - 5px);
    font-size: 1.4rem;
  }
  .liAnchor li:not(:last-child){
    margin-right: 8px;
  }
  .liAnchor li a{
    width: 100%;
    padding: 9px 0 52px;
    border-radius: 8px;
  }
  .liAnchor span{
    font-size: 0.8rem;
  }
  .liAnchor li a::before,
  .liAnchor li a::after{
    bottom: 24px;
  }
}
/* ==============================================================
/*     Others
/* ============================================================== */
.bgBl{
  background: var(--bl200);
}
.bgGy_inner{
  position: relative;
  padding: 120px 0;
  border-bottom-right-radius: 0;
  overflow: hidden;
}
.blockBgGray{
  position: relative;
  padding: 120px 0;
  background: var(--gy200);
  border-top-left-radius: 80px;
  overflow: hidden;
}
.blockBgGray h2{
  margin-bottom: 68px;
}
@media screen and (min-width:950px){
  .container_page::before, .blockBgGray::before, .blockBusiness::before, .blockBusiness::after,   .blockBusiness_inner::before, .blockBusiness_inner::after, .blockHealthIndex::before,
  .blockSdgsIndex::before, .blockSdgsIndex::after, .bgGy_inner::before{
    content: "";
    position: absolute;
    display: block;
    border-radius: 50%;
  }
  .container_page::before{
    top: -91px;
    left: -129px;
    width: 587px;
    height: 587px;
    border: 48px solid var(--gy200);
    filter: blur(20px);
    z-index: 0;
  }
  .blockBgGray::before{
    top: -290px;
    right: -270px;
    width: 800px;
    height: 800px;
    border: 100px solid var(--bl300);
    filter: blur(8px);
    z-index: 0;
  }
  .blockBgGray .inner{
    position: relative;
  }
  .bgGy_inner::before{
    top: -270px;
    left: -180px;
    width: 840px;
    height: 840px;
    border: 120px solid var(--bl200);
    filter: blur(20px);
    opacity: 0.5;
    z-index: 0;
    }
}
@media screen and (max-width:949px){
  .bgGy_inner{
    padding: 80px 0;
  }
  .blockBgGray{
    padding: 80px 0;
    border-top-left-radius: 40px;
  }
  .blockBgGray h2{
    margin-bottom: 40px;
  }
  .spImg{
    width: 100%;
    height: auto;
  }
}

/* ==============================================================
/*    PEOPLE
/* ============================================================== */
.liImgLink_img{
  aspect-ratio: 300/225;
}
.liImgLink_category + h3{
  margin-top: 0 !important;
}
.is-hidden {
  visibility: hidden;
  opacity: 0;
  height: 0;
  margin-bottom: 0 !important;
  padding: 0;
}
.container_page .liImgLink{
  margin-bottom: 1px;
}
.liImgLink-interview + .blockBtn{
  margin: -20px 0 80px;
}
.liCrosstalk a{
  position: relative;
  display: block;
  height: 430px;
  padding: 40px 40px 40px 80px;
  color: #fff;
  background: var(--bl300);
  border-radius: 16px;
  z-index: 2;
}
.liCrosstalk h4, .liCrosstalk h4 span{
  font-size: 3.1rem;
  font-weight: 700;
}
.liCrosstalk_img{
  width: 566px;
  border-radius: 8px;
  overflow: hidden;
}
.liCrosstalk_img img{
  width: 100%;
  height: auto;
}
.liCrosstalk_speaker{
  position: absolute;
  bottom: 40px;
  left: 80px;
  padding: 40px 40px 24px 0;
  background: var(--bl300);
  font-size: 1.4rem;
  border-top-right-radius: 16px;
}
.liCrosstalk_speaker p:not(:last-child){
  margin-bottom: 8px;
}
.liCrosstalk_speaker strong{
  font-size: 1.6rem;
}
.liCrosstalk_speaker::before, .liCrosstalk_speaker::after{
  content: "";
  display: block;
  position: absolute;
  width: 14px;
  height: 14px;
  background: url("../img/top/bg_crosstalk.png") no-repeat;
  background-size: cover;
}
.liCrosstalk_speaker::before{
  top: -14px;
  left: 261px;
}
.liCrosstalk_speaker::after{
  right: -14px;
  bottom: 0;
}
@media screen and (min-width:950px){
  .liCrosstalk a:hover{
    opacity: 0.7;
  }
  .liCrosstalk li{
    position: relative;
    width: 947px;
    margin-left: auto;
    margin-right: auto;
  }
  .liCrosstalk li:not(:last-child){
    margin-bottom: 68px;
  }
  .liCrosstalk li::after{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: var(--wh);
    border-radius: 16px;
  }
  .liCrosstalk_img{
    position: absolute;
    top: 40px;
    right: 40px;
    height: 349px;
  }
  .liCrosstalk h4{
    display: flex;
    align-items: center;
    width: 230px;
    height: 200px;
    overflow: hidden;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
  }
  .liCrosstalk h4 span{
    display: block;
  }
  .liCrosstalk:not(.liCrosstalk-sm) li:nth-child(even) h4{
    margin-left: 600px;
  }
  .liCrosstalk:not(.liCrosstalk-sm) li:nth-child(even) .liCrosstalk_img{
    right: auto;
    left: 40px;
  }
  .liCrosstalk:not(.liCrosstalk-sm) li:nth-child(even) a{
    padding: 40px 80px 40px 40px;
    color: var(--gy800);
    background: var(--bl200);
  }
  .liCrosstalk:not(.liCrosstalk-sm) li:nth-child(even) .liCrosstalk_speaker{
    left: auto;
    right: 80px;
    padding: 40px 0 24px 40px;
    background: var(--bl200);
    border-top-left-radius: 16px;
  }
  .liCrosstalk:not(.liCrosstalk-sm) li:nth-child(even) .liCrosstalk_speaker::before,
  .liCrosstalk:not(.liCrosstalk-sm) li:nth-child(even) .liCrosstalk_speaker::after{
    background-image: url("../img/top/bg_crosstalk-even.png");
  }
  .liCrosstalk:not(.liCrosstalk-sm) li:nth-child(even) .liCrosstalk_speaker::before{
    left: auto;
    right: 261px;
  }
  .liCrosstalk:not(.liCrosstalk-sm) li:nth-child(even) .liCrosstalk_speaker::after{
    left: -14px;
    right: auto;
  }
}
@media screen and (max-width:949px){
  .liImgLink > li{
    width: 100%;
    margin-bottom: 24px;
  }
  .liImgLink:not(.liImgLink-horizontal) > li:not(:last-child) {
    margin-right: 0;
  }
  .liImgLink-interview + .blockBtn{
    margin: 0 0 80px;
  }
  .liCrosstalk li{
    position: relative;
  }
  .liCrosstalk li:not(:last-child){
    margin-bottom: 24px;
  }
  .liCrosstalk a{
    width: 100%;
    height: auto;
    padding: 24px 24px 0;
  }
  .liCrosstalk h4{
    margin-bottom: 24px;
    padding-top: 0;
    font-size: 2.4rem;
  }
  .liCrosstalk_img, .liCrosstalk_img img{
    width: 100%;
  }
  .liCrosstalk_speaker{
    position: relative;
    left: 0;
    bottom: 36px;
    display: inline-block;
    padding: 16px 24px 0 0;
    border-top-right-radius: 8px;
  }
  .liCrosstalk_speaker p{
    font-size: 1.2rem;
  }
  .liCrosstalk_speaker strong{
    font-size: 1.4rem;
  }
  .liCrosstalk_speaker::before, .liCrosstalk_speaker::after{
    width: 8px;
    height: 8px;
  }
  .liCrosstalk_speaker::before{
    top: -8px;
    left: 0;
  }
  .liCrosstalk_speaker::after{
    right: -8px;
    top: 28px;
    bottom: auto;
  }
  .liImgLink-horizontal > li:not(:last-child) {
    margin-bottom: 32px;
  }
  .container_page .liImgLink + .blockBtn-center{
    margin-top: 0;
  }
}

/* Interview
----------------------------------*/
.blockProfile{
  margin: 32px auto;
}
.blockProfile_img, .liTalk dt{
  width: 160px;
  height: 160px;
  border-radius: 50%;
  overflow: hidden;
}
.blockProfile_img img, .liTalk dd img{
  width: 160px;
  height: 160px;
  object-fit: cover;
}
.blockProfile_txt dt{
  margin-bottom: 12px;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1;
}
.blockProfile_txt dt span{
  font-size: 1.4rem;
  font-weight: 700;
}
.blockProfile_txt dd{
  font-size: 1.4rem;
}

.blockPost-lifestyle + .liImgLink{
  margin-bottom: 0;
}
.ttlSchedule{
  margin-bottom: 12px !important;
  font-size: 2rem !important;
}
.blockSchedule{
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 28px 80px;
  background: var(--gy200);
  border-radius: 32px;
}
.blockSchedule dt{
  position: relative;
  width: 105px;
  padding: 12px 0 12px 39px;
  font-weight: 700;
}
.blockSchedule dt::before{
  content: "";
  position: absolute;
  left: 0;
  top: calc(50% - 2px);
  width: 8px;
  height: 8px;
  background: var(--bl300);
  border-radius: 5px;
  z-index: 3;
}
.blockSchedule dt.blockSchedule_empty::before{
  background: var(--gy400);
}
.blockSchedule dd{
  position: relative;
  width: calc(100% - 105px);
  padding: 12px 0;
  font-weight: 700;
}
.blockSchedule dd::before{
  content: "";
  position: absolute;
  top: 0;
  left: -102px;
  display: block;
  width: 1px;
  height: 100%;
  background: var(--bl300);
  z-index: 2;
}
.blockSchedule dd:nth-child(2)::before{
  top: 50%;
}
.blockSchedule dd:last-child::before{
  top: auto;
  bottom: 50%;
}
@media screen and (min-width:950px){
  .blockProfile{
    display: flex;
    align-items: center;
  }
  .blockProfile_txt{
    width: calc(100% - 160px);
    margin-left: 24px;
  }
}
@media screen and (max-width:949px){
  .blockProfile{
    margin: 40px auto;
  }
  .blockProfile_img{
    margin-bottom: 24px;
  }
  .blockSchedule{
    margin-bottom: 40px;
    padding: 20px 32px;
    border-radius: 24px;
  }
  .blockSchedule dt{
    width: 94px;
    padding: 12px 0 12px 31px;
  }
  .blockSchedule dt::before{
    top: calc(50% - 2px);
    width: 8px;
    height: 8px;
  }
  .blockSchedule dd{
    position: relative;
    width: calc(100% - 94px);
    padding: 12px 0;
  }
  .blockSchedule dd::before{
    left: -91px;
  }
  .blockPost-lifestyle + .liImgLink{
    margin: -40px 24px 16px;
  }
}

/* Cross Talk
----------------------------------*/ 
.bgBl .blockPost_date{
  color: var(--bl300);
}
.blockPost_lead{
  margin-bottom: 32px !important;
}
.wp-block-lazyblock-comment{
  margin: 32px 0;
}
.ttlTalk{
  margin-bottom: 24px !important;
}
.liTalk{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.liTalk dt, .liTalk dt img{
  width: 80px;
  height: 80px;
}
.liTalk dd{
  width: calc(100% - 104px);
  margin-left: 24px;
  font-size: 1.4rem;
}
@media screen and (min-width:950px){
  .liCrosstalk-sm{
    display: flex;
    max-width: 1080px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 80px;
  }
  .liCrosstalk-sm a{
    height: 398px;;
    padding: 24px;
  }
  .liCrosstalk-sm li{
    width: calc(50% - 12px);
    margin-bottom: 0 !important;
  }
  .liCrosstalk-sm li:last-child{
    margin-left: 24px;
  }
  .liCrosstalk-sm h4{
    width: 182px;
    font-size: 2.6rem;
  }
  .liCrosstalk-sm .liCrosstalk_img{
    width: 280px;
    height: 350px;
    top: 24px;
    right: 24px;
  }
  .liCrosstalk-sm .liCrosstalk_img img{
    width: 280px;
    height: 350px;
    object-fit: cover;
  }
  .liCrosstalk-sm .liCrosstalk_speaker{
    bottom: 24px;
    left: 24px;
  }
  .liCrosstalk-sm .liCrosstalk_speaker::before {
    top: -14px;
    left: 200px;
  }
}
@media screen and (max-width:949px){
  .liTalk{
    margin-bottom: 24px;
  }
  .blockPost-lifestyle + .liCrosstalk-sm{
    margin: -40px 24px 16px;
  }
}

/* ==============================================================
/*    BUSINESS
/* ============================================================== */
.blockBusiness{
  padding-bottom: 80px;
}
.block2col{
  margin-top: 80px;
}
.block2col_img{
  height: 346px;
  border-radius: 8px;
  overflow: hidden;
}
.block2col_img img{
  object-fit: cover;
}
.block2col h3{
  margin: 0 0 16px;
  padding-left: 16px;
  border-left: 4px solid var(--bl300);
  font-size: 2rem;
}
.block2col p{
  line-height: 1.7;
}
.blockVideo{
  margin-bottom: 108px;
}
.li3col li{
  font-size: 1.4rem;
}
.li3col img{
  border-radius: 16px;  
}
.li3col h3, .liImgLink h3{
  margin: 16px 0 8px;
  font-size: 1.6rem;
}
.li3col-living li{
  padding: 24px;
  background: var(--wh);
  border-radius: 16px;
}
.li3col-living img{
  border-radius: 8px;
}
@media screen and (min-width:950px){
  .blockBusiness, .blockBusiness_inner{
    position: relative;
  }
  .blockBusiness::before, .blockBusiness::after,
  .blockBusiness_inner::before, .blockBusiness_inner::after{
    width: 364px;
    height: 364px;
    border: 48px solid var(--bl300);
    filter: blur(20px);
    opacity: 0.4;
    z-index: 0;
  }
  .blockBusiness::before{
    top: 710px;
    left: -253px;
  }
  .blockBusiness::after{
    top: 670px;
    right: -253px;
  }
  .blockBusiness_inner::before{
    bottom: 665px;
    left: -87px;
  }
  .blockBusiness_inner::after{
    bottom: 435px;
    right: -158px;
    width: 495px;
    height: 495px;
    border: 60px solid var(--gy200);
    filter: blur(5px);
    opacity: 0.5;
  }

  .block2col, .li3col{
    display: flex;
    flex-wrap: wrap;
  }
  .block2col > div{
    width: min(calc(50% - 40px), 520px);
  }
  .block2col > div:first-child{
    margin-right: 80px;
  }
  .block2col > div:last-child{
    padding-top: 383px;
  }
  .block2col_txt{
    position: relative;
    top: -140px;
    width: calc(100% - 48px);
    margin-bottom: -60px;
    padding: 24px 24px 0 0;
    border-top-right-radius: 16px;
    background: var(--wh);
  }
  .blockVideo_txt{
    padding: 40px 40px 0;
    font-size: 2rem;
  }
  .blockVideo_txt::before, .blockVideo_txt::after{
    display: none;
  }
  .blockVideo_txt span{
    display: block;
    padding-top: 8px;
    text-decoration: underline;
  }
  .li3col, .liImgLink{
    max-width: 980px;
    margin: 0 auto -80px;
  }
  .li3col > li, .liImgLink:not(.liImgLink-horizontal) > li{
    width: calc(33.3333% - 26.6666px);
    margin-bottom: 80px;
  }
  .li3col > li:not(:nth-child(3n)){
    margin-right: 40px;
  }
  .li3col-living > li{
    width: calc(33.3333% - 21.33333px);
    margin-bottom: 60px;
  }
  .li3col-living > li:not(:nth-child(3n)){
    margin-right: 32px;
  }
  .liImgLink:not(.liImgLink-horizontal) > li:nth-child(3n), .liImgLink-horizontal > li:nth-child(2n){
    margin-right: 0;
  }
  .liImgLink-horizontal > li{
    margin-bottom: 24px;
  }
}
@media screen and (max-width:949px){
  .block2col_img{
    height: auto;
  }
  .block2col h3{
    margin: 24px 24px 16px 0;
    font-size: 1.8rem;
  }
  .block2col_txt{
    margin-bottom: 24px;
  }
  .blockVideo{
    margin: 80px 0;
  }
  .blockVideo_txt{
    font-size: 1.8rem;
  }
  .blockVideo_txt span{
    padding-top: 0;
    text-decoration: none;
    font-size: 1.4rem;
    color: var(--bl300);
  }
  .blockSekiguchi .fSP{
    position: relative;
  }
  .blockSekiguchi .btn{
    position: absolute;
    top: 45.5%;
    left: 7%;
    background: var(--wh);
    border: none;
  }
  .li3col{
    margin: 0 12px;
  }
  .li3col li{
    font-size: 1.2rem;
  }
  .li3col li:not(:last-child){
    margin-bottom: 40px;
  }
  .li3col img{
    border-radius: 8px;  
  }
  .li3col h3{
    margin: 16px 0 4px;
    font-size: 1.4rem;
  }
  .li3col-living > li:not(:last-child){
    margin-bottom: 24px;
  }
}

/* ==============================================================
/*    WORK STYLE
/* ============================================================== */
.li3col-gray > li{
  position: relative;
  padding: 16px 16px 24px;
  border-radius: 8px;
  background: var(--gy200);
}
.li3col-gray img{
  border-radius: 8px;  
}
.badgePickup{
  position: absolute;
  top: -12px;
  right: -12px;
  display: block;
  width: 88px;
  height: 88px;
  padding-top: 24px;
  font-family: "Lato", sans-serif;
  font-size: 2rem;
  font-weight: 700;
  text-transform: uppercase;
  text-align: center;
  color: var(--wh);
  line-height: 1;
  background: url("../img/workstyle/bg_badge.png") no-repeat;
  background-size: cover;
  z-index: 1;
}

@media screen and (min-width:950px){
  .li3col-gray{
    margin-top: 40px;
    margin-bottom: 40px;
  }
  .li3col-gray > li{
    margin-bottom: 40px;
  }
  .li3col-gray > li:not(:nth-child(3n)){
    margin-right: 20px;
  }
}
@media screen and (max-width:949px){
  .li3col-gray{
    margin-left: 20px;
    margin-right: 20px;
  }
  .li3col-gray > li{
    margin-bottom: 24px !important;
  }
}

/* ==============================================================
/*    Health Management
/* ============================================================== */
.blockVision_img{
  margin-bottom: 40px;
}
.blockBgGray-health::after{
  content: "";
  position: absolute;
  display: block;
  border-radius: 50%;
  top: 1410px;
  right: -423px;
  width: 800px;
  height: 800px;
  border: 100px solid var(--bl300);
  filter: blur(8px);
  z-index: 0;
}
.blockChart_img{
  margin: 24px 76px 80px;
  position: relative;
  z-index: 1;
}
@media screen and (min-width:950px){
  .blockMsg p{
    font-size: 2rem;
    font-weight: 700;
  }
  .blockMsg_name{
    text-align: right;
    font-size: 3.2rem !important;
  }
  .blockMsg_name span{
    font-size: 2rem;
    font-weight: 700;
  }
  .blockHealthIndex{
    position: relative;
    padding-bottom: 56px;
    z-index: 1;
  }
  .blockHealthIndex::before{
    top: 760px;
    right: -68px;
    width: 400px;
    height: 400px;
    border: 48px solid var(--gy200);
    filter: blur(20px);
    z-index: 0;
  }
  .blockVision{
    width: 810px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (max-width:949px){
  .blockMsg_name{
    margin: 1em 0 80px;
  }
  .blockMsg_name br{
    display: none;
  }
  .blockMsg_name span{
    margin-right: 1em;
  }
  .blockBgGray-health::after{
    top: 64.5%;
    right: -155px;
    width: 283px;
    height: 283px;
    border: 40px solid var(--bl300);
    filter: blur(3px);
  }
  .blockChart_img{
    margin: 10px 0 32px;
  }
  .blockBgGray-health .liIndex + .blockBtn-center{
    margin-bottom: 32px !important;
  }
  .blockBgGray-health h3{
    margin-top: 32px !important;
  }
}

/* ==============================================================
/*    SDGs
/* ============================================================== */
.liIndex{
  display: flex;
  flex-wrap: wrap;
  margin-top: 16px;
  justify-content: left;
}
.liIndex > li{
  margin-bottom: 24px;
  font-size: 1.4rem;
}
.liIndex_img{
  position: relative;
  overflow: hidden;
  aspect-ratio: 4/3;
  margin-bottom: 16px;
  border-radius: 8px;
}
.liIndex_img img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.liIndex_img::after{
  content: "";
  position: absolute;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
  mix-blend-mode: multiply;
  background: rgba(208,226,255,0);
  transition: 0.4s;
}
.liIndex h4{
  margin-bottom: 8px;
  font-size: 1.6rem;
}
.liIndex_tags{
  display: flex;
}
.liIndex_tags li{
  font-size: 1.4rem;
}
.liIndex_tags li:not(:last-child){
  margin-right: 1em;
}
.liIndex + .blockBtn-center{
  margin-bottom: 80px;
}
.blockPostDate-health{
  display: flex;
  flex-wrap: wrap;
}
.blockPost .liIndex_tags li{
  margin-bottom: 38px;
  padding: 8px 16px;
  font-size: 1.2rem;
  font-weight: 700;
  background: var(--gy200);
  line-height: 1;
  border-radius: 20px;
}

@media screen and (min-width:950px){
  .blockSdgsIndex{
    position: relative;
    padding-bottom: 56px;
    z-index: 1;
  }
  .blockSdgsIndex::before, .blockSdgsIndex::after{
    width: 428px;
    height: 428px;
    border: 55px solid var(--bl300);
    filter: blur(20px);
    opacity: 0.5;
    z-index: 0;
  }
  .blockSdgsIndex::before{
    top: 1070px;
    left: -167px;
    opacity: 0.3;
  }
  .blockSdgsIndex::after{
    width: 529px;
    height: 529px;
    top: 670px;
    right: -305px;
    opacity: 0.3;
  }
  .blockRules{
    position: relative;
    z-index: 1;
  }
  .blockRules_img{
    margin: 40px 0;
  }
  .liIndex{
    max-width: 1120px;
    margin: 16px auto 0;
  }
  .liIndex > li{
    width: calc(33.3333% - 26.6666px);
  }
  .liIndex > li:not(:nth-child(3n)){
    margin-right: 40px;
  }
  .liIndex a *{
    transition: 0.3s;
  }
  .liIndex a:hover{
    color: var(--bl300);
  }
  .liIndex a:hover img{
    transform: scale(1.1,1.1);
  }
  .liIndex a:hover .liIndex_img::after{
    background: rgba(208, 226, 255, 0.5);
  }
  .liIndex-col2 > li{
    width: calc(50% - 20px);
    margin-right: 0 !important;
  }
  .liIndex-col2 > li:not(:nth-child(2n)){
    margin-right: 40px !important;
  }
  .blockPostDate-health .liIndex_tags li::before{
    content: "＃";
  }
}
@media screen and (max-width:949px){
  .blockRules_img{
    margin: 24px 0 8px;
  }
  .blockRules_img img{
    width: 100%;
    height: auto;
  }
  .liIndex h4{
    margin-bottom: 4px;
    font-size: 1.4rem;
  }
  .liIndex_img{
    margin-bottom: 8px;
  }
  .liIndex_tags li{
    font-size: 1.2rem;
  }
  .blockPostDate-health .blockPost_date{
    font-size: 1.6rem;
  }
  .blockPostDate-health .liIndex_tags li{
    padding-top: 9px;
  }
}

/* ==============================================================
/*     LIFE STYLE
/* ============================================================== */
.block2col_ttl{
  margin-bottom: 120px;
  font-size: min(3.6vw, 4.7rem);
  font-weight: 700;
}
.block2col_ttl span{
  color: var(--bl300);
  font-size: 3.2rem;
  font-weight: 700;
}
.liComments{
  margin-top: 110px;
}
.liComments li{
  position: relative;
  margin-bottom: 64px;
  padding: 24px 40px; 
  background: var(--wh);
  border-radius: 16px;
}
.liComments li::before{
  content: "";
  position: absolute;
  top: -32px;
  right: 50px;
  display: block;
  width: 38px;
  height: 32px;
  background: url("../img/lifestyle/bg_liComments.png") no-repeat;
  background-size: cover;
}
.liComments dt{
  margin-bottom: 8px;
  font-weight: 700;
}
.liComments dd{
  font-size: 1.4rem;
}
.liComments_person{
  display: flex;
  align-items: center;
  margin-top: 16px;
  font-size: 1.4rem;
}
.liComments_img{
  width: 80px;
  height: 80px;
  margin-right: 16px;
  border-radius: 50%;
  overflow: hidden;
}
.liComments_txt{
  font-size: 1.4rem;
}
@media screen and (min-width:950px){
  .blockKushiro{
    position: relative;
    min-width: 1120px;
    padding-bottom: 454px;
  }
  .blockKushiro img{
    position: absolute;
    bottom: 80px;
    right: -20px;
  }
  .liComments{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  .liComments li{
    width: 428px;
  }
  .liComments li:nth-child(2n){
    margin-left: 24px;
  }
  .liComments li:nth-child(3), .liComments li:nth-child(4){
    margin-bottom: 0;
  }
  .liIndex-kushirolife{
    position: relative;
    max-width: none;
    width: 1272px;
    margin: 0;
    flex-wrap: nowrap;
  }
  .liIndex-kushirolife > li{
    width: 288px;
    margin-right: 40px !important;
    margin-bottom: 0;
  }
  .liIndex-kushirolife > li:last-child{
    margin-right: 0 !important;
  }
}
@media screen and (max-width:949px){
  .blockKushiro{
  }
  .blockKushiro img{
    width: 100%;
    height: auto;
    padding-top: 24px;
  }
  .blockLifestyle{
    padding-bottom: 56px;
  }
  .block2col_ttl{
    margin: -20px 0 40px;
    font-size: 3.6rem;
  }
  .block2col_ttl span{
    font-size: 2.4rem;
  }
  .liComments {
    margin-top: 80px;
  }
  .liComments li{
    padding-left: 35px;
    padding-right: 35px;
  }
  .liComments li:last-child{
    margin-bottom: 0;
  }
  .liComments dt{
    font-size: 1.6rem;
  }
  .liIndex-kushirolife{
    margin-top: 0;
  }
  .liIndex-kushirolife > li:last-child{
    margin-bottom: 0;
  }
}

/* post
----------------------------------*/ 
.blockPost-lifestyle .liIndex_tags{
  margin: 24px 0 32px;
}
.blockPost-lifestyle .liIndex_tags li{
  margin-bottom: 0;
  padding: 0;
  font-size: 2rem;
  font-weight: 700;
  background: none;
}
.blockPost.blockPost-lifestyle h1{
  margin-top: 32px;
}
@media screen and (min-width:950px){
  .blockLifestyle.blockBusiness::before{
    top: 1240px;
  }
  .blockLifestyle.blockBusiness::after{
    top: 1770px;
  }
  .blockLifestyle .blockBusiness_inner::before,
  .blockLifestyle .blockBusiness_inner::after{
    display: none;
  }
  .blockLifestyle .block2col > div:last-child {
    padding-top: 0;
  }
  .blockLifestyle .block2col_txt {
    top: -80px;
    margin-bottom: 0;
  }

}
@media screen and (max-width:949px){
  .blockPost-lifestyle .blockPost_date{
    font-size: 1.4rem;
  }
  .blockPost-lifestyle .liIndex_tags{
    margin-top: -8px;
  }
  .blockPost-lifestyle .liIndex_tags li{
    font-size: 1.8rem;
  }
}

/* ==============================================================
/*     NEWS
/* ============================================================== */

/* index
----------------------------------*/
.blockNews_category a, .liInfo_label{
  display: inline-block;
  padding: 5px 12px;
  font-size: 1.2rem;
  color: var(--gy800) !important;
  background: var(--gy200);
  border-radius: 20px;
}
.blockNews_category .current-cat a{
  color: var(--wh) !important;
  background: var(--bl300);
}
.liInfo{
  margin-bottom: 40px;
}
.liInfo li:not(:last-child){
  border-bottom: 1px solid var(--gy200);
}
.liInfo a{
  display: block;
  padding: 24px;
}
.liInfo a > span{
  transition: 0.3s;
}
.liInfo a > span:first-child{
  display: block;
  color: var(--gy400);
}
.liInfo_label{
  margin-left: 12px;
}
.liPager ul.page-numbers{
  display: flex;
  margin: 40px 0;
  justify-content: center;
}
.liPager li{
  width: 36px;
  height: 36px;
  margin: 0 8px;
  font-family: "Lato", sans-serif;
  font-weight: 700;
  text-align: center;
}
.liPager .current{
  padding-top: 5px;
  color: var(--wh);
  background: var(--bl300);
  border-radius: 50%;
}
.liPager a, .liPager span{
  display: block;
  height: 36px;
  padding-top: 5px;
  color: var(--bl300);
  border-radius: 20px;
}
.liPager_prev span, .liPager_next span,
.liPager_prev a, .liPager_next a{
  text-indent: -9999px;
  background: url("../img/ico_arrow-gy.svg") no-repeat 50% 50%;
  background-size: 16px auto;
}
.liPager_prev a, .liPager_next a{
  background-image: url("../img/ico_arrow-bl.svg");
}
.liPager_prev a, .liPager_next span{
  transform: rotate(180deg);
}

@media screen and (min-width:950px){
  .blockNews_inner{
    display: flex;
  }
  .blockNews_inner dl{
    width: 144px;
    margin-right: 40px;
    margin-bottom: 40px;
  }
  .blockNews_inner > div{
    width: calc(100% - 184px);
    max-width: 900px;
  }
  .blockNews_category li{
    margin-top: 16px;
  }
  .liInfo{
    border-top: 1px solid var(--gy200);
  }
  .liInfo a{
    display: flex;
    padding-right: 48px;
    background: url("../img/ico_arrow-bk.svg") no-repeat calc(100% - 24px) 50%;
  }
  .liInfo a:hover{
    color: var(--bl300);
    background-color: rgba(208, 226, 255, 0.5);
    background-image: url("../img/ico_arrow-bl.svg");
    border-radius: 16px;
  }
  .liInfo a:hover span{
    color: var(--bl300);
  }
  .liInfo a > span:first-child{
    width: 261px;
  }
  .liInfo a > span:last-child{
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    width: calc(100% - 261px);
  }
  .liPager a:hover{
    background-color: rgba(208, 226, 255, 0.5);
  }
}
@media screen and (max-width:949px){
  .blockNews_inner dl dt{
    display: none;
  }
  .blockNews_category{
    display: flex;
    margin-bottom: 24px;
  }
  .blockNews_category a, .liInfo_label{
    padding-top: 6px;
    padding-bottom: 6px;
    line-height: 1;
  }
  .blockNews_category li{
    margin-right: 8px;
  }
  .liInfo a{
    padding: 16px 4px;
  }
  .liInfo a > span:first-child{
    padding-bottom: 8px;
  }
  .liPager{
    margin-bottom: 80px;
  }
  .liPager .active, .liPager a{
    padding-top: 7px;
  }
}

/* post
----------------------------------*/
.blockPost_date{
  margin-bottom: 0 !important;
  font-family: "Lato", sans-serif;
  font-size: 1.8rem;
  color: var(--gy400);
}
.blockPost h1{
  margin: 8px 0 16px;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1.5;
}
.container .blockPost h2{
  margin: 56px 0 32px;
  font-size: 2rem;
}
.blockPost h3{
  margin: 56px 0 32px;
  font-size: 1.6rem;
}
.blockPost_img{
  margin-bottom: 80px;
}
.blockPost p{
  margin-bottom: 1em;
}
.blockPost blockquote{
  padding: 12px 0 12px 24px;
  font-size: 1.6rem;
  line-height: 1.5;
  border-left: 8px solid var(--gy200);
}
.blockPost a:not(.btn){
  color: var(--bl300);
}
.blockPost .blockBtn{
  margin-top: 80px;
}
.wp-block-image{
  margin: 56px 45px;
}
.wp-block-image img{
  max-width: 100%;
}
.wp-element-caption{
  margin: 24px 45px 0 !important;
  font-size: 1.4rem;
  line-height: 1.5;
}

@media screen and (min-width:950px){
  .blockPost .inner{
    width: 810px;
    margin: 0 auto;
    padding: 40px 0 80px;
  }
}
@media screen and (max-width:949px){
  .blockPost .inner{
    padding-top: 40px;
    padding-bottom: 80px;
  }
  .blockPost_date{
    font-size: 1.8rem;
  }
  .blockPost h1{
    margin: 16px 0 32px;
    font-size: 2.4rem;
  }
  .container .blockPost h2{
    margin: 40px 0 32px;
    font-size: 1.8rem;
  }
  .blockPost h3{
    margin: 40px 0 32px;
    font-size: 1.4rem;
  }
  .blockPost_img{
    margin-bottom: 24px;
  }
  .blockPost_img img{
    width: 100%;
    height: auto;
  }
  .blockPost blockquote{
    padding: 0 0 0 24px;
    font-size: 1.4rem;
  }
  .blockPost .blockBtn{
    margin-top: 24px;
  }
  .wp-block-image{
    margin: 56px 0;
  }
  .wp-element-caption{
    margin: 24px 0 0 !important;
    font-size: 1.2rem;
  }
}
/* ==============================================================
/*     RECRUIT
/* ============================================================== */
.blockRecruit{
  position: relative;
  margin: 40px 0;
  padding: 40px;
  background: var(--gy200);
  border-radius: 24px;
  z-index: 1;
}
.blockRecruit_btn{
  position: absolute;
  top: 40px;
  right: 40px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 2px solid var(--bl300);
}
.blockRecruit_btn::before, .blockRecruit_btn::after{
  content: "";
  position: absolute;
  top: 17px;
  left: 8px;
  display: block;
  width: 21px;
  height: 2px;
  background: var(--bl300);
}
.blockRecruit_btn::after{
  top: 8px;
  left: 17px;
  width: 2px;
  height: 21px;
  opacity: 100;
}
.blockRecruit_ttl.open .blockRecruit_btn::after{
  opacity: 0; 
}
.blockRecruit_ttl h3{
  padding-right: 60px;
  font-size: 3.2rem;
}
.blockRecruit_ttl p, .blockRecruit_ttl ul{
  margin-top: 24px;
}
.blockRecruit_ttl ul li:not(:last-child){
  margin-bottom: 8px;
}
.blockRecruit_ttl ul img{
  display: inline-block;
  margin-right: 24px;
}
.blockRecruit_content h4{
  margin-top: 40px;
  font-size: 2rem;
}
.blockRecruit_content{
  display: none;
}
.blockRecruit_content dl{
  margin-top: 40px;
  border-top: 1px solid var(--gy400);
}
.blockRecruit_content dt{
  float: left;
  width: 80px;
  margin-right: 24px;
  padding: 24px 0;
}
.blockRecruit_content dd{
  padding: 24px 0 24px 104px;
  border-bottom: 1px dashed var(--gy400);
}
.blockRecruit_content dd a, .blockRecruit_ttl p a{
  color: var(--bl300);
  text-decoration: underline;
}
.blockRecruit_content dd:last-child{
  padding-bottom: 0;
  border-bottom: none;
}
.blockRecruit_content_inner p:not(:last-child){
  margin-bottom: 1.5em;
}
@media screen and (min-width:950px){
  .blockRecruit_ttl{
    cursor: pointer;
  }
  .blockRecruit-link .blockRecruit_ttl{
    cursor: default;
  }
  .blockRecruit_content dl{
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media screen and (max-width:949px){
  .blockRecruit + .block_ttl{
    padding-top: 25px !important;
  }
  .blockRecruit{
    margin: 24px 0;
    padding: 24px;
    border-radius: 16px;
  }
  .blockRecruit_btn{
    top: 24px;
    right: 24px;
    width: 26px;
    height: 26px;
  }
  .blockRecruit_btn::before, .blockRecruit_btn::after{
    top: 10px;
    left: 4px;
    width: 14px;
    height: 2px;
  }
  .blockRecruit_btn::after{
    top: 4px;
    left: 10px;
    width: 2px;
    height: 14px;
  }
  .blockRecruit_btn.open::after{
  }
  .blockRecruit_ttl h3{
    margin-bottom: 16px;
    padding-right: 34px;
    font-size: 2.4rem;
  }
  .blockRecruit_content h4{
    margin-top: 24px;
    font-size: 1.8rem;
  }
  .blockRecruit_content dl{
    margin-top: 24px;
  }
  .blockRecruit_content dt{
    width: 70px;
    padding: 16px 0;
  }
  .blockRecruit_content dd{
    padding: 16px 0 16px 94px;
  }
}
/* ==============================================================
/*     PRIVACY
/* ============================================================== */
.container .blockPrivacy h2{
  margin-bottom: 8px;
  font-size: 2rem;
}
.container .blockPrivacy h2:not(:first-child){
  margin-top: 40px;
}
.blockPrivacy p, .liDot{
  margin-bottom: 1.7em;
  line-height: 1.7;
}
.liDot li{
  padding-left: 1em;
  line-height: 1.7;
}
.liDot li::before{
  content: "・";
  position: relative;
  margin-left: -1em;
}
.blockPrivacy .blockBtn{
  margin-top: 80px;
}
@media screen and (min-width:950px){
  .blockNallow{
    width: 972px;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 80px;
  }
}
@media screen and (max-width:949px){
  .blockNallow{
    padding-bottom: 80px;
  }
}

/* ==============================================================
/*     404
/* ============================================================== */
@media screen and (min-width:950px){
  .block404{
    margin-top: -48px;
  }
}
@media screen and (max-width:949px){
}