@charset "utf-8";


/* --------------- common --------------- */
/* scroll */

@media (min-width: 768px){
}
@media (min-width: 1024px){
}

/* btn */
.btn01{
  width: fit-content;
  margin-top: 2em;
}
.btn01>a{
  position: relative;
  display: block;
  padding: 0.9em 0;
  width: 13em;
  transition: 0.3s cubic-bezier(0,.43,.26,1);
}
.btn01.btn01-l>a{
  width: 17em;
  padding: 1.1em 0;
}
.btn01-border>a{
  border: 1px solid rgb(237 235 235 / 0.6);
}
.btn01>a:hover{
  background-color: #AD2B2B;
}
.btn01-arrow{
  position: absolute;
  top: 50%;
  right: 0.6em;
  transform: translateY(-50%);
  display: block;
  width: 1.5em;
  height: 1.5em;
}
.btn01-arrow>span{
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}
.btn01-arrow>span::before{
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  border: 1px solid rgb(237 235 235 / 0.5);
  border-radius: 50%;
  opacity: 0;
  transform: scale(0.7);
  transition: 0.3s cubic-bezier(0,.4,.05,1);
}
.btn01>a:hover .btn01-arrow>span::before{
  opacity: 1;
  transform: scale(1);
}
.btn01-arrow>span::after{
  content: "→";
  font-size: 90%;
  transition: 0.3s cubic-bezier(0,.4,.05,1);
}
.btn01>a:hover .btn01-arrow>span::after{
  transform: scale(0.8);
}
.btn01>a>p{
  position: relative;
  z-index: 1;
  line-height: 1.2;
  width: fit-content;
  margin: 0 auto;
}
.btn01>a>p::before{
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: rgb(237 235 235 / 0.4);
  transform-origin: 100% 50%;
  transform: scaleX(0);
  transition: transform .2s cubic-bezier(0,.86,.2,.99);
}
.btn01>a:hover>p::before{
  transform-origin: 0% 50%;
  transform: scaleX(1);
}
.btn02{
  width: fit-content;
  margin-top: 1em;
}
.btn02>a{
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 10em;
  padding: 0.4em 0.4em 0;
}
.btn02>a::before{
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: rgb(182, 53, 53, 0.5);
}
.btn02>a::after{
  content: "→";
}
@media (min-width: 768px){
}
@media (min-width: 1024px){
  .btn01{
    margin-top: 2.5em;
  }
}

/* section-ttl */
.section-ttl01__en{
  position: relative;
  padding-bottom: 0.2em;
  margin-bottom: 0.3em;
}
.section-ttl01__en::after{
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: rgb(38, 43, 51, 0.3);
}
.txt-white01 .section-ttl01__en::after{
  background-color: rgb(237 235 235 / 0.4);
}
.txt-white02 .section-ttl01__en::after{
  background-color: rgb(237 235 235 / 0.4);
}
.section-ttl-mark>.section-ttl01__en{
  display: flex;
  align-items: center;
}
.section-ttl-mark>.section-ttl01__en>span{
  width: 8px;
  height: 8px;
  background-color: #b63535;
  border-radius: 50%;
  margin: 0 6px 0 2px;
}
.section-ttl-mark>.section-ttl01__jp{
  margin-left: 16px;
}
.section-ttl02__en{
  display: flex;
  align-items: center;
}
.section-ttl02__en>span{
  width: 8px;
  height: 8px;
  background-color: #b63535;
  border-radius: 50%;
  margin: 0 6px 0 2px;
}
.section-ttl02.txt-white02 .section-ttl02__en>span{
  background-color: #edebeb;
}
@media (min-width: 768px){
  .section-ttl-mark>.section-ttl01__en>span{
    width: 12px;
    height: 12px;
    margin: 0 12px 0 4px;
  }
  .section-ttl-mark>.section-ttl01__jp{
    margin-left: 28px;
  }
  .section-ttl02__en>span{
    width: 12px;
    height: 12px;
    margin: 0 12px 0 4px;
  }
}
@media (min-width: 1024px){
  .section-ttl-mark>.section-ttl01__en>span{
    width: 16px;
    height: 16px;
    margin: 0 12px 0 8px;
  }
  .section-ttl-mark>.section-ttl01__jp{
    margin-left: 36px;
  }
  .section-ttl02__en>span{
    width: 16px;
    height: 16px;
    margin: 0 12px 0 8px;
  }
}

/* inner */

@media (min-width: 768px){
}
@media (min-width: 1024px){
}

/* lower-mv-l */
.lower-mv-l{
  position: relative;
  width: 95%;
  margin-left: auto;
}
.lower-mv-l::before{
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 11em);
  background-color: #b63535;
}
.lower-mv-l__inner{
  position: relative;
  z-index: 1;
  width: 94%;
  margin-left: auto;
  padding: 4.5em 0 0.5em;
}
.lower-mv-l__image{
  position: relative;
  height: 80vw;
}
.lower-mv-l__image-black::after{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.2) 25%, rgba(0, 0, 0, 0) 50%);
}
.lower-mv-l__image-inner>div{
  height: 120%;
}
.lower-mv-l__cont{
  position: relative;
  z-index: 2;
  margin-top: 1.5em;
}
.lower-mv-l__ttl{
  display: flex;
  align-items: baseline;
  opacity: 0.8;
}
.lower-mv-l__ttl-en{
  margin-right: 0.5em;
}
.lower-mv-l-copy{
  margin-top: 1em;
}
.lower-mv-l-copy>p{
  line-height: 1;
  padding: 0.3em 0;
  overflow: hidden;
}
.lower-mv-l-copy>p>span{
  overflow: hidden;
}
.lower-mv-l__txt{
  width: 94%;
  max-width: 34em;
  margin-top: 1em;
}
.breadcrumb{
  width: fit-content;
  opacity: 0.8;
}
.lower-mv-l .breadcrumb{
  margin: 1.2em 3vw 0 auto;
}
.breadcrumb>ul{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.breadcrumb>ul>li{
  display: flex;
  align-items: center;
}
.breadcrumb>ul>li::after{
  content: "";
  width: 2em;
  height: 1px;
  background-color: rgb(237, 235, 235, 0.8);
  margin: 0 0.8em;
}
.breadcrumb>ul>li:last-child::after{
  display: none;
}
.breadcrumb>ul>li>a:hover{
  opacity: 0.7;
}
.page-index{
  position: absolute;
  z-index: 2;
  bottom: 3%;
  right: 3vw;
  width: fit-content;
  text-align: right;
}
.page-index__border{
  display: block;
  width: 100%;
  height: 1px;
  margin: 0.2em 0 1em;
  background-color: rgb(237, 235, 235, 0.8);
}
.page-index__list>li{
  margin-top: 0.3em;
}
.page-index__list>li>a{
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.page-index__list>li>a:hover{
  opacity: 0.8;
}
.page-index__list>li>a::before{
  content: "-";
  margin-right: 0.2em;
}
@media (min-width: 768px){
}
@media (min-width: 1024px){
  .lower-mv-l{
    width: 91.6%;
    height: 100vh;
    min-height: 45vw;
    max-height: 95vw;
  }
  .lower-mv-l__inner{
    width: 100%;
    height: 100%;
    padding: 5em 0 0;
  }
  .lower-mv-l__image{
    width: 87%;
    height: calc(100vh - 9.5em);
    min-height: calc(45vw - 9.5em);
    max-height: calc(95vw - 9.5em);
    margin-left: auto;
  }
  .lower-mv-l__image-inner{
    height: 100%;
  }
  .lower-mv-l__image img{
    object-fit: cover;
    height: 100%;
  }
  .lower-mv-l__cont{
    position: absolute;
    top: 45%;
    left: 2.2%;
    margin-top: 0;
  }
  .lower-mv-l__ttl{
    flex-direction: column;
    opacity: 1;
  }
  .lower-mv-l-copy>p{
    position: relative;
    width: fit-content;
    padding-right: 0.2em;
  }
  .lower-mv-l-copy>p>span{
    position: relative;
    z-index: 1;
  }
  .lower-mv-l-copy>p::before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #b63535;
  }
  .lower-mv-l__txt{
    margin-top: 4em;
  }
  .lower-mv-l .breadcrumb{
    display: flex;
    justify-content: center;
    align-items: center;
    height: 4.5em;
    margin: 0 2.5em 0 auto;
  }
  .page-index{
    right: 2.5em;
  }
}

/* lower-mv-m */
.lower-mv-m{
  position: relative;
  width: 95%;
  margin-left: auto;
}
.lower-mv-m__inner{
  position: relative;
  z-index: 1;
  width: 94%;
  margin-left: auto;
  padding: 6em 0 0;
}
.lower-mv-m__image{
  aspect-ratio: 3.18/1;
}
.lower-mv-m__ttl{
  margin-top: -2.4em;
}
.lower-mv-m__ttl-en{
  position: relative;
  z-index: 1;
  width: fit-content;
  padding: 0 0.5em 0 6px;
}
.lower-mv-m__ttl-en::before{
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #b63535;
}
.lower-mv-m__ttl-jp{
  position: relative;
  z-index: 1;
  width: fit-content;
  padding: 0 0.5em 0 6px;
}
.lower-mv-m__ttl-jp::before{
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #b63535;
}
.lower-mv-m .breadcrumb{
  margin: 2em 3vw 0 auto;
}
.lower-mv-m .breadcrumb>ul>li::after{
  background-color: rgb(38, 43, 51, 0.45);
}
@media (min-width: 768px){
  .lower-mv-m .breadcrumb{
    margin: -1em 2.5em 0 auto;
  }
}
@media (min-width: 1024px){
  .lower-mv-m__inner{
    padding-top: 5em;
  }
  .lower-mv-m__ttl{
    margin: -3.5em 0 0 2.2%;
  }
}

/* lower-mv-s */
.lower-mv-s{
  margin-top: 25vh;
}
.lower-mv-s__inner{
  position: relative;
  padding-bottom: 1em;
}
.lower-mv-s__line{
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 1px;
  background-color: rgb(38, 43, 51, 0.4);
}
.lower-mv-s .breadcrumb{
  margin: 0 0 0 auto;
}
.lower-mv-s .breadcrumb>ul{
  justify-content: flex-end;
  margin-top: 0.8em;
}
.lower-mv-s .breadcrumb>ul>li{
  margin-top: 0.4em;
}
.lower-mv-s .breadcrumb>ul>li::after{
  background-color: rgb(38, 43, 51, 0.45);
}
@media (min-width: 768px){
}
@media (min-width: 1024px){
  .lower-mv-s{
    margin-top: 30vh;
  }
  .lower-mv-s__inner{
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    padding-bottom: 1.5em;
  }
  .lower-mv-s .breadcrumb{
    flex: 1;
    margin: 0;
  }
  .lower-mv-s__ttl{
    width: 65%;
  }
  .lower-mv-s__ttl>.lower-mv-s__ttl-jp{
    width: 100%;
    word-wrap: break-word;
  }
}


/* --------------- header --------------- */


/* header */
.header__wrap{
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 3%;
  transition: 0.3s cubic-bezier(0,.43,.26,1);
}
.header.scroll-nav .header__wrap{
  background-color: #f9f9f9;
  padding: 0.8em 0;
}
.header__logo{
  position: relative;
  margin-left: 3%;
  width: 11em;
}
.fix-header__logo{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  transition: 0.3s;
  opacity: 0;
  pointer-events: none;
  transition: 0.3s cubic-bezier(0,.43,.26,1);
}
.header.scroll-nav .fix-header__logo{
  opacity: 1;
}
.header__nav{
  display: none;
}
.header__btn{
  display: none;
}
.header__lang{
  position: absolute;
  top: calc(3% - 0.6em);
  right: 68px;
  z-index: 101;
  display: none;
  align-items: flex-end;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: 0.05em;
  border-bottom: 1px solid rgb(38, 43, 51, 0.3);
  transition: 0.4s cubic-bezier(.07,.71,.33,1);
  pointer-events: none;
}
.header__lang>p{
  opacity: 0.8;
}
.top-header .header__lang{
  display: flex;
  color: #f8f6f6;
  border-bottom: 1px solid rgb(248 246 246 / 0.7);
}
.header__lang:hover{
  opacity: 0.8;
}
.header__lang::after{
  content: "";
  width: 0.5em;
  height: 0.5em;
  background-color: #ba4242;
  border-radius: 50%;
  margin: 0 0 0.3em 0.2em;
  transition: 0.4s cubic-bezier(.07,.71,.33,1);
}
@media (min-width: 768px){
  .header__lang>p{
    display: flex;
    align-items: center;
  }
}
@media (min-width: 1024px){
  .header__logo{
    margin-left: 2.5em;
  }
  .header__wrap{
    padding-top: 1.2em;
  }
}
@media (min-width: 1300px){
  .header__lang{
    position: fixed;
    top: 8em;
    right: 1em;
    align-items: center;
    opacity: 0.8;
  }
  .header__lang>p{
    font-size: 12px;
    transition: 0.4s cubic-bezier(.07,.71,.33,1);
  }
  .scroll-nav .header__lang{
    color: #282B35;
    border-bottom: 1px solid rgb(38, 43, 51, 0.3);
  }
  .scroll-nav .header__lang>p{
    font-size: 10px;
  }
  .header__lang::after{
    margin: 0 0 0 0.3em;
  }
  .scroll-nav .header__lang::after{
    width: 8px;
    height: 8px;
  }
  .scroll-nav .header__lang:hover:after{
    width: 12px;
    height: 12px;
  }
  .header__lang:hover::after{
    width: 0.8em;
    height: 0.8em;
  }
  .header__nav{
    display: block;
    margin-right: 16.5em;
    transition: 0.3s cubic-bezier(0,.43,.26,1);
  }
  .top-header .header__nav a{
    color: #f8f6f6;
  }
  /* .header.scroll-nav .header__nav{
    margin-right: 17em;
  } */
  .header.scroll-nav .header__nav>ul>li>a{
    color: #282B35;
  }
  .header__nav>ul{
    display: flex;
  }
  .header__nav>ul>li{
    transition: 0.3s cubic-bezier(0,.43,.26,1);
  }
  .header__nav>ul>li+li{
    margin-left: 1.8em;
  }
  .header.scroll-nav .header__nav>ul>li+li{
    margin-left: 1.6em;
  }
  .header__nav>ul>li>a{
    display: block;
    padding: 0.4em 0;
  }
  .header__nav>ul>li>a:hover{
    color: #b63535;
  }
  .header.scroll-nav .header__nav>ul>li>a:hover{
    color: #b63535;
  }
  .header__btn{
    position: fixed;
    z-index: 101;
    top: 0;
    right: 0;
    display: block;
    width: 13.8em;
  }
  .header__btn-item{
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 1.3em 0;
    transition: 0.3s cubic-bezier(0,.43,.26,1);
  }
  .header__btn-item:hover{
    background-color: #AD2B2B;
  }
  .header__btn-item.bg-red02:hover{
    background-color: #B53333;
  }
  .header__btn-item:hover::before{
    transform-origin: 0% 50%;
    transform: scaleX(1);
  }
  .header__btn-item>p{
    position: relative;
    z-index: 1;
    text-align: center;
    line-height: 1.2;
    width: fit-content;
  }
  .header__btn-item>p::before{
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: rgb(237 235 235 / 0.7);
    transform-origin: 100% 50%;
    transform: scaleX(0);
    transition: transform .2s cubic-bezier(0,.86,.2,.99);
  }
  .header__btn-item:hover>p::before{
    transform-origin: 0% 50%;
    transform: scaleX(1);
  }
  .header__btn-arrow{
    position: absolute;
    z-index: 1;
    top: 50%;
    right: 0.8em;
    transform: translateY(-50%);
    display: block;
    width: 1.5em;
    height: 1.5em;
  }
  .header__btn-arrow>span{
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
  }
  .header__btn-arrow>span::before{
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    border: 1px solid rgb(237 235 235 / 0.6);
    border-radius: 50%;
    transition: 0.3s cubic-bezier(0,.4,.05,1);
  }
  .header__btn-item:hover .header__btn-arrow>span::before{
    transform: scale(1.1);
  }
  .header__btn-arrow>span::after{
    content: "→";
    font-size: 90%;
  }
}

/* drawer */
.drawer__btn{
  position: fixed;
  z-index: 101;
  top: 0;
  right: 0;
  width: 60px;
  height: 90px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.drawer__btn-bar01{
  width: 32px;
  height: 2px;
  margin-top: 24px;
}
.drawer__btn-bar02{
  width: 24px;
  height: 2px;
  margin: 5px 0 0 8px;
}
.drawer__btn-txt{
  font-size: 10px;
  margin-top: 12px;
}
.drawer__menu{
  position: fixed;
  z-index: -100;
  width: 100%;
  height: 100%;
  opacity: 0;
  pointer-events: none;
  transition: 0.8s cubic-bezier(.07,.71,.33,1);
  overflow-y: scroll;
  /* スクロールバー非表示 */
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.drawer-active .drawer__menu{
  z-index: 99;
  opacity: 1;
  pointer-events: inherit;
}
/*Google Chrome、Safariスクロールバー非表示*/
.drawer__menu::-webkit-scrollbar{
  display: none;
}
.drawer__image{
  position: fixed;
  top: 25vh;
  left: 5%;
}
.drawer__image01{
  width: 30%;
}
.drawer__image02{
  width: 40%;
  margin-top: 10%;
}
.drawer__nav{
  position: relative;
  z-index: 1;
  margin-top: 25vh;
}
.drawer__nav>ul{
  width: fit-content;
  margin-left: auto;
}
.drawer__nav>ul>li{
  overflow: hidden;
}
.drawer__nav>ul>li+li{
  margin-top: 2em;
}
.drawer__nav>ul>li>a{
  position: relative;
  display: flex;
  justify-content: flex-end;
  align-items: baseline;
  width: fit-content;
  margin-left: auto;
  transform: translateY(100%);
  opacity: 0;
  transition: 0.4s 0.1s cubic-bezier(.07,.71,.33,1);
}
.drawer__nav>ul>li:nth-child(2)>a{
  transition-delay: 0.13s;
}
.drawer__nav>ul>li:nth-child(3)>a{
  transition-delay: 0.16s;
}
.drawer__nav>ul>li:nth-child(4)>a{
  transition-delay: 0.19s;
}
.drawer__nav>ul>li:nth-child(5)>a{
  transition-delay: 0.21s;
}
.drawer__nav>ul>li:nth-child(6)>a{
  transition-delay: 0.24s;
}
.drawer__nav>ul>li:nth-child(7)>a{
  transition-delay: 0.27s;
}
.drawer__nav>ul>li:nth-child(8)>a{
  transition-delay: 0.3s;
}
.drawer__nav>ul>li:nth-child(9)>a{
  transition-delay: 0.33s;
}
.drawer-active .drawer__nav>ul>li>a{
  transform: translateY(0);
  opacity: 1;
}
.drawer__nav>ul>li>a::after{
  content: "";
  position: absolute;
  bottom: 0.2em;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: rgb(38, 43, 51, 0.2);
}
.drawer__nav-jp{
  margin-right: 0.5em;
  opacity: 0.7;
}
.drawer__info{
  text-align: center;
}
.drawer__info-jp::before{
  content: "";
  display: block;
  width: 3em;
  height: 2px;
  background-color: rgb(38, 43, 51, 0.5);
  margin: 0 auto 2em;
}
.drawer__info-en{
  margin-top: 1.5em;
  opacity: 0.5;
}
.drawer__info-sns,
.drawer__info-lang{
  position: relative;
  display: flex;
  align-items: center;
  width: fit-content;
  margin: 2em auto 0;
  opacity: 0.8;
}
.drawer__info-lang{
  margin-top: 0.8em;
}
.drawer__info-sns::after,
.drawer__info-lang::after{
  content: "";
  position: absolute;
  bottom: 0.2em;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: rgb(38, 43, 51, 0.2);
}
.drawer__info-sns>p,
.drawer__info-lang>p{
  margin-right: 0.2em;
}
.drawer__info-sns-arrow{
  width: 0.8em;
}
@media (min-width: 768px){
  .drawer__btn{
    width: 64px;
    height: 100px;
  }
}
@media (min-width: 1300px){
  .drawer__btn{
    display: none;
  }
  .drawer__menu{
    display: none;
  }
}

/* --------------- footer --------------- */
/* btn */
.footer{
  background-image: url(../image/common/blue_bg.jpg);
}
.footer-btn{
  position: relative;
  display: block;
  height: 50vw;
  overflow: hidden;
}
.footer-btn__bg{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.footer-btn:hover .footer-btn__bg{
  transform: scale(1.05);
}
.footer-btn__ttl{
  position: absolute;
  top: 50%;
  right: 5%;
  transform: translateY(-50%);
  width: 15em;
  text-align: right;
}
.footer-btn__ttl>div{
  position: relative;
  padding-bottom: 1em;
}
.footer-btn__ttl>div::after{
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: rgb(237 235 235 / 0.6);
}
.footer-btn__ttl-jp{
  line-height: 1.2;
}
@media (min-width: 768px){
  .footer-btn{
    height: 31vw;
  }
  .footer-btn__ttl{
    width: fit-content;
  }
  .footer-btn__ttl>div{
    display: flex;
    align-items: baseline;
    padding: 0 0 0.5em 2em;
  }
  .footer-btn__ttl-en{
    margin-right: 0.5em;
  }
}
@media (min-width: 1024px){
  .footer-btn__ttl{
    right: 8%;
  }
}
/* wrap */
.footer-cont{
  position: relative;
}
.footer-cont::before{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: rgb(237 235 235 / 0.4);
}
.footer-nav__list>li>a{
  position: relative;
  display: flex;
  align-items: baseline;
  padding: 0 0 0 0.5em;
}
.footer-nav__list>li>a{
  margin-top: 2.5em;
}
.footer-nav__list>li>a::after{
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: rgb(237 235 235 / 0.3);
  transition: 0.4s cubic-bezier(.07,.71,.33,1);
}
.footer-nav__list>li>a:hover::after{
  background-color: rgb(237 235 235 / 0.35);
}
.footer-nav__en{
  margin-right: 0.4em;
  opacity: 0.9;
  transition: 0.4s cubic-bezier(.07,.71,.33,1);
}
.footer-nav__list>li>a:hover .footer-nav__en{
  opacity: 0.7;
}
.footer-nav__jp{
  opacity: 0.7;
  transition: 0.4s cubic-bezier(.07,.71,.33,1);
}
.footer-nav__list>li>a:hover .footer-nav__jp{
  opacity: 0.45;
}
.footer-info{
  margin-top: 8em;
}
.footer-info__logo{
  width: 11em;
}
.footer-adress__jp{
  margin-top: 3em;
}
.footer-adress__en{
  margin-top: 3em;
  opacity: 0.7;
}
.footer-info__sns{
  margin-top: 3em;
  opacity: 0.9;
}
.footer-info__sns>a{
  position: relative;
  display: flex;
  align-items: center;
  width: fit-content;
}
.footer-info__sns>a:hover{
  opacity: 0.8;
}
.footer-info__sns>a::after{
  content: "";
  position: absolute;
  bottom: 0.2em;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: rgb(237 235 235 / 0.3);
}
.footer-info__sns>a>p{
  margin-right: 0.2em;
}
.footer-info__sns-arrow{
  width: 0.8em;
}
.footer-info__lang{
  display: flex;
  align-items: center;
  width: fit-content;
  margin-top: 0.8em;
  opacity: 0.9;
  border-bottom: 1px solid rgb(237 235 235 / 0.3);
  pointer-events: none;
}
.footer-info__lang:hover{
  opacity: 0.8;
}
.footer-copyright{
  padding: 4em 0;
  opacity: 0.7;
}
.footer-copyright>small{
  display: block;
  font-size: 10px;
  text-align: center;
  transform: scale(0.9);
}
@media (min-width: 768px){
  .footer-adress{
    display: flex;
    align-items: flex-start;
  }
  .footer-adress__jp{
    margin-right: 2em;
  }
}
@media (min-width: 1024px){
  .footer-nav{
    width: 50%;
  }
  .footer-nav__list>li>a{
    margin-top: 2em;
  }
  .footer-nav__list:first-child>li:first-child>a{
    margin-top: 0;
  }
  .footer-adress{
    flex-direction: column;
  }
  .footer-adress__jp{
    margin-right: 0;
  }
  .footer-cont{
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: flex-start;
  }
  .footer-info{
    width: fit-content;
    margin: 0;
  }
}
@media (min-width: 1300px){
  .footer-nav{
    display: flex;
    align-items: flex-start;
    width: fit-content;
  }
  .footer-nav__list:first-child{
    margin-right: 4em;
  }
  .footer-nav__list>li>a{
    padding: 0 0.5em 0 0;
  }
  .footer-nav__list>li>a{
    margin-top: 0;
  }
  .footer-nav__list>li+li>a{
    margin-top: 2.4em;
  }
}


/* --------------- top --------------- */
/* common */
.top-ttl01{
  position: relative;
  padding-bottom: 0.8em;
}
.top-ttl01::after{
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: rgb(237, 235, 235, 0.6);
}
.top-ttl01__jp{
  opacity: 0.8;
}
@media (min-width: 768px){
}
@media (min-width: 1024px){
}

/* MV */
.top-mv{
  position: relative;
  height: 90vh;
  background-color: #262B33;
}
.top-mv::before{
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: linear-gradient(0deg, rgba(0, 9, 22, 0.4), rgba(0, 9, 22, 0.2) 16%, rgba(0, 9, 22, 0) 42%);
}
.top-mv__image{
  height: 100%;
  overflow: hidden;
}
.top-mv__image-inner{
  height: 100%;
  overflow: hidden;
}
.top-mv__image-inner video{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.top-mv__cont{
  position: absolute;
  z-index: 2;
  bottom: 4em;
  left: 5%;
  width: 74%;
  max-width: 30em;
}
.top-mv__cont-inner{
  position: relative;
  padding-left: 8%;
}
.top-mv__cont-bar{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 100%;
  background-color: rgb(248 246 246 / 0.5);
}
.top-mv__ttl02{
  margin-top: 7%;
}
.top-mv__subttl{
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 10%;
}
.top-mv__subttl-circle{
  width: 4.2%;
}
.top-mv__subttl-image{
  width: 93%;
}
.top-mv__scroll{
  position: absolute;
  z-index: 2;
  bottom: -5em;
  right: 2.5%;
  width: 0.53em;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.top-mv__scroll-txt{
  opacity: 0.9;
}
.top-mv__scroll-line01{
  display: block;
  width: 1px;
  height: 3em;
  background-color: rgb(255 255 255 / 0.4);
  margin-top: 1em;
}
.top-mv__scroll-line02{
  display: block;
  width: 1px;
  height: 5em;
  background-color: rgb(0 0 0 / 0.3);
}
@media (min-width: 768px){
}
@media (min-width: 1024px){
  .top-mv{
    height: 100vh;
  }
  .top-mv__cont{
    max-width: 33em;
    left: 2.5em;
  }
  .top-mv__cont-inner{
    padding-left: 2.5em;
  }
}

/* message */
.top-message-wrap{
  width: 87%;
}
.top-message__txt{
  text-align: justify;
}
.top-message__bottom{
  margin-top: 4em;
}
.top-message__bottom-logo{
  width: 10em;
}
.top-message__bottom-name{
  margin-top: 0.5em;
}
@media (min-width: 768px){
  .top-message-wrap{
    width: fit-content;
  }
  .top-message__bottom{
    display: flex;
    align-items: center;
  }
  .top-message__bottom-name{
    font-weight: 600;
    margin-left: 3em;
  }
}
@media (min-width: 1024px){
  .top-message__bottom{
    margin-top: 5em;
  }
}

/* about */
.top-about__head{
  position: relative;
  z-index: 1;
  padding-top: 1px;
}
.top-about__head::before{
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #b63535;
  background-image: url(../image/top/top_about_bg.jpg);
}
.top-about__image{
  width: 85%;
  margin-top: -5%;
  aspect-ratio: 1.5/1;
}
.top-about__head-cont{
  width: 75%;
  max-width: 30em;
  margin: 0 5% 0 auto;
}
.top-about__copy--jp01{
  width: 93.3%;
}
.top-about__copy--jp02{
  margin-top: 6.6%;
}
.top-about__copy--jp03{
  width: 61%;
  margin: 6.6% 0 0 auto;
}
.top-about__copy--en{
  width: 61.5%;
  margin: 10% 0 0 auto;
  opacity: 0.8;
}
.top-about__box{
  width: 21em;
  margin: 2em 5% 0 auto;
}
@media (min-width: 768px){
  .top-about__image{
    position: absolute;
    z-index: -1;
    bottom: -11.5%;
    left: 0;
    width: 53%;
    margin-top: 0;
  }
  .top-about__head-cont{
    width: 45%;
    max-width: none;
  }
}
@media (min-width: 1024px){
  .top-about__image{
    width: 61.5%;
    top: 45%;
  }
  .top-about__head-cont{
    width: 32%;
    margin-right: 8.5%;
  }
  .top-about__box{
    width: 27%;
    max-width: 21em;
    margin-top: 4vw;
    margin-right: 8%;
  }
}

/* service */
.top-service__wrap{
  position: relative;
  padding-top: 1px;
}
.top-service__image{
  aspect-ratio: 1.16/1;
}
.top-service__cont{
  position: relative;
  z-index: 1;
  width: 89%;
  max-width: calc(30em + 14%);
  padding-left: 7%;
  padding-right: 7%;
  margin-top: -20%;
  background-image: url(../image/common/blue_bg.jpg);
}
.top-service__copy--jp01{
  width: 90.8%;
}
.top-service__copy--jp02{
  width: 69.6%;
  margin-top: 7.8%;
}
.top-service__copy--jp03{
  width: 30.1%;
}
.top-service__copy--jp04{
  width: 66%;
}
.top-service__copy-flex{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-top: 7.8%;
}
.top-service__copy--en{
  width: 95%;
  margin-top: 10%;
  opacity: 0.8;
}
.top-service__txt{
  max-width: 25em;
  margin-top: 4em;
}

@media (min-width: 768px){
  .top-service__cont{
    width: 59%;
    max-width: none;
  }
  .top-service__image{
    aspect-ratio: 1.78/1;
  }
}
@media (min-width: 1024px){
  .top-service{
    padding-top: 20vw;
  }
  .top-service__image{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  .top-service__cont{
    width: 44%;
    padding-left: 6%;
    padding-right: 6%;
    margin-top: 8%;
  }
}

/* flow */
.top-flow{
  position: relative;
}
.top-flow::after{
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 58%;
  background-color: #f9f9f9;
}
.top-flow__wrap{
  position: relative;
  z-index: 1;
}
.top-flow__cont{
  width: 75%;
  max-width: 30em;
  margin: 0 18% 0 auto;
}
.top-flow__list{
  margin-top: 2em;
}
.top-flow__list>li{
  position: relative;
  display: flex;
  align-items: center;
}
.top-flow__list>li+li{
  margin-top: 0.5em;
}
.top-flow__list>li+li::before{
  content: "";
  position: absolute;
  top: -0.8em;
  left: 0.4em;
  display: block;
  width: 1px;
  height: 1em;
  background-color: rgb(182, 53, 53, 0.5);
}
.top-flow__list-num{
  width: 2em;
  font-size: 80%;
  letter-spacing: 0;
}
.top-flow__list-txt{
  flex: 1;
}
.top-flow__cont .btn01{
  position: relative;
  z-index: 1;
  margin: 3em 0 0 7%;
}
.top-flow__image{
  width: 50%;
  max-width: 20em;
  margin: -8em 10% 0 auto;
  aspect-ratio: 0.8/1;
}
@media (min-width: 768px){
  .top-flow__wrap{
    display: flex;
    align-items: flex-start;
    width: 80%;
    max-width: 63em;
    margin: 0 5% 0 auto;
  }
  .top-flow__cont{
    width: 64%;
    max-width: none;
    margin: 0;
  }
  .top-flow__cont .btn01{
    margin: 3em 12% 0 auto;
  }
  .top-flow__image{
    width: 60%;
    max-width: none;
    margin: 5% 0 0 -14%;
  }
}
@media (min-width: 1024px){
  .top-flow__wrap{
    margin-right: 8%;
  }
  .top-flow__cont{
    margin-top: 5%;
  }
  .top-flow__list{
    margin-top: 4em;
  }
  .top-flow__image{
    margin-top: 0;
  }
}

/* prod */
.top-prod__wrap{
  position: relative;
}
.top-prod__cont{
  position: relative;
  z-index: 1;
  background-image: url(../image/common/blue_bg.jpg);
}
.top-prod__cont-inner{
  padding-left: 7%;
}
.top-prod__cont-inner .section-ttl01{
  width: 80%;
  max-width: 30em;
}
.top-prod__cont-inner .swiper-wrapper{
  height: 43vw;
}
.top-prod__cont-inner .swiper-area{
  margin-top: 2em;
}
.top-prod__cont-inner .swiper-slide{
  width: 30%;
  margin-right: 5%!important;
  transition: 0.3s 0.16s cubic-bezier(0,.43,.26,1);
}
.top-prod__cont-inner .swiper-slide-active{
  width: 36%;
}
.top-prod__item{
  display: block;
  padding-bottom: 0.2em;
  border-bottom: 1px solid rgb(237 235 235 / 0.3);
}
.top-prod__item:hover{
  border-bottom: 1px solid rgb(237 235 235 / 0.5);
}
.top-prod__item-image{
  overflow: hidden;
}
.top-prod__item-image img{
  transition: 0.8s cubic-bezier(.07,.71,.33,1);
}
.top-prod__item:hover .top-prod__item-image img{
  transform: scale(1.05);
}
.top-prod__item-info{
  margin-top: 0.5em;
}
.top-prod__item-name{
  font-size: 86%;
  transition: 0.3s cubic-bezier(0,.43,.26,1);
}
.top-prod__cont-inner .swiper-slide-active .top-prod__item-name{
  font-size: 100%;
}
.top-prod__cont-inner .swiper-bottom{
  width: 90%;
}
.swiper-bottom__controller{
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.swiper-button-next, .swiper-button-prev{
  position: relative;
  top: 0;
  left: 0;
  width: 2em;
  height: 2em;
  background-color: rgba(228, 230, 234, 0.05);
  border: 1px solid rgba(228, 230, 234, 0.6);
  border-radius: 50%;
  margin-top: 0;
}
.swiper-button-next{
  margin-left: 0.8em;
}
.swiper-button-next::after, .swiper-button-prev::after{
  font-size: 60%;
  font-weight: 600;
  padding: 0;
  border-radius: 50%;
  transform: scaleY(0.8);
  transition: .15s cubic-bezier(.19, 0, .34, 1);
}
.swiper-button-next::after{
  content: "→";
}
.swiper-button-prev::after{
  content: "←";
}
.top-prod__cont-inner .btn01{
  margin-left: auto;
}
.top-prod__bg{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 80%;
  display: block;
  overflow: hidden;
}
.top-prod__bg-image{
  height: 120%;
}
.top-prod__bg-image img{
  height: 100%;
  object-fit: cover;
}
.top-prod__foot{
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 20%;
  display: block;
}
@media (min-width: 768px){
  .top-prod__cont-inner .swiper-wrapper{
    height: 33vw;
  }
  .top-prod__cont-inner .swiper-slide{
    width: 24%;
    margin-right: 4%!important;
  }
  .top-prod__cont-inner .swiper-slide-active{
    width: 32%;
  }
}
@media (min-width: 1024px){
  .top-prod__cont-inner .swiper-area{
    margin-top: 4em;
  }
  .top-prod__cont-inner .swiper-wrapper{
    height: 26vw;
    max-height: 24em;
  }
  .top-prod__cont-inner .swiper-slide{
    width: 22%;
    max-width: 13.5em;
    margin-right: 3%!important;
  }
  .top-prod__cont-inner .swiper-slide-active{
    width: 30%;
    max-width: 18em;
  }
  .top-prod__bg{
    height: 66%;
  }
  .top-prod__foot{
    height: 34%;
  }
}

/* stock */
.top-stock__image{
  width: 50%;
  margin-left: auto;
  aspect-ratio: 1/1;
}
.top-stock__cont{
  position: relative;
  z-index: 1;
  margin-top: -7em;
}
.top-stock__cont .section-ttl01{
  width: 70%;
}
.top-stock__box{
  margin-top: 2em;
}
.top-stock__list{
  font-size: 90%;
}
.top-stock__cont .btn01{
  margin: -3em 0 0 auto;
}
@media (min-width: 768px){
  .top-stock__image{
    aspect-ratio: 1.54/1;
  }
  .top-stock__cont .btn01{
    margin-left: 50%;
  }
}
@media (min-width: 1024px){
  .top-stock__wrap{
    display: flex;
    flex-direction: row-reverse;
  }
  .top-stock__image{
    width: 62.5%;
    margin-left: -5em;
  }
  .top-stock__cont{
    width: calc(37.5% + 5em);
    margin-top: 0;
  }
  .top-stock__cont .section-ttl01{
    width: 100%;
  }
  .top-stock__box{
    display: flex;
    flex-wrap: wrap;
    width: calc(100% - 5em);
    margin-top: 4em;
  }
  .top-stock__list:first-child{
    margin-right: 2em;
  }
  .top-stock__cont .btn01{
    margin: 2em 0 0 auto;
  }
}

/* recruit */
.top-recruit{
  position: relative;
}
.top-recruit__wrap{
  position: relative;
  z-index: 1;
}
.top-recruit__image{
  aspect-ratio: 1.34/1;
}
.top-recruit__cont{
  position: relative;
  z-index: 1;
  width: 80%;
  margin: -3em 5% 0 auto;
}
.top-recruit__cont-inner{
  width: 86%;
  margin: 0 auto;
  padding: 7% 0;
}
.top-recruit__cont .btn01{
  margin: 1em 0 0 auto;
}
.top-recruit__foot{
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 50%;
}
@media (min-width: 768px){
  .top-recruit__image{
    aspect-ratio: 1.62/1;
  }
  .top-recruit__cont{
    margin-top: -5em;
  }
}
@media (min-width: 1024px){
  .top-recruit__cont{
    width: 56%;
    max-width: 44em;
    margin-top: -8em;
  }
  .top-recruit__cont-inner{
    padding: 4% 0;
  }
  .top-recruit__foot{
    height: 40%;
  }
}
@media (min-width: 1700px){
  .top-recruit__cont{
    position: absolute;
    bottom: 4%;
    right: 3%;
    margin: 0;
  }
}

/* company */
.top-company__inner{
  position: relative;
  width: 80%;
  margin-left: auto;
}
.top-company__image{
  aspect-ratio: 1.5/1;
}
.top-company__cont{
  position: absolute;
  bottom: 1em;
  left: 1em;
  width: 60%;
}
.top-company__cont .btn01{
  margin: 1em 0 0 -3em;
}
@media (min-width: 768px){
  .top-company__inner{
    width: 70%;
  }
  .top-company__image{
    aspect-ratio: 1.78/1;
  }
}
@media (min-width: 1024px){
  .top-company__cont{
    bottom: 2em;
    left: 2em;
  }
  .top-company__cont .btn01{
    margin: 2em 0 0 -8em;
  }
}

/* blog */
.top-blog__inner{
  position: relative;
  width: 80%;
}
.top-blog__image{
  aspect-ratio: 1.5/1;
}
.top-blog__cont{
  position: absolute;
  bottom: 1em;
  right: 1em;
  width: 60%;
}
.top-blog__cont .section-ttl01{
  text-align: right;
}
.top-blog__cont .btn01{
  margin: 1em -3em 0 auto;
}
@media (min-width: 768px){
  .top-blog__inner{
    width: 70%;
  }
  .top-blog__image{
    aspect-ratio: 1.78/1;
  }
}
@media (min-width: 1024px){
  .top-blog__cont{
    bottom: 2em;
    right: 2em;
  }
  .top-blog__cont .btn01{
    margin: 2em -8em 0 auto;
  }
}

/* news */
.top-news__ttl{
  display: flex;
  align-items: baseline;
}
.top-news__ttl-en{
  margin-right: 0.4em;
}
.top-news__list{
  margin-top: 1.2em;
}
.top-news__list>li>a{
  position: relative;
  display: block;
  padding: 1.2em 0 1em;
}
.top-news__list>li>a::after{
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: rgb(38, 43, 51, 0.3);
  transition: 0.4s cubic-bezier(.07,.71,.33,1);
}
.top-news__list>li>a:hover::after{
  background-color: rgb(38, 43, 51, 0.4);
}
.top-news__list-time{
  font-family: 'Roboto', "Yu Gothic Medium", "Yu Gothic", YuGothic,"Hiragino Kaku Gothic ProN",  "Hiragino Sans", "Noto Sans JP", Meiryo, sans-serif;
  font-weight: 400;
}
.top-news__list-ttl{
  margin-top: 0.2em;
  transition: 0.4s cubic-bezier(.07,.71,.33,1);
}
.top-news__list>li>a:hover .top-news__list-ttl{
  color: #b63535;
}
.top-news__wrap .btn01{
  margin: 2.5em 0 0 auto;
}
@media (min-width: 768px){
}
@media (min-width: 1024px){
  .top-news__list{
    margin-top: 3em;
  }
  .top-news__list>li>a{
    display: flex;
    align-items: center;
    padding: 1.8em 0 1.8em;
  }
  .top-news__list-time{
    width: 24%;
  }
  .top-news__list-ttl{
    flex: 1;
    margin-top: 0;
  }
  .top-news__wrap .btn01{
    margin-top: 4em;
  }
}



/* --------------- about --------------- */
/* message */

@media (min-width: 768px){
  .about-msg__wrap{
    width: fit-content;
  }
}
@media (min-width: 1024px){
}

/* strong */
.about-strong__head{
  position: relative;
}
.about-strong__head-ttl{
  position: absolute;
  bottom: 5%;
  left: 0;
  width: 100%;
}
.about-strong__wrap{
  position: relative;
}
.about-strong__wrap>.wrap-l{
  position: relative;
  z-index: 1;
}
.about-strong__list-image{
  width: 90%;
}
.about-strong__list-cont{
  width: 90%;
  margin: 2em 0 0 auto;
}
.about-strong__list-num{
  display: block;
  letter-spacing: 0.04em;
}
.about-strong__list-ttl{
  position: relative;
  margin-top: 0.1em;
  padding-bottom: 0.8em;
}
.about-strong__list-ttl::after{
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: rgb(38, 43, 51, 0.3);
}
.about-strong__list-text{
  margin-top: 1.5em;
}
.about-strong__wrap-bg{
  position: absolute;
  bottom: 0;
  right: 0;
  display: block;
  width: 76%;
  height: 90%;
}
@media (min-width: 768px){
  .about-strong__head-ttl{
    bottom: 8%;
  }
  .about-strong__list-image{
    width: 70%;
  }
  .about-strong__list-cont{
    width: 70%;
  }
}
@media (min-width: 1024px){
  .about-strong__list>li{
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
  }
  .about-strong__list>li:nth-child(even){
    flex-direction: row-reverse;
  }
  .about-strong__list-image{
    width: 58%;
  }
  .about-strong__list-cont{
    width: 38%;
    margin: 0;
  }
  .about-strong__wrap-bg{
    width: 89%;
    height: 88%;
  }
}
@media (min-width: 1300px){
  .about-strong__list-cont{
    margin-bottom: 4%;
  }
}


/* --------------- service --------------- */
/* message */

@media (min-width: 768px){
  .service-msg__wrap{
    width: fit-content;
  }
}
@media (min-width: 1024px){
}

/* detail */
.service-detail{
  position: relative;
}
.service-detail::before{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 11%;
  height: 85%;
  background-color: #b63535;
}
.service-detail>.wrap-l{
  position: relative;
  z-index: 1;
}
.service-detail__image{
  width: 80%;
}
.service-detail__cont{
  width: 82%;
  margin: 2em 0 0 auto;
}
.service-detail__num{
  display: flex;
  align-items: center;
  letter-spacing: 0.04em;
}
.service-detail__num::after{
  content: "";
  width: 4em;
  height: 1px;
  margin-right: 0.5em;
  background-color: rgb(182, 53, 53, 0.5);
}
.service-detail__txt{
  margin-top: 1.2em;
}
.service-detail__nation{
  margin-top: 1.2em;
}
.service-detail__nation::before{
  content: "";
  display: block;
  width: 2em;
  height: 1px;
  background-color: rgb(182, 53, 53, 0.9);
  margin-bottom: 0.8em;
}
.service-detail__nation>p{
  margin-top: 0.2em;
}
@media (min-width: 768px){
  .service-detail__image{
    width: 60%;
  }
  .service-detail__cont{
    width: 60%;
    margin: 2em 10% 0 auto;}
}
@media (min-width: 1024px){
  .service-detail::before{
    width: 30%;
  }
  .service-detail__list>li{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }
  .service-detail__image{
    width: 48%;
  }
  .service-detail__cont{
    width: 44%;
    margin: 0;
  }
}
@media (min-width: 1300px){
  .service-detail__list>li{
    align-items: center;
  }
  .service-detail__image{
    width: 50%;
  }
  .service-detail__cont{
    width: 34%;
    margin-right: 8%;
  }
}

/* flow */
.service-flow{
  position: relative;
}
.service-flow>.wrap-m{
  position: relative;
  z-index: 1;
}
.service-flow__cont{
  position: relative;
  padding: calc(55% + 1em) 0 35%;
}
.service-flow__image01{
  position: absolute;
  top: 2.5em;
  right: 0;
  width: 55%;
}
.service-flow__image02{
  position: absolute;
  bottom: -2.5em;
  left: 40%;
  width: 35%;
}
.service-flow__list{
  margin-top: 3em;
  position: relative;
}
.service-flow__list::before{
  content: "";
  position: absolute;
  top: 0;
  left: 1.5em;
  display: block;
  width: 1px;
  height: 100%;
  background-color: rgb(182, 53, 53, 0.4);
}
.service-flow__list>li{
  position: relative;
  z-index: 1;
  display: flex;
  align-items: flex-start;
  padding-bottom: 2.5em;
}
.service-flow__list>li:last-child{
  padding-bottom: 0;
}
.service-flow__list>li:last-child::after{
  display: none;
}
.service-flow__num{
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 3em;
  margin-right: 1em;
  letter-spacing: 0;
}
.service-flow__num::before{
  content: "";
  position: absolute;
  left: 0;
  width: 3em;
  height: 3em;
  border: 1px solid rgb(182, 53, 53, 0.6);
  border-radius: 50%;
}
.service-flow__num::after{
  content: "";
  position: absolute;
  z-index: -1;
  left: 0;
  width: 3em;
  height: 4em;
  background-color: #e8eaed;
}
.service-flow__list>li:last-child .service-flow__num::after{
  top: -1em;
  height: 8em;
}
.service-flow__box{
  flex: 1;
}
.service-flow__txt{
  margin-top: 0.5em;
}
.service-test__image{
  width: 60%;
}
.service-test__cont{
  width: 90%;
  margin-top: 2em;
}
.service-test__txt{
  margin-top: 0.5em;
}
.service-flow__bg{
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 80%;
  height: 75%;
}
@media (min-width: 768px){
  .service-flow__cont{
    padding-top: calc(45% + 1em);
  }
  .service-flow__image01{
    width: 45%;
  }
}
@media (min-width: 1024px){
  .service-flow__list{
    width: 50%;
  }
  .service-flow__cont{
    padding-top: max(4rem, min(2.5436rem + 6.2135vw, 10rem));
    padding-bottom: 0;
  }
  .service-flow__image01{
    width: 43%;
    top: max(4rem, min(2.5436rem + 6.2135vw, 10rem));
    right: -8%;
  }
  .service-flow__image02{
    bottom: -2%;
    left: 58%;
  }
  .service-flow__list{
    margin-top: 6em;
  }
  .service-flow__list>li{
    padding-bottom: 5em;
  }
  .service-flow__bg{
    width: 89%;
    height: 66%;
  }
  .service-test{
    display: flex;
    align-items: flex-end;
  }
  .service-test__image{
    width: 50%;
  }
  .service-test__cont{
    width: 42%;
    margin: 0 4% 0 4%;
  }
  .service-test__txt{
    margin-top: 2em;
  }
}


/* --------------- products --------------- */
/* choice */
.products-choice__ttl{
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding-bottom: 0.6em;
}
.products-choice__ttl::before{
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 1px;
  background-color: rgb(38, 43, 51, 0.3);
}
.products-choice__ttl-en{
  display: flex;
  align-items: center;
  letter-spacing: 0.07em;
}
.products-choice__ttl-en::before{
  content: "";
  width: 3em;
  height: 1px;
  background-color: rgb(182, 53, 53, 0.7);
  margin: 0 0.5em;
}
.products-choice__list{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 4%;
}
.products-choice__list>li{
  width: 48%;
  margin-top: 7%;
}
.products-choice__image{
  overflow: hidden;
}
.products-choice__image img{
  transition: 0.8s cubic-bezier(.07,.71,.33,1);
}
.products-choice__list>li>a:hover .products-choice__image img{
  transform: scale(1.05);
}
.products-choice__info{
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 0.7em;
}
.products-choice__name{
  max-width: 100%;
  word-wrap: break-word;
  transition: 0.4s cubic-bezier(.07,.71,.33,1);
}
.products-choice__list>li>a:hover .products-choice__name{
  color: #b63535;
}
.products-choice__btn{
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 1.1em;
  height: 1.1em;
  margin-right: 0.2em;
}
.products-choice__btn::before{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: #b63535;
  border-radius: 50%;
}
.products-choice__btn::after{
  content: "→";
  position: relative;
  display: block;
  z-index: 1;
  font-size: 80%;
  color: #edebeb;
}
@media (min-width: 768px){
  .products-choice__list>li{
    width: 32%;
  }
  .products-choice__list::after{
    content: "";
    width: 32%;
    height: 0;
  }
}
@media (min-width: 1024px){
  .products-choice__ttl{
    padding-bottom: 1em;
  }
  .products-choice__list{
    margin-top: 2%;
  }
}

/* detail */
.products-detail .products-choice__list{
  margin-top: 12%;
}
.products-detail .btn01{
  margin: 14% auto 0;
}
@media (min-width: 768px){
}
@media (min-width: 1024px){
  .products-detail .products-choice__list{
    margin-top: 6%;
  }
  .products-detail .btn01{
    margin-top: 10%;
  }
}




/* 梶田　一部削除 */
/* --------------- stock --------------- */
/* choice */
.stock-choice__cont-inner+.stock-choice__cont-inner{
  margin-top: 15%;
}
.stock-choice__list{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.stock-choice__list>li{
  width: 48%;
  margin-top: 6%;
}
.stock-choice__list-image{
  overflow: hidden;
}
.stock-choice__list-image img{
  transition: 0.8s cubic-bezier(.07,.71,.33,1);
}
.stock-choice__list>li>a:hover .stock-choice__list-image img{
  transform: scale(1.05);
}
.stock-choice__list-info{
  display: flex;
  justify-content: space-between;
  align-items: center;
  line-height: 1.5;
  margin-top: 0.8em;
}
/* .stock-choice__list-info::after{
  content: "→";
  font-family: 'Roboto', sans-serif;
  font-weight: 500;
  color: #b63535;
  transform: scaleX(90%);
} */
.stock-choice__list-ttl{
  max-width: 100%;
  word-wrap: break-word;
  transition: 0.4s cubic-bezier(.07,.71,.33,1);
}
.stock-choice__list>li>a:hover .stock-choice__list-ttl{
  color: #b63535;
}
.stock-choice__list-btn{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-bottom: 2em;
}
.stock-choice__list-btn>a{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.stock-choice__list-btn-arrow{
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 2.4em;
  height: 2.4em;
  margin-top: 0.4em;
}
.stock-choice__list-btn-arrow::before{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #b63535;
  border-radius: 50%;
  transition: 0.2s cubic-bezier(.07,.71,.33,1);
}
.stock-choice__list-btn>a:hover .stock-choice__list-btn-arrow::before{
  transform: scale(1.05);
}
.stock-choice__list-btn-arrow::after{
  position: relative;
  z-index: 1;
  content: "→";
  font-family: 'Roboto', sans-serif;
  font-weight: 500;
  color: #edebeb;
}
.stock-choice__cate{
  margin-top: 18%;
}
.stock-choice__cate-inner{
  padding: 3em 0 3.5em;
  width: 90%;
  margin: 0 auto;
}
.stock-choice__cate-ttl{
  display: flex;
  align-items: baseline;
}
.stock-choice__cate-ttl-jp{
  margin-left: 0.5em;
}
.stock-choice__cate-list{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
  margin-top: 0.5em;
}
.stock-choice__cate-list>li{
  width: 48%;
  line-height: 1.4;
}
.stock-choice__cate-list>li>a{
  display: flex;
  align-items: center;
  padding: 0 0.8em 0.6em 0.2em;
  margin-top: 1.2em;
  border-bottom: 1px solid rgb(38, 43, 51, 0.3);
}
.stock-choice__cate-list>li>a:hover{
  color: #b63535;
}
.stock-choice__cate-list>li>a::before{
  content: "";
  width: 0.6em;
  height: 0.6em;
  background-color: #b63535;
  border-radius: 50%;
  margin-right: 0.3em;
  opacity: 0;
}
.stock-choice__cate-list>li>a>p{
  flex: 1;
}

@media (min-width: 768px){
  .stock-choice__list{
    justify-content: flex-start;
  }
  .stock-choice__list>li{
    width: 31%;
    /* margin-right: 2%; */
  }
  .stock-choice__list>.stock-choice__list-btn{
    width: fit-content;
    margin-left: 5%;
  }
}
@media (min-width: 1024px){
  /* .stock-choice>.wrap-m{
    width: 84%;
    max-width: 89em;
  } */
  .stock-choice__cont-inner+.stock-choice__cont-inner{
    margin-top: 10%;
  }
  .stock-choice__list>li{
    width: 32%;
    /* max-width: 16.6em;
    margin-top: 3%;
    margin-right: 3%; */
  }
  .stock-choice__cate-inner{
    width: 45em;
  }
  .stock-choice__cate-list::after{
    content: "";
    width: 32%;
    height: 0;
  }
  .stock-choice__cate-ttl{
    flex-direction: column;
  }
  .stock-choice__cate-ttl-jp{
    margin-left: 0;
    line-height: 1;
  }
  .stock-choice__cate-list{
    margin-top: 1em;
  }
  .stock-choice__cate-list>li{
    width: 32%;
  }
  .stock-choice__list>.stock-choice__list-btn{
    margin-left: 2%;
    margin-right: 0;
  }
  .stock-choice__cate-list>li>a{
    padding-bottom: 1.2em;
    margin-top: 1.6em;
  }
}
@media (min-width: 1300px){
  /* .stock-choice>.wrap-m{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  } */
  /* .stock-choice__cont{
    width: 76%;
  } */
  /* .stock-choice__cate{
    width: 22%;
    margin-top: 0;
  } */
  .stock-choice__cate-inner{
    width: 88%;
    max-width: 14em;
  }
  .stock-choice__cate-list>li{
    width: 100%;
  }
  .stock-choice__cate-list>li>a{
    padding: 0 0.5em 1.2em 0.5em;
  }
  .stock-choice__cate-list>li>a::before{
    margin-right: 0.4em;
  }
}


/* 梶田　追加 */
.stock-choice__list{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}



/* detail */
.stock-detail__image{
  width: 70%;
}
.stock-detail__cont-ttl{
  position: relative;
  padding-bottom: 0.5em;
}
.stock-detail__cont-ttl::before{
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: rgb(38, 43, 51, 0.3);
}
.stock-detail__cont-subttl{
  margin-top: 2em;
}
.stock-detail__cont-txt{
  margin-top: 0.8em;
}
.stock-detail__cont-table{
  margin-top: 3em;
  overflow-x: scroll;
}
.stock-detail__cont-table>div{
  min-width: 38em;
  max-width: 40em;
}
.stock-detail__cont .btn01{
  margin: 4em auto 0;
}
.stock-other__list{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.stock-other__list>li{
  width: 48%;
  margin-top: 6%;
}
.stock-other__list>li>a:hover .stock-choice__list-image img{
  transform: scale(1.05);
}
.stock-other__list>li>a:hover .stock-choice__list-ttl{
  color: #b63535;
}
.stock-other .btn01{
  margin: 10% auto 0;
}
@media (min-width: 768px){
  .stock-detail__cont{
    max-width: 40em;
    margin: 0 auto;
  }
  .stock-other__list>li{
    width: 32%;
  }
}
@media (min-width: 1300px){
  .stock-detail>.wrap-m{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }
  .stock-detail__cont{
    width: 68%;
  }
  .stock-detail .stock-choice__cate{
    width: 28%;
  }
  .stock-detail__cont .btn01{
    margin-top: 6em;
  }
  .stock-other__list>li{
    width: 31%;
    margin-top: 4%;
  }
}



/* 梶田追加 */
/* .thumbswiper .swiper {
  width: 100%;
  height: 100%;
} */
/* .thumbswiper{
  margin-top: 50px;
  position: relative;
}
.thumbswiper .swiper-slide {
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
}
.thumbswiper .swiper-slide img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.mySwiper2 {
  width: 50%;
  height: 600px;
  margin-left: auto;
  margin-right: auto;
}
.thumbswiper .swiper-slide {
  background-size: cover;
  background-position: center;
}

.mySwiper {
  width: 50%;
  height: 20%;
  box-sizing: border-box;
  padding: 10px 0;
}
.mySwiper .swiper-slide {
  width: 25%;
  height: 100%;
  opacity: 0.4;
}
.mySwiper .swiper-slide-thumb-active {
  opacity: 1;
} */
/* .mySwiper2 {
  height: 80%;
  width: 100%;
} */
.swiper-container{
  overflow: hidden;
  width: 90%;
  margin: 0 auto;
}
.thumbnail{
  padding-top: 1em;
}

.thumbswiper-wrap .swiper-slide img {
  width: 100%;
}

/* サムネイルのスタイル */
.thumbnail .swiper-slide {
  opacity: 0.5;
}

/* サムネイルのアクティブスタイル */
.thumbnail .swiper-slide-thumb-active {
  opacity: 1;
}

@media (min-width: 1024px){
  .swiper-container{
    width: 65%;
    margin: 0 auto ;
  }
}
/* 梶田追加終わり */

/* category */
.stock-cate__cont-list{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.stock-cate__cont-list>li{
  width: 48%;
  margin-top: 10%;
}
.stock-cate__cont-list>li>a:hover .stock-choice__list-image img{
  transform: scale(1.05);
}
.stock-cate__cont-list>li>a:hover .stock-choice__list-ttl{
  color: #b63535;
}
.stock-cate__cont .btn01{
  margin: 3em auto 0;
}
@media (min-width: 768px){
  .stock-cate__cont-list>li{
    width: 31%;
  }
  .stock-cate__cont-list::after{
    content: "";
    width: 31%;
    height: 0;
  }
}
@media (min-width: 1024px){
}
@media (min-width: 1300px){
  .stock-cate>.wrap-m{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }
  .stock-cate__cont{
    width: 61%;
  }
  .stock-cate__cont-list>li{
    margin-top: 0;
  }
  .stock-cate__cont-list>li:nth-child(n+4){
    margin-top: 6%;
  }
  .stock-cate__cont .btn01{
    margin-left: 0;
  }
}


/* --------------- company --------------- */
/* message */
.co-message__cont{
  margin-top: 0.5em;
}
.co-message__image{
  width: 55%;
  margin-left: auto;
}
.co-message__txt{
  margin-top: 3em;
}
.co-message__txt+.co-message__txt{
  margin-top: 2em;
}
.co-message__signature{
  text-align: right;
  margin-top: 3em;
}
.co-message__signature-ceo{
  display: flex;
  justify-content: flex-end;
  align-items: baseline;
}
.co-message__signature-name{
  margin-left: 0.8em;
}
@media (min-width: 768px){
  .co-message__cont{
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center;
    margin-top: 3em;
  }
  .co-message__image{
    width: 36%;
    margin: 0;
  }
  .co-message__box{
    width: 56%;
  }
  .co-message__txt:first-child{
    margin-top: 0;
  }
  .co-message__signature{
    margin-top: 4em;
  }
}
@media (min-width: 1024px){
  .co-message__cont{
    margin-top: 4em;
  }
  .co-message__box{
    width: 50%;
    max-width: 38em;
    margin-left: 36px;
  }
  .co-message__image{
    width: 30%;
    margin-right: 8%;
  }
  .co-message__signature{
    margin-top: 5em;
  }
}

/* statement */
.co-statement__cont{
  width: 84%;
  padding: 4em 0 4em;
}
.co-statement__cont:nth-child(2){
  margin: -4em 0 0 auto;
}
.co-statement__cont-inner{
  width: 90%;
  margin: 0 auto;
}
.co-statement__ttl-en{
  display: flex;
  align-items: center;
}
.co-statement__ttl-en::after{
  content: "";
  width: 4em;
  height: 1px;
  margin-left: 0.2em;
  background-color: rgb(182, 53, 53, 0.5);
}
.co-statement__list>li{
  display: flex;
  align-items: flex-start;
  margin-top: 1em;
}
.co-statement__list>li::before{
  content: "";
  width: 0.5em;
  height: 2px;
  margin: 0.8em 0.3em 0 0;
  background-color: #b63535;
}
.co-statement__list>li>p{
  flex: 1;
}
@media (min-width: 768px){
}
@media (min-width: 1024px){
  .co-statement__cont{
    width: 70%;
    padding: 6em 0;
  }
  .co-statement__cont:nth-child(2){
    margin-top: -6em;
  }
  .co-statement__cont-inner{
    max-width: 32em;
  }
}

/* information */
.co-info__table{
  margin: 1.5em 16px 0;
}
.co-info__table table{
  width: 100%;
}
.co-info__table tr{
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 1.2em 0.2em 1em;
}
.co-info__table tr::before{
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: rgb(38, 43, 51, 0.3);
}
.co-info__table tr::after{
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 6.5em;
  height: 1px;
  background-color: rgb(182, 53, 53, 0.8);
}
.co-info__table th{
  font-weight: 600;
}
.co-info__table td{
  margin-top: 0.2em;
}
@media (min-width: 768px){
  .co-info__table{
    margin: 2em 28px 0;
  }
  .co-info__table tr{
    flex-direction: row;
    align-items: flex-start;
    padding: 1.8em 0.4em 1.6em;
  }
  .co-info__table th{
    width: 24%;
  }
  .co-info__table td{
    flex: 1;
    margin-top: 0;
  }
}
@media (min-width: 1024px){
  .co-info__table{
    margin: 4em 36px 0;
  }
}

/* access */
.co-access{
  position: relative;
}
.co-access>.wrap-m,.co-access>.wrap-l{
  position: relative;
  z-index: 1;
}
.co-access__bg{
  position: absolute;
  bottom: 0;
  right: 0;
  height: 85%;
}
.co-access__cont{
  margin: 3em 16px 0;
}
.co-access__cont-inner+.co-access__cont-inner{
  margin-top: 4em;
}
.co-access__cont-ttl::after{
  content: "";
  display: block;
  width: 2.5em;
  height: 1px;
  background-color: #b63535;
  margin-top: 0.6em;
}
.co-access__cont-txt>p{
  margin-top: 1em;
}
.co-access__cont-map{
  margin-top: 1.5em;
}
.co-access__cont-map>div{
  position: relative;
  height: 0;
  padding-top: 60%;
}
.co-access__cont-map>div>iframe{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.co-access__gallery{
  margin: 0 16px;
}
.co-access__gallery-image+.co-access__gallery-image{
  margin-top: 1em;
}
@media (min-width: 768px){
  .co-access__bg{
    height: 75%;
  }
  .co-access__cont{
    margin: 4em 28px 0;
  }
  .co-access__gallery{
    display: flex;
    justify-content: space-between;
    margin: 0;
  }
  .co-access__gallery-image{
    width: 32%;
  }
  .co-access__gallery-image+.co-access__gallery-image{
    margin-top: 0;
  }
}
@media (min-width: 1024px){
  .co-access__bg{
    height: 68%;
  }
  .co-access__cont{
    margin: 5em 36px 0;
  }
  .co-access__cont-inner{
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center;
  }
  .co-access__box{
    width: 48%;
  }
  .co-access__cont-map{
    width: 46%;
    margin: 0;
  }
  .co-access__cont-map>div{
    padding-top: 75%;
  }
}


/* --------------- recruit --------------- */
/* message */


@media (min-width: 768px){
  .recruit-msg__wrap{
    width: fit-content;
  }
}
@media (min-width: 1024px){
}

/* business */
.recruit-business{
  position: relative;
}
.recruit-business__bg{
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 50%;
}
.recruit-business>.wrap-m{
  position: relative;
  z-index: 1;
}
.recruit-business>.wrap-m::after{
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #b63535;
}
.recruit-business__list{
  width: 90%;
  margin: 0 auto;
}
.recruit-business__list>li{
  position: relative;
  margin-top: 4em;
}
.recruit-business__list-ttl{
  position: absolute;
  top: -1em;
  left: 1em;
  width: fit-content;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  padding: 0.5em 0;
}
.recruit-business__txt{
  margin-top: 1em;
}
@media (min-width: 768px){
  .recruit-business__list{
    display: flex;
    justify-content: space-between;
    width: 100%;
  }
  .recruit-business__list>li{
    width: 46%;
  }
}
@media (min-width: 1024px){
}


/* inty */
.recruit-intv{
  position: relative;
}
.recruit-intv__bg{
  position: absolute;
  bottom: 0;
  left: 0;
  height: 86%;
}
.recruit-intv>.wrap-l{
  position: relative;
  z-index: 1;
}
.recruit-intv__list>li{
  width: 72%;
  margin: 15% auto 0;
}
.recruit-intv__list>.recruit-intv__list-ttl{
  width: 100%;
  margin-top: 0;
}
.recruit-intv__list-head{
  position: relative;
  z-index: 1;
  padding: 0 0 1em 0.5em;
  margin-left: 0.5em;
  border-left: 1px solid rgb(182, 53, 53, 0.5);
}
.recruit-intv__list-image{
  margin-top: -0.8em;
  overflow: hidden;
}
.recruit-intv__list-image img{
  transition: 0.8s cubic-bezier(.07,.71,.33,1);
}
.recruit-intv__list>li>a:hover .recruit-intv__list-image img{
  transform: scale(1.04);
}
.recruit-intv__list-info{
  position: relative;
  z-index: 1;
  width: fit-content;
  max-width: 80%;
  padding: 0.2em 0.8em;
  color: #666;
  margin-top: -3em;
}
.recruit-intv__list-bottom{
  margin-top: 2em;
}
.recruit-intv__list-txt{
  transition: 0.4s cubic-bezier(.07,.71,.33,1);
}
.recruit-intv__list>li>a:hover .recruit-intv__list-txt{
  color: #b63535;
}
.recruit-intv__list-btn{
  position: relative;
  display: none;
  justify-content: center;
  align-items: center;
  width: 2.2em;
  height: 2.2em;
}
.recruit-intv__list-btn::before{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 1px solid rgb(182, 53, 53, 0.5);
  border-radius: 50%;
}
.recruit-intv__list-btn::after{
  content: "→";
  color: #b63535;
}
@media (min-width: 768px){
  .recruit-intv__list{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
  }
  .recruit-intv__list>li{
    width: 46%;
    margin: 10% 0 0;
  }
}
@media (min-width: 1024px){
  .recruit-intv__list::after{
    content: "";
    width: 30%;
    height: 0;
  }
  .recruit-intv__list>li{
    width: 30%;
  }
}
@media (min-width: 1300px){
  .recruit-intv__bg{
    height: 75%;
  }
  .recruit-intv__list>.recruit-intv__list-ttl{
    width: 30%;
    margin-top: 15%;
  }
  .recruit-intv__list>li{
    margin-top: 0;
  }
  .recruit-intv__list>li:nth-child(n+4){
    margin-top: 8%;
  }
  .recruit-intv__list-bottom{
    display: flex;
    align-items: center;
  }
  .recruit-intv__list-txt{
    flex: 1;
    margin-right: 0.5em;
  }
  .recruit-intv__list-btn{
    display: flex;
  }
}

/* schedule */
.recruit-schedule__tab{
  display: flex;
  justify-content: flex-end;
  margin-top: 1.5em;
  border-bottom: 1px solid rgb(182, 53, 53, 0.7);
}
.recruit-schedule__tab>li{
  text-align: center;
  width: fit-content;
  padding: 0.3em 2em;
  border-radius: 4px 4px 0 0;
}
.recruit-schedule__tab>li+li{
  margin-left: 0.5em;
}
.recruit-schedule__tab>li.active{
  background-color: #b63535;
  color: #edebeb;
}

.recruit-schedule__cont-inner{
  display: none;
}
.recruit-schedule__cont-inner.show{
  display: block;
}
.recruit-schedule__flow{
  margin-top: 4em;
}
.recruit-schedule__flow>li{
  margin-top: 3em;
}
.recruit-schedule__image{
  width: 60%;
}
.recruit-schedule__flow-cont{
  margin-top: 1.5em;
}
.recruit-schedule__flow-info{
  display: flex;
  align-items: center;
}
.recruit-schedule__flow-info+.recruit-schedule__flow-info{
  margin-top: 1em;
}
.recruit-schedule__flow-time{
  width: 6em;
  text-align: center;
  margin-right: 1em;
}
.recruit-schedule__flow-txt{
  margin-top: 0.5em;
}

@media (min-width: 768px){
  .recruit-schedule__tab{
    margin-top: 0;
  }
  .recruit-schedule__flow{
    margin-top: 6em;
  }
  .recruit-schedule__flow>li{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 2em;
  }
  .recruit-schedule__image{
    width: 40%;
  }
  .recruit-schedule__flow-cont{
    width: 58%;
    margin-top: 0;
  }
  .recruit-schedule__flow-info+.recruit-schedule__flow-info{
    margin-top: 1.6em;
  }
}
@media (min-width: 1024px){
  .recruit-schedule__tab>li{
    padding: 0.5em 3em;
    border-radius: 6px 6px 0 0;
  }
  .recruit-schedule__flow{
    margin-top: 8em;
  }
  .recruit-schedule__image{
    width: 30%;
  }
  .recruit-schedule__flow-cont{
    width: 64%;
  }
  .recruit-schedule__flow-time{
    margin-right: 2em;
  }
}

/* benefit */
.recruit-welfare{
  position: relative;
}
.recruit-welfare>.wrap-m{
  position: relative;
  z-index: 1;
}
.recruit-welfare__bg{
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
}
.recruit-welfare__head-txt{
  margin: 1.5em 0.5em 0 0.5em;
  padding-left: 1em;
  border-left: 1px solid rgb(182, 53, 53, 0.7);
}
.recruit-welfare__list{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 95%;
  margin: 10% auto 0;
}
.recruit-welfare__list::after{
  content: "";
  width: 31%;
  height: 0;
}
.recruit-welfare__list>li{
  width: 90%;
  margin-top: 6%;
}
@media (min-width: 768px){
  .recruit-welfare__head-txt{
    max-width: 40em;
    margin-top: 3em;
    padding-left: 1.5em;
    border-left: 2px solid rgb(182, 53, 53, 0.7);
  }
  .recruit-welfare__list{
    justify-content: space-between;
    width: 100%;
    margin-top: 4%;
  }
  .recruit-welfare__list>li{
    width: 46%;
    margin-top: 8%;
  }
  .recruit-welfare__list::after{
    display: none;
  }
}
@media (min-width: 1024px){
}

/* question */
.recruit-question__head-txt{
  margin: 1.5em 0.5em 0 0.5em;
  padding-left: 1em;
  border-left: 1px solid rgb(182, 53, 53, 0.7);
}
@media (min-width: 768px){
  .recruit-question__head-txt{
    max-width: 40em;
    margin-top: 3em;
    padding-left: 1.5em;
    border-left: 2px solid rgb(182, 53, 53, 0.7);
  }
}
@media (min-width: 1024px){
}

/* person */
.recruit-person__cont{
  position: relative;
  margin-top: 1em;
  padding-top: 3em;
}
.recruit-person__cont-inner{
  padding: 3em 0;
}
.recruit-person__cont::before{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: rgb(182, 53, 53, 0.6);
}
.recruit-person__list{
  width: fit-content;
  margin: 0 auto;
}
.recruit-person__list>li{
  display: flex;
  align-items: center;
}
.recruit-person__list>li+li{
  margin-top: 0.4em;
}
.recruit-person__list>li::before{
  content: "";
  width: 0.4em;
  height: 2px;
  background-color: rgb(182, 53, 53, 0.8);
  margin-right: 0.4em;
}

@media (min-width: 768px){
}
@media (min-width: 1024px){
  .recruit-person__cont{
    padding-top: 5em;
  }
  .recruit-person__list{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    width: 80%;
  }
  .recruit-person__list>li{
    width: 50%;
    margin-top: 0.4em;
  }
}

/* require */
.recruit-require__table{
  margin-top: 3em;
  padding: 1em 0 3em;
}
.recruit-require__table>table{
  width: 90%;
  margin: 0 auto;
}
.recruit-require__table tr{
  display: flex;
  flex-direction: column;
  padding: 1.8em 0.2em 1.8em;
  border-bottom: 1px solid rgb(38, 43, 51, 0.3);
}
.recruit-require__table td{
  margin-top: 0.2em;
}
@media (min-width: 768px){
  .recruit-require__table tr{
    flex-direction: row;
    align-items: flex-start;
    padding: 2.2em 0.4em 2.2em;
  }
  .recruit-require__table th{
    width: 24%;
  }
  .recruit-require__table td{
    flex: 1;
  }
}
@media (min-width: 1024px){
  .recruit-require__table{
    margin-top: 5em;
    padding: 4em 0 7em;
}
  .recruit-require__table>table{
    width: 82%;
  }
}

/* flow */
.recruit-flow{
  position: relative;
}
.recruit-flow__bg{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 36%;
}
.recruit-flow>.wrap-m-right{
  position: relative;
  z-index: 1;
}
.recruit-flow__cont{
  width: 90%;
  margin: 0 auto;
}
.recruit-flow__list>li{
  padding: 2.8em 0.2em 2em;
  border-bottom: 1px solid rgb(38, 43, 51, 0.3);
}
.recruit-flow__list>li:first-child{
  padding-top: 0;
}
.recruit-flow__list-num{
  display: block;
  line-height: 1.2;
}
.recruit-flow__list-txt{
  margin-top: 0.3em;
}
.recruit-flow__list-txt a{
  font-weight: 600;
  text-decoration: underline;
}
.recruit-flow__btn>a{
  position: relative;
  display: block;
  width: 16em;
  text-align: center;
  margin: 0 auto;
  padding: 1em 0;
  border: 3px solid rgb(182, 53, 53, 0.8);
}
.recruit-flow__btn>a:hover{
  background-color: #b63535;
  color: #edebeb;
}
.recruit-flow__btn>a::after{
  content: "→";
  position: absolute;
  top: 50%;
  right: 0.5em;
  transform: translateY(-50%);
  font-family: 'Roboto', sans-serif;
  font-weight: 500;
  transition: 0.4s cubic-bezier(0,.51,.05,1);
}
.recruit-flow__btn>a:hover::after{
  color: #edebeb;
}
@media (min-width: 768px){
  .recruit-flow__cont{
    width: 80%;
    max-width: 50em;
  }
  .recruit-flow__list>li{
    padding: 3.2em 0.2em 3em;
  }
  .recruit-flow__list-box{
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .recruit-flow__list-box .ttl-jp-m{
    width: 33%;
  }
  .recruit-flow__list-txt{
    flex: 1;
  }
}
@media (min-width: 1024px){
  .recruit-flow__list>li {
    padding: 3em 0.2em 3.5em;
}
  .recruit-flow__list-box{
    margin-top: 0.8em;
  }
}


/* --------------- interview --------------- */
.interview-section{
  position: relative;
}
.interview__bg-top{
  position: absolute;
  top: 5%;
  left: 0;
  width: 80%;
  height: 30%;
}
.interview__bg-bottom{
  position: absolute;
  bottom: 5%;
  right: 0;
  width: 80%;
  height: 52%;
}
.interview-section>.wrap-l{
  position: relative;
  z-index: 1;
}
.interview__left{
  position: relative;
  width: 60%;
  max-width: 24em;
}
.interview__info{
  position: absolute;
  bottom: 1.5em;
  left: 0;
  display: flex;
  flex-wrap: wrap;
}
.interview__info>p{
  padding: 0 0 0 0.4em;
}
.interview__name{
  position: absolute;
  bottom: 0;
  right: -2em;
}
.interview__name-jp{
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  letter-spacing: 0.15em;
}
.interview__name-en{
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  margin-top: 1em;
}
.interview__box{
  margin-top: 2.5em;
}
.interview__head{
  padding-bottom: 0.8em;
  border-bottom: 1px solid rgb(182, 53, 53, 0.7);
}
.interview__num{
  display: flex;
  align-items: center;
}
.interview__num::before{
  content: "";
  width: 2em;
  height: 1px;
  background-color: rgb(182, 53, 53, 0.7);
  margin-right: 0.5em;
}
.interview__ttl{
  margin-top: 0.2em;
}
.interview__txt{
  margin-top: 3em;
}
.interview__txt>p{
  margin-top: 1.5em;
}
.interview-section .btn01{
  margin: 0 auto;
}
@media (min-width: 768px){
  .interview__info{
    bottom: 3em;
  }
}
@media (min-width: 1024px){
  .interview__bg-top{
    top: 10%;
    height: 25%;
  }
  .interview__bg-bottom{
    bottom: 12%;
    height: 40%;
  }
  .interview__cont{
    display: flex;
    align-items: flex-start;
  }
  .interview__cont:nth-child(even){
    flex-direction: row-reverse;
    justify-content: flex-end;
  }
  .interview__left{
    width: 36%;
    max-width: none;
  }
  .interview__box{
    width: 64%;
    margin-top: 0;
  }
  .interview__cont:nth-child(even) .interview__box{
    width: calc(64% - 2em);
  }
  .interview__head{
    padding-bottom: 2.5em;
  }
  .interview__head-inner{
    width: 88%;
    max-width: 48em;
    margin: 0 0 0 auto;
  }
  .interview__cont:nth-child(even) .interview__head-inner{
    margin: 0 auto 0 0;
  }
  .interview__ttl{
    margin-top: 0.5em;
  }
  .interview__txt{
    width: 88%;
    max-width: 48em;
    margin: 4em 0 0 auto;
  }
  .interview__cont:nth-child(even) .interview__txt{
    margin: 4em auto 0 0;
  }
  .interview__txt>p{
    margin-top: 0;
  }
}


/* --------------- blog --------------- */
.blog__cont>ul>li>a{
  display: block;
  padding: 3em 0 1.5em;
  border-bottom: 1px solid rgb(38, 43, 51, 0.3);
}
.blog__cont>ul>li>a:hover{
  border-bottom: 1px solid rgb(38, 43, 51, 0.5);
}
.blog__cont>ul>li:first-child>a{
  padding-top: 0;
}
.blog__time{
  display: block;
  opacity: 0.6;
}
.blog__ttl{
  display: flex;
  margin-top: 0.2em;
  transition: 0.4s cubic-bezier(0,.51,.05,1);
}
.blog__cont>ul>li>a:hover .blog__ttl{
  color: #b63535;
}
.blog__ttl::before{
  content: "";
  width: 2px;
  height: 0.9em;
  background-color: rgb(182, 53, 53, 0.8);
  margin: 0.3em 0.6em 0 0;
}
.blog__txt{
  margin-top: 0.5em;
}
.blog__cate{
  margin-top: 5em;
}
.blog__cate-inner{
  padding: 2.5em 0 2.5em;
  width: 90%;
  margin: 0 auto;
}
.blog__cate-ttl{
  display: flex;
  align-items: baseline;
}
.blog__cate-ttl-en{
  margin-right: 0.5em;
  line-height: 1;
}
.blog__cate-list{
  display: flex;
  flex-wrap: wrap;
  margin-top: 1em;
  padding-top: 1.2em;
  border-top: 1px solid rgb(38, 43, 51, 0.3);
}
.blog__cate-list>li{
  width: 50%;
  margin-top: 0.3em;
}
.blog__cate-list>li>a:hover{
  color: #b63535;
}
.blog__detail-ttl{
  margin-top: 0.5em;
}
.blog__detail-txt{
  margin-top: 2em;
  padding-top: 2em;
  border-top: 1px solid rgb(38, 43, 51, 0.3);
}
.blog__detail-txt>*{
  margin-top: 2em;
}
.blog__detail-txt .blog__detail-thumb img{
  max-width: none;
}
.blog__detail-txt img{
  display: block;
  width: 100%!important;
  height: auto!important;
  max-width: 30em;
  margin-top: 3em;
}
.blog__detail-txt .is-style-sme-speech{
  background-color: #e8eaed;
  padding: 1em;
  line-height: 1.6;
}
.blog__detail-txt .is-style-sme-alert-warning{
  padding-left: 1em;
  padding-right: 1em;
  padding-bottom: 1.5em;
  line-height: 1.6;
}
.blog__detail-txt .is-style-sme-alert-remark{
  padding-left: 1em;
  padding-right: 1em;
  padding-bottom: 1.5em;
  line-height: 1.6;
}
.blog__detail-txt .is-style-sme-alert{
  padding-left: 1em;
  padding-right: 1em;
  padding-bottom: 1.5em;
  line-height: 1.6;
}
.blog__detail-txt .is-style-sme-alert-success{
  padding-left: 1em;
  padding-right: 1em;
  padding-bottom: 1.5em;
  line-height: 1.6;
}
.blog__detail-txt .is-style-sme-post-it-narrow{
  padding: 1em 1em 1em 1.5em;
  line-height: 1.6;
}
.blog__detail-txt .is-style-sme-post-it{
  padding: 1em 1em 0;
  line-height: 1.6;
}
.blog__detail-txt .has-small-font-size{
  font-size: 0.75rem!important;
  font-size: clamp(0.75rem, 0.6893rem + 0.2589vw, 1rem)!important;
  letter-spacing: 0.12em;
  line-height: 1.6;
  font-feature-settings: "palt";
  margin-top: 4em;
}
.blog__detail-txt .has-medium-font-size{
  font-size: 0.9375rem!important;
  font-size: clamp(0.9375rem, 0.801rem + 0.5825vw, 1.5rem)!important;
  letter-spacing: 0.12em;
  line-height: 1.6;
  font-feature-settings: "palt";
  margin-top: 4em;
}
.blog__detail-txt .has-large-font-size{
  font-size: 1rem!important;
  font-size: clamp(1rem, 0.818rem + 0.7767vw, 1.75rem)!important;
  letter-spacing: 0.12em;
  line-height: 1.6;
  font-feature-settings: "palt";
  margin-top: 4em;
}
.blog__detail-txt strong{
  font-weight: 600;
}
.blog__detail-txt hr{
  display: block;
  width: 3em;
  margin: 3em auto;
  opacity: 0.8;
}
.blog-other__ttl{
  display: flex;
}
.blog-other__ttl::before{
  content: "";
  width: 2px;
  height: 0.9em;
  background-color: rgb(182, 53, 53, 0.8);
  margin: 0.3em 0.4em 0 0;
}
.blog-other__list{
  margin-top: 2.5em;
}
.blog-other__list>li{
  margin-top: 1.2em;
}
.blog-other__list>li>a{
  display: block;
  padding: 1.6em;
}
.blog-other__list-ttl{
  transition: 0.4s cubic-bezier(0,.51,.05,1);
}
.blog-other__list>li>a:hover .blog-other__list-ttl{
  color: #b63535;
}
.blog-other__list-txt{
  margin-top: 0.8em;
  padding-top: 1.2em;
  border-top: 1px solid rgb(38, 43, 51, 0.3);
}
.blog-other .btn01{
  margin: 4em auto 0;
}
.pager{
  display: flex;
  justify-content: center;
}
.pager span,
.pager a{
  padding: 0.5em;
  transition: 0.4s cubic-bezier(.07,.71,.33,1);
}
.pager .current{
  color: #b63535;
  text-decoration: underline;
}
.pager a:hover{
  color: #b63535;
}
@media (min-width: 640px){
  .blog__detail-txt .is-style-sme-alert-warning,
  .blog__detail-txt .is-style-sme-alert-remark,
  .blog__detail-txt .is-style-sme-alert,
  .blog__detail-txt .is-style-sme-alert-success{
    padding-left: 4.5em;
  }
}
@media (min-width: 768px){
  .blog__cate-list>li{
    width: 32%;
  }
}
@media (min-width: 1024px){
  .blog-section>.wrap-m{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }
  .blog__cont{
    width: 65%;
  }
  .blog__cont>ul>li>a{
    padding: 4em 0 2em;
  }
  .blog__txt{
    margin-top: 1em;
  }
  .blog__cate{
    width: 25%;
    margin-top: 0;
  }
  .blog__cate-inner{
    width: 70%;
  }
  .blog__cate-ttl{
    flex-direction: column;
  }
  .blog__cate-list>li{
    width: 100%;
  }
  .blog-other__list{
    display: flex;
    justify-content: space-between;
    margin-top: 3em;
  }
  .blog-other__list>li{
    width: 32%;
    margin-top: 0;
  }
  .blog-other__list>li>a{
    padding: 3em 2em;
  }
  .blog-other .btn01{
    margin-top: 6em;
  }
}


/* --------------- contact --------------- */
.contact-mv>.wrap-m{
  max-width: 53em;
}
.contact-cont{
  max-width: 53em;
}
.contact-item+.contact-item{
  margin-top: 2.5em;
}
.contact-item__name{
  display: flex;
  align-items: center;
}
.contact-item__name{
  font-weight: 600;
  font-feature-settings: "palt";
}
.contact-item__required{
  color: #edebeb;
  background-color: rgb(182, 53, 53, 0.9);
  line-height: 1.4;
  padding: 0 0.5em;
  border-radius: 1px;
  margin: 0.1em 0 0 0.5em;
}
.contact-item__box{
  margin-top: 0.5em;
}
.contact-item__input01{
  width: 100%;
  font-size: 16px;
  box-sizing: border-box;
  border: 1px solid rgb(0 0 0 / 25%);
  padding: 0.2em 0.4em;
  border-radius: 4px;
}
.contact-item__textarea{
  width: 100%;
  font-size: 16px;
  box-sizing: border-box;
  border: 1px solid rgb(0 0 0 / 25%);
  padding: 0.2em 0.4em;
  border-radius: 4px;
  margin-top: 0.1em;
}
.contact-cont__btn-wrapper{
  text-align: center;
  margin-top: 5em;
}
.contact-cont__submit-btn input{
  position: relative;
  display: block;
  padding: 0.8em 0;
  width: 16em;
  color: #e4e6ea;
  font-weight: 600;
  background-color: #b63535;
  margin: 2em auto 0;
}
@media (min-width: 768px){
  .contact-item{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }
  .contact-item+.contact-item{
    margin-top: 3.5em;
  }
  .contact-item__text{
    width: 14em;
    margin: 7px 1em 0 0;
  }
  .contact-item__box{
    flex: 1;
    margin-top: 0;
  }
}
@media (min-width: 1024px){
}


/* --------------- news --------------- */
.news-list>li>a{
  display: block;
  padding: 1.6em 0 1.6em;
  border-bottom: 1px solid rgb(38, 43, 51, 0.4);
}
.news-list>li>a:hover{
  border-bottom: 1px solid rgb(38, 43, 51, 0.6);
}
.news__ttl{
  transition: 0.4s cubic-bezier(.07,.71,.33,1);
}
.news-list>li>a:hover .news__ttl{
  color: #b63535;
}
.news__time{
  opacity: 0.6;
}
.news-detail__time{
  opacity: 0.6;
}
.news-detail__txt{
  max-width: 40em;
}
.news-detail__txt img{
  display: block;
  max-width: 30em;
  margin-top: 1em;
}
.news-detail .btn01{
  margin: 0 auto;
}
@media (min-width: 768px){
  .news-list>li>a{
    display: flex;
    align-items: baseline;
  }
  .news__time{
    width: 20%;
  }
  .news__ttl{
    flex: 1;
  }
}
@media (min-width: 1024px){
}


/* --------------- animation --------------- */
.header__nav>ul>li>a,
.header__btn-item,
.header__btn,
.lower-mv-s__ttl-jp,
.lower-mv-m__ttl-jp>p,
.lower-mv-m__ttl-en,
.lower-mv-s__ttl>p,
.stock-detail__tag{
  overflow: hidden;
}
.top-mv__ttl01>div,
.top-mv__ttl02>div,
.top-mv__subttl-image img,
.lower-mv-m__ttl-en>p,
.stock-detail__tag>div{
  transform: translateY(100%);
  opacity: 0;
}
.header__btn>ul,
.drawer__btn{
  transform: translateY(-100%);
  opacity: 0;
}
.header__nav>ul>li>a>p,
.header__btn-item>p,
.lower-mv-l__ttl-jp,
.lower-mv-l__ttl-en,
.breadcrumb>ul,
.drawer__btn-txt,
.header__lang{
  transform: translateY(50%);
  opacity: 0;
}
.top-mv__subttl-image img{
  display: block;
}
.top-mv__scroll{
  clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
  opacity: 0;
}
.top-mv__cont-bar,
.top-mv__subttl-circle,
.header__btn-arrow,
.drawer__btn-bar01,
.drawer__btn-bar02,
.lower-mv-l__txt,
.page-index{
  opacity: 0;
}
.lower-mv-l__image img,
.lower-mv-m__image-inner{
  transform: scale(1.1);
}
.lower-mv-l-copy>p>span,
.lower-mv-m__ttl-jp>p>span{
  display: block;
}
.lower-mv-l-copy>p>span>span,
.lower-mv-s__ttl-jp>span,
.lower-mv-m__ttl-jp>p>span>span,
.lower-mv-s__ttl>p>span{
  display: block;
  opacity: 0;
  transform: translateY(100%);
}
.lower-mv-s__line{
  opacity: 0;
  clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
}
/* scroll */
.fade-in{
  opacity: 0;
  transition: 0.8s cubic-bezier(.07,.71,.33,1);
}
.fade-in.fade-in-active{
  opacity: 1;
}
.top-ttl01__en{
  overflow: hidden;
}
.top-ttl01__en>p{
  transform: translateY(100%);
  opacity: 0;
  transition: 0.4s cubic-bezier(.07,.71,.33,1);
}
.ttl-motion-active .top-ttl01__en>p{
  transform: translateY(0);
  opacity: 1;
}
.top-ttl01__jp{
  overflow: hidden;
}
.top-ttl01__jp>h2{
  transform: translateY(100%);
  opacity: 0;
  transition: 0.4s 0.1s cubic-bezier(.07,.71,.33,1);
}
.ttl-motion-active .top-ttl01__jp>h2{
  transform: translateY(0);
  opacity: 1;
}
.top-ttl01::after{
  clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
  opacity: 0;
  transition: 0.1s 0.15s cubic-bezier(.07,.71,.33,1);
}
.ttl-motion-active.top-ttl01::after{
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  opacity: 1;
}
.top-about__copy--jp img{
  transform: translateY(100%);
  opacity: 0;
  transition: 0.4s cubic-bezier(.07,.71,.33,1);
}
.copy-motion-active.top-about__copy--jp img{
  transform: translateY(0);
  opacity: 1;
}
.top-about__copy--jp02 img{
  transition-delay: 0.09s;
}
.top-about__copy--jp03 img{
  transition-delay: 0.18s;
}
.top-about__copy--en,
.top-service__copy--en{
  opacity: 0;
  transition: 0.8s cubic-bezier(.07,.71,.33,1);
}
.top-about__copy--en.ttl-motion-active,
.top-service__copy--en.ttl-motion-active{
  opacity: 0.8;
}
.top-service__copy--jp img{
  transform: translateY(100%);
  opacity: 0;
  transition: 0.4s cubic-bezier(.07,.71,.33,1);
}
.copy-motion-active.top-service__copy--jp img{
  transform: translateY(0);
  opacity: 1;
}
.top-service__copy--jp02 img{
  transition-delay: 0.09s;
}
.top-service__copy--jp03 img{
  transition-delay: 0.18s;
}
.top-service__copy--jp04 img{
  transition-delay: 0.27s;
}
.section-ttl01__en,
.section-ttl01__jp,
.top-news__ttl-en,
.top-news__ttl-jp,
.footer-btn__ttl-en,
.footer-btn__ttl-jp,
.ttl-motion.btn01>a>p,
.about-strong__list-ttl>span,
.service-detail__ttl-en,
.service-detail__ttl-jp{
  overflow: hidden;
}
.section-ttl01__en>p,
.section-ttl01__jp-inner,
.top-news__ttl-en>p,
.top-news__ttl-jp>h2,
.footer-btn__ttl-en>p,
.footer-btn__ttl-jp>h2,
.ttl-motion.btn01>a>p>span,
.about-strong__list-ttl>span>span,
.about-strong__list-num,
.service-detail__ttl-en>span,
.service-detail__ttl-jp>h2{
  transform: translateY(100%);
  opacity: 0;
  transition: 0.4s cubic-bezier(.07,.71,.33,1);
}
.ttl-motion.btn01>a>p>span,
.about-strong__list-ttl>span,
.about-strong__list-ttl>span>span,
.service-detail__ttl-en>span{
  display: block;
}
.section-ttl01__jp-inner,
.top-news__ttl-jp>h2,
.footer-btn__ttl-jp>h2,
.ttl-motion.btn01>a>p>span,
.about-strong__list-ttl>span:nth-child(1)>span,
.service-detail__ttl-en>span{
  transition-delay: 0.15s;
}
.about-strong__list-ttl>span:nth-child(2)>span,
.service-detail__ttl-jp>h2{
  transition-delay: 0.25s;
}
.ttl-motion-active .section-ttl01__en>p,
.ttl-motion-active .section-ttl01__jp-inner,
.ttl-motion-active .top-news__ttl-en>p,
.ttl-motion-active .top-news__ttl-jp>h2,
.ttl-motion-active .footer-btn__ttl-en>p,
.ttl-motion-active .footer-btn__ttl-jp>h2,
.ttl-motion-active.ttl-motion.btn01>a>p>span,
.ttl-motion-active .about-strong__list-ttl>span>span,
.ttl-motion-active .about-strong__list-num,
.ttl-motion-active .service-detail__ttl-en>span,
.ttl-motion-active .service-detail__ttl-jp>h2{
  transform: translateY(0);
  opacity: 1;
}
.section-ttl01__en::after{
  clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
  opacity: 0;
  transition: 0.1s 0.15s cubic-bezier(.07,.71,.33,1);
}
.ttl-motion.btn01,
.service-detail__num{
  clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
  opacity: 0;
  transition: 0.2s cubic-bezier(0,.9,.08,1);
}
.ttl-motion-active .section-ttl01__en::after,
.ttl-motion-active.btn01,
.ttl-motion-active .service-detail__num{
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  opacity: 1;
}
.ttl-motion .btn01-arrow{
  opacity: 0;
  transition: 0.8s 0.3s cubic-bezier(.07,.71,.33,1);
}
.ttl-motion-active .btn01-arrow{
  opacity: 1;
}

.top-prod__cont-inner .swiper.ttl-motion{
  opacity: 0;
  transform: translate(4em,3em);
  transition: 1s cubic-bezier(.07,.71,.33,1);
}
.top-prod__cont-inner .swiper.ttl-motion-active{
  opacity: 1;
  transform: translate(0);
}
.image-motion{
  opacity: 0;
  transition: 0.4s cubic-bezier(.07,.71,.33,1);
}
.image-motion-active{
  opacity: 1;
}

/* Parallax */
.image-pl,
.image-pl02{
  overflow: hidden;
}

@media (min-width: 768px){
}
@media (min-width: 1024px){
}



@media (min-width: 768px){
}
@media (min-width: 1024px){
}