/* フォント */
.pBrand_mvHeadingMain, .pBrand_mvHeadingSub{
  color: #FFFFFF;
  text-shadow: 0px 0px 6px #00000029;
  letter-spacing: 0px;
}
.page-whoweare .outer_wrap .pageBrand .pBrand_mvHeadingMain{
  font-size: 40px;
  font-weight: 700;
  font-family: "Nunito Sans", "Noto Sans JP", sans-serif;
  font-style: italic;
  line-height: 1.367;
}
@media (min-width: 960px) {
  .page-whoweare .outer_wrap .pageBrand .pBrand_mvHeadingMain{
  font-size: 60px;
}
}
.page-whoweare .outer_wrap .pageBrand .pBrand_mvHeadingSub{
  font-size: 20px;
  font-weight: 400;
  font-family: "M PLUS 1p", "Noto Sans JP", sans-serif;
}
.page-whoweare .outer_wrap .pBrand_headingBlue, .page-whoweare .outer_wrap .pBrand_valuesHeading{
  color: #187FC4;
  font-weight: 500;
  font-family: "M PLUS 1p", "Noto Sans JP", sans-serif;
  text-align: center;
  font-style: initial;
}
.page-whoweare .outer_wrap .pBrand_headingBlue{
  font-size: 20px;
  letter-spacing: 2.4px;
  padding-inline: 7vw;
}
@media (min-width: 960px){
  .page-whoweare .outer_wrap .pBrand_headingBlue{
  font-size: 24px;
}
}
.page-whoweare .pageBrand .pBrand_valuesText{
  font-size: 17px;
  font-weight: 400;
  text-align: center;
  letter-spacing: 0px;
  line-height: 1.471;
}
.page-whoweare .outer_wrap .pBrand_headingGreen{
width: max-content;
padding-inline: 7vw;
}
@media (min-width: 960px) {
.page-whoweare .outer_wrap .pBrand_headingGreen{
  display: flex;
  align-items: flex-end;
  width: calc(1166px + 7vw * 2);
  margin-inline: auto;
}
}
.page-whoweare .outer_wrap .pageBrand .pBrand_headingGreenMain, .page-whoweare .outer_wrap .pageBrand .pBrand_headingGreenSub{
  font-family: "Nunito Sans", "Noto Sans JP", sans-serif;
  letter-spacing: 0px;
  margin-block: 0;
}
.page-whoweare .outer_wrap .pageBrand .pBrand_headingGreenMain{
  font-size: 48px;
  font-weight: 600;
  font-style: italic;
  line-height: 1.363;

  &::before{
    content: "";
    display: inline-block;
    width: 13px;
    height: 13px;
    background-color: #6FB82B;
    margin-right: 24px;
    border-radius: 50%;
    transform: translateY(-12px);
  }
}
@media (min-width: 960px){
  .page-whoweare .outer_wrap .pageBrand .pBrand_headingGreenMain{
  font-size: 80px;

  &::before{
    transform: translateY(-21px);
  }
}
}
@media (max-width: 374px){
  .page-whoweare .outer_wrap .pageBrand .pBrand_headingGreenMain{
  font-size: 46px;
}
}
.page-whoweare .outer_wrap .pBrand_headingGreenSub{
  font-size: 20px;
  font-weight: 400;
  line-height: 1.333;
  margin-left: 37px;
  font-style: initial;
}
@media (min-width: 960px){
  .page-whoweare .outer_wrap .pBrand_headingGreenSub{
  font-size: 24px;
  margin-left: 18px;
  transform: translateY(-20px);
}
}
.page-whoweare .outer_wrap .pageBrand .pBrand_textHuge{
  font-size: 24px;
  font-weight: 400;
  text-align: center;
  letter-spacing: 3.96px;
  line-height: 1.477;
  padding-inline: 7vw;
}
@media (min-width: 960px) {
  .page-whoweare .outer_wrap .pageBrand .pBrand_textHuge{
  font-size: 44px;
}
}
.page-whoweare .outer_wrap .pageBrand .pBrand_textMedium{
  font-size: 18px;
  font-weight: 500;
  text-align: center;
  letter-spacing: 2.2px;
  line-height: 2;
  padding-inline: 7vw;
}
@media (min-width: 960px) {
  .page-whoweare .outer_wrap .pageBrand .pBrand_textMedium{
  font-size: 22px;
  line-height: 2.091;
}
}
.page-whoweare .outer_wrap .pageBrand .pBrand_textLarge{
  font-size: 24px;
  font-weight: 500;
  text-align: center;
  letter-spacing: 2.2px;
  line-height: 1.5;
  padding-inline: 7vw;
}
@media (min-width: 960px){
  .page-whoweare .outer_wrap .pageBrand .pBrand_textLarge{
  font-size: 28px;
}
}
.page-whoweare .outer_wrap .pageBrand .pBrand_glanceItemHead{
  font-size: 15px;
  font-weight: 400;
  text-align: center;
  letter-spacing: 1.5px;
  line-height: 1.467;
  color: initial;
}
@media (min-width: 960px){
  .page-whoweare .outer_wrap .pageBrand .pBrand_glanceItemHead{
  margin-block: 20px;
}
}
.page-whoweare .outer_wrap .pageBrand .pBrand_glanceItemBodyText{
  font-size: 34px;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0px;
  line-height: 0.871;
  color: #187FC4;
  margin-top: initial;
}
@media (min-width: 960px){
  .page-whoweare .outer_wrap .pageBrand .pBrand_glanceItemBodyText{
  font-size: 35px;
  line-height: 0.771;
}
}
@media (max-width: 374px){
  .eng .page-whoweare .outer_wrap .pageBrand .pBrand_glanceItemBodyText{
  font-size: 29px;
}
}
.page-whoweare .outer_wrap .pageBrand .pBrand_glanceItemBodyText > span{
  font-size: 18px;
  font-weight: 700;
}
.page-whoweare .outer_wrap .pageBrand .pBrand_glanceItemFootText{
  font-size: 18px;
  font-weight: 500;
  text-align: center;
  letter-spacing: 0px;
  line-height: 1.5;
}
.eng .page-whoweare .outer_wrap .pageBrand .pBrand_glanceItemFootText{
  line-height: 1.3;
}
.page-whoweare .outer_wrap .pageBrand .pBrand_glanceItemFootText > span{
  font-size: 32px;
  font-weight: 600;
}
.eng .page-whoweare .outer_wrap .pageBrand .pBrand_glanceItemFootText > span{
  font-size: 28px;
}
@media (max-width: 374px){
  .eng .page-whoweare .outer_wrap .pageBrand .pBrand_glanceItemFootText > span{
  font-size: 24px;
}
}
.page-whoweare .outer_wrap .pageBrand .pBrand_glanceRightTopItemFootTitle{
  font-size: 12px;
  font-weight: 500;
  text-align: center;
  letter-spacing: 0px;
  line-height: 1.429;
  margin-top: initial;
}
@media (min-width: 960px){
  .page-whoweare .outer_wrap .pageBrand .pBrand_glanceRightTopItemFootTitle{
  font-size: 14px;
}
}
.page-whoweare .outer_wrap .pageBrand .pBrand_glanceRightTopItemFootFigureCaption{
  font-size: 13px;
  font-weight: 600;
  text-align: center;
  letter-spacing: 0px;
  line-height: 1.2;
  color: #187FC4;
  margin-top: initial;
}
.eng .page-whoweare .outer_wrap .pageBrand .pBrand_glanceRightTopItemFootFigureCaption{
  font-size: 10px;
}
@media (min-width: 960px){
  .page-whoweare .outer_wrap .pageBrand .pBrand_glanceRightTopItemFootFigureCaption{
  font-size: 14px;
}
}
.page-whoweare .outer_wrap .pageBrand .pBrand_glanceRightTopItemFootFigureCaption > span{
  font-size: 20px;
}
@media (min-width: 960px){
 .page-whoweare .outer_wrap .pageBrand .pBrand_glanceRightTopItemFootFigureCaption > span{
  font-size: 26px;
} 
}
.page-whoweare .outer_wrap sup{
  font-size: 10px;
}

/* フォントおわり */
.page-whoweare #breadcrumb{
color: #fff;
}
.page-whoweare .child_wrap .sub_bc > a.home{
background: url(../img/home_w.png) center top / contain no-repeat;
}
.pageBrand {
padding-top: 76px;
}
.page-whoweare .outer_wrap{
  background-color: initial;
}
.page-whoweare .pageBrand li{
  list-style: none;
}
@media (min-width: 960px){
.pageBrand {
padding-top: 125px;
}
}
.page-whoweare .inner_wrap{
padding: initial;
}
.pBrand_mv{
width: 100%;
height: 70vh;
position: relative;

&::before{
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: #7B6050;
  mix-blend-mode: multiply;
  position: absolute;
  opacity: 0.4; 
}
}
.pBrand_mvImage{
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 30%;
}
.pBrand_mvHeading{
  position: absolute;
  top: 40%;
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
  width: 100%;
  padding-inline: 7vw;
}
.pBrand_vision{
  width: 100%;
  height: auto;
  position: relative;
  margin-inline: auto;
}
@media (min-width: 960px) {
  .pBrand_vision{
  width: 1000px;
  height: 537px;
}
}
.pBrand_visionBg{
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.15;
}
.eng .pBrand_visionBg{
  transform: translateY(30px);
}
.pBrand_visionInner{
  position: absolute;
  top: 0;
  width: 100vw;
  margin: 0 calc(50% - 50vw);
}
@media (min-width: 960px){
  .pBrand_visionInner{
  top: 36%;
}
}
.page-whoweare .pBrand_valuesList{
  display: flex;
  flex-direction: column;
  gap: 20px;
  width: 100%;
  margin-inline: auto;
  padding-inline: 7vw;
}
@media (min-width: 960px) {
  .page-whoweare .pBrand_valuesList{
  flex-direction: row;
  width:min(calc(1166px + 7vw * 2), 100%);
}
}
.page-whoweare .pBrand_valuesItem{
  width: 100%;
  padding-block: 20px;
  padding-inline: 10px;
  border: 1px solid #DFDFDF;
}
@media (min-width: 960px) {
  .page-whoweare .pBrand_valuesItem{
  width: calc((100% - 20px * 4) / 5);
  padding-block: 40px;
}
}
.page-whoweare .pBrand_valuesHeading{
  font-size: 20px;
  letter-spacing: 2.2px;
  margin-bottom: 14px;
}
@media (min-width: 960px){
  .page-whoweare .pBrand_valuesHeading{
  font-size: 22px;
}
}
@media (min-width: 960px){
  .eng .page-whoweare .pBrand_valuesHeading{
    height: 90px;
}
}
.pBrand_concept > .pBrand_textMedium:not(:first-child){
  margin-top: 50px;
}
.pBrand_sloganInner{
  width: 100%;
  height: 84px;
  padding-inline: 7vw;
}
@media (min-width: 960px) {
.pBrand_sloganInner{
  width: calc(597px + 7vw * 2);
  height: 84px;
}
}
.pBrand_sloganImage{
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.pBrand_videoInner{
  width: 100%;
  height: auto;
  margin-inline: auto;
  padding-inline: 7vw;
}
@media (min-width: 960px) {
.pBrand_videoInner{
  width: calc(1166px + 7vw * 2);
  max-width: 100%;
  height: 656px;
}
}
.pBrand_video{
  width: 100%;
  object-fit: cover;
  aspect-ratio: 16 / 9;
}
@media (min-width: 960px) {
  .pBrand_video{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
}
.pBrand_video{
  height: auto;
}
@media (min-width: 960px) and (max-width: 1360px) {
  .pBrand_businessListWrap, .pBrand_glanceContainer{
    width: 100%;
    overflow-x: scroll;
  }
}
.page-whoweare .pBrand_businessList{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(4, 1fr);
  grid-column-gap: 10px;
  grid-row-gap: 10px;
  width: 100%;
  padding-inline: 7vw;
}
@media (min-width: 960px) {
  .page-whoweare .pBrand_businessList{
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(2, 1fr);
    grid-column-gap: 16px;
    grid-row-gap: 40px;
    width: calc(1166px + 7vw * 2);
}
}
.page-whoweare .pBrand_businessItem{
  padding-left: initial;
}
.pBrand_businessItemWrap {
  display: inline-block;
  text-align: center;
  font-size: 14px;
  line-height: 1.438;
  font-weight: 500;

  &:hover{
    opacity: initial;
  }

  &:hover .pBrand_businessItemImage {
  transform: scale(1.1);
  opacity: 0.75;
}
}
@media (min-width: 960px){
  .pBrand_businessItemWrap {
  font-size: 16px;
}
}
.eng .pBrand_businessItemWrap{
  font-weight: 600;
}
.pBrand_businessItemInner{
aspect-ratio: 14 / 9;
overflow: hidden;
background-color: #187FC4;
}
@media (min-width: 960px){
.pBrand_businessItemInner{
height: 180px;
}
}
.pBrand_businessItemImage{
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: 0.3s;
}
.pBrand_businessButton{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  background-color: #187FC4;
  color: #fff;
  border: 1px solid #187FC4;
  position: relative;
  padding-inline: 20px;
  padding-block: 20px;
  aspect-ratio: 14 / 9;

  &::after{
  content: "";
  mask: url(../img/arrow_b.png) center top / contain no-repeat;
  background-color: #fff;
  width: 20.5px;
  height: 4px;
  transition: 0.3s;
  margin-left: 20px;
  }

  &:hover{
  background-color: #fff;
  color: #187FC4;
  border: 1px solid #187FC4;
  }

  &:hover::after{
    background-color: #187FC4;
  }
}
@media (min-width: 960px){
  .pBrand_businessButton{
  aspect-ratio: initial;
  height: 100%;
  max-height: 180px;
  font-size: 20px;
  }
}
.pBrand_glanceWrap{
  padding-inline: 7vw;
  width: 100%;
}
@media (min-width: 960px){
  .pBrand_glanceWrap{
  width: calc(1166px + 7vw * 2);
}
}
.pBrand_glance{
  background-color: #187FC4;
  padding: 30px;
}
.pBrand_glanceInner{
  display: flex;
  flex-direction: column;
  row-gap: 20px;
}
@media (min-width: 960px) {
  .pBrand_glanceInner{
  justify-content: center;
  flex-direction: row;
  column-gap: 20px;
  row-gap: initial;
}
}

.pBrand_glanceListLeft, .pBrand_glanceListRightTop, .pBrand_glanceListRightBottom {
    display: grid;
    grid-row-gap: 20px;
  }
@media (min-width: 960px) {
  .pBrand_glanceListLeft, .pBrand_glanceListRightTop, .pBrand_glanceListRightBottom {
    grid-column-gap: 20px;
    grid-row-gap: 20px;
  }
}
.page-whoweare .pBrand_glanceListLeft, .page-whoweare .pBrand_glanceListRightTop, .page-whoweare .pBrand_glanceListRightBottom {
  padding-left: initial;
  margin-block: initial;
  }
@media (min-width: 960px) {
  .pBrand_glanceListLeft {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(3, 1fr);
    width: 56%;
  }
}
.page-whoweare .pBrand_glanceItem{
  background-color: #fff;
  padding: 20px;
}
@media (min-width: 960px){
  .page-whoweare .pBrand_glanceItem{
  padding: 30px 20px;
}
}
.pBrand_glanceListWrap{
    display: flex;
    flex-direction: column;
    row-gap: 20px;
  }
@media (min-width: 960px) {
  .pBrand_glanceListWrap{
    width: 44%;
  }
}
@media (min-width: 960px){
  .pBrand_glanceLeftItem{
    min-height: 180px;
  }
}
@media (min-width: 960px) {
  .pBrand_glanceListRightTop {
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(1, 1fr);
    height: 60%;
  }
}
@media (min-width: 960px) {
  .pBrand_glanceRightTopItem01{
    grid-column: span 2 / span 2;
  }
}
@media (min-width: 960px) {
  .pBrand_glanceRightTopItem02{
    grid-column-start: 3;
  }
}
@media (min-width: 960px) {
  .pBrand_glanceListRightBottom {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(1, 1fr);
    height: 40%;
  }
}
.page-whoweare .pageBrand .pBrand_glanceTextTop, .page-whoweare .pageBrand .pBrand_glanceTextFoot > p{
  color: #fff;
  margin-top: initial;
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 1.2px;
  line-height: 1.5;
}
@media (min-width: 960px){
  .page-whoweare .pageBrand .pBrand_glanceTextTop{
    text-align: right;
    padding-bottom: 8px;
  }
}
@media (min-width: 960px) {
  .page-whoweare .pageBrand .pBrand_glanceTextFoot{
    display: flex;
    justify-content: space-between;
    padding-top: 8px;
  }
}
.page-whoweare .pageBrand .pBrand_glanceLeftItemFoot{
margin-top: 10px;
}
.page-whoweare .pageBrand .pBrand_glanceLeftItemFoot:not(:has(span)){
margin-top: 20px;
}
.eng .page-whoweare .pageBrand .pBrand_glanceLeftItemFoot{
margin-top: 20px;
}
.pBrand_glanceRightTopItemFootFigureWrap, .pBrand_glanceRightTopItemFootTitleWrap{
  display: flex;
  align-items: center;
}
.pBrand_glanceRightTopItemFootFigureWrap{
  justify-content: center;
}
.pBrand_glanceRightTopItemFootTitleWrap{
  padding-block: 28px 8px;
}
.pBrand_glanceRightTopItemFootTitleRatio{
  flex-grow: 5;
}
.pBrand_glanceRightTopItemFootTitleRate{
  flex-grow: 1;
}
.pBrand_glanceRightTopItemFootFigureRatio, .pBrand_glanceRightTopItemFootFigureRate{
  width: 36px;
  height: 36px;
  border-radius: 50%;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (min-width: 960px){
  .pBrand_glanceRightTopItemFootFigureRatio, .pBrand_glanceRightTopItemFootFigureRate{
  width: 42px;
  height: 42px;
}
}
@media (max-width: 374px){
  .eng .pBrand_glanceRightTopItemFootFigureRatio, .pBrand_glanceRightTopItemFootFigureRate{
  width: 20px;
  height: 20px;
}
}
.pBrand_glanceRightTopItemFootFigureRatio{
  background-image: radial-gradient(#fff 0% 48%, transparent 52%), conic-gradient(#1F78B4 35%, #A6CEE3 36% 100%);
}
.pBrand_glanceRightTopItemFootFigureRate{
  background-image: radial-gradient(#fff 0% 48%, transparent 52%), conic-gradient(#1F78B4 54%, #A6CEE3 55% 100%);
}
.pBrand_glanceItemIcon{
  width: 40px;
  height: 40px;
  margin-inline: auto;
}
.pBrand_glanceItemIcon img{
  width: 100%;
  height: 100%;
  object-fit: contain;
}


@media (min-width: 960px) {}
/* 要素外の余白 */
.body_pBrandMission{
  margin-top: 130px;
}
.body_pBrandVision, .body_pBrandValues, .page-whoweare .body_pBrandConcept, .page-whoweare .body_pBrandSlogan, .body_pBrandVideo, .body_pBrandBusiness, .body_pBrandGlanceHeading{
  margin-top: 100px;
}
@media (min-width: 960px) {
  .body_pBrandVision, .body_pBrandValues{
  margin-top: 120px;
}
}
@media (min-width: 960px) {
  .page-whoweare .body_pBrandValues{
  margin-bottom: 70px;
}
}
@media (min-width: 960px) {
  .page-whoweare .body_pBrandConcept, .page-whoweare .body_pBrandSlogan, .body_pBrandVideo, .body_pBrandBusiness, .body_pBrandGlanceHeading{
  margin-top: 170px;
}
}
.body_pBrandSloganInner, .body_pBrandBusinessList, .body_pBrandGlance{
  margin-inline: auto;
}
.page-whoweare .pageBrand .body_pBrandSloganText{
  margin-top: 30px;
}
.body_pBrandBusinessItemInner{
  margin-bottom: 8px;
}
.body_pBrandBusiness,.body_pBrandGlanceHeading{
  margin-bottom: 50px;
}
.body_pBrandGlance{
  margin-bottom: 110px;
}
.pBrand_glanceItemIcon01, .pBrand_glanceItemIcon02, .pBrand_glanceItemIcon03, .pBrand_glanceItemIcon04{
  margin-block: 10px 20px;
}
@media (min-width: 960px){
.pBrand_glanceItemIcon01{
  margin-block: 10px 28px;
}
.pBrand_glanceItemIcon02{
  margin-block: 52px 20px;
}
.pBrand_glanceItemIcon03, .pBrand_glanceItemIcon04{
  margin-block: 10px 20px;
}
}
.page-whoweare .pageBrand .body_pBrandGlanceRTIBodyRight:not(:first-of-type){
margin-top: 20px;
}
/* 要素外の余白おわり */


