@charset "utf-8";



/* --------------- header --------------- */
.header{
  position: relative;
}
.mv-cont{
  position: absolute;
  top:57%;
  left:50%;
  translate:-50% -50%;
  width: clamp(21.875rem, 8.981rem + 55.02vw, 75rem);
  padding: 0.5em;
  z-index: 2;
}
@media (max-width: 1023px){

}
@media (max-width: 767px){
  .mv-cont {
      position: absolute;
      top: 50%;
      left: 50%;
      translate: -50% -50%;
      width: clamp(21.875rem, 8.981rem + 55.02vw, 75rem);
      padding: 0.5em;
      z-index: 2;
    }
}



/* --------------- footer --------------- */
.footer{
  background-image: url('../image/footer-bg.png');
  background-size: cover;
}

.footer__logo{
  width: min(40%,325px);
}
.footer__expo-logo{
  display: flex;
  align-items:flex-end;
  width: min(50%,212px);
}
.footer__sns-wrap{
  align-items:flex-end;
}
.footer__sns-icon{
  max-width: 30px;
}
@media (max-width: 1023px){
  .footer {
      background-image: url('../image/footer-bg-tb.png');
      background-size: cover; }
}
@media (max-width: 767px){

  .footer {
      background-image: url('../image/footer-bg-sp.png');
      background-size: cover;
    }
  .footer_menu {
       width: 100%;
    }
    
  .mt2-sp {
      margin-top: 1.3em;
    }
    
  .fit02 {
      width: fit-content; }
  }
  .footer .flex{
    flex-wrap: wrap;
  }
  .footer__sns-wrap{
    text-align: right;
    margin-left:auto;
  }


/* --------------- fv --------------- */

@media (max-width: 1023px){
}
@media (max-width: 767px){
}

/* --------------- schedule --------------- */
.schedule{
  position: relative;
}
.schedule__bg-right{
  position: absolute;
  top:-7em;
  right:0;
  width: min(23%,575px);
  z-index: 0;
}
.schedule__cont-wrap{
  grid-template-columns: 70% 1fr;
  grid-gap:2.5em;
}
.h-link a{
  position: relative;
  display: inline-block;
  width: 100%;
  padding: 1em 0;
}
.h-link a::before{
  content: '';
  width: 6px;
  height: 6px;
  border: 0;
  border-top: solid 1.5px #282828;
  border-right: solid 1.5px #282828;
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  right: 0.5em;
  bottom: 0;
  margin: auto;
}
.h-link a::after{
  position: absolute;
  content: '';
  bottom:0.5em;
  left:50%;
  width: 70%;
  height: 2px;
  background-color: #282828;
  translate:-50% 0;
}
.inner-link__over li{
  width: 20%;
  text-align: center;
}
.inner-link__under li{
  width: 18%;
  text-align: center;
}

.inst-brn{
    /* width: clamp(23.25rem, 15.089rem + 34.82vw, 56.875rem); */
    margin: 90px 0 0;
    text-align: center;
}

.inst-brn img{
  width: 70%;
}

@media (max-width: 767px){
  .schedule__cont-wrap{
    grid-template-columns: repeat(1,1fr);
  }
  .schedule__cont-pic{
    width: 60%;
    margin-left:auto;
  }
  .inner-link__over{
    display: grid;
    grid-template-columns: repeat(2,1fr);
  }
  .inner-link__over li{
    width: 100%;
  }
  .inner-link__under{
    display: grid;
    grid-template-columns: repeat(2,1fr);
  }
  .inner-link__under li{
    width: 100%;
  }

    .inst-brn{
      margin-top: 55px;
    }

    .inst-brn img{
      width: 100%;
    }
}

/* --------------- 同友会とは --------------- */
#about{
  position: relative;
}

.txt-vertical{
  writing-mode: vertical-rl;
}

.vertical-r{
    position: absolute;
    top: 2em;
    right: 1em;
}

.about__bg-left{
  position: absolute;
  top:10em;
  left:0;
  width: min(17%,300px);
  z-index: 0;
}
.about__bg-right{
  position: absolute;
  bottom:38%;
  right:0;
  width: min(20%,370px);
  z-index: 0;
}
.about__cont-main{
  padding: 0 8.5% 4em;
}
.about__ttl-main{
  width: fit-content;
  margin-inline: auto;
  padding: 0.4em 1.5em;
  /* border-radius: 50px; */
  translate:0 -50%;
}
.about__cont-sub{
  padding: 0 8.5% 4em;
}
.about__ttl-sub {
    width: fit-content;
    margin-inline: auto;
    padding: 0.6em 2em;
    border-radius: 50px;
    translate: 0 -50%;
}
.about__purpose-number {
  width: 1.5em;
  height: 1.5em;
  border-radius: 50%;
}
.about__cont-main .grid{
  grid-template-columns: repeat(3,1fr);
}
.about__cont-sub hr{
  margin: 2em auto;
  background-color: #3C796C;
  height: 1px;
  opacity: 0.5;
}

@media (max-width: 1023px){
}
@media (max-width: 767px){
  .about__bg-left{
    top:0;
  }
  .about__cont-main{
    padding: 0 5% 3em;
  }
  .about__cont-sub{
    padding: 0 5% 3em;
  }
}



/* --------------- 人を生かす経営 --------------- */
#management{
  position: relative;
}
.management__bg-left{
  position: absolute;
  top:0;
  left:0;
  width: min(17%,300px);
  z-index: 0;
  translate:0 -50%;
}
.management__cont-inner{
  position: relative;
  padding: 2em 5%;
}
.management__cont-number{
  position: absolute;
  top:0;
  left:0;
  translate:-50% -50%;
  width: 4em;
}
.management__pic{
  margin-inline: auto;
  width: min(100%,480px);
}
@media (max-width: 1023px){
}
@media (max-width: 767px){
  .management__cont-number{
    left:1em;
    width: 3em;
  }
}



/* --------------- Vision2020 --------------- */
#vision{
  position: relative;
}
.vision__bg-left{
  position: absolute;
  top:0;
  left:0;
  width: min(12%,260px);
  z-index: 0;
  translate:0 -50%;
}
.vision2020__cont-inner{
  padding:2em 1em;
  border-radius: 12px;
}

.border-3{
  border: 3px solid #3C796C;
}

.vision2020_inner-list{
  display: inline-block
}

.vision2020_inner-list-txt{
  display: inline-block;
}

.vision2020__cont-red-border{
  margin-inline: auto;
  width: fit-content;
  padding-bottom: 0.2em;
  border-bottom:2px solid #E60012;
}
@media (max-width: 1023px){
}
@media (max-width: 767px){
  .vision2020__cont-inner{
    padding:2em;
  }
}



/* --------------- 01~05 --------------- */
.concept__cont-inner{
  position: relative;
  padding: 2em 5%;
  z-index: 2;
}
.concept_05{
  border-radius: 3px;
}
.concept__head-thema>p{
  margin-bottom: 0.5em;
}
.concept__head-thema p{
  text-align: center;
}
.concept__attempt-ttl{
  margin-top: 1.5em;
  margin-bottom: 1em;
  width: fit-content;
  border-radius: 50px;
  padding: 0 20px;
}
.concept-img-wrap{
  display: flex;
  justify-content: space-between;
}
.concept-img-wrap02{
  justify-content: center;
}
.concept-img-wrap03{
  flex-wrap: wrap;
  margin-bottom: 2em;
}
.concept-img-wrap figure{
  width: 48%;
}
.concept-future{
  border: 3px solid #0068B7;
  border-radius: 20px;
}
.concept-future-ttl{
  border-bottom: 2px solid #0068B7;
  padding-bottom: 5px;
}
@media (max-width: 1023px){
}
@media (max-width: 767px){
  .concept__ttl-wrap{
    flex-wrap: wrap;
  }
  .concept-img-wrap{
    display: block;
  }
  .concept-img-wrap figure {
    width: 90%;
    margin: 0 auto 1em;
  }
  .concept-img-wrap03{
    margin-bottom: 0;
  }
  .concept__head-thema p{
    text-align: left;
  }
}






@media (max-width: 1023px){
}
@media (max-width: 767px){
}