
/*====================================================
////id |  mv
====================================================*/
#mv {
  overflow: hidden;
}
.mv-main {
  color: #fff;
  text-align: center;
}
.mv-item-wrapper {
  display: grid;
    grid-template-columns: 1fr 1fr;
}
.mv-item {
  display: grid;
    grid-template-rows: subgrid;
  grid-row: span 3;
}

.mv-item-link {
  margin: auto;
  width: 100%;
  max-width: 340px;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 769.0px) {
  .mv-inner {
    padding: 0;
    width: 100%;
  }
  .mv-main {
    background: url('../img/top/top-mv-bg.webp') no-repeat center / cover;
    padding: 64px 5vw 48px;
  }
  .mv-head {
    font-size: 4rem;
    margin-bottom: .7em;
  }
  .mv-item-wrapper {
    background: #fff;
    padding: 64px 0 0;
  }
  .mv-item {
    grid-gap: 12px;
    padding: 0 5vw;
  }
  .mv-item:nth-child(even) {
    border-left: solid 1px #D0D0D0;
  }
  .mv-item-title picture {
    display: flex;
      justify-content: center;
  }
  .mv-item-title img {
    height: 55px;
    margin-bottom: 20px;
  }
  .mv-item-title .text {
    font-weight: 700;
  }
  .item-pjc .mv-item-title .text {
    color: #DB373D;
  }
  .item-bridge .mv-item-title .text {
    color: #013188;
  }
  .mv-item-link .linkBtn {
    gap: .26em;
  }
}
@media screen and (max-width: 480.0px) {
  .mv-head {
    font-size: 9.7vw;
  }
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769.1px) {
  #mv {
    background: url('../img/top/top-mv-bg.webp') no-repeat center / cover;
  }
  .mv-head {
    font-size: 4.8rem;
    margin-bottom: .5em;
  }
  .mv-item-wrapper {
    display: grid;
      grid-gap: 2vw;
      grid-template-columns: 1fr 1fr;
    margin: 64px auto 0;
    max-width: 1000px;
  }
  .mv-item {
    background: #fff;
    border-radius: 16px;
    grid-gap: 20px;
    font-size: 1.4rem;
    padding: 40px 2vw 24px;
  }
  .mv-item-title img {
    height: 5.2vw;
    max-height: 52px;
  }
  .mv-item-title .text {
    display: none;
  }
}
@media screen and (min-width:1110px) {
  .mv-item-wrapper {
    grid-gap: 32px;
  }
  .mv-item {
    padding: 40px 40px 24px;
  }
}

@media (hover: hover) {}


/*====================================================
////id |  outline
====================================================*/
.outline-item .title {
  display: flex;
    align-items: center;
    justify-content: center;
}
.outline-item.type-pjc .title {
  background: #FFEFF0;
}
.outline-item.type-bridge .title {
  background: #EDF3FF;
}
.outline-item-title {
  margin-bottom: 0;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 960.0px) {
  .outline-item-wrapper {
    display: grid;
      grid-gap: 20px;
    margin: auto;
    max-width: 700px;
  }
  .outline-item {
    display: grid;
      grid-gap: 0 1.8em;
      grid-template-columns: auto 1fr;
  }
  .outline-item-text_title {
    display: none;
  }
  .outline-item > div {
    display: grid;
      align-items: center;
      grid-template-columns: subgrid;
    grid-column: span 2;
  }
  .outline-item .title {
    border-radius: 12px 12px 0 0;
    min-height: 80px;
    padding: 10px 20px;
  }
  .outline-item .title h2 img{
    max-height: 50px;
  }
  .outline-item .content {
    border: solid #E5E7EB;
    border-bottom-color: #F3F4F6;
    border-width: 0 1px 1px;
    padding: .85em 1.14em;
  }
  .outline-item .content:last-child {
    border-bottom-color: #E5E7EB;
    border-radius: 0 0 12px 12px;
  }
  .outline-item .content .label {
    color: #8D8D8D;
    font-weight: 700;
  }

}

/* ////////// PC ////////// */
@media print, screen and (min-width: 960.1px) {
  #outline {
    position: relative;
  }
  #outline::before {
    background: url('../img/cmn/deco-plane.svg') no-repeat top left / contain;
    content: '';
    display: block;
    margin: auto;
    position: absolute;
      top: 40px;
      left: 0;
    width: 24.3%;
    height: 300px;
  }
  .outline-head {
    margin-bottom: 64px;
  }
  .outline-item-wrapper {
    display: grid;
      grid-gap: 0;
      grid-template-columns: auto 1fr 1fr;
  }
  .outline-item {
    display: grid;
      grid-template-rows: subgrid;
  }
  .item_cnt-8 .outline-item {
    grid-row: span 8;
  }
  .outline-item .content {
    background: #fff;
    border: solid #DFDFDF;
    border-width: 0 1px 1px 0;
    display: flex;
      align-items: center;
      justify-content: center;
    min-height: 3.75em;
    padding: .8em .6em;
    text-align: center;
  }
  .outline-item-text_title .content {
    background-color: #8D8D8D;
    color: #fff;
    font-weight: 700;
    line-height: 1.2;
    padding: .8em 1em;
  }
  .outline-item .title {
    padding: 8px .8em;
  }
  .outline-item .title h2 img{
    height: 35px;
  }
  .outline-item .content.common_text-1 {
    width: 200%;
  }
  .outline-item .content.common_text-2 {
    opacity: 0;
    overflow: hidden;
    height: 0;
  }
  .outline-item .content .label {
    display: none;
  }
}
@media screen and (min-width:1200px) {
  .outline-item-text_title .content {
    width: 160px;
  }
  .outline-item .title h2 img{
    height: 40px;
  }
}
@media (hover: hover) {}


/*====================================================
////id |  flow
====================================================*/
#flow {
  background: #F1F5F9;
}
.flow-item {
  background-color: #fff;
  border-radius: 12px;
  display: grid;
    grid-gap: 24px;
  line-height: 1.3;
  padding: 32px 28px;
}
.flow-item-img {
  position: relative;
}
.flow-item-img .no {
  background: #013188;
  border-radius: 100%;
  color: #fff;
  display: flex;
    align-items: center;
    justify-content: center;
  font-size: 1.6rem;
  font-weight: 700;
  position: absolute;
    top: -.75em;
    left: -.75em;
  width: 2.5em;
  height: 2.5em;
  z-index: 10;
}
.flow-item-img {
  margin: auto;
  width: 105px;
}
.flow-item dt {
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: .7em;
}
.flow-item dd .link {
  margin-top: .7em;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 960.0px) {
  .flow-item-wrapper {
    display: grid;
      grid-gap: 20px;
    margin: auto;
      max-width: 700px;
  }
  .flow-item {
    align-items: center;
    grid-template-columns: auto 1fr;
    padding: 32px 28px;
  }

}

/* ////////// PC ////////// */
@media print, screen and (min-width: 960.1px) {
  .flow-item-wrapper {
    display: flex;
      gap: 2vw;
  }
  .flow-item {
    flex: 1;
    grid-template-rows: auto 1fr;
    padding: 32px 2vw;
    text-align: center;
  }
  .flow-item dd {
    font-size: 1.5vw;
  }

}
@media screen and (min-width:1200px) {
  .flow-item-wrapper {
    gap: 24px;
  }
  .flow-item {
    padding: 32px 28px;
  }
  .flow-item dd {
    font-size: 1.5rem;
  }
}
@media (hover: hover) {}


/*====================================================
////id |  result
====================================================*/
.result-img img {
  filter: drop-shadow(0 2px 10px rgba(0, 0, 0, .08));
}
.result-attention-wrapper {
  display: grid;
    grid-gap: 20px;
}
.result-attention {
  background: #FFF7ED;
  border: solid 2px #FB923C;
  border-radius: 20px;
  color: #9A3412;
  line-height: 1.4;
}
.result-attention .title {
  color: #EA580C;
  font-size: 1.13em;
  font-weight: 700;
  margin-bottom: .8em;
  padding-left: 2em;
  position: relative;
}
.result-attention .title::before {
  background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 24 21"><path fill="%23ea580c" d="M23.87,19.5L12.87.46c-.36-.62-1.37-.62-1.73,0L.13,19.5c-.18.31-.18.69,0,1,.18.31.51.5.87.5h22c.36,0,.69-.19.87-.5.18-.31.18-.69,0-1ZM2.73,19L12,2.97l9.27,16.03H2.73ZM13,15.99v.5c0,.55-.45,1-1,1s-1-.45-1-1v-.5c0-.55.45-1,1-1s1,.45,1,1ZM12,6.98c.55,0,1,.45,1,1v5.01c0,.55-.44,1-1,1h0c-.55,0-1-.45-1-1v-5.01c0-.55.44-1,1-1h0Z" /></svg>') no-repeat center / contain;
  content: '';
  display: block;
  margin: auto;
  position: absolute;
    top: 0;
    left: 0;
  width: 1.35em;
  height: 1.35em;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 960.0px) {
  .result-img {
    margin: 0 auto 32px;
    width: 100%;
      max-width: 400px;
  }
  .result-text {
    font-size: 1.6rem;
  }
  .result-attention {
    margin-top: 32px;
    padding: 18px;
  }
}

/* ////////// PC ////////// */
@media print, screen and (min-width: 960.1px) {
  .result-wrapper {
    display: flex;
      gap: 3vw;
  }
  .result-img {
    width: 30.74%;
  }
  .result-content {
    flex: 1;
  }
  .result-attention-wrapper {
    margin-top: 40px;
  }
  .result-attention {
    padding: 24px;
  }
}
@media screen and (min-width:1200px) {
  .result-wrapper {
    gap: 32px;
  }
}

@media (hover: hover) {}


/*====================================================
////id |  caution
====================================================*/
.caution-list-wrapper {
  color: #374151;
  display: flex;
    justify-content: center;
  font-weight: 500;
}
#caution .caution-list li + li {
  margin-top: 1em;
}
.coution-notice-wrapper {
  display: grid;
    grid-gap: 20px;
}
.coution-notice {
  background: #FEF2F2;
  border: solid 1px #FCA5A5;
  border-radius: 16px;
  color: #991B1B;
}
.coution-notice .title {
  font-size: 1.13em;
  font-weight: 700;
  margin-bottom: .8em;
  padding-left: 2em;
  position: relative;
}
.coution-notice .title::before {
  background: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 26 26"><path fill="%23dc2626" d="M13.02,25.81c-.28,0-.55-.05-.81-.15-6.52-2.25-9.71-6.03-9.71-11.52V5.98c0-.62.24-1.21.68-1.65.44-.44,1.03-.68,1.65-.68,1.89,0,4.57-1.19,6.51-2.89.94-.8,2.38-.79,3.3,0,1.98,1.74,4.6,2.89,6.52,2.89.62,0,1.21.24,1.65.68.44.44.68,1.03.68,1.65v8.17c0,5.49-3.18,9.26-9.72,11.54-.25.08-.5.13-.76.13ZM13,2.48s-.09.02-.13.05c-2.4,2.09-5.56,3.45-8.04,3.45v8.17c0,4.44,2.59,7.4,8.16,9.33,5.58-1.93,8.17-4.9,8.17-9.33V5.98c-2.48,0-5.64-1.36-8.05-3.46-.03-.02-.07-.04-.12-.04ZM14.17,12.98v-4.67c0-.64-.52-1.17-1.17-1.17s-1.17.52-1.17,1.17v4.67c0,.64.52,1.17,1.17,1.17s1.17-.52,1.17-1.17ZM14.18,17.65c0-.64-.52-1.17-1.17-1.17h-.01c-.64,0-1.16.52-1.16,1.17s.53,1.17,1.17,1.17,1.17-.52,1.17-1.17Z" /></svg>') no-repeat center / contain;
  content: '';
  display: block;
  margin: auto;
  position: absolute;
    top: .1em;
    left: 0;
  width: 1.35em;
  height: 1.35em;
}
.coution-notice .markList {
  margin-top: 1em;
}
.coution-notice .attention {
  background: #fff;
  border: solid 1px #FCA5A5;
  border-radius: 8px;
  font-size: .93em;
  margin-top: .8em;
  padding: 16px;
}
.coution-notice .attention dt {
  margin-bottom: .3em;
  padding-left: 1.7em;
  position: relative;
}
.coution-notice .attention dt::before {
  background: transparent url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 15 15"><path fill="%23dc2626" d="M7.5,15C3.36,15,0,11.64,0,7.5S3.36,0,7.5,0s7.5,3.36,7.5,7.5-3.36,7.5-7.5,7.5ZM7.5,1.36C4.12,1.36,1.36,4.12,1.36,7.5s2.75,6.14,6.14,6.14,6.14-2.75,6.14-6.14S10.88,1.36,7.5,1.36ZM8.18,10.23v-2.73c0-.38-.31-.68-.68-.68s-.68.31-.68.68v2.73c0,.38.31.68.68.68s.68-.31.68-.68ZM8.19,4.77c0-.38-.31-.68-.68-.68h0c-.38,0-.68.31-.68.68s.31.68.69.68.68-.31.68-.68Z" /></svg>') no-repeat center / contain;
  content: '';
  display: block;
  margin: auto;
  position: absolute;
    top: .2em;
    left: 0;
  width: 1.2em;
  height: 1.2em;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 769.0px) {
  .coution-notice-wrapper {
    margin-top: 32px;
  }
  .coution-notice {
    padding: 20px;
  }

}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769.1px) {
  .coution-notice-wrapper {
    margin-top: 64px;
  }
  .coution-notice {
    padding: 28px 30px;
  }
  .coution-notice .text {
    font-size: 1.4rem;
  }

}

@media (hover: hover) {}


/*====================================================
////id |  faq
====================================================*/
#faq {
  background: #F1F5F9;
}


/*====================================================
////id |  partner
====================================================*/
.partner-img {
  margin: 0 auto;
  width: 60%;
    max-width: 230px;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 769.0px) {
  .partner-img {
    margin-top: 32px;
  }
  .partner-link {
    margin-top: 32px;
  }

}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769.1px) {
  .partner-text {
    text-align: center;
  }
  .partner-img {
    margin-top: 47px;
  }
  .partner-link {
    margin-top: 47px;
  }
}

@media (hover: hover) {}


/*====================================================
////id |  about
====================================================*/
#about {
  background: #F1F5F9;
}
.about-item-wrapper {
  display: grid;
}
.about-item {
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, .05);
}
.about-item-title {
  background: no-repeat top center;
  background-size: 27px 27px;
  font-weight: 700;
  line-height: 1.4;
  padding-top: 40px;
  text-align: center;
}
.about-item-title .achievement {
  display: flex;
    align-items: baseline;
    justify-content: center;
  margin-top: .4em;
}
.about-item-title .achievement .no {
  line-height: 1;
}
.about-item-text {
  margin-top: 30px;
}
.info-item-wrapper {
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, .05);
  display: grid;
  margin-top: 32px;
}
.info-item {
  border-bottom: solid 1px #E5E7EB;
  display: grid;
    grid-template-columns: subgrid;
    grid-column: span 2;
  line-height: 1.4;
}
.info-item dt {
  color: #64748B;
}
/* ////////// mobile ////////// */
@media screen and (max-width: 1200.0px) {
  .about-item-wrapper {
    grid-gap: 20px 2vw;
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 769.0px) {
  .about-item {
    padding: 20px 16px;
  }
  .about-item-title .title {
    font-size: 1.6rem;
    margin: 0 -10px;
  }
  .about-item-title .achievement .no {
    font-size: 2.57em;
  }

  .info-item-wrapper {
    grid-gap: 0 1.2em;
    grid-template-columns: auto 1fr;
    padding: 20px;
  }
  .info-item {
    padding: 12px 0;
  }
  .info-item:last-child {
    border: none;
  }
}
@media screen and (max-width: 480.0px) {
  .about-item-title .title {
    font-size: 4vw;
  }

}

/* ////////// PC ////////// */
@media print, screen and (min-width: 769.1px) {
  .about-item {
    padding: 40px 24px;
  }
  .about-item-title .achievement {
    font-size: 2.4rem;
  }
  .about-item-title .achievement .no {
    font-size: 2.16666em;
  }

  .info-item-wrapper {
    grid-gap: 0 3%;
    grid-template-columns: 15% 1fr;
    padding: 40px;
  }
  .info-item {
    align-items: center;
    font-size: 1.4rem;
    padding: 16px 0;
  }
}
@media print, screen and (min-width: 1200.1px) {
  .about-item-wrapper {
    grid-gap: 20px;
    grid-template-columns: repeat(4, 1fr);
  }
}

@media (hover: hover) {}
