﻿@charset "UTF-8";

.top__obj {
  background-color: #F0F9FB;
  position: absolute;
  z-index: 0;
}

.mv {
  width: 100%;
  /*height: min(100vh, 56.25vw);*/
  height: min(64vh, 56.25vw);
  height: min(60vh, 56.25vw);
  position: relative;
  min-height: 60rem;
  margin-bottom: 12rem;
}
@media screen and (max-width: 1024px) {
  .mv {
    height: 100vh;
    min-height: 100rem;
    margin-bottom: 11.5rem;
  }
}
.mv .mv__obj {
  left: 0;
  bottom: 0;
  width: 50vw;
  height: 22.64%;
  z-index: 0;
  background: rgba(133,173,253, .5);
  transform: skewX(-45deg);
}
@media screen and (max-width: 1024px) {
  .mv .mv__obj {
    width: 100%;
    height: 40.3%;
  }
}





.archive__lead {
  font-size: 18px;
  margin-bottom: 5rem;
}
@media screen and (max-width: 1024px) {
  .archive__lead {
    font-size: 2.8rem;
  }
}


/*****  section__lead  *********/

.section__lead {
  position: relative;
  padding-top: 10rem;
  padding-bottom: 20.5rem;
    background: #FFFFFF
}
@media screen and (max-width: 1024px) {
  .section__lead {
    padding-top: 6rem;
    padding-bottom: 13.5rem;
    /*margin-bottom: 7rem;*/
    /*background-image: url(../img/home/sp_deco01.png);*/
    background-repeat: no-repeat;
    background-position: bottom center;
    background-size: 100% auto;
  }
}
.section__lead .lead__img01 {
  position: absolute;
  top: 0;
  left: calc(50% + 14rem);
  /*width: 62.6rem;*/
  width: 65.6rem;
  z-index: 2;
}
@media screen and (max-width: 1024px) {
  .section__lead .lead__img01 {
    position: relative;
    left: -.5rem;
    /*width: 65.6vw;*/
    width: 80vw;
  }
}
.section__lead .lead__img02 {
  position: absolute;
  top: 19rem;
  left: calc(50% + 59.4rem);
  width: 36.4rem;
  z-index: 1;
  display: block;
}
@media screen and (max-width: 1024px) {
  .section__lead .lead__img02 {
    position: relative;
    left: auto;
    top: 0;
    margin-top: -18.6rem;
    margin-left: 32.266vw;
    width: 53.067vw;
  }
}
.section__lead .lead__deco01 {
  position: absolute;
  top: 0;
  left: calc(50% - 10.7rem);
  left: calc(50% - 15.7rem);
  width: 106.6rem;
  z-index: 0;
  z-index: 1;
}

.lead__inner {
  position: relative;
  /*z-index: 3;*/
}

.lead__title {
  font-size: 4.2rem;
  font-weight: 700;
  margin-bottom: 4rem;
  letter-spacing: 0.08em;
  line-height: 1;
  color: #333;
}
@media screen and (max-width: 1024px) {
  .lead__title {
    margin-bottom: 5rem;
  }
}
.lead__title .text01,
.lead__title .text02 {
  display: block;
  line-height: 1.5;
}
.lead__title .text01 {
  margin-bottom: 3.5rem;
}

.lead__paragraph {
  font-size: 18px;
  letter-spacing: 0.1em;
  line-height: 2;
  color: #333;
}
@media screen and (max-width: 1024px) {
  .lead__paragraph {
    font-size: 2.8rem;
    margin-bottom: 8.5rem;
  }
}


.section__lead .lead__obj {
  top: 50rem;
  right: calc(50% - 30rem);
  width: 100vw;
  height: 15.2rem;
  z-index: 0;
  transform: skewX(-45deg);  
}

@media screen and (max-width: 1024px) {
.section__lead .lead__obj {
    right: 0;
    height: calc(100% - 50.2rem);
  }
}




/*****  section__features  *********/

.section__features {
  position: relative;
  padding-top: 10.5rem;
  padding-bottom: 10.5rem;
    background: #FFFFFF
}
.section__features .top__hl01 {
  margin-bottom: 3rem;
}
.section__features .top__hl01 .text01 {
  font-size: 2.4rem;
  font-size: 3.8rem;
}
.section__features .top__hl01 .text02 {
  font-size: 3.8rem;
}
.section__features .features__obj {
  bottom: 0;
  left: calc((100% - 1520px) / 2 + 60px + 13rem);
  width: 100vw;
  height: 36.5rem;
  transform: skewX(-45deg);
}
@media screen and (max-width: 1520px) {
  .section__features .features__obj {
    left: calc(60px + 13rem);
  }
}
@media screen and (max-width: 1024px) {
  .section__features .features__obj {
    height: calc(100% - 34rem);
    left: calc(60px + 26rem);
  }
}
@media screen and (max-width: 768px) {
  .section__features .features__obj {
    height: calc(100% - 34rem);
    left: calc(60px + 13rem);
  }
}

.features__inner {
  position: relative;
  z-index: 1;
}

.features__cols {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 1024px) {
  .features__cols {
    display: block;
  }
}

.features__item {
  /*width: 32.5714%;*/
  width: 24.5714%;
  background-color: #fff;
  border: 1px solid #e5e5e5;
}
@media screen and (max-width: 1024px) {
  .features__item {
    width: 100%;
    max-width: 640px;
    margin: 0 auto 6rem;
  }
}
@media screen and (max-width: 1024px) {
  .features__item.item03 {
    margin: 0 auto;
  }
}

.item__inner {
  padding-bottom: 2.6rem;
}
@media screen and (max-width: 1024px) {
  .item__inner {
    padding-bottom: 7.5rem;
  }
}

.features__img {
  margin-bottom: 3rem;
}
@media screen and (max-width: 1024px) {
  .features__img {
    margin-bottom: 2rem;
  }
}
.features__img img {
  border-bottom: 1px solid #e5e5e5;
  width: 100%;
}

.features__num {
  display: flex;
  align-items: center;
  font-weight: 700;
  font-size: 2rem;
  margin-bottom: 0.8rem;
  padding:0 2.6rem;
}

@media screen and (max-width: 1024px) {
  .features__num {
    font-size: 3rem;
    padding:0 3rem;
  }
}

.features__num::before {
  content: "";
  display: block;
  width: 0.8rem;
  height: 0.8rem;
  border-radius: 100%;
  background-color: #00759c;
  margin-right: 1.8rem;
}
/*.features__num::before {
  content: "";
  display: block;
  width: 0.8rem;
  height: 4.3rem;
  background-color: #00759c;
  margin-right: 1.8rem;
}
@media screen and (max-width: 1024px) {
  .features__num::before {
    width: 1.1rem;
    height: 6rem;
    margin-right: 2.9rem;
  }
}*/

.features__title {
  font-size: 2.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  margin-bottom: 2.2rem;
  padding: 0 2.6rem;
  line-height: 1.55;
}
@media screen and (max-width: 1024px) {
  .features__title {
    font-size: 3.6rem;
    padding: 0 4rem;
    margin-bottom: 3.5rem;
    line-height: 1.5;
  }
}

.features__paragraph {
  font-size: 15px;
  padding: 0 2.6rem;
  line-height: 1.85;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 1024px) {
  .features__paragraph {
    font-size: 2.5rem;
    padding: 0 4rem;
    line-height: 1.5;
  }
}






/*****  section__strength  *********/

.section__strength {
  position: relative;
  padding-top: 10.5rem;
  padding-bottom: 10.5rem;
    background: #FFFFFF
}
.section__strength .top__hl01 {
  margin-bottom: 3rem;
}
.section__strength .top__hl01 .text01 {
  font-size: 2.4rem;
}
.section__strength .top__hl01 .text02 {
  font-size: 3.8rem;
}
.section__strength .strength__obj {
  bottom: 0;
  left: calc((100% - 1520px) / 2 + 60px + 13rem);
  width: 100vw;
  height: 36.5rem;
  transform: skewX(-45deg);
}
@media screen and (max-width: 1520px) {
  .section__strength .strength__obj {
    left: calc(60px + 13rem);
  }
}
@media screen and (max-width: 1024px) {
  .section__strength .strength__obj {
    height: calc(100% - 34rem);
    left: calc(60px + 26rem);
  }
}
@media screen and (max-width: 768px) {
  .section__strength .strength__obj {
    height: calc(100% - 34rem);
    left: calc(60px + 13rem);
  }
}

.strength__inner {
  position: relative;
  z-index: 1;
}

.strength__cols {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 1024px) {
  .strength__cols {
    display: block;
  }
}

.strength__item {
  width: 30%;
  /*width: 24.5714%;*/
  background-color: #fff;
  border: 5px solid #e5e5e5;
}
@media screen and (max-width: 1024px) {
  .strength__item {
    width: 100%;
    width: 90%;
    max-width: 640px;
    margin: 0 auto 6rem;
  }
}
@media screen and (max-width: 1024px) {
  .strength__item.item03 {
    margin: 0 auto;
  }
}

.item__inner {
  padding-bottom: 2.6rem;
}
@media screen and (max-width: 1024px) {
  .item__inner {
    padding-bottom: 7.5rem;
  }
}

.strength__img {
  margin-bottom: 3rem;
}
@media screen and (max-width: 1024px) {
  .strength__img {
    margin-bottom: 2rem;
  }
}
.strength__img img {
  border-bottom: 1px solid #e5e5e5;
  width: 100%;
}

.strength__num {
  display: flex;
  align-items: center;
  font-weight: 700;
  font-size: 2rem;
  margin-bottom: 0.8rem;
}
@media screen and (max-width: 1024px) {
  .strength__num {
    font-size: 3rem;
    margin-bottom: 2.4rem;
  }
}
.strength__num::before {
  content: "";
  display: block;
  width: 0.8rem;
  height: 4.3rem;
  background-color: #00759c;
  margin-right: 1.8rem;
}
@media screen and (max-width: 1024px) {
  .strength__num::before {
    width: 1.1rem;
    height: 6rem;
    margin-right: 2.9rem;
  }
}

.strength__title {
  font-size: 2.4rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  margin-bottom: 2rem;
  padding: 0 2.6rem;
  line-height: 1.55;
}
.strength__title .smal{
  font-size: 1.8rem;
}
@media screen and (max-width: 1024px) {
  .strength__title {
    font-size: 3rem;
    padding: 0 4rem;
    margin-bottom: 3rem;
    line-height: 1.5;
  }
}

.strength__paragraph {
  font-size: 15px;
  padding: 0 2.6rem;
  line-height: 1.85;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 1024px) {
  .strength__paragraph {
    font-size: 2.5rem;
    padding: 0 4rem;
    line-height: 1.5;
  }
}








/*****  
本当にできないことなのか？
section__projects  　　*********/

.section__projects {
  position: relative;
  margin-bottom: 14.5rem;
}
.section__projects .projects__obj {
  top: 14.8rem;
  right: calc(50% - 12rem);
  width: 100vw;
  height: 33.2rem;
}
@media screen and (max-width: 1024px) {
  .section__projects .projects__obj {
    right: 0;
    height: calc(100% - 31.2rem);
  }
}

.projects__inner {
  position: relative;
  z-index: 1;
}

.projects__cols {
  display: flex;
}
@media screen and (max-width: 1024px) {
  .projects__cols {
    display: block;
  }
}
.projects__cols .top__hl01 {
  flex: 1;
  margin-bottom: 3rem;
}
@media screen and (max-width: 1024px) {
  .projects__cols .top__hl01 {
    margin-bottom: 6rem;
  }
}
.projects__cols .projects__entries {
  flex: 1;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 1024px) {
  .projects__cols .projects__entries {
    max-width: 640px;
    margin: 0 auto 6rem;
  }
}
.projects__cols .projects__entries .entry__item {
  width: 48.6%;
  margin-bottom: 1.7rem;
}
.projects__cols .projects__entries .entry__link {
  display: block;
  position: relative;
}
.projects__cols .projects__entries .entry__link::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  background-color: rgba(0, 0, 0, 0.4);
  transition: all 0.2s var(--var-animation-timing-function);
}
.projects__cols .projects__entries .entry__img {
  position: relative;
  z-index: 1;
  overflow: hidden;
  display: block;
}
.projects__cols .projects__entries .entry__img img {
  transition: all 0.2s var(--var-animation-timing-function);
  transform: scale(1);
  width: 100%;
}
.projects__cols .projects__entries .entry__title {
  position: absolute;
  top: 2.5rem;
  left: 2.5rem;
  z-index: 3;
  color: #fff;
  font-size: 2rem;
  font-weight: 700;
}
@media screen and (max-width: 1024px) {
  .projects__cols .projects__entries .entry__title {
    font-size: 3rem;
    line-height: 1.5;
  }
}
.projects__cols .projects__entries .entry__link:hover::before {
  background-color: rgba(0, 0, 0, 0.2);
}
.projects__cols .projects__entries .entry__link:hover .entry__img img {
  transform: scale(1.05);
}

.projects__btn {
  margin-top: -1.6rem;
}

/*****  
本当にできないことなのか？
section__projects  　　*********/




.section__product {
  position: relative;
    padding-top: 7rem;
    padding-bottom: 10rem;
    background: #FFFFFF
}
.section__product .top__hl01 {
  margin-bottom: 5rem;
}
.section__product .top__hl01 .text01 {
  white-space: nowrap;
    font-size: 3.6rem
}
.section__product .top__hl01 .text02 {
  white-space: nowrap;
    font-size: 3.8rem
}
.section__product .product__obj {
  bottom: 11rem;
  left: calc((100% - 1520px) / 2 + 60px + 10rem);
  width: 100vw;
  height: 35rem;
  top: 10rem;
  transform: skewX(-45deg);  
}
@media screen and (max-width: 1520px) {
  .section__product .product__obj {
    left: calc(60px + 10rem);
    top: 22rem;
    }
}
@media screen and (max-width: 1024px) {
  .section__product .product__obj {
    height: calc(100% - 49rem);
    bottom: auto;
    top: 32rem;
  }
}

.product__slider {
  overflow: hidden;
  /*margin-left: calc((100% - 1520px) / 2 + 60px);*/
  margin-left: 20px;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 1520px) {
  .product__slider {
    margin-left: 60px;
  }
}
@media screen and (max-width: 1024px) {
  .product__slider {
    margin-left: 5.5rem;
  }
}

.product__link {
  display: block;
  position: relative;
    border: #dedede 1px solid;
    background: #ffffff;
    margin: 0 5px;
}
.product__link .product__img {
  position: relative;
  z-index: 1;
  overflow: hidden;
  margin-bottom: 1.5rem;
}
@media screen and (max-width: 1024px) {
  .product__link .product__img {
    margin-bottom: 2.5rem;
  }
}
.product__link .product__img img {
  transition: all 0.2s var(--var-animation-timing-function);
  transform: scale(1);
  width: 100%;
}
.product__link .product__tag__box {
  position: absolute;
  top: 1rem;
  right: 1rem;
  z-index: 2;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.product__link .product__tag {
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 3rem;
  min-width: 9.4rem;
  border-radius: 1.5rem;
  padding: 0 1rem;
  background-color: #00759c;
  color: #FFF;
  font-size: 1.5rem;
  margin-left: 0.8rem;
}
@media screen and (max-width: 1024px) {
  .product__link .product__tag {
    top: 2.2rem;
    right: 1.8rem;
    height: 5.4rem;
    padding: 0 2rem;
    border-radius: 2.7rem;
    font-size: 2.5rem;
  }
}
.product__link .product__title {
  line-height: 1;
    padding: 1.5rem 1.5rem 2.0rem 
}
.product__link .product__title .title {
  font-size: 20px;
  font-weight: 600;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  display: block;
  margin-bottom: 1rem;
  padding-right: 1rem;
}
@media screen and (max-width: 1024px) {
  .product__link .product__title .title {
    font-size: 2.8rem;
  }
}
.product__link .product__title .series {
  font-size: 13px;
}
@media screen and (max-width: 1024px) {
  .product__link .product__title .series {
    font-size: 2.3rem;
  }
}
.product__link:hover .product__img img {
  transform: scale(1.05);
}

.product__slider__button {
  display: flex;
  position: relative;
  z-index: 3;
  top: 6rem;
  left: 14rem;
  justify-content: center;
}
@media screen and (max-width: 1024px) {
  .product__slider__button {
    top: 0;
    left: 0;
    justify-content: center;
    margin-top: 6rem;
    margin-bottom: 4rem;
  }
}
.product__slider__button .prev,
.product__slider__button .next {
  width: 3.4rem;
  height: 3.4rem;
  /*border-radius: 100%;*/
  background-color: #fff;
  background-color: #00759c;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: scale(1);
  transition: all 0.2s;
}
@media screen and (max-width: 1024px) {
  .product__slider__button .prev,
.product__slider__button .next {
    width: 7rem;
    height: 7rem;
  }
}
.product__slider__button .prev .arrow_left,
.product__slider__button .prev .arrow_right,
.product__slider__button .next .arrow_left,
.product__slider__button .next .arrow_right {
  width: 1.1rem;
  height: 1.4rem;
}
@media screen and (max-width: 1024px) {
  .product__slider__button .prev .arrow_left,
.product__slider__button .prev .arrow_right,
.product__slider__button .next .arrow_left,
.product__slider__button .next .arrow_right {
    width: 2rem;
    height: 2.8rem;
  }
}
.product__slider__button .prev .arrow_left-1,
.product__slider__button .prev .arrow_right-1,
.product__slider__button .next .arrow_left-1,
.product__slider__button .next .arrow_right-1 {
  fill: #fff;
  stroke: #00759c;
  stroke-width: 2px;
  fill-rule: evenodd;
}
.product__slider__button .prev:hover,
.product__slider__button .next:hover {
  cursor: pointer;
  transform: scale(1.2);
  background-color: #dbdeeb;
}
.product__slider__button .prev {
  margin-right: 1rem;
}

.product__btn {
  position: relative;
  z-index: 2;
  display: flex;
  justify-content: flex-end;
}

.section__news {
  margin-bottom: 8rem;
}

.news__inner {
  display: flex;
  margin-bottom: 3rem;
}
@media screen and (max-width: 1024px) {
  .news__inner {
    display: block;
  }
}
.news__inner .top__hl01 {
  width: 26rem;
}
@media screen and (max-width: 1024px) {
  .news__inner .top__hl01 {
    width: 100%;
    margin-bottom: 4.6rem;
  }
}
.news__inner .news__block {
  width: calc(100% - 26rem);
}
@media screen and (max-width: 1024px) {
  .news__inner .news__block {
    width: 100%;
  }
}
.news__inner .news__block .entry__item {
  display: flex;
  align-items: center;
  border-bottom: 1px solid #e5e5e5;
  padding: 2.5rem 0;
}
@media screen and (max-width: 1024px) {
  .news__inner .news__block .entry__item {
    flex-wrap: wrap;
    position: relative;
  }
}
.news__inner .news__block .entry__item:first-child {
  border-top: 1px solid #e5e5e5;
}
.news__inner .news__block .entry__item .date {
  width: 12rem;
  font-size: 14px;
  line-height: 1;
}
@media screen and (max-width: 1024px) {
  .news__inner .news__block .entry__item .date {
    width: auto;
    font-size: 2.4rem;
    margin-right: 2.4rem;
  }
}
.news__inner .news__block .entry__item .category__name {
  width: 13.2rem;
  height: 3.4rem;
  border-radius: 1.7rem;
  margin-right: 4rem;
  font-size: 1.4rem;
  color: #00759c;
  background-color: #f0f4fa;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 1024px) {
  .news__inner .news__block .entry__item .category__name {
    width: 15rem;
    height: 5.4rem;
    border-radius: 2.7rem;
    font-size: 2.4rem;
    margin-right: 0;
  }
}
.news__inner .news__block .entry__item .category__name span {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  line-height: 1;
}
.news__inner .news__block .entry__item .entry__title {
  width: calc(100% - 29.2rem);
}
@media screen and (max-width: 1024px) {
  .news__inner .news__block .entry__item .entry__title {
    width: 100%;
    margin-top: 1.2rem;
  }
}
.news__inner .news__block .entry__item .entry__title a {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.news__inner .news__block .entry__item .entry__title a .text {
  width: calc(100% - 4rem);
  font-size: 18px;
}
@media screen and (max-width: 1024px) {
  .news__inner .news__block .entry__item .entry__title a .text {
    font-size: 2.8rem;
  }
}
.news__inner .news__block .entry__item .entry__title a .text .underline {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  max-width: 100%;
}
@media screen and (max-width: 1024px) {
  .news__inner .news__block .entry__item .entry__title a .text .underline {
    overflow: visible;
    white-space: normal;
  }
}
.news__inner .news__block .entry__item .entry__title a .entry__icon {
  width: 2.2rem;
}
@media screen and (max-width: 1024px) {
  .news__inner .news__block .entry__item .entry__title a .entry__icon {
    position: absolute;
    top: 50%;
    right: 0;
    width: 1.5rem;
    transform: translateY(-50%);
  }
}
.news__inner .news__block .entry__item .entry__title a .entry__icon .arrow_right {
  width: 1.1rem;
  height: 1.4rem;
}
@media screen and (max-width: 1024px) {
  .news__inner .news__block .entry__item .entry__title a .entry__icon .arrow_right {
    width: 1.5rem;
    height: 2rem;
  }
}
.news__inner .news__block .entry__item .entry__title a .entry__icon .arrow_right-1 {
  fill: #fff;
  stroke: #00759c;
  stroke-width: 2px;
  fill-rule: evenodd;
}
.news__inner .news__block .entry__item .entry__title a:hover .entry__icon .arrow_right {
  animation: arrow-little-right-move 0.2s ease-out 1 normal forwards;
}
@media screen and (max-width: 1024px) {
  .news__inner .news__block .entry__item .entry__title a:hover .entry__icon .arrow_right {
    animation: none;
  }
}

.news__btn {
  display: flex;
  justify-content: flex-end;
}



.mv .mv__text__box01 .text01 {
  opacity: 0;
  transform: translateY(var(--var-translate-val));
  transition: opacity 0.6s 0.6s var(--var-animation-timing-function), transform 1.2s 0.6s var(--var-animation-timing-function);
}
.mv .mv__text__box01 .text02 {
  opacity: 0;
  transform: translateY(var(--var-translate-val));
  transition: opacity 0.6s 0.8s var(--var-animation-timing-function), transform 1.2s 0.8s var(--var-animation-timing-function);
}
.mv .mv__text__box01 .text03 {
  opacity: 0;
  transform: translateY(var(--var-translate-val));
  transition: opacity 0.6s 0.8s var(--var-animation-timing-function), transform 1.2s 0.8s var(--var-animation-timing-function);
}
.mv .mv__text__box01 .text04 {
  opacity: 0;
  transform: translateY(var(--var-translate-val));
  transition: opacity 0.6s 1s var(--var-animation-timing-function), transform 1.2s 1s var(--var-animation-timing-function);
}
.mv .mv__bg::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: #fff;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  transform: translateX(0);
  transition: transform 0.6s 0.3s var(--var-animation-timing-function);
}
.mv .top__obj {
  opacity: 0;
  transform: translateX(-30px);
  transition: opacity 0.6s 0.6s var(--var-animation-timing-function), transform 1.2s 0.6s var(--var-animation-timing-function);
}
.mv .mv__news {
  opacity: 0;
  transform: translateY(var(--var-translate-val));
  transition: opacity 0.6s 1s var(--var-animation-timing-function), transform 1.2s 1s var(--var-animation-timing-function);
}
@media screen and (max-width: 1024px) {
  .mv .mv__news {
    transition-delay: 1.2s, 1.2s;
  }
}
.mv .fixed__btn {
  opacity: 0;
  transition: opacity 0.6s 1s var(--var-animation-timing-function), bottom 0.2s;
}
.mv.is-animated .mv__bg::before {
  transform: translateX(100%);
}
.mv.is-animated .mv__text__box01 .text01,
.mv.is-animated .mv__text__box01 .text02,
.mv.is-animated .mv__text__box01 .text03,
.mv.is-animated .mv__text__box01 .text04 {
  opacity: 1;
  transform: translateY(0);
}
.mv.is-animated .top__obj {
  opacity: 1;
  transform: translateX(0);
}
.mv.is-animated .mv__news {
  opacity: 1;
  transform: translateY(0);
}
.mv.is-animated .fixed__btn {
  opacity: 1;
}





#index_top {
	/*height: 100%;*/
	height: 90%;
	height: 100vh;
	width: 100%;
	position: relative;
	overflow: hidden;
}
#index_top ul.sm-slider {
	position: relative;
}



/*** 枠ありタイプ   *******/
#index_top #top_catch {
	position: absolute;
	top: 50%;
	top: 40%;
	left: 50%;
	z-index: 10;
	width: 560px;
    height: 420px;
	margin-top: -250px;
	margin-left: -280px;
	color: #111;
	background-color: #FFF;
	background-color: rgba(255,255,255,0.8);
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-flex-flow: column;
	flex-flow: column;
	text-align: center;
}

#index_top #top_catch h2 {
	/*font-size: 50px;*/	
    font-size: 5.2rem;
	letter-spacing: 0.08rem;
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "Sawarabi Mincho", "HG明朝E",  "ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-weight: normal;
	line-height: 1.5;
	margin-bottom: 20px;
}

#index_top #top_catch h2 strong {
    padding-top: .4rem;
    background-position: top left -2px;
    background-repeat: repeat-x;
    background-size: 1.05em .3em;
	background-image: -webkit-radial-gradient(.10em .10em at center center,#FFBF00,#FFBF00 100%,transparent);
    background-image: radial-gradient(.10em .10em at center center,#FFBF00,#FFBF00 100%,transparent);
}
#index_top #top_catch p {
	font-size: 1.8rem;
	font-weight: bold;
	letter-spacing: 0.1rem;
	line-height: 2.4;
	/*color: #EEE;*/
	color: #111;
}

#index_top #top_catch p span {
	font-size: 2.8rem;
}

/*** / 枠ありタイプ   *******/




.pvideo__section {
  position: relative;
  padding-top: 10rem;
  padding-bottom: 10rem;
    background: #FFFFFF
}

@media screen and (max-width: 1024px) {
  .pvideo__section {
    margin-bottom: 9rem;
  }
}

.pvideo__inner {
  display: flex;
}
@media screen and (max-width: 1024px) {
  .pvideo__inner {
    display: block;
  }
}

.pvideo__box {
    background: #355055;
    padding: 4rem;
}

.pvideo__text__box {
  flex-basis: 50%;
    color: #FFF;
}
@media screen and (max-width: 1024px) {
  .pvideo__text__box {
    margin-bottom: 6rem;
  }
}
.pvideo__text__box .under__hl02 {
    display: block;
    font-size: 3.5rem;
  margin-bottom: 3rem;
}
.pvideo__text__box .under__hl03 {
    font-size: 2rem;
  line-height: 1.5;
  margin-bottom: 1.8rem;
}
@media screen and (max-width: 1024px) {
 .pvideo__text__box .under__hl02 {
    display: block;
    font-size: 3.8rem;
  margin-bottom: 2rem;
}
}

.pvideo__paragraph {
  line-height: 2;
  color: #FFF;
  padding-right: 3.5rem;
}

.pvideo__img01 {
  flex-basis: 50%;
}
