@charset "utf-8";

/* *****************************************************************************

 about list style

***************************************************************************** */
/* basic-about-list */
.basic-about-list{
  display: flex;
  justify-content: space-between;
}
.basic-about-list > .-item{
  width: 30.3704%;
}
.basic-about-list > .-item > a{
  display: block;
}
.basic-about-list > .-item > a > .-img{
  border-radius: 0.4rem;
  overflow: hidden;
}
.basic-about-list > .-item > a > .-img > img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}
.basic-about-list > .-item > a:hover > .-img > img{
  transform: scale(1.1);
}
.basic-about-list > .-item > a > .-text{
  margin-top: 2rem;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.25;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.6rem;
  transition: all 0.2s ease;
}
.basic-about-list > .-item > a:hover > .-text{
  color: var(--color-red);
}
.basic-about-list > .-item > a > .-text > .-arrow{
  display: inline-block;
  width: 3rem;
  height: 3rem;
  flex-shrink: 0;
  border-radius: 50%;
  border: 1px solid var(--color-red);
  background: url(/assets/images/arrow-circle-basic.svg) center center no-repeat;
  background-size: 3rem auto;
  position: relative;
  transition: all 0.2s ease;
}
.basic-about-list > .-item > a > .-text > .-arrow::before{
  content: '';
  position: absolute;
  inset: 0;
  background: url(/assets/images/arrow-circle-basic-on.svg) center center no-repeat;
  background-size: 3rem auto;
  opacity: 0;
  transition: opacity 0.2s ease;
}
.basic-about-list > .-item > a:hover > .-text > .-arrow::before{
  opacity: 1;
}

@media print, screen and (max-width: 1000px){
  /* basic-about-list */
  .basic-about-list{
    flex-wrap: wrap;
    row-gap: 5rem;
  }
  .basic-about-list > .-item{
    width: calc(50% - 2rem);
  }
}

@media print, screen and (max-width: 760px){
  /* basic-about-list */
  .basic-about-list{
    row-gap: 4rem;
  }
  .basic-about-list > .-item{
    width: calc(50% - 0.5rem);
  }
  .basic-about-list > .-item > a > .-text{
    font-size: 1.8rem;
  }
}

@media print, screen and (max-width: 580px){
  /* basic-about-list */
  .basic-about-list{
    display: block;
    margin-bottom: 2rem;
  }
  .basic-about-list > .-item{
    width: 100%;
  }
  .basic-about-list > .-item + .-item{
    margin-top: 4rem;
  }
}

/* *****************************************************************************

 message style

***************************************************************************** */
/* president-box */
.president-box{
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.president-box > .-primary{
  width: 34.0974%;
}
.president-box > .-primary > .-catch{
  margin-bottom: 5.5rem;
}
.president-box > .-primary > .-catch > p{
  font-size: 2.8rem;
  line-height: 1.4286;
  font-weight: 700;
  white-space: nowrap;
}
.president-box > .-primary > .-profile > .-position{
  white-space: nowrap;
  font-size: 1.6rem;
  line-height: 1;
  margin-bottom: 1.2rem;
}
.president-box > .-primary > .-profile > .-name{
  white-space: nowrap;
  font-size: 2.4rem;
  line-height: 1;
}
.president-box > .-img{
  width: 60.1719%;
}
.president-box > .-img > img{
  width: 100%;
  border-radius: 0.4rem;
}

@media print, screen and (max-width: 1235px){
  /* president-box */
  .president-box > .-primary > .-catch{
    margin-bottom: 4.4534vw;
  }
  .president-box > .-primary > .-catch > p{
    font-size: 2.2672vw;
  }
}

@media print, screen and (max-width: 1160px){
  /* president-box */
  .president-box{
    display: block;
  }
  .president-box > .-primary{
    width: 100%;
  }
  .president-box > .-primary > .-catch{
    margin-bottom: 4rem;
  }
  .president-box > .-primary > .-catch > p{
    font-size: 2.8rem;
  }
  .president-box > .-primary > .-catch > p > br:nth-child(1){
    display: none;
  }
  .president-box > .-img{
    margin-top: 5rem;
    width: 100%;
  }
}

@media print, screen and (max-width: 840px){
  /* president-box */
  .president-box > .-primary > .-catch > p > br:nth-child(1){
    display: inline;
  }
}

@media print, screen and (max-width: 760px){
  /* president-box */
  .president-box > .-primary > .-catch > p > br:nth-child(1){
    display: none;
  }
  .president-box > .-primary > .-catch > p{
    font-size: 2.6rem;
  }
  .president-box > .-img{
    max-width: 59.8rem;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (max-width: 520px){
  /* president-box */
  .president-box > .-primary > .-catch > p > br:nth-child(1){
    display: inline;
  }
}

/* *****************************************************************************

 business style

***************************************************************************** */
/* illust-business */
.illust-business{
  max-width: 47.4rem;
  margin-left: auto;
  margin-right: auto;
  margin-top: 4rem;
}
.illust-business > img{
  width: 100%;
}

/* business-item */
.business-item{
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
}
.business-item-img{
  width: 32.5215%;
}
.business-item-img > img{
  width: 100%;
  border-radius: 0.4rem;
}
.business-item-primary{
  width: 61.7479%;
}
.business-item-primary > .-title{
  counter-increment: business-item;
  position: relative;
  padding-left: 3rem;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.45;
  margin-bottom: 1.4rem;
}
.business-item-primary > .-title::before{
  content: counter(business-item) ".";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--color-red);
}
.business-item-primary > .-catch{
  color: var(--color-red);
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.45;
  margin-bottom: 1.5rem;
}
.business-item-primary > .-text > p{
  font-size: 1.6rem;
  line-height: 1.75;
  margin-bottom: 1.6rem;
}
.business-item-primary > .-issue{
  display: flex;
  align-items: flex-start;
  gap: 1.6rem;
  font-size: 1.6rem;
  line-height: 1.75;
  font-weight: 700;
}
.business-item-primary > .-issue > span{
  background-color: var(--color-red);
  color: var(--color-white);
  font-size: 1.4rem;
  font-weight: 700;
  padding-left: 0.8rem;
  padding-right: 0.8rem;
  line-height: 2.8rem;
  white-space: nowrap;
  flex-shrink: 0;
}

@media print, screen and (max-width: 1200px){
  /* business-item */
  .business-item-img{
    width: auto;
  }
  .business-item-primary{
    padding-left: 2rem;
  }
}

@media print, screen and (max-width: 900px){
  /* business-item */
  .business-item{
    display: block;
  }
  .business-item-primary{
    width: 100%;
    padding-left: 0;
  }
  .business-item-img{
    margin-top: 4rem;
    max-width: 32rem;
    margin-left: auto;
    margin-right: auto;
  }
}

@media print, screen and (max-width: 760px){
  /* business-item */
  .business-item{
    display: flex;
  }
  .business-item-primary{
    width: 61.7479%;
    padding-left: 2rem;
  }
  .business-item-primary > .-title{
    font-size: 2.2rem;
    padding-left: 2.5rem;
  }
  .business-item-primary > .-catch{
    font-size: 1.8rem;
  }
  .business-item-img{
    margin-top: 0;
  }
}

@media print, screen and (max-width: 640px){
  /* business-item */
  .business-item{
    display: block;
  }
  .business-item-primary{
    width: 100%;
    padding-left: 0;
  }
  .business-item-img{
    margin-top: 2rem;
    max-width: 32rem;
  }
}

@media print, screen and (max-width: 460px){
  .business-item-primary > .-issue{
    flex-direction: column;
    align-items: flex-start;
    gap: 0.8rem;
  }
}

/* *****************************************************************************

 numbers style

***************************************************************************** */
/* numbers-list */
.numbers-list{
  display: flex;
  flex-wrap: wrap;
  gap: 6rem 3.4rem;
}
.numbers-list > .-item{
  width: calc((100% - 3.4rem) / 2); 
}

@media print, screen and (max-width: 1000px){
  /* numbers-list */
  .numbers-list{
    gap: 6rem 2rem;
  }
  .numbers-list > .-item{
  width: calc((100% - 2rem) / 2); 
}
}

@media print, screen and (max-width: 560px){
  /* numbers-list */
  .numbers-list{
    display: block;
  }
  .numbers-list > .-item{
    width: 100%;
  }
  .numbers-list > .-item + .-item{
    margin-top: 6rem;
  }
}

/* numbers-list-visual */
.numbers-list-visual{
  display: flex;
  justify-content: space-between;
}

/* numbers-list-illust */
.numbers-list-illust{
  width: 30.1205%;
}
.numbers-list-illust > img{
  width: 100%;
}

@media print, screen and (max-width: 560px){
  /* numbers-list-illust */
  .numbers-list-illust{
    width: 10rem;
  }
}

@media print, screen and (max-width: 420px){
  /* numbers-list-illust */
  .numbers-list-illust{
    width: 30.1205%;
  }
}

/* numbers-list-primary */
.numbers-list-primary{
  width: 60.8434%;
  display: flex;
  flex-direction: column;
}
.numbers-list-primary > .-title{
  line-height: 1;
  vertical-align: text-bottom;
  margin-bottom: 1.8rem;
}
.numbers-list-primary > .-title > span{
  background-color: var(--color-red);
  color: var(--color-white);
  display: inline-block;
  line-height: 1;
  font-weight: 700;
  font-size: 1.6rem;
  padding: 0.6rem;
  white-space: nowrap;
}
.numbers-list-primary.-black > .-title > span{
  background-color: var(--color-black);
}
.numbers-list-primary > .-number{
  color: var(--color-red);
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
}
.numbers-list-primary.-black > .-number{
  color: var(--color-black);
}
.numbers-list-primary > .-number > .-main{
  font-size: 5rem;
}
.numbers-list-primary > .-number > .-sub{
  font-size: 2rem;
  padding-left: 0.8rem;
}

@media print, screen and (max-width: 1235px){
  /* numbers-list-primary */
  .numbers-list-primary > .-title{
    margin-bottom: 1.4575vw;
  }
  .numbers-list-primary > .-title > span{
    font-size: 1.2955vw;
    padding: 0.4858vw;
  }
  .numbers-list-primary > .-number > .-main{
    font-size: 4.0486vw;
  }
  .numbers-list-primary > .-number > .-sub{
    font-size: 1.6194vw;
    padding-left: 0.6478vw;
  }
}

@media print, screen and (max-width: 1000px){
  /* numbers-list-primary */
  .numbers-list-primary > .-title > span{
    font-size: 1.5547vw;
  }
}

@media print, screen and (max-width: 760px){
  /* numbers-list-primary */
  .numbers-list-primary > .-title{
    margin-bottom: 1.8rem;
  }
  .numbers-list-primary > .-title > span{
    font-size: 1.6rem;
    padding: 0.6rem;
  }
  .numbers-list-primary > .-number > .-main{
    font-size: 5rem;
  }
  .numbers-list-primary > .-number > .-sub{
    font-size: 2rem;
    padding-left: 0.8rem;
  }
}

@media print, screen and (max-width: 700px){
  /* numbers-list-primary */
  .numbers-list-primary > .-title{
    margin-bottom: 2.5714vw;
  }
  .numbers-list-primary > .-title > span{
    font-size: 2.2857vw;
    padding: 0.8571vw;
  }
  .numbers-list-primary > .-number > .-main{
    font-size: 7.1429vw;
  }
  .numbers-list-primary > .-number > .-sub{
    font-size: 2.8571vw;
    padding-left: 1.1429vw;
  }
}

@media print, screen and (max-width: 560px){
  /* numbers-list-primary */
  .numbers-list-primary{
    flex: 1;
    padding-left: 3rem;
  }
  .numbers-list-primary > .-title{
    margin-bottom: 1.8rem;
  }
  .numbers-list-primary > .-title > span{
    font-size: 1.6rem;
    padding: 0.6rem;
  }
  .numbers-list-primary > .-number > .-main{
    font-size: 5rem;
  }
  .numbers-list-primary > .-number > .-sub{
    font-size: 2rem;
    padding-left: 0.8rem;
  }
}

@media print, screen and (max-width: 420px){
  /* numbers-list-primary */
  .numbers-list-primary{
    padding-left: 7.1429vw;
  }
  .numbers-list-primary > .-title{
    margin-bottom: 4.2857vw;
  }
  .numbers-list-primary > .-title > span{
    font-size: 3.8095vw;
    padding: 1.4286vw;
  }
  .numbers-list-primary > .-number > .-main{
    font-size: 11.9048vw;
  }
  .numbers-list-primary > .-number > .-sub{
    font-size: 4.7619vw;
    padding-left: 1.9048vw;
  }
}

/* numbers-list-text */
.numbers-list-text{
  margin-top: 2.2rem;
}
.numbers-list-text > p{
  font-size: 1.4rem;
  line-height: 1.8571;
}

/* numbers-list-note */
/*
.numbers-list-note{
  font-size: 1.4rem;
  line-height: 1;
  margin-top: 6rem;
}
*/

@media print, screen and (max-width: 640px){
  /* numbers-list-note */
  /*
  .numbers-list-note{
    margin-top: 4rem;
  }
  */
}

/* keyword-list */
.keyword-list{
  display: flex;
  flex-direction: column;
  gap: 6rem;
}
.keyword-list-visual{
  display: flex;
  justify-content: space-between;
}
.keyword-list-primary{
  margin-top: 1.2rem;
  width: 43.6963%
}
.keyword-list-primary > .-title{
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}
.keyword-list-primary > .-title > span{
  padding-left: 1rem;
  padding-right: 1rem;
}
.keyword-list-primary > .-text{
  margin-top: 2.5rem;
}
.keyword-list-primary > .-text > p{
  font-size: 1.6rem;
  line-height: 1.75;
}
.keyword-list-img{
  width: 47.5645%; 
}
.keyword-list-img > img{
  width: 100%;
  border-radius: 0.4rem;
}

@media print, screen and (max-width: 1000px){
  /* keyword-list */
  .keyword-list-primary{
    flex: 1;
    width: auto;
    padding-right: 2rem;
  }
}

@media print, screen and (max-width: 840px){
  /* keyword-list */
  .keyword-list-visual{
    display: block;
  }
  .keyword-list-primary{
    margin-top: 0;
    padding-right: 0;
  }
  .keyword-list-img{
    margin-top: 2rem;
    width: 100%;
  }
}

@media print, screen and (max-width: 760px){
  /* keyword-list */
  .keyword-list-visual{
    display: flex;
  }
  .keyword-list-primary{
    margin-top: 1.2rem;
    padding-right: 2rem;
  }
  .keyword-list-primary > .-title{
    font-size: 2.8rem;
  }
  .keyword-list-img{
    width: 47.5645%;
  }
}

@media print, screen and (max-width: 560px){
  /* keyword-list */
  .keyword-list-visual{
    display: block;
  }
  .keyword-list-primary{
    margin-top: 0;
    padding-right: 0;
  }
  .keyword-list-img{
    margin-top: 2rem;
    width: 100%;
  }
}
