@charset "UTF-8";
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {margin-bottom: 0; font-weight: normal;}
h1,h2,h3,h4 {font-weight: bold;}
p {margin-bottom: 0; line-height: 1.6;}

a:link { text-decoration: none; color: #000;}
a:visited { text-decoration: none; color: #000;}
a:hover { text-decoration: none;}
a:active { text-decoration: none; color: #000;}
a:link,a:visited,a:hover,a:active {transition: all .6s; }

img { width: 100%; height: auto;vertical-align: bottom}

ul { list-style: none; margin: 0; padding: 0;}

html { position: relative; scroll-behavior: smooth;}
body { display: block; margin: 0; padding: 0; font-family: YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif; color: #000000;}

@media (min-width: 769px) {
  a:hover { opacity: .6;}

  body { position: relative; z-index: 1; font-size: 1.1vw; background: #F6F6F7;}
  header { display: flex; justify-content: space-between; /*height: 6.4vw;*/ position: fixed; top: 0; left: 0; z-index: 11; width: 100%; mix-blend-mode: difference;}
  header { width: 8.3vw; margin: 1.8vw 0 0 2.1vw;}
  header .logo { position: relative; display: block; width: 8.3vw; height: 4.3vw; /*background: url(../images/common/logo.png) center no-repeat; background-size: 8.3vw 4.3vw;*/ margin: 0;}
  .logo_after {position: fixed; z-index: 12; width: 8.3vw; margin: 1.8vw 0 0 2.1vw; top: 0; left: 0;}
  .logo_after::after { display: block; content: ""; position: absolute; z-index: 12; width: 8.3vw; height: 4.3vw; background: url(../images/common/logo_after.png) center no-repeat; background-size: 8.3vw 4.3vw; margin: 0;}
  .logo_after:hover { opacity: 1;}
  .logo_first {display: block; position: fixed; z-index: 13; width: 8.3vw; margin: 1.8vw 0 0 2.1vw; top: 0; left: 0; opacity: 1;}
  .logo_first::after { display: block; content: ""; position: absolute; z-index: 13; width: 8.3vw; height: 4.3vw; background: url(../images/common/logo_first.png) center no-repeat; background-size: 8.3vw 4.3vw; margin: 0;}
  .logo_first.none { display: none;}
  #spMenu { display: flex; justify-content: center; align-items: center; width: 4.2vw; height: 4.2vw; transition: all 1s; padding: 0; align-items: center; margin: 0 0 0 0; position: fixed; top: 0; right: 0; background: #C29826; z-index: 100;}
  #spMenu .menu-trigger { position: relative; z-index: 10; width: 4.2vw; height: 4.2vw; display: block; margin: auto; top: 0; bottom: 0; left: 0; right: 0;}
  .menu-trigger,.menu-trigger p { display: block; transition: all .4s; box-sizing: border-box; }
  .menu-trigger.down p { position: absolute; left: 0; width: 1.38vw; height: 3px; background: #fff; font-size: 0.1em; border-radius: 2px;}
  .menu-trigger p { position: absolute; left: 1.25vw; width: 1.38vw; height: 3px; background: #fff; font-size: 0.1em; border-radius: 2px;}
  .menu-trigger p:nth-of-type(1) { top: 1.5vw; width: 0.63vw;}
  .menu-trigger p:nth-of-type(2) { top: 1.9vw; }
  .menu-trigger p:nth-of-type(3) { top: 2.3vw; width: 0.64vw; left: 2.08vw;}
  .menu-trigger.active p:nth-of-type(1) { transform: translateY(1.2vw) rotate(-45deg); top: 0.8vw; height: 2px; width: 2vw;}
  .menu-trigger.active p:nth-of-type(2) { opacity: 0; }
  .menu-trigger.active p:nth-of-type(3) { transform: translateY(-1.05vw) rotate(45deg); top: 3.0vw; left: 1.25vw; height: 2px; width: 2vw;}
  .menu-trigger span { position: absolute; font-size: 10px; color: #B60001; text-align: center; top: 48px; left: 0; width: 100%;}

  .side_menu { display: block; position: fixed; width: 100%; max-width: 950px; height: 100%; top: 0; right: -120%; z-index: 12; -webkit-transition: all 1s; transition: all 1s; background: url(../images/common/sidemenu_bg.png) left bottom no-repeat; background-size: auto;}
  .side_menu.active { right: 0;}
  .side_menu ul { list-style: none; margin: 12.5vw 0 0 17.3vw; padding: 0;}
  .side_menu ul li { width: 100%; margin-bottom: 3.3vw;}
  .side_menu ul li:nth-child(1) { margin-left: 12.0vw;}
  .side_menu ul li:nth-child(2) { margin-left: 9.6vw;}
  .side_menu ul li:nth-child(3) { margin-left: 7.2vw;}
  .side_menu ul li:nth-child(4) { margin-left: 4.8vw;}
  .side_menu ul li:nth-child(5) { margin-left: 2.4vw;}
  .side_menu ul li a { position: relative; display: block; width: max-content; padding: 0 0px; margin: 0; color: #fff;/*color: rgba(255,255,255,0.5);*/ font-size: 100%; text-align: left; font-weight: 700; letter-spacing: 0.2em;}
  .side_menu ul li a:hover { color: #fff; opacity: 1;}
  .side_menu ul li a::before {
    position:absolute;bottom:0;left:0;width:100%;height:1px;content:"";background-color:#fff;transform:scaleX(0);transform-origin:left top;animation-duration:.4s;animation-fill-mode:forwards;animation-timing-function:ease-in-out
  }
  .side_menu ul li a:hover::before {
    animation-name:footerhover-animation;
  }
  @keyframes footerhover-animation{
    0%{
      transform:scaleX(0);
      transform-origin:left top
    }
    45%{
      transform:scale(1);
      transform-origin:left top
    }
    65%{
      transform:scale(1);
      transform-origin:right top
    }
    to{
      transform:scaleX(0);
      transform-origin:right top
    }
  }

  main { width: 100%; background: #F6F6F7;}

  footer { background: #F6F6F7; position: relative; z-index: 2;}
  footer .footer_top { padding: 4.3vw 0 3.8vw;}
  footer .footer_top .inner { display: flex; justify-content: space-between; width: 66vw;/* max-width: 960px;*/ margin: 0 auto;}
  footer .footer_top .inner .cell { width: 15%;}
  footer .footer_top .inner .cell p { position: relative; background: url(../images/common/arrow01.png) right center no-repeat; background-size: 16px 16px; margin: 0 0 1.38vw;}
  footer .footer_top .inner .cell p a { font-size: 100%; font-weight: 600; color: #000; display: block; width: 100%;}
  footer .footer_top .inner .cell ul { font-size: 87.5%;}
  footer .footer_top .inner .cell ul li { margin: 0 0 1.0vw;}
  footer .footer_top .inner .cell ul li:last-child { margin: 0 0 0;}
  footer .footer_top .inner .cell ul li a { color: #797364;}
  footer .footer_top .inner .sp_cell { display: none;}
  footer .footer_top .inner .cell_right { width: 20%;}
  footer .footer_top .inner .cell_right .footer_contact { display: flex; justify-content: center; align-items: center; width: 100%; height: 4.4vw; margin: 0 0 1.6vw; border: 2px solid #000; font-size: 100%; color: #000; font-family: "Montserrat", sans-serif; font-weight: 700;}
  footer .footer_top .inner .cell_right ul { display: flex;}
  footer .footer_top .inner .cell_right ul li { width: 1.6vw; margin-right: 1.25vw;}
  footer .footer_btm { background: #000;}
  footer .footer_btm .inner { display: flex; justify-content: space-between; align-items: center; width: 66vw;/* max-width: 960px;*/ height: 3.6vw; margin: 0 auto; }
  footer .footer_btm .inner ul { display: flex; font-size: 75%;}
  footer .footer_btm .inner ul li { margin: 0 1.4vw 0 0; padding: 0 1.4vw 0 0; border-right: 1px solid #fff;}
  footer .footer_btm .inner ul li:last-child { margin: 0 0vw 0 0; padding: 0; border-right: none;}
  footer .footer_btm .inner ul li a { color: #fff;}
  footer .footer_btm .inner .copyright { font-size: 75%; text-align: right; color: #797364; line-height: 1; margin: 0;}


  /* index */
  .kv { position: relative; margin: 0 0 17.3vw; display: block; min-height: 50vw;}
  .kv .scroll { position: absolute; display: block; width: 10px; top: 40vw;/*bottom: 12vw;*/ left: 7.6vw; z-index: 3;}
  .kv .scroll span { display: block; position: relative; z-index: 3; padding-bottom: 70px;}
  .scrolldown1 span::after{ content: ""; position: absolute; top: 6.3vw; left: 0; right: 0; margin: auto; width: 1px; height: 50px; background: #000; animation: pathmove 1.4s ease-in-out infinite; opacity:0;}
  @keyframes pathmove{
    0%{
      height:0;
      top:6.3vw;
      opacity: 0;
    }
    30%{
      height:50px;
      opacity: 1;
    }
    100%{
      height:0;
      top:10.3vw;
      opacity: 0;
    }
  }
  .kv .img { position: relative; display: block;}
  .kv .img .first_kv { position: absolute; top: 0; left:0; z-index: 2; -moz-animation: cssAnimation 0s ease-in 5.6s forwards; -webkit-animation: cssAnimation 0s ease-in 5.6s forwards; -o-animation: cssAnimation 0s ease-in 5.6s forwards; animation: cssAnimation 0s ease-in 5.6s forwards; -webkit-animation-fill-mode: forwards; animation-fill-mode: forwards;}
  @keyframes cssAnimation {
    0% {
      opacity: 1;
    }
    90% {
      opacity: 1;
    }
    100% {
      opacity: 0;
    }
  }
  .kv .img #videokey { position: relative; z-index: 1;}
  .kv video {display: block; width: 100%; height: auto;/*width: auto; height: 100vh;*/ margin: 0 0 0 auto;}
  .kv .ttl { position: absolute; /*top: 13.6vw;*/top: 21.8vh; left: 8.3vw; /*width: 25.9vw; height: max-content;*/width: auto; height: 19.8vh; font-size: 237.5%; font-weight: 700; line-height: 2.6; margin: 0; }
  .kv .ttl img { width: auto; height: 100%;}

  .home .index_ttl h2 { font-size: 875%; font-family: "Montserrat", sans-serif; font-weight: 700; line-height: 1; margin: 0; letter-spacing: 0.05em;}
  .home .index_ttl p { font-size: 87.5%; font-weight: 600; line-height: 1; margin: 0; letter-spacing: 0.1em;}

  .home .viewmore { position: relative; overflow: hidden; display: block; width: 8.4vw; font-size: 100%; line-height: 1; font-family: "Montserrat", sans-serif; font-weight: 700; color: #000; padding: 1.0vw 0 1.0vw 0.5vw;/*padding: 1.0vw 0 1.0vw;*/ border-bottom: 1px solid #000; /*background: url(../images/common/arrow01.png) right center no-repeat; background-size: 1.1vw 1.1vw;*/ transition: ease .2s;}
  .home .viewmore::after { display: block; position: absolute; content: ""; right: 0; top: 0; bottom: 0; margin: auto; width: 1.1vw; height: 1.1vw; background: url(../images/common/arrow01.png) right center no-repeat; background-size: 1.1vw 1.1vw;}
  .home .viewmore:hover::after { background: url(../images/common/arrow02.png) right center no-repeat; background-size: 1.1vw 1.1vw; z-index: 4;}
  .home .viewmore span { position: relative; z-index: 3; color:#000;}
  .home .viewmore:hover { opacity: 1;}
  .home .viewmore:hover span{ color:#fff;}
  .bgleft:before { content: ''; position: absolute; top: 0; left: 0; z-index: 2; background:#000; width: 100%; height: 100%; transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s; transform: scale(0, 1); transform-origin: right top;}
  .bgleft:hover:before{ transform-origin:left top; transform:scale(1, 1);}


  div.smoothText { overflow: hidden; display: block;}
  div.smoothTextTrigger{ transition: .8s ease-in-out; transform: translate3d(0,100%,0) skewY(12deg); transform-origin: left; display: block;}
  div.smoothTextTrigger.smoothTextAppear{ transform: translate3d(0,0,0) skewY(0);}

  .cScroll__section_headline { position: relative; overflow: hidden; display: block; width: max-content;}
  .cScroll__section_headline::after { content: ""; position: absolute; top: 0; left: 0; z-index: 1; width: 100%; height: 100%; background-color: currentColor; transform: translateX(-151%) skewX(-45deg); transition: transform .96s cubic-bezier(0.165, 0.84, 0.44, 1);}
  .cScroll__section_headline.is-active::after { transform: translateX(151%) skewX(-45deg);}


  .section01 { display: block; background: url(../images/index/section01_bg.png) bottom center no-repeat; background-size: 100% auto; margin: 0 auto 13.3vw;}
  .section01 .index_ttl div.cScroll__section_headline { display: flex; justify-content: center; align-items: flex-end; margin: 0 auto 7.6vw;}
  .home .section01 .index_ttl p { margin: 0 0 1.2vw 2.5vw;}
  .section01 .flcell { display: flex; justify-content: space-between; width: 66vw;/* max-width: 960px;*/ margin: 0 auto;}
  .section01 .flcell .fleft { width: 56.25%;}
  .section01 .flcell .fright { width: 40%; padding: 4.8vw 0 0; color: #fff;}
  .section01 .flcell .fright h3 { display: flex; flex-direction: column; color: #fff; font-size: 175%; margin: 0 0 2.7vw;}
  .section01 .flcell .fright h3 span { position: relative; z-index: 2; display: block; width: max-content; padding: 0.8vw 0.5vw 0.8vw 1.0vw; letter-spacing: 0.1em; line-height: 1; overflow: hidden;}
  .section01 .flcell .fright h3 span::after {
    display: block;
    position: absolute;
    z-index: -1;
    left: 0;
    top: 0;
    content: "";
    background: #797364;
    width: 100%;
    height: 100%;
    animation-name: test_box_slide;
    animation-duration:.5s;
    animation-fill-mode: forwards;
    transform: translateX(-100%);
  }
  @keyframes test_box_slide {
  　0% {
  　　transform: translateX(-100%);
    }
    100% {
    transform: translateX(0%);
    }
  }
  .section01 .flcell .fright p { font-size: 100%; line-height: 2.0; margin: 0 0 5.5vw;}
  .home .section01 .viewmore { color: #fff; padding: 1.0vw 0 1.0vw 0.5vw;/*padding: 1.0vw 0 1.0vw;*/ margin: 0 0 0 auto; border-bottom: 1px solid #fff; /*background: url(../images/common/arrow02.png) right center no-repeat; background-size: 1.1vw 1.1vw;*/}
  .home .section01 .viewmore::after { display: block; position: absolute; content: ""; right: 0; top: 0; bottom: 0; margin: auto; width: 1.1vw; height: 1.1vw; background: url(../images/common/arrow02.png) right center no-repeat; background-size: 1.1vw 1.1vw;}
  .home .section01 .viewmore:hover::after { background: url(../images/common/arrow01.png) right center no-repeat; background-size: 1.1vw 1.1vw; z-index: 4;}
  .home .section01 .viewmore span { color:#fff;}
  .home .section01 .viewmore:hover span{ color:#000;}
  .home .section01 .bgleft:before { background:#fff;}

  .fadeleft{
    animation-name:fadeleftAnime;
    animation-duration:0.2s;
    animation-fill-mode:forwards;
    opacity:0;
  }
  .fadeleft_txt{
    animation-name:fadeleftAnime;
    animation-duration:0.5s;
    animation-delay: 0.5s;
    animation-fill-mode:forwards;
    opacity:0;
  }
  .section02 .fadeleft_txt{
    animation-delay: 1.8s;
  }
  @keyframes fadeleftAnime{
    from {
      opacity: 0;
      transform: translateX(-100px);
    }

    to {
      opacity: 1;
      transform: translateX(0);
    }
  }
  .fadeleftTrigger{
      opacity: 0;
  }
  .fadeleftTrigger_txt{
      opacity: 0;
  }
  .fadeleft02{
    animation-name:fadeleftAnime02;
    animation-duration:0.4s;
    animation-delay: 0.2s;
    animation-fill-mode:forwards;
    opacity:0;
  }
  .fadeleft04{
    animation-name:fadeleftAnime02;
    animation-duration:0.2s;
    animation-fill-mode:forwards;
    opacity:0;
  }
  @keyframes fadeleftAnime02{
    from {
      opacity: 0;
      transform: translateX(-100px);
    }

    to {
      opacity: 1;
      transform: translateX(0);
    }
  }
  .fadeleftTrigger02{
      opacity: 0;
  }

  .section02 { display: block; margin: 0 auto 17vw;}
  .section02 .index_ttl div.cScroll__section_headline { display: flex; justify-content: center; align-items: flex-end; flex-direction: row-reverse; margin: 0 auto 7.6vw;}
  .home .section02 .index_ttl p { margin: 0 2.5vw 1.2vw 0;}
  .section02 .inner { position: relative;}
  .section02 .inner .bg { position: absolute; left: 0; top: 0; width: 52.7%;}
  .section02 .inner .flcell { position: relative; z-index: 2; display: flex; justify-content: space-between; width: 66vw;/* max-width: 960px;*/ margin: 0 auto;}
  .section02 .inner .flcell .fleft { position: relative;/*width: 48%;*/ width: 31.9vw; height: 31.25vw; margin: 5.4vw 0 0;}
  .section02 .inner .flcell .fleft .cir { width: 19.4vw; height: 19.4vw; background: none; border: 2px solid #fff; border-radius: 50%; opacity: 0; position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto; opacity: 0;}
  .section02 .inner .flcell .fleft .cir_wht { width: 9.7vw; height: 9.7vw; background: #fff; border-radius: 50%; opacity: 0; position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto; opacity: 0;}
  .section02 .inner .flcell .fleft .cir01 { position: absolute; top: 0; left: 0; right: 0; margin: auto; width: 19.4vw; height: 19.4vw;}
  .section02 .inner .flcell .fleft .txt01 { position: absolute; top: 2.4vw; left: 0; right: 0; margin: auto; width: 9.4vw; opacity: 0;}
  .section02 .inner .flcell .fleft .cir02 { position: absolute; bottom: 0; left: 0; width: 19.4vw; height: 19.4vw;}
  .section02 .inner .flcell .fleft .txt02 { position: absolute; bottom: 4.8vw; left: 1.9vw; width: 9.8vw; opacity: 0;}
  .section02 .inner .flcell .fleft .cir03 { position: absolute; bottom: 0; right: 0; width: 19.4vw; height: 19.4vw;}
  .section02 .inner .flcell .fleft .txt03 { position: absolute; bottom: 4.8vw; right: 3.2vw; width: 7.08vw; opacity: 0;}
  .section02 .inner .flcell .fleft .vcd { position: absolute; /*top: 0; bottom: 0;*/top: 12.0vw; left: 0; right: 0; margin: auto; width: 9.7vw; height: 9.7vw;}
  .section02 .inner .flcell .fleft .vcd_logo { position: absolute; /*top: 0; bottom: 0;*/top: 15.5vw; left: 0; right: 0; margin: auto; width: 5.5vw; height: 2.8vw; opacity: 0;}
  .fadeIn01_01.active{
    animation: expandCircle 1s forwards;
    animation-duration:0.3s;
    animation-delay: 0.3s;
  }
  .fadeIn02_01.active{
    animation: expandCircle 1s forwards;
    animation-duration:0.3s;
    animation-delay: 0.6s;
  }
  .fadeIn03_01.active{
    animation: expandCircle 1s forwards;
    animation-duration:0.3s;
    animation-delay: 0.9s;
  }
  @keyframes expandCircle {
    0% {
      width: 0;
      height: 0;
      opacity: 0;
    }
    100% {
      width: 19.4vw;
      height: 19.4vw;
      opacity: 1;
    }
  }
  .fadeIn01_02.active{
  animation-name:fadeInAnime01_02;
  animation-duration:0.3s;
  animation-delay: 0.3s;
  animation-fill-mode:forwards;
  opacity:0;
  }
  .fadeIn02_02.active{
  animation-name:fadeInAnime01_02;
  animation-duration:0.3s;
  animation-delay: 0.6s;
  animation-fill-mode:forwards;
  opacity:0;
  }
  .fadeIn03_02.active{
  animation-name:fadeInAnime01_02;
  animation-duration:0.3s;
  animation-delay: 0.9s;
  animation-fill-mode:forwards;
  opacity:0;
  }
  .fadeIn_vcd_logo.active{
  animation-name:fadeInAnime01_02;
  animation-duration:0.3s;
  animation-delay: 1.6s;
  animation-fill-mode:forwards;
  opacity:0;
  }
  @keyframes fadeInAnime01_02{
    from {
      opacity: 0;
    }

    to {
      opacity: 1;
    }
  }
  .fadeIn_vcd.active{
    animation: expandCircle02 1s forwards;
    animation-duration:0.3s;
    animation-delay: 1.2s;
  }
  @keyframes expandCircle02 {
    0% {
      width: 0;
      height: 0;
      opacity: 0;
    }
    100% {
      width: 9.7vw;
      height: 9.7vw;
      opacity: 1;
    }
  }

  .section02 .inner .flcell .fright { width: 40%;}
  .section02 .inner .flcell .fright h3 { font-size: 175%; font-weight: 600; line-height: 2.0; margin: 0 0 3.0vw;}
  .section02 .inner .flcell .fright h3 span { color: #C29826;}
  .section02 .inner .flcell .fright p { font-size: 100%; line-height: 2.0; margin: 0 0 2.5vw;}
  .section02 .inner .flcell .fright p:last-of-type { margin: 0 0 5.2vw;}
  .home .section02 .viewmore { margin: 0 0 5.2vw auto;}

  .section03 { display: block; margin: 0 auto 16.5vw;}
  .section03 .index_ttl { padding: 6.0vw 0 9.3vw; background: url(../images/index/section03_bg.png) right bottom no-repeat; background-size: 23vw 23vw;}
  .section03 .index_ttl .inner div.cScroll__section_headline { display: flex; justify-content: flex-start; align-items: flex-end; width: 66vw;/* max-width: 960px;*/ margin: 0 auto 0vw;}
  .home .section03 .index_ttl p { margin: 0 0 1.2vw 2.5vw;}
  .section03 .btm { margin-top: -0.1vw; padding: 8.0vw 0 10.7vw; background: url(../images/index/section03_btm_bg.jpg) bottom center no-repeat, #000; background-size: 100% auto, 100%; color: #fff;}
  .section03 .btm .inner { display: block; width: 68vw; margin: 0 auto 0vw;}
  .section03 .btm .inner p { font-size: 100%; text-align: center; line-height: 2.0; margin: 0 auto 5.5vw;}
  .section03 .btm .inner .img_cell { display: flex; align-items: center; margin: 0 auto 1.0vw;}
  .section03 .btm .inner .img_cell .box { display: flex; justify-content: center; align-items: center; flex-direction: column; width: 32.25%; height: 14.8vw; padding: 0vw 0vw; position: relative;}
  .section03 .btm .inner .img_cell .box .bg { z-index: 1; position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; width: 100%; height: 14.8vw;}
  .section03 .btm .inner .img_cell .box .bg img { display: block; transition: all .2s; transform: scale(0, 1); transform-origin:center;}
  .section03 .btm .inner .img_cell .box .bg:nth-of-type(3) img {transition: all .2s ease 0.1s;}
  .section03 .btm .inner .img_cell .box .bg:nth-of-type(5) img {transition: all .2s ease 0.2s;}
  .section03 .btm .inner .img_cell .box .bg.active img { transform:scale(1, 1);}

  .section03 .btm .inner .img_cell .box:nth-of-type(1) { margin: 0 -1% 0 0;}
  .section03 .btm .inner .img_cell .box:nth-of-type(3) { margin: 0 -1% 0 -1%;}
  .section03 .btm .inner .img_cell .box:nth-of-type(5) { margin: 0 0 0 -1%;}
  .section03 .btm .inner .img_cell .box .h3_01 { position: relative; z-index: 2; text-align: center; font-size: 150%; margin: 0 auto 1.5vw; font-family: "Barlow", sans-serif; font-weight: 500; color: #000;}
  .section03 .btm .inner .img_cell .box .h3_02 { position: relative; z-index: 2; text-align: center; font-size: 150%; margin: 0 auto 1.5vw; font-family: "Barlow", sans-serif; font-weight: 500; color: #000;/*color: #C29826;*/}
  .eachTextAnime span{opacity: 0;}
  .eachTextAnime.appeartext span{ animation:text_anime_on 1.0s ease-out forwards;}
  @keyframes text_anime_on {
    0% {opacity:0;}
    100% {opacity:1;}
  }
  .section03 .btm .inner .img_cell .box .c_img { position: relative; z-index: 2; width: 80%; margin: 0 auto; opacity: 0;}
  .fadeLeft_txt.active {
    animation-name:fadeLeft_txtAnime;
    animation-delay: 0.2s;
    animation-duration:0.2s;
    animation-fill-mode:forwards;
    opacity: 0;
  }
  .h3_02.fadeLeft_txt.active {
    animation-name:fadeLeft_txtAnime02;
    animation-delay: 0.2s;
    animation-duration:0.2s;
    animation-fill-mode:forwards;
    opacity: 0;
  }
  .fadeLeft03.active {
    animation-name:fadeLeft03Anime;
    animation-delay: 0.4s;
    animation-duration:0.2s;
    animation-fill-mode:forwards;
    opacity: 0;
  }
  @keyframes fadeLeft03Anime{
    from {
      opacity: 0;
      transform: translateX(-20px);
    }

    to {
      opacity: 1;
      transform: translateX(0);
    }
  }
  @keyframes fadeLeft_txtAnime{
    from {
      opacity: 0;
      transform: translateX(-10px);
    }

    to {
      opacity: 1;
      transform: translateX(0);
    }
  }
  @keyframes fadeLeft_txtAnime02{
    from {
      opacity: 0;
      transform: translateX(-10px);
    }

    to {
      opacity: 1;
      transform: translateX(0);
      color: #C29826;
    }
  }

  .section03 .btm .inner .img_cell .kakeru { position: relative; width: 3.4vw; height: 3.4vw; z-index: 2;}
  .section03 .btm .inner .img_cell .kakeru:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    background: url(../images/index/section03_kakeru.png) no-repeat;
    background-size: 100% 100%;
    width: 3.4vw;
    height: 3.4vw;
    transition: transform .3s cubic-bezier(0.8, 0, 0.2, 1) 0s;
    transform: scale(0, 0);
    transform-origin:center;
  }
  .section03 .btm .inner .img_cell .kakeru.active:before {
    animation-name:fadeSpreadAnime;
    animation-delay: 0.6s;
    animation-duration:0.2s;
    animation-fill-mode:forwards;
    opacity: 0;
  }
  @keyframes fadeSpreadAnime{
    from {
      opacity: 0;
      transform: scale(0, 0);
    }

    to {
      opacity: 1;
      transform:scale(1, 1);
    }
  }
  .section03 .btm .inner .arrow { width: 21.3vw; margin: 0 auto 4.8vw;}
  .section03 .btm .inner .arrow .img_arrow { width: 0.4vw; height: 3.8vw; margin: 0 auto; position: relative; z-index: 2; overflow: hidden;}
  .section03 .btm .inner .arrow .img_arrow::before {
    position: absolute;
    content: '';
    z-index: 1;
    background: url(../images/index/section03_img04_01.png) no-repeat;
    background-size: 100% 100%;
    width: 0.4vw;
    height: 3.8vw;
    transition: all .3s;
    transform: scale(1, 0);
    transform-origin: top;
    opacity: 0;
  }
  .section03 .btm .inner .arrow .img_arrow.active::before {
    animation-name:img-wrap;
    animation-delay: 0.8s;
    animation-duration:0.2s;
    animation-fill-mode:forwards;
    opacity: 0;
  }
  @keyframes img-wrap {
    0% {
      transform: scale(1, 0);
      opacity: 0;
    }
    100% {
      transform: scale(1, 1);
      opacity: 1;
    }
  }
  .section03 .btm .inner .arrow .img_bnr { width: 100%; margin: -0.3vw auto 0; position: relative; z-index: 1; opacity: 0;}
  .home .section03 .viewmore { color: #fff; padding: 1.0vw 0 1.0vw 0.5vw; margin: 0 auto 0; border-bottom: 1px solid #fff; /*background: url(../images/common/arrow02.png) right center no-repeat; background-size: 1.1vw 1.1vw;*/}
  .home .section03 .viewmore::after { display: block; position: absolute; content: ""; right: 0; top: 0; bottom: 0; margin: auto; width: 1.1vw; height: 1.1vw; background: url(../images/common/arrow02.png) right center no-repeat; background-size: 1.1vw 1.1vw;}
  .home .section03 .viewmore:hover::after { background: url(../images/common/arrow01.png) right center no-repeat; background-size: 1.1vw 1.1vw; z-index: 4;}
  .home .section03 .viewmore span { color:#fff;}
  .home .section03 .viewmore:hover span{ color:#000;}
  .home .section03 .bgleft:before { background:#fff;}

  .delay-time00.active{ animation-delay: 1.0s;}
  .delay-time02.active{ animation-delay: 2.8s;}
  .delay-time04.active{ animation-delay: 3.0s;}
  .delay-time06.active{ animation-delay: 3.2s;}
  .delay-time08.active{ animation-delay: 3.4s;}
  .delay-time10.active{ animation-delay: 3.6s;}
  .delay-time12.active{ animation-delay: 3.8s;}
  .delay-time14.active{ animation-delay: 4.0s;}
  .delay-time16.active{ animation-delay: 4.2s;}
  .delay-time18.active{ animation-delay: 4.4s;}
  .delay-time20.active{ animation-delay: 4.6s;}

  .index_news { margin: 0 auto 17.5vw; border: 2px solid #000; width: 55.6vw; padding: 5.2vw;}
  .index_news .flcell { display: flex; justify-content: space-between;}
  .index_news .flcell .fleft { width: 17.5%;}
  .index_news .flcell .fleft h2 { font-size: 250%; font-family: "Montserrat", sans-serif; font-weight: 700; line-height: 1; margin: 0 0 1.25vw; letter-spacing: 0.05em;}
  .index_news .flcell .fleft p { font-size: 87.5%; font-weight: 600; line-height: 1; margin: 0 0 4.1vw; letter-spacing: 0.1em;}
  .index_news .flcell .fleft a { position: relative; overflow: hidden; display: flex; justify-content: center; align-items: center; background: #fff; width: calc(100% - 2.0vw); padding: 0 0 0 2.0vw; height: 3.2vw; font-family: "Montserrat", sans-serif; font-weight: 700; transition: ease .2s;}
  .index_news .flcell .fleft a::after { display: block; position: absolute; content: ""; left: 3.2vw; top: 0; bottom: 0; margin: auto; width: 0.8vw; height: 0.7vw; background: url(../images/index/icon_all.png) no-repeat; background-size: 100% 100%;}
  .index_news .flcell .fleft a:hover::after { background: url(../images/index/icon_all_hover.png) no-repeat; background-size: 100% 100%; z-index: 4;}
  .index_news .flcell .fleft a span { position: relative; z-index: 3; color:#000;}
  .index_news .flcell .fleft a:hover { opacity: 1;}
  .index_news .flcell .fleft a:hover span{ color:#fff;}

  .index_news .flcell .fright { width: 70%;}
  .index_news .flcell .fright ul { }
  .index_news .flcell .fright ul li { /*border-bottom: 1px solid #DDDDDD;*/}
  .index_news .flcell .fright ul li a { position: relative; display: block; padding: 2.2vw 0 2.2vw;}
  .index_news .flcell .fright ul li:first-child a { padding: 0vw 0 2.2vw;}
  .index_news .flcell .fright ul li:last-child a { border-bottom: none; padding: 2.2vw 0 2.2vw;}
  .index_news .flcell .fright ul li a:after { position: absolute; bottom: 0; left: 0; width: 100%; height: 1px; content: ""; background-color: #DDDDDD; transform: scaleX(1); animation-timing-function: cubic-bezier(.85,0,.15,1); animation-timing-function: var(--ease-in-out);}
  .index_news .flcell .fright ul li a:hover { opacity: 1;}
  .index_news .flcell .fright ul li a:hover:after { opacity: 1; animation: linehover-animation-out .4s forwards, linehover-animation-in .4s .4s forwards; background-color: #000;}
  @keyframes linehover-animation-out{0%{transform:scaleX(1);transform-origin:right}to{transform:scaleX(0);transform-origin:right}}
  @keyframes linehover-animation-in{0%{transform:scaleX(0);transform-origin:left}to{transform:scaleX(1);transform-origin:left}}
  .index_news .flcell .fright ul li .news_info { display: flex; align-items: center; margin: 0 0 1.0vw;}
  .index_news .flcell .fright ul li .news_info .category { margin: 0; display: block; width: max-content; background: #000; padding: 0.6vw 1.0vw; margin: 0 1.0vw 0 0; color: #fff; font-size: 75%; border-radius: 2vw; line-height: 1;}
  .index_news .flcell .fright ul li .news_info .date { margin: 0; font-size: 75%; line-height: 1; color: #797364; font-family: "Montserrat", sans-serif; font-weight: 700;}
  .index_news .flcell .fright ul li .title { position: relative; background: url(../images/common/arrow01.png) right center no-repeat; background-size: 1.1vw 1.1vw; padding-right: 2.0vw;}
  .index_news .flcell .fright ul li a .title { position: relative; color: #000;}

  .section04 { display: block; margin: 0; background: url(../images/index/section04_bg_tp.jpg) left top no-repeat, url(../images/index/section04_bg.png) right bottom no-repeat, #fff; background-size: 100% 5.5vw, 45.8% auto, 100%; padding: 0 0 8.75vw;}
  .section04 .inner { width: 66vw;/* max-width: 960px;*/ margin: 0 auto;}
  .section04 .inner .index_ttl div.cScroll__section_headline { display: flex; justify-content: flex-start; flex-direction: column; width: 100%; margin: 0 auto 7.7vw;}
  .section04 .inner ul.list_section04 { display: flex; justify-content: space-between; width: 100%; margin: 0 auto 9.7vw;}
  .section04 .inner ul.list_section04 li { position: relative; width: 42%;}
  .section04 .inner ul.list_section04 li .img { position: relative; z-index: 1; display: block; width: 100%;}
  .section04 .inner ul.list_section04 li .img img { width: 100%; height: 27.7vw; object-fit: cover;}
  .section04 .inner ul.list_section04 li .txtcell { z-index: 2; position: absolute; right: -2.7vw; bottom: -5.7vw; width: 23.6vw; height: 13.8vw; background: url(../images/index/section04_txtcell.png) no-repeat; background-size: 100% 100%; color: #fff;}
  .section04 .inner ul.list_section04 li .txtcell .cell { display: flex; justify-content: center; flex-direction: column; height: 13.8vw; margin: 0 3.8vw 0 6.8vw;}
  .section04 .inner ul.list_section04 li .txtcell .cell .message { font-size: 100%; line-height: 2.0; margin: 0 0 1.5vw; font-weight: 600;}
  .section04 .inner ul.list_section04 li .txtcell .cell .name { font-size: 75%; line-height: 1.0; margin: 0 0 0vw; color: #fff;}
  .section04 .inner ul.list_section04 li .txtcell .cell .name span { font-size: 116%; margin-right: 1.0vw; font-weight: 600;}
  .section04 .inner ul.list_section04 li .txtcell .cell .name.job { margin: 0 0 0.5vw;}

  .section05 { position: relative; z-index: 2; display: block; margin: 0; background: url(../images/index/section05_bg.jpg) center no-repeat; background-size: cover; padding: 0; transition: all .6s; margin-top: -2px;}
  .section05 a { display: block; width: 100%; height: 100%;}
  .section05 a:hover { opacity: 1;}
  .section05 .flcell { display: flex; align-items: center;}
  .section05 .flcell .fleft { position: relative; width: 47.2%; transition: all .6s;}
  .section05 .flcell .fleft::after { display: block; content: ""; position: absolute; z-index: 2; background: url(../images/index/section05_fleft_after.png) no-repeat; background-size: 100% 100%; width: 100%; height: 100%; left: 0; top: 0; transition: all .6s;}
  .section05:hover .flcell .fleft::after { animation: fadeOut 1.5s forwards;}
  @keyframes fadeOut {
    0% {
      opacity: 1;
    }
    100% {
      opacity: 0;
    }
  }
  .section05 .flcell .fright { position: relative; width: 30vw; margin-left: 10vw; color: #fff;}
  .section05 .flcell .fright .index_ttl { margin: 0 0 3vw;}
  .section05 .flcell .fright .index_ttl h2 { font-size: 750%; margin: 0 0 1.5vw; font-family: "Montserrat", sans-serif; font-weight: 700; letter-spacing: 0.05em;}
  .section05 .flcell .fright .index_ttl h2 span { font-size: 50%;}
  .section05 .flcell .fright .index_ttl p { font-size: 87.5%;}
  .section05 .flcell .fright .txt { font-size: 100%; line-height: 2.0; margin: 0 0 5.5vw;}
  .home .section05 .viewmore,
  .under_ .section05 .viewmore { position: relative; width: 8.4vw; color: #fff; padding: 1.0vw 0 1.0vw 0.5vw; margin: 0 0 0 auto; border-bottom: 1px solid #fff; /*background: url(../images/common/arrow02.png) right center no-repeat; background-size: 1.1vw 1.1vw;*/}
  .home .section05 .viewmore::after,
  .under_ .section05 .viewmore::after { display: block; position: absolute; content: ""; right: 0; top: 0; bottom: 0; margin: auto; width: 1.1vw; height: 1.1vw; background: url(../images/common/arrow02.png) right center no-repeat; background-size: 1.1vw 1.1vw;}
  .home .section05 .viewmore span,
  .under_ .section05 .viewmore span { position: relative; z-index: 2; color:#fff;}
  .home .section05 .bgleft:before,
  .under_ .section05 .bgleft:before { background:#fff;}

  /* under */
  .under_ main { position: relative;}
  .under_ main::after { position: fixed; right: 0; top: 0; z-index: 1; display: block; content: ""; width: 47.9vw; height: 29.7vw; background: url(../images/common/under_bg.png) right top no-repeat; background-size: 47.9vw 29.7vw;}
  .under_ .pgttl { position: relative; z-index: 2; display: flex; flex-direction: column; justify-content: center; width: 66vw;/* max-width: 960px;*/ height: 29.7vw; margin: 0 auto;}
  .under_ .pgttl.pgttl_404 { display: flex; flex-direction: column; justify-content: flex-end; align-items: center; width: 66vw;/* max-width: 960px;*/ height: 40vw; margin: 0 auto;}
  .under_ .pgttl h1 { margin: 0; font-size: 687.5%; font-family: "Montserrat", sans-serif; font-weight: 700; line-height: 1; letter-spacing: 0.05em;}
  .privacy-policy .pgttl h1,
  .security-policy .pgttl h1,
  .members_detail .pgttl h1,
  .news_detail .pgttl h1 { font-size: 375%;}
  .under_ .pgttl p { margin: 2.0vw 0 0; font-size: 125%; font-weight: 600; line-height: 1; letter-spacing: 0.2em;}
  .under_ .pgttl.pgttl_404 h1 { margin: 0 auto; font-size: 1250%; font-family: "Barlow", sans-serif; font-weight: 700; line-height: 1; letter-spacing: 0em; text-align: center;}
  .under_ .pgttl.pgttl_404 p { margin: 2.0vw 0 4.12vw; font-size: 300%; font-family: "Montserrat", sans-serif; font-weight: 700; line-height: 1; text-align: center;}
  .under_ .viewmore { position: relative; overflow: hidden; display: block; width: max-content; font-size: 100%; line-height: 1; font-family: "Montserrat", sans-serif; font-weight: 700; color: #000; padding: 1.0vw 2.4vw 1.0vw 0.5vw; border-bottom: 1px solid #000; background: url(../images/common/arrow01.png) right center no-repeat; background-size: 1.1vw 1.1vw; transition: ease .2s;}
  .under_ .viewmore::after { display: block; position: absolute; content: ""; right: 0; top: 0; bottom: 0; margin: auto; width: 1.1vw; height: 1.1vw; background: url(../images/common/arrow01.png) right center no-repeat; background-size: 1.1vw 1.1vw;}
  .under_ .viewmore:hover::after { background: url(../images/common/arrow02.png) right center no-repeat; background-size: 1.1vw 1.1vw; z-index: 4;}
  .under_ .viewmore span { position: relative; z-index: 3; color:#000;}
  .under_ .viewmore:hover { opacity: 1;}
  .under_ .viewmore:hover span{ color:#fff;}
  .under_ .bgleft:before { content: ''; position: absolute; top: 0; left: 0; z-index: 2; background:#000; width: 100%; height: 100%; transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s; transform: scale(0, 1); transform-origin: right top;}
  .under_ .bgleft:hover:before{ transform-origin:left top; transform:scale(1, 1);}


  .breadcrumb { position: relative; z-index: 2; width: 66vw;/* max-width: 960px;*/ margin: 0 auto 10.4vw; display: flex; flex-wrap:wrap;}
  .breadcrumb li { margin: 0 2.08vw 1.0vw 0; color: #797364; font-size: 75%; line-height: 1;}
  .breadcrumb li a { position: relative; color: #000; padding: 0 2.08vw 0 0; line-height: 1;}
  .breadcrumb li a::after { display: block; content: "―"; position: absolute; right: 0; top: 0; bottom: 0; margin: auto; }

  .under_cell { position: relative; z-index: 2; display: block; width: 66vw; margin: 0 auto;}
  .under_cell .lead { text-align: center; font-size: 237.5%; line-height: 1.8; margin: 0 auto 11.1vw; font-weight: 800; letter-spacing: 0.3em;}
  .under_cell .lead02 { text-align: center; font-size: 237.5%; line-height: 1.8; margin: 0 auto 4.5vw; font-weight: 800; letter-spacing: 0.3em;}

  .under_cell .t_center { font-size: 100%; line-height: 2.0; margin: 0 auto; text-align: center;}
  .under_cell .link_back { display: block; width: max-content; padding: 0 0 0 3.0vw; text-align: center; margin: 0 auto 0; background: url(../images/common/arrow03.png) left center no-repeat; background-size: 1.1vw 1.1vw; font-weight: bold; font-size: 100%;}
  .under_cell .link_back { margin: 6.25vw auto 14vw;}

  /* privacy_policy security-policy */
  .under_cell .pp_cell { }
  .under_cell .pp_cell:last-of-type { padding: 0 0 10vw;}
  .under_cell .pp_cell .ttl { font-size: 100%; font-weight: 600; line-height: 2.0; margin: 0 0 1.0vw;}
  .under_cell .pp_cell .txt { font-size: 100%; line-height: 2.0; margin: 0 0 2.3vw;}
  .under_cell .pp_cell ul { font-size: 100%; margin: 0 0 2.3vw 1em; list-style: decimal; }
  .under_cell .pp_cell ul li { margin: 0 0 0.5vw;}

  .under_cell .tbl01 { width: 100%; margin: 0 0 2.3vw; border-collapse: collapse;}
  .under_cell .tbl01 thead { }
  .under_cell .tbl01 thead th { text-align: center; font-weight: 600; padding: 1.0vw 0; font-size: 100%; border: 1px solid #797364;}
  .under_cell .tbl01 thead th:nth-of-type(1) { width: 25%;}
  .under_cell .tbl01 thead th:nth-of-type(2) { width: 75%;}
  .under_cell .tbl01 tbody { }
  .under_cell .tbl01 tbody td { text-align: left; padding: 1.0vw 1.0vw; font-size: 100%; line-height: 2.0; border: 1px solid #DDDDDD; vertical-align: top;}
  .under_cell .tbl02, .tbl02 { width: 100%; margin: 0 0 2.3vw; border-collapse: collapse;}
  .under_cell .tbl02 th, .tbl02 th { width: 20%; text-align: center; font-weight: 600; padding: 2.7vw 0; font-size: 100%; border: 1px solid #DDDDDD; vertical-align: middle;}
  .under_cell .tbl02 td, .tbl02 td { width: 80%; text-align: left; padding: 2.7vw 2.7vw; border: 1px solid #DDDDDD; vertical-align: top;}
  .under_cell .tbl02 td .ttl, .tbl02 td .ttl { font-size: 100%; font-weight: bold; color: #797364; line-height: 1.0; margin: 0 0 1.0vw;}
  .under_cell .tbl02 td .txt, .tbl02 td .txt { font-size: 87.5%; line-height: 2.0; margin: 0 0 1.5vw;}
  .under_cell .tbl02 td .txt:last-of-type, .tbl02 td .txt:last-of-type { margin: 0 0 0vw;}

  /* members */
  .under_cell ul.list_members { display: flex; flex-wrap: wrap; width: 100%; margin: 0 auto 9.7vw;}
  .under_cell ul.list_members li { position: relative; width: 42%; margin: 0 16% 11.1vw 0;}
  .under_cell ul.list_members li:nth-child(2n) { margin: 0 0 11.1vw 0;}
  .under_cell ul.list_members li .img { position: relative; z-index: 1; display: block; width: 100%;}
  .under_cell ul.list_members li .img img { width: 100%; height: 27.7vw; object-fit: cover;}
  .under_cell ul.list_members li .txtcell { z-index: 2; position: absolute; right: -2.7vw; bottom: -5.7vw; width: 23.6vw; height: 13.8vw; background: url(../images/index/section04_txtcell.png) no-repeat; background-size: 100% 100%; color: #fff;}
  .under_cell ul.list_members li .txtcell .cell { display: flex; justify-content: center; flex-direction: column; height: 13.8vw; margin: 0 3.8vw 0 6.8vw;}
  .under_cell ul.list_members li .txtcell .cell .message { font-size: 100%; line-height: 2.0; margin: 0 0 1.5vw; font-weight: 600;}
  .under_cell ul.list_members li .txtcell .cell .name { font-size: 75%; line-height: 1.0; margin: 0 0 0vw; color: #fff;}
  .under_cell ul.list_members li .txtcell .cell .name span { font-size: 116%; margin-right: 1.0vw; font-weight: 600;}
  .under_cell ul.list_members li .txtcell .cell .name.job { margin: 0 0 0.5vw;}

  .members_detail { display: block; position: relative; z-index: 2;}
  .members_kv { position: relative; margin: 0 0 14.2vw;}
  .members_kv .kv_img { position: relative; z-index: 2; width: 83%;}
  .members_kv .kv_img .mskImg { width: 100%; height: 44.4vw;}
  .members_kv .kv_img .mskImg img { width: 100%; height: 44.4vw; object-fit: cover; border-radius: 0 22.2vw 22.2vw 0;}
  .members_kv .kv_img p { position: absolute; top: 0; bottom: 0; left: 50%; width: 34vw;/* width: max-content;*/ height: max-content; margin: auto; z-index: 3; color: #fff; letter-spacing: 0.2em; font-size: 237.5%; font-weight: 700; line-height: 1.8; }
  .members_kv .txtcell { z-index: 3; position: absolute; left: 0; right: 0; bottom: -7.5vw;/*bottom: -5.5vw;*/ margin: auto; width: 30.6vw; height: 16.8vw;/*width: 23.6vw; height: 13.8vw;*/ background: url(../images/index/section04_txtcell.png) no-repeat; background-size: 100% 100%; color: #fff;}
  .members_kv .txtcell .cell { display: flex; justify-content: center; flex-direction: column; height: 16.8vw;/*height: 13.8vw;*/ margin: 0 3.8vw 0 7.8vw;}
  .members_kv .txtcell .cell .job { font-size: 100%; line-height: 2.0; margin: 0 0 1.5vw; font-weight: 400;}
  .members_kv .txtcell .cell .name { font-size: 137.5%; font-weight: 600; line-height: 1.0; margin: 0 0 0vw; color: #fff; letter-spacing: 0.2em;}
  .members_career { background: #fff; padding: 4.2vw 0vw; margin: 0 auto 13.8vw;}
  .members_career .cell { width: 66vw;/* max-width: 960px;*/ margin: 0 auto; display: flex; align-items: center;}
  .members_career .cell p { width: 10.4%; font-size: 112.5%; font-weight: 700; color: #797364; line-height: 1; margin: 0; letter-spacing: 0.2em;}
  .members_career .cell ul { width: 85%; padding-left: 4.6%; list-style: none; border-left: 1px solid #DDDDDD;}
  .members_career .cell ul li { position: relative; padding: 0 0 0 1em; margin: 0 0 0.5vw; font-size: 87.5%;}
  .members_career .cell ul li:last-child { margin: 0;}
  .members_qa { width: 66%; margin: 0 auto 10.7vw;}
  .members_qa .qa_q { position: relative; font-size: 137.5%; font-weight: bold; line-height: 2.0; margin: 0 0 4.2vw; padding: 5.8vw 0 0;}
  .members_qa .qa_q::before { position: absolute; display: block; content: "Q"; top: 0; left: 0; margin: 0; line-height: 1; color: #C29826; font-size: 180%; font-weight: 700; font-family: "Montserrat", sans-serif;}
  .members_qa .qa_a { font-size: 100%; line-height: 2.0; margin: 0 0 0vw; padding: 0vw 0 0;}
  .members_qa.left_cell { width: 83%; margin: 0 0 10.7vw auto; display: flex; justify-content: space-between;}
  .members_qa.right_cell { width: 83%; margin: 0 auto 10.7vw 0; display: flex; justify-content: space-between; flex-direction: row-reverse;}
  .members_qa.left_cell .qa_cell,
  .members_qa.right_cell .qa_cell { width: 36.6%;}
  .members_qa.left_cell .img,
  .members_qa.right_cell .img { width: 56.6%;}
  .members_qa.left_cell .img { -webkit-mask-image: url(/wp-content/themes/vcd/images/member/mask01.png); -webkit-mask-repeat: no-repeat; -webkit-mask-size: 100% 44.4vw; mask-image: url(/wp-content/themes/vcd/images/member/mask01.png); mask-repeat: no-repeat; mask-size: 100% 44.4vw;}
  .members_qa.right_cell .img { -webkit-mask-image: url(/wp-content/themes/vcd/images/member/mask02.png); -webkit-mask-repeat: no-repeat; -webkit-mask-size: 100% 44.4vw; mask-image: url(/wp-content/themes/vcd/images/member/mask02.png); mask-repeat: no-repeat; mask-size: 100% 44.4vw;}
  .members_qa.left_cell .img img,
  .members_qa.right_cell .img img { object-fit: cover; object-position: 50% 50%; width: 100%; height: 44.4vw;}
  .member_sub { display: block; width: 66vw;/* max-width: 960px;*/ margin: 0 auto 13.8vw;}
  .member_sub img { display: block; margin: 0 auto 3.8vw;}
  .member_sub p { font-size: 100%; line-height: 2.0; margin: 0;}
  .member_other { position: relative; z-index: 2; padding: 7.8vw 0 7.8vw; background: url(/wp-content/themes/vcd/images/member/member_other_bg.png) no-repeat bottom right, #fff; background-size: 45.8vw 55.9vw, 100%;}
  .member_other h2 { font-size: 375%; font-family: "Montserrat", sans-serif; font-weight: 700; line-height: 1; margin: 0 0 5.5vw; letter-spacing: 0.05em;}
  .member_other .under_cell ul.list_members { margin: 0 auto 9.0vw;}
  .member_other .under_cell ul.list_members li { margin-bottom: 0;}

  /* recruit */
  .recruit .breadcrumb { margin: 0 auto 2.4vw;}
  .recruit_cell .r_section01 { position: relative; z-index: 2; background: #000; padding: 0vw 0;}
  .recruit_cell .r_section01 .img { position: absolute; top: -12.5vw; right: 0; width: 47.2vw;}
  .recruit_cell .r_section01 .cell { display: block; width: 66vw;/* max-width: 960px;*/ padding: 11.4vw 0; margin: 0 auto; color: #fff;}
  .recruit_cell .r_section01 .cell .txt { width: 45.8%;}
  .recruit_cell .r_section01 .cell .txt h2 { font-size: 237.5%; font-weight: bold; line-height: 1.8; margin: 0 0 3.2vw; letter-spacing: 0.2em;}
  .recruit_cell .r_section01 .cell .txt p { font-size: 100%; line-height: 2.0; margin: 0 0 2.0vw; letter-spacing: 0.1em;}
  .recruit_cell .r_section01 .cell .txt p:last-of-type { margin: 0 0 0vw;}
  .recruit_cell .r_section02 { position: relative; z-index: 2; background: url(/wp-content/themes/vcd/images/recruit/r_section02_bg.png) top right no-repeat; background-size: 23vw 23vw; padding: 0vw 0; padding: 25.3vw 0 13.8vw;}
  .recruit_cell .r_section02 .cell { position: relative; background: linear-gradient(90deg, #000 0%, #000 47.2%, rgba(0,0,0,0) 47.2%, rgba(0,0,0,0) 100%); margin: 0 0 13.8vw;}
  .recruit_cell .r_section02 .cell.rev {background: linear-gradient(90deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 52.8%, #000 52.8%, #000 100%);}
  .recruit_cell .r_section02 .cell:last-of-type { margin: 0 0 0vw;}
  .recruit_cell .r_section02 .cell .flcell { display: flex; justify-content: space-between; width: 66vw; margin: 0 auto;}
  .recruit_cell .r_section02 .cell.rev .flcell { flex-direction: row-reverse;}
  .recruit_cell .r_section02 .cell .flcell .fleft { position: relative; width: 45.8%; color: #fff; padding: 7.8vw 0 0;}
  .recruit_cell .r_section02 .cell .flcell .fleft h2 { position: absolute; top: -2.5vw;; left: 0; display: flex; flex-direction: column;}
  .recruit_cell .r_section02 .cell .flcell .fleft h2 span { position: relative; z-index: 2; display: block; width: max-content; padding: 0.8vw 0.5vw 0.8vw 1.0vw; letter-spacing: 0.1em; line-height: 1; overflow: hidden;}
  .recruit_cell .r_section02 .cell .flcell .fleft h2 span::after {
    display: block;
    position: absolute;
    z-index: -1;
    left: 0;
    top: 0;
    content: "";
    background: #797364;
    width: 100%;
    height: 100%;
    animation-name: test_box_slide;
    animation-duration:.5s;
    animation-fill-mode: forwards;
    transform: translateX(-100%);
  }
  .recruit_cell .r_section02 .cell .flcell .fleft p { padding: 0 5.5vw 0 0; font-size: 100%; line-height: 2.0; margin: 0 0 2.0vw;}
  .recruit_cell .r_section02 .cell .flcell .fleft p:last-of-type { margin-bottom: 8.3vw;}
  .recruit_cell .r_section02 .cell.rev .flcell .fleft h2 { padding: 0 0 0 5.5vw;}
  .recruit_cell .r_section02 .cell.rev .flcell .fleft p { padding: 0 0 0 5.5vw;}
  .recruit_cell .r_section02 .cell .flcell .fleft .num { position: absolute; bottom: 0; right: 0; width: 23.6vw; max-width: 340px;}
  .recruit_cell .r_section02 .cell.rev .flcell .fleft .num { bottom: 0; right: inherit; left: 0; width: 23.6vw; max-width: 340px;}
  .recruit_cell .r_section02 .cell .flcell .fright { width: 45.8%; padding: 8px; background: url(/wp-content/themes/vcd/images/recruit/kado01.png) top left no-repeat, url(/wp-content/themes/vcd/images/recruit/kado02.png) top right no-repeat, url(/wp-content/themes/vcd/images/recruit/kado03.png) bottom left no-repeat, url(/wp-content/themes/vcd/images/recruit/kado04.png) bottom right no-repeat; background-size: 0.5vw 0.5vw, 0.5vw 0.5vw, 0.5vw 0.5vw, 0.5vw 0.5vw;}
  .recruit_cell .r_section02 .cell .flcell .fright li { display: block; padding: 2.0vw 3.125vw; background: #fff; margin: 0 0 0.5vw;}
  .recruit_cell .r_section02 .cell .flcell .fright li:last-child { margin: 0 0 0vw;}
  .recruit_cell .r_section02 .cell .flcell .fright li .ttl { font-size: 112.5%; font-weight: bold; margin: 0 0 1.3vw; line-height: 1;}
  .recruit_cell .r_section02 .cell .flcell .fright li .txt { font-size: 100%; margin: 0 0 0vw; line-height: 2.0;}
  .recruit_cell .r_section03 { position: relative; z-index: 2; background: #fff; padding: 10.4vw 0 13.8vw;}
  .recruit_cell .r_section03 ul { display: flex; flex-wrap: wrap; width: 66vw;/* max-width: 960px;*/ margin: 0 auto; border-top: 1px solid #DDDDDD; border-left: 1px solid #DDDDDD;}
  .recruit_cell .r_section03 ul li { width: calc(50% - 1px - 5.4vw); border-bottom: 1px solid #DDDDDD; border-right: 1px solid #DDDDDD; padding: 2.0vw 2.7vw;}
  .recruit_cell .r_section03 ul li .ttl { text-align: center; font-size: 112.5%; font-weight: bold; color: #797364; margin: 0 auto 1.7vw; line-height: 1;}
  .recruit_cell .r_section03 ul li .txt { font-size: 100%; line-height: 2.0; margin: 0;}
  .recruit_cell .r_section04 { position: relative; z-index: 2; background: url(/wp-content/themes/vcd/images/recruit/r_section04_bg.png) bottom right no-repeat; background-size: 23vw 23vw; padding: 10.7vw 0 13.1vw;}
  .recruit_cell .r_section04 .img { display: block; margin: 2.7vw auto 0; width: 55vw;}
  .recruit_cell .r_section05 { position: relative; z-index: 2; background: #000; padding: 10.4vw 0 13.8vw;}
  .recruit_cell .r_section05 .h2_ttl { margin-bottom: 6.25vw;}
  .recruit_cell .r_section05 .cell { position: relative; display: block; width: 66vw;/* max-width: 960px;*/ margin: 0 auto 6.25vw; background: #fff; padding: 4.5vw 0 4.4vw;}
  .recruit_cell .r_section05 .cell .box { width: 55vw; margin: 0 auto;}
  .recruit_cell .r_section05 .cell .box h3 { position: absolute; left: 0; right: 0; top: -2.0vw; display: block; font-size: 175%; color: #fff; width: max-content; background: #797364; padding: 0.8vw 0.9vw; margin: auto; line-height: 1; letter-spacing: 0.1em;}
  .recruit_cell .r_section05 .cell .box .lead { font-size: 100%; margin: 0 0 3.125vw; line-height: 2.0;}
  .recruit_cell .r_section06 { position: relative; z-index: 2; background: #FFFFFF; padding: 11.5vw 0 13.8vw;}
  .recruit_cell .r_section06 dl { display: flex; flex-wrap: wrap; border-top: 1px solid #DDDDDD;}
  .recruit_cell .r_section06 dl:last-of-type { border-bottom: 1px solid #DDDDDD;}
  .recruit_cell .r_section06 dl dt { padding: 2.4vw 0; width: 18.75%; font-size: 100%; font-weight: bold; letter-spacing: 0.1em;}
  .recruit_cell .r_section06 dl dd { padding: 2.4vw 0; width: 81.25%; font-size: 100%; letter-spacing: 0.1em;}
  .recruit_cell .r_section06 dl dd span { font-size: 75%; color: #797364;}
  .recruit_cell .r_section07 { position: relative; z-index: 2; padding: 0; background: url(/wp-content/themes/vcd/images/recruit/r_section07_bg.png) bottom no-repeat, #000; background-size: 100% auto, 100%;}
  .recruit_cell .r_section07 a { position: relative; z-index: 2; display: flex; justify-content: center; align-items: center; width: 100%; height: 27.7vw; text-align: center; color: #fff; line-height: 1; font-size: 250%; font-family: "Montserrat", sans-serif; font-weight: 600; letter-spacing: 0.3em;}
  .recruit_cell .r_section07 a::after { display: block; position: absolute; z-index: 3; content: ""; width: 100%; height: 16.6vw; background: url(/wp-content/themes/vcd/images/recruit/r_section07_bg.png) bottom no-repeat; background-size: 100% 100%; bottom: 0; left: 0;}
  .recruit_cell .r_section07 a:hover { opacity: 1; background: #3A2E0B; letter-spacing: 1.0em;}



  /* aboutus */
  .aboutus_img01 { display: block; margin: 5.5vw auto 10.7vw; width: 36vw;}
  .aboutus_sec01 { position: relative; z-index: 2; background: #fff; padding: 7.9vw 0 10.4vw;}
  .aboutus_sec01 ul { border: 1px solid #DDDDDD; display: flex; padding: 0vw 0vw;}
  .aboutus_sec01 ul li { width: calc(33.3% - 1px);  border-right: 1px solid #DDDDDD; padding: 2.7vw;}
  .aboutus_sec01 ul li:last-child { width: 33.3%;  border-right: none;}
  .aboutus_sec01 ul li .ttl { text-align: center; font-size: 137.5%; font-weight: bold; color: #797364; padding: 0 0 1.4vw; margin: 0 auto 1.0vw; line-height: 1; border-bottom: 1px solid #DDDDDD; letter-spacing: 0.1em;}
  .aboutus_sec01 ul li .txt { text-align: left; font-size: 100%; line-height: 2.0; margin: 0;}
  .aboutus_sec02 { padding: 11.1vw 0 12.8vw; margin: 0 auto 11.1vw; background: url(/wp-content/themes/vcd/images/aboutus/aboutus_sec02_bg.png) bottom right no-repeat; background-size: 69.4vw 55.5vw;}
  .aboutus_sec02 .flcell { display: flex; justify-content: space-between; flex-direction: row-reverse; margin: 0 0 0vw;}
  .aboutus_sec02 .flcell .fright { width: 54%;}
  .aboutus_sec02 .flcell .fleft { width: 39.5%; margin-top: 3.2vw;}
  .aboutus_sec02 h3 { display: flex; flex-direction: column;}
  .aboutus_sec02 h3 span { display: block; width: max-content;}
  .aboutus_sec02 h3 { display: flex; flex-direction: column; color: #fff; font-size: 175%; margin: 0 0 2.7vw;}
  .aboutus_sec02 h3 span { position: relative; z-index: 2; display: block; width: max-content; padding: 0.8vw 0.5vw 0.8vw 1.0vw; letter-spacing: 0.1em; line-height: 1; overflow: hidden;}
  .aboutus_sec02 h3 span::after {
    display: block;
    position: absolute;
    z-index: -1;
    left: 0;
    top: 0;
    content: "";
    background: #000;
    width: 100%;
    height: 100%;
    animation-name: test_box_slide02;
    animation-duration:.5s;
    animation-fill-mode: forwards;
    transform: translateX(-100%);
  }
  @keyframes test_box_slide02 {
  　0% {
  　　transform: translateX(-100%);
    }
    100% {
    transform: translateX(0%);
    }
  }
  .aboutus_sec02 .txt {font-size: 100%; line-height: 2.0; margin: 0 0 2.4vw;}
  .aboutus_sec03 { padding: 0vw 0 11.1vw; margin: 0 auto 0vw;}
  .aboutus_sec03 dl { display: flex; flex-wrap: wrap; border-top: 1px solid #DDDDDD;}
  .aboutus_sec03 dl:last-of-type { border-bottom: 1px solid #DDDDDD;}
  .aboutus_sec03 dl dt { padding: 2.4vw 0; width: 18.75%; font-size: 100%; font-weight: bold; letter-spacing: 0.1em;}
  .aboutus_sec03 dl dd { padding: 2.4vw 0; width: 81.25%; font-size: 100%; letter-spacing: 0.1em;}
  .aboutus_sec04 { position: relative; z-index: 2; padding: 0 0 23vw; background: url(/wp-content/themes/vcd/images/aboutus/aboutus_sec04_bg.png) right bottom no-repeat; background-size: 23vw 23vw;}
  .aboutus_sec04 ul { display: flex; flex-wrap: wrap; margin: 0 0 2.7vw;}
  .aboutus_sec04 ul li { background: #fff; width: 32.5%; margin: 0 1.25% 0.7vw 0vw; text-align: center; padding: 0.7vw 0;}
  .aboutus_sec04 ul li:nth-child(3n) { margin: 0 0% 0.7vw 0vw;}
  .aboutus_sec04 .s_txt {text-align: center; font-size: 75%; color: #797364; margin: 0 auto 5.5vw;}
  .aboutus_sec05 { position: relative; z-index: 2; background: #000; padding: 13.2vw 0 7.9vw;}
  .aboutus_sec05 .ttl { position: absolute; display: block; width: 66vw;/* max-width: 960px;*/ margin: auto; top: -5.5vw; left: 0; right: 0;}
  .aboutus_sec05 .ttl .sub { font-size: 375%; font-family: "Montserrat", sans-serif; font-weight: 600; color: #000; line-height: 1; letter-spacing: 0.05em; margin: 0 0 1.0vw;}
  .aboutus_sec05 .ttl h2 { font-size: 875%; font-family: "Montserrat", sans-serif; font-weight: 600; color: #fff; line-height: 1; letter-spacing: 0.05em; margin-top: -1.3vw;}
  .aboutus_sec05 .gallery_slider li.slick-slide { margin: 0 1.3vw;}
  .aboutus_sec05 .gallery_slider li.slick-slide img {aspect-ratio: 16 / 9;}
  .aboutus_sec05 .gallery_slider { margin: 0 auto; position: relative;}
  .aboutus_sec05 .gallery_slider .prev-arrow { position: absolute; top: 16.8vw; left: -2.6vw; width: 8.0vw; z-index: 3;}
  .aboutus_sec05 .gallery_slider .next-arrow { position: absolute; top: 16.8vw; right: -2.6vw; width: 8.0vw; z-index: 3;}
  .aboutus_sec05 .gallery_slider .slider-dots { width: 66vw;/* max-width: 960px;*/ margin: 4.0vw auto 0; padding: 0; text-align: left; list-style: none;}
  .aboutus_sec05 .gallery_slider .slider-dots li { display: inline-block; width: 60px; margin: 0 15px 0 0;}
  .aboutus_sec05 .gallery_slider .slider-dots li button { position: relative; width: 100%; height: 6px; border: 0; background-color: #797364; font-size: 0;}
  .aboutus_sec05 .gallery_slider .slider-dots li button:after { position: absolute; top: 0; left: 0; content: ""; display: block; width: 0%; height: 100%;}
  .aboutus_sec05 .gallery_slider .slider-dots li.slick-active button:after { background-color: #C29826; animation: progress 5.5s linear forwards;}
  @keyframes progress {
    from {
      width: 0%;
    }

    to {
      width: 100%;
    }
  }

  /* service */
  .service_kv { position: relative; z-index: 2; background: #000; padding: 7.8vw 0 7.8vw;}
  .service_kv .img_cell { display: flex; align-items: center; margin: 0 auto 1.0vw;}
  .service_kv .img_cell .box { display: flex; justify-content: center; align-items: center; flex-direction: column; width: 32.25%; height: 14.8vw; padding: 0vw 0vw; position: relative;}
  .service_kv .img_cell .box .bg { z-index: 1; position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; width: 100%; height: 14.8vw;}
  .service_kv .img_cell .box .bg img { display: block; transition: all .2s; transform: scale(0, 1); transform-origin:center;}
  .service_kv .img_cell .box .bg:nth-of-type(3) img {transition: all .2s ease 0.1s;}
  .service_kv .img_cell .box .bg:nth-of-type(5) img {transition: all .2s ease 0.2s;}
  .service_kv .img_cell .box .bg.active img { transform:scale(1, 1);}

  .service_kv .img_cell .box:nth-of-type(1) { margin: 0 -1% 0 0;}
  .service_kv .img_cell .box:nth-of-type(3) { margin: 0 -1% 0 -1%;}
  .service_kv .img_cell .box:nth-of-type(5) { margin: 0 0 0 -1%;}
  .service_kv .img_cell .box .h3_01 { position: relative; z-index: 2; text-align: center; font-size: 150%; margin: 0 auto 1.5vw; font-family: "Barlow", sans-serif; font-weight: 500; color: #000;}
  .service_kv .img_cell .box .h3_02 { position: relative; z-index: 2; text-align: center; font-size: 150%; margin: 0 auto 1.5vw; font-family: "Barlow", sans-serif; font-weight: 500; color: #C29826;}
  .service_kv .img_cell .box .c_img { position: relative; z-index: 2; width: 80%; margin: 0 auto; opacity: 0;}

  .service_kv .img_cell .kakeru { position: relative; width: 3.4vw; height: 3.4vw; z-index: 2;}
  .service_kv .img_cell .kakeru:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    background: url(../images/index/section03_kakeru.png) no-repeat;
    background-size: 100% 100%;
    width: 3.4vw;
    height: 3.4vw;
    transition: transform .3s cubic-bezier(0.8, 0, 0.2, 1) 0s;
    transform: scale(0, 0);
    transform-origin:center;
  }
  .service_kv .img_cell .kakeru.active:before {
    animation-name:fadeSpreadAnime;
    animation-delay: 0.6s;
    animation-duration:0.2s;
    animation-fill-mode:forwards;
    opacity: 0;
  }
  .service_kv .arrow { width: 21.3vw; margin: 0 auto 4.8vw;}
  .service_kv .arrow .img_arrow { width: 0.4vw; height: 3.8vw; margin: 0 auto; position: relative; z-index: 2; overflow: hidden;}
  .service_kv .arrow .img_arrow::before {
    position: absolute;
    content: '';
    z-index: 1;
    background: url(../images/index/section03_img04_01.png) no-repeat;
    background-size: 100% 100%;
    width: 0.4vw;
    height: 3.8vw;
    transition: all .3s;
    transform: scale(1, 0);
    transform-origin: top;
    opacity: 0;
  }
  .service_kv .arrow .img_arrow.active::before {
    animation-name:img-wrap;
    animation-delay: 0.8s;
    animation-duration:0.2s;
    animation-fill-mode:forwards;
    opacity: 0;
  }
  .service_kv .arrow .img_bnr { width: 100%; margin: -0.3vw auto 0; position: relative; z-index: 1;}
  .service_about { position: relative; z-index: 2; padding: 13.8vw 0 22.2vw; background: url(../images/service/service_about_top.png) right top no-repeat, url(../images/service/service_about_btm.png) right bottom no-repeat; background-size: 23vw 23vw, 23vw 23vw;}
  .service_about .ttl { text-align: center; line-height: 1; font-size: 175%; font-weight: bold; color: #797364; margin: 0 auto 4.1vw; letter-spacing: 0.1em;}
  .service_about .txt { text-align: center; line-height: 2.0; font-size: 100%; color: #000; margin: 0 auto 2.0vw; letter-spacing: 0.1em;}
  .service_about .txt span { font-weight: bold;}
  .service_about .txt:last-of-type { margin: 0 auto 0vw;}
  .service_flow { position: relative; z-index: 2; background: #000; padding: 0 0vw 10.7vw;}
  .service_flow .ttl { position: absolute; display: block; width: 66vw;/* max-width: 960px;*/ margin: auto; top: -5.5vw; left: 0; right: 0;}
  .service_flow .ttl .sub { font-size: 375%; font-family: "Montserrat", sans-serif; font-weight: 600; color: #000; line-height: 1; letter-spacing: 0.05em; margin: 0 0 1.0vw;}
  .service_flow .ttl h2 { font-size: 875%; font-family: "Montserrat", sans-serif; font-weight: 600; color: #fff; line-height: 1; letter-spacing: 0.05em; margin-top: -1.3vw;}
  .service_flow .img { padding: 13.2vw 0 0;}
  .service_case { position: relative; z-index: 2; padding: 10.7vw 0 13.2vw; background: #fff;}
  .list_service_case { }
  .list_service_case li.cell { margin: 0 0 3.8vw; padding: 0 0 4.5vw; border-bottom: 1px solid #DDDDDD;}
  .list_service_case li.cell:last-child { margin: 0 0; padding: 0 0; border-bottom: none;}
  .list_service_case li.cell .txt_case { font-size: 75%; font-family: "Montserrat", sans-serif; font-weight: 600; color: #000; line-height: 1; letter-spacing: 0.05em; margin: 0 0 0.8vw;}
  .list_service_case li.cell .flcell { display: flex; justify-content: space-between;}
  .list_service_case li.cell .flcell .img { width: 37.5%;}
  .list_service_case li.cell .flcell .txt_cell { width: 55.8%;}
  .list_service_case li.cell .flcell .txt_cell h3 { display: block; font-size: 175%; color: #fff; width: max-content; background: #797364; padding: 0.8vw 0.9vw; margin: 0; line-height: 1; letter-spacing: 0.1em;}
  .list_service_case li.cell .flcell .txt_cell .subttl { display: block; font-size: 137.5%; color: #fff; width: max-content; background: #000; padding: 0.8vw 0.9vw; margin: 0 0 1.3vw; line-height: 1; letter-spacing: 0.1em;}
  .list_service_case li.cell .flcell .txt_cell .tab { display: flex; flex-wrap: wrap; margin: 0 0 2.0vw;}
  .list_service_case li.cell .flcell .txt_cell .tab li { display: block; padding: 0.5vw 1.1vw; margin: 0 0.5vw 0 0; background: #DAD8D2; border-radius: 2px; font-weight: bold; font-size: 67.5%; color: #797364; letter-spacing: 0.1em;}
  .list_service_case li.cell .flcell .txt_cell .txt { font-size: 100%; line-height: 2.0; margin: 0 0 0;}
  .list_service_case li.cell .flcell .txt_cell .txt p { font-size: 100%; line-height: 2.0; margin: 0 0 2.0vw; word-break: normal;}
  .list_service_case li.cell .flcell .txt_cell .txt p:last-of-type { margin: 0 0 0vw;}
  .service_experts { padding: 14.2vw 0 15.2vw;}
  .service_experts h2 { font-size: 875%; font-family: "Montserrat", sans-serif; font-weight: 600; color: #000; line-height: 1; letter-spacing: 0.05em; margin: 0 0 5.2vw;}
  .service_experts .service_experts_lead { font-size: 175%; font-weight: bold; line-height: 2.0; margin: 0 0 5.2vw;}
  .service_experts .list_service_experts { margin: 0 0 5.5vw;}
  .service_experts .list_service_experts li { display: flex; margin: 0 0 3.125vw;}
  .service_experts .list_service_experts li:last-child { margin: 0 0 0vw;}
  .service_experts .list_service_experts li .img { width: 41.6%;}
  .service_experts .list_service_experts li .txt_cell { width: 58.4%; background: #000; color: #fff; padding: 2.5vw 2.5vw;}
  .service_experts .list_service_experts li .txt_cell .subttl { font-size: 75%; color: #F6F6F7; margin: 0 0 1.0vw; line-height: 1;}
  .service_experts .list_service_experts li .txt_cell h3 { font-size: 137.5%; color: #fff; font-weight: bold; margin: 0 0 1.7vw; line-height: 1; letter-spacing: 0.1em;}
  .service_experts .list_service_experts li .txt_cell h3 span { font-size: 55%; font-family: "Montserrat", sans-serif; font-weight: 600; color: #C29826; margin-left: 0.8vw; letter-spacing: 0.05em;}
  .service_experts .list_service_experts li .txt_cell .txt_ttl { position: relative; font-size: 87.5%; font-weight: bold; color: #797364; margin: 0 0 1.0vw; line-height: 1; letter-spacing: 0.05em;}
  .service_experts .list_service_experts li .txt_cell .txt_ttl::after { display: block; position: absolute; content: ""; background: #372F2F; width: calc(100% - 4em); height: 1px; right: 0; top: 0; bottom: 0; margin: auto;}
  .service_experts .list_service_experts li .txt_cell .txt { font-size: 87.5%; color: #fff; margin: 0 0 0; line-height: 2.0; letter-spacing: 0.05em;}

  /* contact */
  .contact_flow { display: block; width: 25vw; margin: 0 auto 5.9vw;}
  .contact_cell { display: block; margin: 5.5vw auto 0vw; padding: 5.5vw 0 0; border-top: 1px solid #DDDDDD;}
  .contact_lead { font-size: 175%; font-weight: bold; text-align: center; margin: 0 auto 3.4vw;}
  .contact_cell .flcell { display: flex; justify-content: space-between; margin: 0 0 2.7vw;}
  .contact_cell .flcell .fleft { width: 21.3%; display: flex; justify-content: space-between; margin: 1.0vw 0 0; font-size: 100%; font-weight: bold;}
  .contact_cell .flcell .fleft span { display: flex; justify-content: center; align-items: center; width: 2.0vw; height: 1.4vw; font-size: 62.5%; color: #fff; background: #CD6B6B; font-weight: normal; border-radius: 2px;}
  .contact_cell .flcell .fright { width: 75%; font-size: 100%;}
  .contact_cell .flcell .fright input[type=text] { display: block; width: calc(100% - 2vw); height: 3.6vw; line-height: 3.6vw; padding: 0 1.0vw; border: none; background: #fff; font-size: 100%; font-family: YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;}
  .contact_cell .flcell .fright textarea { display: block; width: calc(100% - 2vw); height: 13.8vw; padding: 1.0vw 1.0vw; border: none; background: #fff; font-size: 100%; font-family: YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;}
  .contact_cell .flcell .fright.is-error input[type=text],
  .contact_cell .flcell .fright.is-error textarea { border: 1px solid #E25F5F;}
  ::placeholder { color: #DAD8D2; font-size: 100%;}
  .contact_cell .flcell .fright .contact_select { margin-top: 1.0vw;}
  .confirm .contact_cell .flcell .fright .contact_select { margin-top: 0vw;}
  .contact_cell .txt_pp {position: relative; text-align: center; /*margin: 5.2vw auto 2.4vw;*/margin: 5.2vw auto 0vw; padding: 0 0 5.4vw;}
  .contact_cell .txt_pp a { text-decoration: underline; color: #C29826;}
  .contact_btn { display: flex; justify-content: center; align-items: center; margin: 0 auto 17.3vw;}
  .under_ input.btn_contact_gld { cursor: pointer; position: relative; display: flex; justify-content: center; align-items: center; width: 20vw; height: 5vw; border: 2px solid #C29826; margin: 0; padding: 0 1.6vw 0 0; font-size: 100%; font-weight: bold; letter-spacing: 0.1em; color: #C29826; background: url(/wp-content/themes/vcd/images/common/arrow04.png) 80% center no-repeat; background-size: 1.6vw 1.6vw;}
  .under_cell .contact_btn .link_back { margin: 0 5.5vw 0 0; border: none; font-weight: bold; color: #000; font-size: 100%;}
  .contact_confirm .contact_cell { background: #fff; padding: 5.2vw 4.8vw; border: none;}
  .contact_confirm .contact_cell .flcell:last-of-type { margin: 0 0 0vw;}
  .contact_confirm .contact_cell .flcell .fleft { margin: 0vw 0 0;}
  .contact_confirm .contact_cell .flcell .fleft span { display: none;}
  .contact_confirm .contact_cell .open_normal,
  .contact_confirm .contact_cell .open_new { margin: 0 0 2.7vw;}
  .contact_confirm .contact_cell .txt_pp { display: none;}
  .contact_confirm .contact_btn { margin: 5.2vw auto 17.3vw;}
  .under_ .contact_confirm input.link_back { height: 5vw; width: 10vw; display: block; cursor: pointer;}
  .under_ .contact_confirm input.link_back:hover { opacity: 0.6;}
  .mw_wp_form_input .open_new{display: none;}
  .mw_wp_form_input .open_normal{display: none;}
  .mw_wp_form .contact_cell .error { position: relative; display: block; width: calc(100% - 1.4vw + 2px); padding: 0.7vw 0.7vw; margin: 1.0vw 0 0; background: #E25F5F; color: #fff; font-size: 87.5%; font-weight: bold;}
  .mw_wp_form .contact_cell .error::after { display: block; position: absolute; content: ""; width: 0.7vw; height: 0.5vw; background: url(/wp-content/themes/vcd/images/common/icon_error.png) no-repeat; background-size: 100% 100%; top: -0.5vw; left: 1.0vw;}
  .mw_wp_form .contact_cell .txt_pp .error { position: absolute; botto: 1.8vw; left: 0; right: 0; width: 19.3vw; margin: 1.2vw auto 0; text-align: left;}


  /* news */
  .news_categorylist { display: flex; justify-content: center; margin: 0 auto 11.1vw;}
  .news_categorylist p a { display: block; padding: 0.3vw 1.5vw; border-radius: 2vw; font-size: 87.5%; color: #fff; background: #000;}
  .news_categorylist.other p a { background: #DAD8D2;}
  .news_categorylist.other p a:hover { background: #000; opacity: 1;}
  .news_categorylist ul { display: flex; justify-content: center; border-left: 1px solid #ddd; padding: 0 0 0 1.0vw; margin: 0 0 0 1.0vw;}
  .news_categorylist ul li { margin: 0 1.0vw 0 0;}
  .news_categorylist ul li a { display: block; padding: 0.3vw 1.5vw; border-radius: 2vw; font-size: 87.5%; color: #fff; background: #DAD8D2;}
  .news_categorylist ul li a:hover { background: #000; opacity: 1;}
  .news_categorylist.other ul li a.is-active { background: #000;}
  .list_news { margin: 0 auto 10.3vw;}
  .list_news li a { display: flex; justify-content: space-between; padding: 3.4vw 0 3.4vw; border-bottom: 1px solid #DDDDDD;}
  .list_news li a .img { width: 23%;}
  .list_news li a .img img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover;}
  .list_news li a .txtcell { position: relative; width: calc(73% - 3.4vw); padding: 0 3.4vw 0 0;}
  .list_news li a .txtcell::after { display: block; position: absolute; content: ""; right: 0; top: 0; bottom: 0; margin: auto; width: 1.1vw; height: 1.1vw; background: url(../images/common/arrow01.png) no-repeat; background-size: 100% 100%;}
  .list_news li a .txtcell .category { display: block; width: max-content; background: #000; padding: 0.3vw 1.5vw; margin: 0 0 0.9vw; border-radius: 2vw; color: #fff; letter-spacing: 0.1em; font-size: 75%; font-weight: bold;}
  .list_news li a .txtcell .date { font-size: 75%; font-family: "Montserrat", sans-serif; font-weight: 600; color: #797364; margin: 0 0 0.8vw; letter-spacing: 0.05em;}
  .list_news li a .txtcell .ttl { color: #000; font-size: 100%; line-height: 2.0; margin: 0;}
  .newsdetail_cell { position: relative; z-index: 2;}
  .newsdetail_cell .under_cell { margin-bottom: 5.5vw;}
  .newsdetail_cell .newsdetail_info { display: flex; align-items: center; margin: 0 auto 2.7vw}
  .newsdetail_cell .newsdetail_info .category { display: block; width: max-content; background: #000; padding: 0.3vw 1.5vw; margin: 0 1.0vw 0 0; border-radius: 2vw; color: #fff; letter-spacing: 0.1em; font-size: 75%; font-weight: bold;}
  .newsdetail_cell .newsdetail_info .date { font-size: 75%; font-family: "Montserrat", sans-serif; font-weight: 600; color: #797364; margin: 0 0 0; letter-spacing: 0.05em;}
  .newsdetail_cell h2 { font-size: 175%; font-weight: bold; line-height: 2.0; margin: 0 0 5.5vw; padding: 0 0 5.5vw; border-bottom: 1px solid #DDDDDD;}
  .newsdetail_cell .news_main { margin: 0 auto 11.1vw;}
  .newsdetail_cell .news_main .mainimg { display: block; margin: 0 auto 4.5vw;}
  .newsdetail_cell .news_main .mainimg img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover;}
  .newsdetail_cell .detailpagenation { background: #fff; padding: 2.4vw 0;}
  .newsdetail_cell .detailpagenation .cell { position: relative; display: flex; justify-content: space-between; width: 66vw; margin: 0 auto; align-items: center;}
  .newsdetail_cell .detailpagenation .cell.rev { justify-content: flex-end;}
  .newsdetail_cell .detailpagenation .cell::after { display: block; position: absolute; content: ""; background: #ddd; width: 1px; height: 100%; top: 0; left: 0; right: 0; margin: auto;}
  .newsdetail_cell .detailpagenation .cell .prev { position: relative; width: 34%; padding: 0 0 0 3.4vw;}
  .newsdetail_cell .detailpagenation .cell .prev::after { display: block; position: absolute; content: ""; width: 1.1vw; height: 1.1vw; background: url(../images/common/arrow03.png) right center no-repeat; background-size: 100% 100%; top: 0; bottom: 0; left: 0; margin: auto;}
  .newsdetail_cell .detailpagenation .cell .next { position: relative; width: 34%; padding: 0 3.4vw 0 0;}
  .newsdetail_cell .detailpagenation .cell .next::after { display: block; position: absolute; content: ""; width: 1.1vw; height: 1.1vw; background: url(../images/common/arrow01.png) right center no-repeat; background-size: 100% 100%; top: 0; bottom: 0; right: 0; margin: auto;}
  .newsdetail_cell .detailpagenation .cell .prev .pagenation_info,
  .newsdetail_cell .detailpagenation .cell .next .pagenation_info { display: flex; align-items: center; margin: 0 0 0.5vw;}
  .newsdetail_cell .detailpagenation .cell .prev .pagenation_info .category,
  .newsdetail_cell .detailpagenation .cell .next .pagenation_info .category { display: block; width: max-content; background: #000; padding: 0.3vw 1.5vw; margin: 0 1.0vw 0 0; border-radius: 2vw; color: #fff; letter-spacing: 0.1em; font-size: 75%; font-weight: bold;}
  .newsdetail_cell .detailpagenation .cell .prev .pagenation_info .date,
  .newsdetail_cell .detailpagenation .cell .next .pagenation_info .date { font-size: 75%; font-family: "Montserrat", sans-serif; font-weight: 600; color: #797364; margin: 0 0 0; letter-spacing: 0.05em;}

  .security_img { display: block; width: 25vw; margin: 0 auto 10vw;;}

  .under_ h2.h2_ttl { position: relative; text-align: center; font-size: 137.5%; font-weight: bold; line-height: 1; padding: 0 0 2.3vw; margin: 0 auto 3.2vw; letter-spacing: 0.15em;}
  .under_ h2.h2_ttl:after { display: block; content: ""; position: absolute; bottom: 0; left: 0; right: 0; margin: auto; background: #000; height: 1px; width: 20px; }
  .under_ h2.h2_ttl.wht { color: #fff;}
  .under_ h2.h2_ttl.wht:after { background: #fff;}

  .under_ .btn_gld { display: flex; justify-content: center; align-items: center; width: 20vw; height: 5vw; border: 2px solid #C29826; margin: 0 auto; font-size: 100%; font-family: "Montserrat", sans-serif; font-weight: 500; color: #C29826;}
  .under_ .btn_gld img { width: 1.6vw; margin-left: 1.3vw;}

  .pc_only { display: block !important;}
  .sp_only { display: none !important;}
}

@media (max-width: 768px) {

  .pc_only { display: none !important;}
  .sp_only { display: block !important;}

  body { position: relative; z-index: 1; font-size: 4.2vw; background: #F6F6F7;}
  header { display: flex; justify-content: space-between; height: 16vw; position: fixed; top: 0; left: 0; z-index: 10; width: 100%;}
  header { width: 21vw; margin: 4vw 0 0 4vw; mix-blend-mode: difference;}
  header .logo { width: 21vw; margin: 0; /*background: url(../images/common/logo.png) center no-repeat; background-size: 21vw 11.2vw;*/}
  header .logo .pc_only { display: none !important;}
  header .logo .sp_only { display: block !important;}
  header.active .logo .pc_only { display: block !important;}
  header.active .logo .sp_only { display: none !important;}
  .logo_after { display: block; position: fixed; z-index: 12; width: 21vw; height: 11.5vw; margin: 3.95vw 0 0 4vw; top: -0.2vw; left: 0;}
  .logo_after::after { display: block; content: ""; position: absolute; z-index: 12; width: 21vw; height: 11.5vw; background: url(../images/common/logo_after.png) center no-repeat; background-size: 21vw 11.2vw; margin: 0;}
  .logo_first {display: block; position: fixed; z-index: 13; width: 21vw; height: 11.2vw; margin: 3.95vw 0 0 4vw; top: 0; left: 0;}
  .logo_first::after { display: block; content: ""; position: absolute; z-index: 13; width: 21vw; height: 11.2vw; background: url(../images/common/logo_first.png) center no-repeat; background-size: 21vw 11.2vw; margin: 0;}
  .logo_first.none { display: none;}
  #spMenu { display: flex; justify-content: center; align-items: center; width: 16vw; height: 16vw; transition: all 1s; padding: 0; align-items: center; margin: 0 0 0 0; position: fixed; top: 0; right: 0; background: #C29826; z-index: 100;}
  #spMenu .menu-trigger { position: relative; z-index: 10; width: 16vw; height: 16vw; display: block; margin: auto; top: 0; bottom: 0; left: 0; right: 0;}
  .menu-trigger,.menu-trigger p { display: block; transition: all .4s; box-sizing: border-box; }
  .menu-trigger.down p { position: absolute; left: 0; width: 1.38vw; height: 3px; background: #fff; font-size: 0.1em; border-radius: 2px;}
  .menu-trigger p { position: absolute; left: 5.0vw; width: 5.3vw; height: 3px; background: #fff; font-size: 0.1em; border-radius: 2px;}
  .menu-trigger p:nth-of-type(1) { top: 5.8vw; width: 2.6vw;}
  .menu-trigger p:nth-of-type(2) { top: 7.4vw; }
  .menu-trigger p:nth-of-type(3) { top: 9.0vw; width: 2.6vw; left: 7.7vw;}
  .menu-trigger.active p:nth-of-type(1) { transform: translateY(1.2vw) rotate(-45deg); top: 6.2vw; left: 4.2vw; height: 2px; width: 8vw;}
  .menu-trigger.active p:nth-of-type(2) { opacity: 0; }
  .menu-trigger.active p:nth-of-type(3) { transform: translateY(-1.05vw) rotate(45deg); top: 8.3vw; left: 4.0vw; height: 2px; width: 8vw;}
  .menu-trigger span { position: absolute; font-size: 10px; color: #B60001; text-align: center; top: 48px; left: 0; width: 100%;}

  .side_menu { display: block; position: fixed; width: 68vw; height: 100%; top: 0; right: -120%; z-index: 12; -webkit-transition: all 1s; transition: all 1s; background: #000;}
  .side_menu.active { right: 0;}
  .side_menu ul { list-style: none; margin: 33.3vw 0 0 14.6vw; padding: 0;}
  .side_menu ul li { width: 100%; margin-bottom: 3.3vw;}
  .side_menu ul li a { position: relative; padding: 0 0px 0 0px; margin: 0; width: max-conetnt; color: #fff;/*color: rgba(255,255,255,0.5);*/ font-size: 100%; font-weight: 700; text-align: left; opacity: 1;/*opacity: 0.5;*/}
  .side_menu ul li a:active { color: #fff; opacity: 1;}
  .side_menu ul li a::before {
    position:absolute;bottom:0;left:0;width:100%;height:1px;content:"";background-color:#fff;transform:scaleX(0);transform-origin:left top;animation-duration:.4s;animation-fill-mode:forwards;animation-timing-function:ease-in-out
  }
  .side_menu ul li a:active::before {
    animation-name:footerhover-animation
  }
  @keyframes footerhover-animation{
    0%{
      transform:scaleX(0);
      transform-origin:left top
    }
    45%{
      transform:scale(1);
      transform-origin:left top
    }
    65%{
      transform:scale(1);
      transform-origin:right top
    }
    to{
      transform:scaleX(0);
      transform-origin:right top
    }
  }

  main { width: 100%; background: #F6F6F7;}

  footer { position: relative; z-index: 2; background: #F6F6F7;}
  footer .footer_top { padding: 0vw 0 3.8vw;}
  footer .footer_top .inner { display: flex; justify-content: space-between; flex-wrap: wrap; width: 100%; margin: 0 auto;}
  footer .footer_top .inner .cell { display: none;}
  footer .footer_top .inner .sp_cell { display: flex; flex-wrap: wrap; width: 100%; border-top: 1px solid #000;}
  footer .footer_top .inner .sp_cell p { position: relative; width: 50%; height: 17vw; background: url(../images/common/arrow01.png) 95% center no-repeat; background-size: 4.2vw 4.2vw; margin: 0 0; border-bottom: 1px solid #000;}
  footer .footer_top .inner .sp_cell p:nth-of-type(2n+1)::after { display: block; position: absolute; content: ""; background: #000; width: 1px; height: 100%; right: 0; top: 0;}
  footer .footer_top .inner .sp_cell p.last { /*border-left: 1px solid #000;*/ width: calc(50% - 1px);}
  footer .footer_top .inner .sp_cell p.last:nth-of-type(5) { /*border-left: 1px solid #000;*/ width: 50%;}
  footer .footer_top .inner .sp_cell p a { font-size: 100%; color: #000; font-weight: 600; line-height: 17vw; padding-left: 4.8vw; display: block; width: calc(100% - 4.8vw); height: 100%;}
  footer .footer_top .inner .cell_right { width: 100%; padding: 10.6vw 0;}
  footer .footer_top .inner .cell_right .footer_contact { display: flex; justify-content: center; align-items: center; width: 89%; height: 17vw; margin: 0 auto 5.3vw; border: 2px solid #000; font-size: 100%; color: #000; font-family: "Montserrat", sans-serif; font-weight: 700;}
  footer .footer_top .inner .cell_right ul { display: flex; justify-content: center;}
  footer .footer_top .inner .cell_right ul li { width: 6.4vw; margin: 0 1.8vw 0;}
  footer .footer_btm { background: #000; height: 23.4vw;}
  footer .footer_btm .inner { display: flex; justify-content: center; align-items: center; flex-direction: column; width: 100%; height: 23.4vw; margin: 0 auto; }
  footer .footer_btm .inner ul { display: flex; justify-content: center; font-size: 75%; margin: 0 auto 3vw;}
  footer .footer_btm .inner ul li { margin: 0 3.4vw 0 0; padding: 0 3.4vw 0 0; border-right: 1px solid #fff;}
  footer .footer_btm .inner ul li:last-child { margin: 0 0vw 0 0; padding: 0; border-right: none;}
  footer .footer_btm .inner ul li a { color: #fff;}
  footer .footer_btm .inner .copyright { font-size: 75%; text-align: right; color: #797364; line-height: 1; margin: 0;}


  /* index */
  .kv { position: relative; margin: 0 0; display: block; min-height: 150vw;}
  .kv .scroll { display: block; width: 10px; position: absolute; top: 120vw;/*bottom: 49.3vw;*/ left: 7.6vw; z-index: 3;}
  .kv .scroll span { display: block; position: relative; z-index: 3; padding-bottom: 70px;}
  .scrolldown1 span::after{ content: ""; position: absolute; top: 20.3vw; left: 0; right: 0; margin: auto; width: 1px; height: 30px; background: #000; animation: pathmove 1.4s ease-in-out infinite; opacity:0;}
  @keyframes pathmove{
    0%{
      height:0;
      top:20.3vw;
      opacity: 0;
    }
    30%{
      height:30px;
      opacity: 1;
    }
    100%{
      height:0;
      top:30.3vw;
      opacity: 0;
    }
  }
  .kv .img { position: relative; display: block;}
  .kv .img .first_kv { position: absolute; top: 0; left:0; z-index: 2; -moz-animation: cssAnimation 0s ease-in 5.6s forwards; -webkit-animation: cssAnimation 0s ease-in 5.6s forwards; -o-animation: cssAnimation 0s ease-in 5.6s forwards; animation: cssAnimation 0s ease-in 5.6s forwards; -webkit-animation-fill-mode: forwards; animation-fill-mode: forwards;}
  @keyframes cssAnimation {
    0% {
      opacity: 1;
    }
    90% {
      opacity: 1;
    }
    100% {
      opacity: 0;
    }
  }
  .kv .img #videokey_sp { position: relative; z-index: 1;}
  .kv video {display: block; width: 100%; height: auto; margin: 0 0 0 auto;}
  .kv .ttl { width: 78.6vw; height: max-content; font-size: 237.5%; font-weight: 700; line-height: 2.6; margin: 26.6vw 0 10.6vw 10.6vw; }

  .home .index_ttl h2 { font-size: 300%; font-family: "Montserrat", sans-serif; font-weight: 700; line-height: 1; margin: 0; letter-spacing: 0.05em;}
  .home .index_ttl p { font-size: 87.5%; font-weight: 700; line-height: 1; margin: 0; letter-spacing: 0.1em;}

  .home .viewmore { position: relative; overflow: hidden; display: block; width: 34vw; font-size: 100%; line-height: 1; font-family: "Montserrat", sans-serif; font-weight: 700; color: #000; padding: 3.0vw 0 3.0vw 2.0vw; border-bottom: 1px solid #000; background: url(../images/common/arrow01.png) right center no-repeat; background-size: 4.2vw 4.2vw; transition: ease .2s;}

  div.smoothText { overflow: hidden; display: block;}
  div.smoothTextTrigger{ transition: .8s ease-in-out; transform: translate3d(0,100%,0) skewY(12deg); transform-origin: left; display: block;}
  div.smoothTextTrigger.smoothTextAppear{ transform: translate3d(0,0,0) skewY(0);}

  .cScroll__section_headline { position: relative; overflow: hidden; display: block; width: max-content; opacity: 0;}
  .cScroll__section_headline::after { content: ""; position: absolute; top: 0; left: 0; z-index: 1; width: 100%; height: 100%; background-color: currentColor; transform: translateX(-151%) skewX(-45deg); transition: transform .96s cubic-bezier(0.165, 0.84, 0.44, 1);}
  .cScroll__section_headline.is-active::after { transform: translateX(151%) skewX(-45deg);}
  .cScroll__section_headline.is-active { opacity: 1;}

  .section01 { position: relative; z-index: 3; display: block; margin: -2px auto 32vw; padding-top: 0vw; background: #F6F6F7;}
  .section01 .index_ttl { display: flex; justify-content: center; align-items: center; flex-direction: column; margin: 0 auto 7.6vw;}
  .home .section01 .index_ttl p { margin: 3vw auto 0vw;}
  .section01 .flcell { display: flex; justify-content: space-between; flex-direction: column; width: 100%; margin: 0 auto; background: url(../images/index/section01_bg_sp.jpg) top center no-repeat, #000; background-size: 100% auto, 100%; padding: 0 0 41vw;}
  .section01 .flcell .fleft { width: 69.7%; margin: 0 auto;}
  .section01 .flcell .fright { width: 89%; padding: 4.8vw 0 0; margin: 0 auto; color: #fff;}
  .section01 .flcell .fright h3 { display: flex; flex-direction: column; color: #fff; font-size: 137.5%; margin: 0 0 2.7vw;}
  .section01 .flcell .fright h3 span { position: relative; z-index: 2; display: block; width: max-content; padding: 2.4vw 1.0vw 2.4vw 3.0vw; letter-spacing: 0.2em; line-height: 1; overflow: hidden;}
  .section01 .flcell .fright h3 span::after {
    display: block;
    position: absolute;
    z-index: -1;
    left: 0;
    top: 0;
    content: "";
    background: #797364;
    width: 100%;
    height: 100%;
    animation-name: test_box_slide;
    animation-duration:.5s;
    animation-fill-mode: forwards;
    transform: translateX(-100%);
  }
  @keyframes test_box_slide {
  　0% {
  　　transform: translateX(-100%);
    }
    100% {
    transform: translateX(0%);
    }
  }
  .section01 .flcell .fright p { font-size: 100%; line-height: 2.0; margin: 0 0 5.5vw;}
  .home .section01 .viewmore { color: #fff; padding: 3.0vw 0 3.0vw 2.0vw; margin: 0 auto; border-bottom: 1px solid #fff; background: url(../images/common/arrow02.png) right center no-repeat; background-size: 4.2vw 4.2vw;}
  .fadeleft{
    animation-name:fadeleftAnime;
    animation-duration:0.3s;
    animation-fill-mode:forwards;
    opacity:0;
  }
  .fadeleft_txt{
    animation-name:fadeleftAnime;
    animation-duration:0.3s;
    animation-fill-mode:forwards;
    opacity:0;
  }
  .section02 .fadeleft_txt{
    animation-delay: 0.5s;
  }
  @keyframes fadeleftAnime{
    from {
      opacity: 0;
      transform: translateX(-100px);
    }

    to {
      opacity: 1;
      transform: translateX(0);
    }
  }
  .fadeleftTrigger{
      opacity: 0;
  }
  .fadeleftTrigger_txt{
      opacity: 0;
  }
  .fadeleft02{
    animation-name:fadeleftAnime02;
    animation-duration:0.4s;
    animation-delay: 0.2s;
    animation-fill-mode:forwards;
    opacity:0;
  }
  .section01 .flcell .fright .fadeleft02{
    animation-delay: 0.2s;
  }
  .fadeleft04{
    animation-name:fadeleftAnime02;
    animation-duration:0.5s;
    animation-fill-mode:forwards;
    opacity:0;
  }
  @keyframes fadeleftAnime02{
    from {
      opacity: 0;
      transform: translateX(-100px);
    }

    to {
      opacity: 1;
      transform: translateX(0);
    }
  }
  .fadeleftTrigger02{
      opacity: 0;
  }

  .section02 { display: block; margin: 0 auto 28vw;}
  .section02 .index_ttl { display: flex; justify-content: center; align-items: center; flex-direction: column; margin: 0 auto 17.6vw;}
  .home .section02 .index_ttl p { margin: 3.0vw auto 0;}
  .section02 h3 { font-size: 137.5%; font-weight: 600; line-height: 2.0; margin: 0 0 13.3vw; text-align: center;}
  .section02 h3 span { color: #C29826;}
  .section02 .inner { position: relative;}
  .section02 .inner .bg { position: absolute; left: 0; top: 0; width: 94.6%;}
  .section02 .inner .flcell { position: relative; z-index: 2; display: flex; justify-content: space-between; flex-direction: column; width: 100%; margin: 0 auto;}
  .section02 .inner .flcell .fleft { position: relative;/*width: 48%;*/ width: 70.6vw; height: 69.0vw; margin: 10.6vw 0 22.6vw 8.0vw;}
  .section02 .inner .flcell .fleft .cir { width: 42.9vw; height: 42.9vw; background: none; border: 2px solid #fff; border-radius: 50%; opacity: 0; position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto; opacity: 0;}
  .section02 .inner .flcell .fleft .cir_wht { width: 9.7vw; height: 9.7vw; background: #fff; border-radius: 50%; opacity: 0; position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto; opacity: 0;}
  .section02 .inner .flcell .fleft .cir01 { position: absolute; top: 0; left: 0; right: 0; margin: auto; width: 42.9vw; height: 42.9vw;}
  .section02 .inner .flcell .fleft .txt01 { position: absolute; top: 2.4vw; left: 0; right: 0; margin: auto; width: 26.9vw; opacity: 0;}
  .section02 .inner .flcell .fleft .cir02 { position: absolute; bottom: 0; left: 0; width: 42.9vw; height: 42.9vw;}
  .section02 .inner .flcell .fleft .txt02 { position: absolute; bottom: 10.6vw; left: 4.0vw; width: 21.8vw; opacity: 0;}
  .section02 .inner .flcell .fleft .cir03 { position: absolute; bottom: 0; right: 0; width: 42.9vw; height: 42.9vw;}
  .section02 .inner .flcell .fleft .txt03 { position: absolute; bottom: 10.6vw; right: 6.6vw; width: 15.7vw; opacity: 0;}
  .section02 .inner .flcell .fleft .vcd { position: absolute; /*top: 0; bottom: 0;*/top: 26.6vw; left: 0; right: 0; margin: auto; width: 21.3vw; height: 21.3vw;}
  .section02 .inner .flcell .fleft .vcd_logo { position: absolute; /*top: 0; bottom: 0;*/top: 34.6vw; left: 0; right: 0; margin: auto; width: 12.2vw; height: 6.1vw; opacity: 0;}
  .fadeIn01_01.active{
    animation: expandCircle 1s forwards;
    animation-duration:0.3s;
    animation-delay: 0.3s;
  }
  .fadeIn02_01.active{
    animation: expandCircle 1s forwards;
    animation-duration:0.3s;
    animation-delay: 0.6s;
  }
  .fadeIn03_01.active{
    animation: expandCircle 1s forwards;
    animation-duration:0.3s;
    animation-delay: 0.9s;
  }
  @keyframes expandCircle {
    0% {
      width: 0;
      height: 0;
      opacity: 0;
    }
    100% {
      width: 42.9vw;
      height: 42.9vw;
      opacity: 1;
    }
  }
  .fadeIn01_02.active{
  animation-name:fadeInAnime01_02;
  animation-duration:0.3s;
  animation-delay: 0.3s;
  animation-fill-mode:forwards;
  opacity:0;
  }
  .fadeIn02_02.active{
  animation-name:fadeInAnime01_02;
  animation-duration:0.3s;
  animation-delay: 0.6s;
  animation-fill-mode:forwards;
  opacity:0;
  }
  .fadeIn03_02.active{
  animation-name:fadeInAnime01_02;
  animation-duration:0.3s;
  animation-delay: 0.9s;
  animation-fill-mode:forwards;
  opacity:0;
  }
  .fadeIn_vcd_logo.active{
  animation-name:fadeInAnime01_02;
  animation-duration:0.3s;
  animation-delay: 1.6s;
  animation-fill-mode:forwards;
  opacity:0;
  }
  @keyframes fadeInAnime01_02{
    from {
      opacity: 0;
    }

    to {
      opacity: 1;
    }
  }
  .fadeIn_vcd.active{
    animation: expandCircle02 1s forwards;
    animation-duration:0.3s;
    animation-delay: 1.2s;
  }
  @keyframes expandCircle02 {
    0% {
      width: 0;
      height: 0;
      opacity: 0;
    }
    100% {
      width: 21.3vw;
      height: 21.3vw;
      opacity: 1;
    }
  }

  .section02 .inner .flcell .fright { width: 89%; margin: 0 auto;}
  .section02 .inner .flcell .fright p { font-size: 100%; line-height: 2.0; margin: 0 0 2.5vw;}
  .section02 .inner .flcell .fright p:last-of-type { margin: 0 0 5.2vw;}
  .home .section02 .viewmore { margin: 0 auto 0;}

  .section03 { display: block; margin: 0 auto 32.8vw;}
  .section03 .index_ttl { padding: 0vw 0 16.5vw; background: url(../images/index/section03_bg.png) right bottom no-repeat; background-size: 37.3vw 37.3vw;}
  .section03 .index_ttl .inner { display: flex; justify-content: center; align-items: center; flex-direction: column; width: 66vw; margin: 0 auto 0vw;}
  .home .section03 .index_ttl p { margin: 3.0vw auto 0;}
  .section03 .btm { padding: 17.3vw 0 42.6vw; background: url(../images/index/section03_btm_bg_sp.png) bottom center no-repeat, #000; background-size: 100% auto, 100%; color: #fff;}
  .section03 .btm .inner { display: block; width: 100%; margin: 0 auto 0vw;}
  .section03 .btm .inner p { width: 89%; font-size: 100%; text-align: left; line-height: 2.0; margin: 0 auto 15vw;}
  .section03 .btm .inner .img_cell { display: flex; align-items: center; flex-direction: column; margin: 0 auto 1.0vw; width: 89%;}
  .section03 .btm .inner .img_cell .box { display: flex; justify-content: center; align-items: center; flex-direction: column; width: 100%; height: 49.3vw; padding: 0vw 0vw; position: relative;}
  .section03 .btm .inner .img_cell .box .bg { z-index: 1; position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; width: 100%; height: 49.3vw;}
  .section03 .btm .inner .img_cell .box .bg img { width: 100%; height: 100%; display: block; transition: all .2s; transform: scale(0, 1); transform-origin:center;}
  .section03 .btm .inner .img_cell .box .bg:nth-of-type(3) img {transition: all .2s ease 0.1s;}
  .section03 .btm .inner .img_cell .box .bg:nth-of-type(5) img {transition: all .2s ease 0.2s;}
  .section03 .btm .inner .img_cell .box .bg.active img { transform:scale(1, 1);}

  .section03 .btm .inner .img_cell .box:nth-of-type(1) { margin: -3vw 0;}
  .section03 .btm .inner .img_cell .box:nth-of-type(3) { margin: -3vw 0;}
  .section03 .btm .inner .img_cell .box:nth-of-type(5) { margin: -3vw 0;}
  .section03 .btm .inner .img_cell .box .h3_01 { position: relative; z-index: 2; text-align: center; font-size: 150%; margin: 0 auto 1.5vw; font-family: "Barlow", sans-serif; font-weight: 500; color: #000;}
  .section03 .btm .inner .img_cell .box .h3_02 { position: relative; z-index: 2; text-align: center; font-size: 150%; margin: 0 auto 1.5vw; font-family: "Barlow", sans-serif; font-weight: 500; color: #000; /*color: #C29826;*/}
  .eachTextAnime span{opacity: 0;}
  .eachTextAnime.appeartext span{ animation:text_anime_on 1.0s ease-out forwards;}
  @keyframes text_anime_on {
    0% {opacity:0;}
    100% {opacity:1;}
  }
  .section03 .btm .inner .img_cell .box .c_img { position: relative; z-index: 2; width: 80%; margin: 0 auto; opacity: 0;}
  .fadeLeft_txt.active {
    animation-name:fadeLeft_txtAnime;
    animation-delay: 0.2s;
    animation-duration:0.2s;
    animation-fill-mode:forwards;
    opacity: 0;
  }
  .h3_02.fadeLeft_txt.active {
    animation-name:fadeLeft_txtAnime02;
    animation-delay: 0.2s;
    animation-duration:0.2s;
    animation-fill-mode:forwards;
    opacity: 0;
  }
  .fadeLeft03.active {
    animation-name:fadeLeft03Anime;
    animation-delay: 0.4s;
    animation-duration:0.2s;
    animation-fill-mode:forwards;
    opacity: 0;
  }
  .section03 .btm .inner .arrow .fadeLeft03.active {
    animation-delay: 1.0s;
    animation-duration:0.2s;
  }
  @keyframes fadeLeft03Anime{
    from {
      opacity: 0;
      transform: translateX(-20px);
    }

    to {
      opacity: 1;
      transform: translateX(0);
    }
  }
  @keyframes fadeLeft_txtAnime{
    from {
      opacity: 0;
      transform: translateX(-10px);
    }

    to {
      opacity: 1;
      transform: translateX(0);
    }
  }
  @keyframes fadeLeft_txtAnime02{
    from {
      opacity: 0;
      transform: translateX(-10px);
    }

    to {
      opacity: 1;
      transform: translateX(0);
      color: #C29826;
    }
  }

  .section03 .btm .inner .img_cell .kakeru { position: relative; width: 13.3vw; height: 13.3vw; z-index: 2;}
  .section03 .btm .inner .img_cell .kakeru:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    background: url(../images/index/section03_kakeru.png) no-repeat;
    background-size: 100% 100%;
    width: 13.3vw;
    height: 13.3vw;
    transition: transform .3s cubic-bezier(0.8, 0, 0.2, 1) 0s;
    transform: scale(0, 0);
    transform-origin:center;
  }
  .section03 .btm .inner .img_cell .kakeru.active:before {
    animation-name:fadeSpreadAnime;
    animation-delay: 0.6s;
    animation-duration:0.2s;
    animation-fill-mode:forwards;
    opacity: 0;
  }
  @keyframes fadeSpreadAnime{
    from {
      opacity: 0;
      transform: scale(0, 0);
    }

    to {
      opacity: 1;
      transform:scale(1, 1);
    }
  }
  .section03 .btm .inner .arrow { width: 69.3vw; margin: 0 auto 10.1vw;}
  .section03 .btm .inner .arrow .img_arrow { width: 1.8vw; height: 14.6vw; margin: 0 auto; position: relative; z-index: 2; overflow: hidden;}
  .section03 .btm .inner .arrow .img_arrow::before {
    position: absolute;
    content: '';
    z-index: 1;
    background: url(../images/index/section03_img04_01.png) no-repeat;
    background-size: 100% 100%;
    width: 1.8vw;
    height: 14.6vw;
    transition: all .3s;
    transform: scale(1, 0);
    transform-origin: top;
    opacity: 0;
  }
  .section03 .btm .inner .arrow .img_arrow.active::before {
    animation-name:img-wrap;
    animation-delay: 0.8s;
    animation-duration:0.2s;
    animation-fill-mode:forwards;
    opacity: 0;
  }
  @keyframes img-wrap {
    0% {
      transform: scale(1, 0);
      opacity: 0;
    }
    100% {
      transform: scale(1, 1);
      opacity: 1;
    }
  }
  .section03 .btm .inner .arrow .img_bnr { width: 100%; margin: -0.3vw auto 0; position: relative; z-index: 1; opacity: 0;}
  .home .section03 .viewmore { color: #fff; padding: 3.0vw 0 3.0vw 2.0vw; margin: 0 auto 0; border-bottom: 1px solid #fff; background: url(../images/common/arrow02.png) right center no-repeat; background-size: 4.2vw 4.2vw;}
  .delay-time02.active{ animation-delay: 2.8s;}
  .delay-time04.active{ animation-delay: 3.0s;}
  .delay-time06.active{ animation-delay: 3.2s;}
  .delay-time08.active{ animation-delay: 3.4s;}
  .delay-time10.active{ animation-delay: 3.6s;}
  .delay-time12.active{ animation-delay: 3.8s;}
  .delay-time14.active{ animation-delay: 4.0s;}
  .delay-time16.active{ animation-delay: 4.2s;}
  .delay-time18.active{ animation-delay: 4.4s;}
  .delay-time20.active{ animation-delay: 4.6s;}

  .index_news { margin: 0 auto 32vw; border: 2px solid #000; width: calc(89% - 21.2vw); padding: 17vw 10.6vw;}
  .index_news .flcell { display: flex; justify-content: space-between; flex-direction: column; }
  .index_news .flcell .fleft { width: 100%;}
  .index_news .flcell .fleft h2 { font-size: 300%; font-family: "Montserrat", sans-serif; font-weight: 700; line-height: 1; margin: 0 auto 3.0vw; letter-spacing: 0.05em; text-align: center;}
  .index_news .flcell .fleft p { font-size: 87.5%; font-weight: 600; line-height: 1; margin: 0 0 17vw; letter-spacing: 0.1em; text-align: center;}
  .index_news .flcell .fright { width: 100%;}
  .index_news .flcell .fright ul { margin: 0 0 10.6vw;}
  .index_news .flcell .fright ul li { border-bottom: 1px solid #DDDDDD; padding: 6.4vw 0 6.4vw;}
  .index_news .flcell .fright ul li:first-child { padding: 0vw 0 6.4vw;}
  .index_news .flcell .fright ul li .news_info { display: flex; align-items: center; margin: 0 0 1.0vw;}
  .index_news .flcell .fright ul li .news_info .category { margin: 0; display: block; width: max-content; background: #000; padding: 1.6vw 3.0vw; margin: 0 3.0vw 0 0; color: #fff; font-size: 62.5%; border-radius: 5vw; line-height: 1;}
  .index_news .flcell .fright ul li .news_info .date { margin: 0; font-size: 62.5%; line-height: 1; color: #797364; font-family: "Montserrat", sans-serif; font-weight: 700;}
  .index_news .flcell .fright ul li .title { position: relative; background: url(../images/common/arrow01.png) right center no-repeat; background-size: 4.2vw 4.2vw; padding: 0 8vw 0 0;}
  .index_news .flcell .fright ul li .title a { color: #000;}
  .index_news .flcell .fright a.btn { display: flex; justify-content: center; align-items: center; background: #fff; width: 37.3vw; height: 12.2vw; font-family: "Montserrat", sans-serif; font-weight: 700; margin: 0 auto;}
  .index_news .flcell .fright a.btn img { width: 3.7vw; margin: 0 2.5vw 0 0;}

  .section04 { display: block; margin: 0; background: url(../images/index/section04_bg_tp.jpg) left top no-repeat, #fff; background-size: 100% 6.1vw, 100%; padding: 0 0 32vw;}
  .section04 .inner { width: 100%; margin: 0 auto;}
  .section04 .inner .index_ttl { display: flex; justify-content: center; align-items: center; flex-direction: column; width: 100%; margin: 0 auto 16vw;}
  .section04 .inner .index_ttl p { margin: 3.0vw auto 0;}
  .section04 .inner ul.list_section04 { display: flex; justify-content: space-between; flex-direction: column; width: 89%; margin: 0 auto 0vw;}
  .section04 .inner ul.list_section04 li { position: relative; width: 100%; margin: 0 0 38.6vw;}
  .section04 .inner ul.list_section04 li .img { position: relative; z-index: 1; display: block; width: 100%;}
  .section04 .inner ul.list_section04 li .txtcell { z-index: 2; position: absolute; right: -2.6vw; bottom: -28vw; width: 86.9vw; height: 44vw; background: url(../images/index/section04_txtcell_sp.png) no-repeat; background-size: 100% 100%; color: #fff;}
  .section04 .inner ul.list_section04 li .txtcell .cell { display: flex; justify-content: center; flex-direction: column; height: 44vw; margin: 0 13vw 0 21.8vw;}
  .section04 .inner ul.list_section04 li .txtcell .cell .message { font-size: 100%; line-height: 2.0; margin: 0 0 3.5vw; font-weight: 600;}
  .section04 .inner ul.list_section04 li .txtcell .cell .name { font-size: 75%; line-height: 1.0; margin: 0 0 0vw; color: #fff;}
  .section04 .inner ul.list_section04 li .txtcell .cell .name span { font-size: 116%; margin-right: 3.0vw; font-weight: 600;}
  .section04 .inner ul.list_section04 li .txtcell .cell .name.job { margin: 0 0 0.5vw;}
  .home .section04 .viewmore { margin: 0 auto 0;}

  .section05 { position: relative; z-index: 2; display: block; margin: 0; background: url(../images/index/section05_bg_sp.jpg) center no-repeat; background-size: cover; padding: 0; transition: all .6s; padding: 0 0 26vw;}
  .section05 .flcell { display: flex; align-items: center; flex-direction: column;}
  .section05 .flcell .fleft { position: relative; width: 100%;}
  .section05 .flcell .fright { position: relative; width: 89%; margin: 17vw auto 0; color: #fff;}
  .section05 .flcell .fright .index_ttl { margin: 0 auto 16vw;}
  .section05 .flcell .fright .index_ttl h2 { font-size: 300%; margin: 0 0 0vw; text-align: center; font-family: "Montserrat", sans-serif; font-weight: 700;}
  .section05 .flcell .fright .index_ttl h2 span { font-size: 66.6%; margin-left: 2.0vw;}
  .section05 .flcell .fright .index_ttl p { font-size: 87.5%; text-align: center; margin-top: 3.0vw;}
  .section05 .flcell .fright .txt { font-size: 100%; line-height: 2.0; margin: 0 0 11.4vw;}
  .home .section05 .viewmore { color: #fff; padding: 3.0vw 0 3.0vw 2.0vw; margin: 0 auto; border-bottom: 1px solid #fff; background: url(../images/common/arrow02.png) right center no-repeat; background-size: 4.2vw 4.2vw;}

  /* under */
  .under_ main { position: relative;}
  .under_ main::after { position: fixed; right: 0; top: 0; z-index: 1; display: block; content: ""; width: 76vw; height: 55.2vw; background: url(../images/common/under_bg.png) right top no-repeat; background-size: 76vw 55.2vw;}
  .under_ .pgttl { position: relative; z-index: 2; display: flex; flex-direction: column; justify-content: flex-end; width: 89%; height: 90vw; margin: 0 auto;}
  .under_ .pgttl.pgttl_404 { display: flex; flex-direction: column; justify-content: flex-end; align-items: center; width: 66vw; height: 90vw; margin: 0 auto;}
  .under_ .pgttl h1 { margin: 0; font-size: 350%; font-family: "Montserrat", sans-serif; font-weight: 700; line-height: 1; letter-spacing: 0.05em;}
  .privacy-policy .pgttl h1,
  .security-policy .pgttl h1,
  .members_detail .pgttl h1 { font-size: 350%; line-height: 1.2;}
  .under_ .pgttl p { margin: 8.5vw 0 25vw; font-size: 112.5%; font-weight: 600; line-height: 1; letter-spacing: 0.2em;}
  .under_ .pgttl.pgttl_404 h1 { margin: 0 auto; font-size: 750%; font-family: "Barlow", sans-serif; font-weight: 700; line-height: 1; letter-spacing: 0em; text-align: center;}
  .under_ .pgttl.pgttl_404 p { margin: 5.8vw 0 17vw; font-size: 175%; font-family: "Montserrat", sans-serif; font-weight: 700; line-height: 1; text-align: center;}
  .under_ .viewmore { position: relative; overflow: hidden; display: block; width: max-content; font-size: 100%; line-height: 1; font-family: "Montserrat", sans-serif; font-weight: 700; color: #000; padding: 3.0vw 2.4vw 3.0vw 2.0vw; border-bottom: 1px solid #000; background: url(../images/common/arrow01.png) right center no-repeat; background-size: 4.2vw 4.2vw; transition: ease .2s;}

  .breadcrumb { position: relative; z-index: 2; width: 89%; margin: 0 auto 32vw; display: flex; flex-wrap: wrap;}
  .breadcrumb li { margin: 0 4.2vw 3.0vw 0; color: #797364; font-size: 75%; line-height: 1;}
  .breadcrumb li a { position: relative; color: #000; padding: 0 6.6vw 0 0; line-height: 1;}
  .breadcrumb li a::after { display: block; content: "―"; position: absolute; right: 0; top: 1.0vw; line-height: 1;}

  .under_cell { position: relative; z-index: 2; display: block; width: 89%; margin: 0 auto;}
  .under_cell .lead { text-align: center; font-size: 175%; line-height: 1.8; margin: 0 auto 33vw; font-weight: 800; letter-spacing: 0.2em;}
  .under_cell .lead02 { text-align: center; font-size: 175%; line-height: 1.8; margin: 0 auto 12vw; font-weight: 800; letter-spacing: 0.2em;}

  .under_cell .t_center { font-size: 100%; line-height: 2.0; margin: 0 auto; text-align: left;}
  .under_cell .link_back { display: block; width: max-content; padding: 0 0 0 8.5vw; text-align: center; margin: 0 auto 0; background: url(../images/common/arrow03.png) left center no-repeat; background-size: 4.2vw 4.2vw; font-size: 100%; font-weight: bold;}
  .under_cell .link_back { margin: 22.6vw auto 41.3vw;}

  /* privacy_policy security-policy */
  .under_cell .pp_cell { }
  .under_cell .pp_cell:last-of-type { padding: 0 0 10vw;}
  .under_cell .pp_cell .ttl { font-size: 100%; font-weight: 600; line-height: 2.0; margin: 0 0 5.8vw;}
  .under_cell .pp_cell .txt { font-size: 100%; line-height: 2.0; margin: 0 0 12vw;}
  .under_cell .pp_cell ul { font-size: 100%; margin: 0 0 12vw 1em; list-style: decimal; }
  .under_cell .pp_cell ul li { margin: 0 0 10.6vw;}

  .under_cell .tbl01 { width: 100%; margin: 0 0 10.6vw; border-collapse: collapse;}
  .under_cell .tbl01 thead { }
  .under_cell .tbl01 thead th { text-align: center; font-weight: 600; padding: 3.0vw 0; font-size: 100%; border: 1px solid #797364;}
  .under_cell .tbl01 thead th:nth-of-type(1) { width: 30%;}
  .under_cell .tbl01 thead th:nth-of-type(2) { width: 70%;}
  .under_cell .tbl01 tbody { }
  .under_cell .tbl01 tbody td { text-align: left; padding: 3.0vw 3.0vw; font-size: 100%; line-height: 2.0; border: 1px solid #797364; vertical-align: top;}
  .under_cell .tbl02, .tbl02 { display: block; width: 100%; margin: 0 0 6.6vw; border: 1px solid #DDDDDD; border-bottom: none;}
  .under_cell .tbl02 tr, .tbl02 tr { display: flex; flex-direction: column;}
  .under_cell .tbl02 th, .tbl02 th { width: 100%; text-align: center; font-weight: 600; padding: 5.3vw 0; font-size: 100%; border-bottom: 1px solid #DDDDDD;}
  .under_cell .tbl02 td, .tbl02 td { width: calc(100% - 10.6vw); text-align: left; padding: 5.3vw 5.3vw; border-bottom: 1px solid #DDDDDD;}
  .under_cell .tbl02 td .ttl, .tbl02 td .ttl { font-size: 100%; font-weight: bold; color: #797364; line-height: 1.0; margin: 0 0 4.0vw;}
  .under_cell .tbl02 td .txt, .tbl02 td .txt { font-size: 87.5%; line-height: 2.0; margin: 0 0 5.3vw;}
  .under_cell .tbl02 td .txt:last-of-type, .tbl02 td .txt:last-of-type { margin: 0 0 0vw;}

  /* members */
  .under_cell ul.list_members { display: flex; flex-wrap: wrap; width: 100%; margin: 0 auto 9.7vw;}
  .under_cell ul.list_members li { position: relative; width: 100%; margin: 0 0% 11.1vw 0;}
  .under_cell ul.list_members li { position: relative; width: 100%; margin: 0 0 38.6vw;}
  .under_cell ul.list_members li .img { position: relative; z-index: 1; display: block; width: 100%;}
  .under_cell ul.list_members li .txtcell { z-index: 2; position: absolute; right: -2.6vw; bottom: -28vw; width: 86.9vw; height: 44vw; background: url(../images/index/section04_txtcell_sp.png) no-repeat; background-size: 100% 100%; color: #fff;}
  .under_cell ul.list_members li .txtcell .cell { display: flex; justify-content: center; flex-direction: column; height: 44vw; margin: 0 13vw 0 21.8vw;}
  .under_cell ul.list_members li .txtcell .cell .message { font-size: 100%; line-height: 1.8; margin: 0 0 3.5vw; font-weight: 600;}
  .under_cell ul.list_members li .txtcell .cell .name { font-size: 75%; line-height: 1.0; margin: 0 0 0vw; color: #fff;}
  .under_cell ul.list_members li .txtcell .cell .name span { font-size: 116%; margin-right: 3.0vw; font-weight: 600;}
  .under_cell ul.list_members li .txtcell .cell .name.job { margin: 0 0 1.5vw;}

  .members_detail { display: block; position: relative; z-index: 2;}
  .members_kv { position: relative; margin: 0 0 44vw;}
  .members_kv .kv_img { position: relative; z-index: 2; width: 94.6%; display: flex; flex-direction: column-reverse;}
  .members_kv .kv_img .mskImg { width: 100%; height: 50.6vw;}
  .members_kv .kv_img .mskImg img { width: 100%; height: 50.6vw; object-fit: cover; border-radius: 0 25.3vw 25.3vw 0;}
  .members_kv .kv_img p { padding: 0 5.3vw; margin: 0 auto 18.4vw; z-index: 3; color: #000; letter-spacing: 0.2em; font-size: 175%; font-weight: 700; line-height: 1.8; }
  .members_kv .txtcell { z-index: 3; position: absolute; left: 0; right: 0; bottom: -24vw; margin: auto; width: 68.6vw;/*width: 58.6vw;*/ height: 38.3vw;/*height: 33.3vw;*/ background: url(../images/index/section04_txtcell.png) no-repeat; background-size: 100% 100%; color: #fff;}
  .members_kv .txtcell .cell { display: flex; justify-content: center; flex-direction: column; height: 38.3vw;/*height: 33.3vw;*/ margin: 0 7.0vw 0 14vw;}
  .members_kv .txtcell .cell .job { font-size: 75%; line-height: 1.5; margin: 0 0 1.5vw; font-weight: 400;}
  .members_kv .txtcell .cell .name { font-size: 112.5%; font-weight: 600; line-height: 1.0; margin: 0 0 0vw; color: #fff; letter-spacing: 0.2em;}
  .members_career { background: #fff; padding: 13vw 0vw; margin: 0 auto 32vw;}
  .members_career .cell { width: 89%; margin: 0 auto; display: flex; align-items: center; flex-direction: column;}
  .members_career .cell p { text-align: center; width: 100%; font-size: 100%; font-weight: 700; color: #797364; line-height: 1; margin: 0 auto 5.3vw; padding: 0 0 5.3vw; letter-spacing: 0.2em; border-bottom: 1px solid #DDDDDD;}
  .members_career .cell ul { width: 100%; list-style: none;}
  .members_career .cell ul li { position: relative; padding: 0 0 0 1em; margin: 0 0 2.6vw; font-size: 87.5%;}
  .members_career .cell ul li:last-child { margin: 0;}
  .members_qa { width: 89%; margin: 0 auto 13.3vw;}
  .members_qa .qa_q { position: relative; font-size: 112.5%; font-weight: bold; line-height: 2.0; margin: 0 0 12vw; padding: 20vw 0 0;}
  .members_qa .qa_q::before { position: absolute; display: block; content: "Q"; top: 0; left: 0; margin: 0; line-height: 1; color: #C29826; font-size: 250%; font-weight: 700; font-family: "Montserrat", sans-serif;}
  .members_qa .qa_a { font-size: 100%; line-height: 2.0; margin: 0 0 0vw; padding: 0vw 0 0;}
  .members_qa.left_cell { width: 100%; margin: 0 0 10.7vw auto; display: flex; justify-content: space-between; flex-direction: column;}
  .members_qa.right_cell { width: 100%; margin: 0 auto 10.7vw 0; display: flex; justify-content: space-between; flex-direction: column;}
  .members_qa.left_cell .qa_cell,
  .members_qa.right_cell .qa_cell { width: 89%; margin: 0 auto 32vw;}
  .members_qa.left_cell .img,
  .members_qa.right_cell .img { width: 89%;}
  .members_qa.left_cell .img { -webkit-mask-image: url(/wp-content/themes/vcd/images/member/mask01.png); -webkit-mask-repeat: no-repeat; -webkit-mask-size: 100% 84vw; mask-image: url(/wp-content/themes/vcd/images/member/mask01.png); mask-repeat: no-repeat; mask-size: 100% 84vw; margin: 0 0 0 auto;}
  .members_qa.right_cell .img { -webkit-mask-image: url(/wp-content/themes/vcd/images/member/mask02.png); -webkit-mask-repeat: no-repeat; -webkit-mask-size: 100% 84vw; mask-image: url(/wp-content/themes/vcd/images/member/mask02.png); mask-repeat: no-repeat; mask-size: 100% 84vw;}
  .members_qa.left_cell .img img,
  .members_qa.right_cell .img img { object-fit: cover; object-position: 50% 50%; width: 100%; height: 84vw;}
  .member_sub { display: block; width: 89%; margin: 0 auto 32vw;}
  .member_sub img { display: block; margin: 0 auto 10.6vw;}
  .member_sub p { font-size: 100%; line-height: 2.0; margin: 0;}
  .member_other { position: relative; z-index: 2; padding: 33.3vw 0 32vw; background: #fff;}
  .member_other h2 { font-size: 250%; text-align: center; font-family: "Montserrat", sans-serif; font-weight: 700; line-height: 1.4; margin: 0 0 5.5vw; letter-spacing: 0.05em;}
  .under_ .member_other .viewmore { width: 17.3vw; margin: 0 auto;}
  .under_ .section05 .viewmore { width: 33.3vw; margin: 0 auto; color: #fff; border-bottom: 1px solid #fff; background: url(../images/common/arrow02.png) right center no-repeat; background-size: 4.2vw 4.2vw;}

  /* aboutus */
  .aboutus_img01 { display: block; margin: 17vw auto 30.6vw; width: 89vw;}
  .aboutus_sec01 { position: relative; z-index: 2; background: #fff; padding: 32vw 0 32vw;}
  .aboutus_sec01 ul { border: 1px solid #DDDDDD; display: flex; flex-direction: column; padding: 0vw 0vw;}
  .aboutus_sec01 ul li { width: calc(100% - 18.6vw);  border-bottom: 1px solid #DDDDDD; padding: 9.3vw 9.3vw;}
  .aboutus_sec01 ul li:last-child { border-bottom: none;}
  .aboutus_sec01 ul li .ttl { text-align: center; font-size: 112.5%; font-weight: bold; color: #797364; padding: 0 0 5.3vw; margin: 0 auto 5.3vw; line-height: 1; border-bottom: 1px solid #DDDDDD; letter-spacing: 0.1em;}
  .aboutus_sec01 ul li .txt { text-align: left; font-size: 100%; line-height: 2.0; margin: 0;}
  .aboutus_sec02 { padding: 32vw 0 32vw; margin: 0 auto 0;}
  .aboutus_sec02 .flcell { display: flex; justify-content: space-between; flex-direction: column; margin: 0 0 10.1vw;}
  .aboutus_sec02 .flcell .fright { width: 100%; margin-bottom: 16.8vw;}
  .aboutus_sec02 .flcell .fleft { width: 100%;}
  .aboutus_sec02 h3 { display: flex; flex-direction: column;}
  .aboutus_sec02 h3 span { display: block; width: max-content;}
  .aboutus_sec02 h3 { display: flex; flex-direction: column; color: #fff; font-size: 175%; margin: 0 0 9.0vw;}
  .aboutus_sec02 h3 span { position: relative; z-index: 2; display: block; width: max-content; padding: 3.2vw 2.2vw 3.2vw 3.2vw; letter-spacing: 0.1em; line-height: 1; overflow: hidden;}
  .aboutus_sec02 h3 span::after {
    display: block;
    position: absolute;
    z-index: -1;
    left: 0;
    top: 0;
    content: "";
    background: #000;
    width: 100%;
    height: 100%;
    animation-name: test_box_slide02;
    animation-duration:.5s;
    animation-fill-mode: forwards;
    transform: translateX(-100%);
  }
  @keyframes test_box_slide02 {
  　0% {
  　　transform: translateX(-100%);
    }
    100% {
    transform: translateX(0%);
    }
  }
  .aboutus_sec02 .txt {font-size: 100%; line-height: 2.0; margin: 0 0 10.1vw;}
  .aboutus_sec02 .txt:last-of-type { margin: 0 0 0vw;}
  .aboutus_sec03 { padding: 0vw 0 30vw; margin: 0 auto 0vw;}
  .aboutus_sec03 dl { display: flex; flex-wrap: wrap; flex-direction: column; border-top: 1px solid #DDDDDD;}
  .aboutus_sec03 dl:last-of-type { border-bottom: 1px solid #DDDDDD;}
  .aboutus_sec03 dl dt { padding: 6.6vw 0 5.0vw; width: 100%; font-size: 100%; font-weight: bold;}
  .aboutus_sec03 dl dd { padding: 0vw 0 6.6vw; width: 100%; font-size: 100%;}
  .aboutus_sec03 dl dd a { text-decoration: underline; color: #797364;}
  .aboutus_sec04 { position: relative; z-index: 2; padding: 0 0 48vw; background: url(/wp-content/themes/vcd/images/aboutus/aboutus_sec04_bg.png) right bottom no-repeat; background-size: 37vw 37vw;}
  .aboutus_sec04 ul { display: flex; flex-wrap: wrap; margin: 0 0 6.6vw;}
  .aboutus_sec04 ul li { background: #fff; width: 100%; margin: 0 0% 1.8vw 0vw; text-align: center; padding: 3.4vw 0;}
  .aboutus_sec04 .s_txt {text-align: center; font-size: 75%; color: #797364; margin: 0 auto 18.6vw;}
  .aboutus_sec05 { position: relative; z-index: 2; background: #000; padding: 24vw 0 21.3vw;}
  .aboutus_sec05 .ttl { position: absolute; display: block; width: 89vw; margin: auto; top: -12.5vw; left: 0; right: 0;}
  .aboutus_sec05 .ttl .sub { font-size: 250%; font-family: "Montserrat", sans-serif; font-weight: 600; color: #000; line-height: 1; letter-spacing: 0.05em; margin: 0 0 1.0vw;}
  .aboutus_sec05 .ttl h2 { font-size: 375%; font-family: "Montserrat", sans-serif; font-weight: 600; color: #fff; line-height: 1; letter-spacing: 0.05em; margin-top: -1.3vw;}
  .aboutus_sec05 .gallery_slider { width: 89vw; margin: 0 auto; position: relative;}
  .aboutus_sec05 .gallery_slider .prev-arrow { position: absolute; top: 16.8vw; left: -2.6vw; width: 8.0vw; z-index: 3;}
  .aboutus_sec05 .gallery_slider .next-arrow { position: absolute; top: 16.8vw; right: -2.6vw; width: 8.0vw; z-index: 3;}
  .aboutus_sec05 .gallery_slider li.slick-slide img {aspect-ratio: 16 / 9;}
  .aboutus_sec05 .gallery_slider .slider-dots { width: 100%; margin: 4.0vw auto 0; padding: 0; text-align: left; list-style: none;}
  .aboutus_sec05 .gallery_slider .slider-dots li { display: inline-block; width: 18%; margin: 0 2.5% 0vw 0;}
  .aboutus_sec05 .gallery_slider .slider-dots li:nth-child(5n) { margin: 0 0% 0vw 0;}
  .aboutus_sec05 .gallery_slider .slider-dots li button { position: relative; width: 100%; height: 6px; border: 0; background-color: #797364; font-size: 0;}
  .aboutus_sec05 .gallery_slider .slider-dots li button:after { position: absolute; top: 0; left: 0; content: ""; display: block; width: 100%; height: 100%;}
  .aboutus_sec05 .gallery_slider .slider-dots li.slick-active button:after { background-color: #C29826; /*animation: progress 5.5s linear forwards;*/}
  @keyframes progress {
    from {
      width: 0%;
    }

    to {
      width: 100%;
    }
  }

  /* recruit */
  .recruit .breadcrumb { margin: 0 auto 97.3vw;}
  .recruit_cell .r_section01 { position: relative; z-index: 2; background: #000; padding: 0vw 0;}
  .recruit_cell .r_section01 .img { position: absolute; top: -68vw; right: 0; width: 94.6vw;}
  .recruit_cell .r_section01 .cell { display: block; width: 89vw; padding: 44vw 0 30vw; margin: 0 auto; color: #fff;}
  .recruit_cell .r_section01 .cell .txt { width: 100%;}
  .recruit_cell .r_section01 .cell .txt h2 { font-size: 175%; font-weight: bold; line-height: 1.8; margin: 0 0 10.6vw; letter-spacing: 0.2em;}
  .recruit_cell .r_section01 .cell .txt p { font-size: 100%; line-height: 2.0; margin: 0 0 9.6vw; letter-spacing: 0.1em;}
  .recruit_cell .r_section01 .cell .txt p:last-of-type { margin: 0 0 0vw;}
  .recruit_cell .r_section02 { position: relative; z-index: 2; background: url(/wp-content/themes/vcd/images/recruit/r_section02_bg.png) top right no-repeat; background-size: 37vw 37vw; padding: 0vw 0; padding: 49.3vw 0 30.6vw;}
  .recruit_cell .r_section02 .cell { position: relative; margin: 0 0 38.6vw;}
  .recruit_cell .r_section02 .cell:last-of-type { margin: 0 0 0vw;}
  .recruit_cell .r_section02 .cell .flcell { display: flex; justify-content: center; flex-direction: column; width: 100%; margin: 0 auto;}
  .recruit_cell .r_section02 .cell .flcell .fleft { position: relative; width: calc(100% - 11vw); color: #fff; padding: 25.3vw 5.5vw 24.3vw; background: #000; margin: 0 0 10.6vw;}
  .recruit_cell .r_section02 .cell .flcell .fleft h2 { position: absolute; top: -6.4vw; left: 5.5vw;; display: flex; flex-direction: column; font-size: 137.5%;}
  .recruit_cell .r_section02 .cell .flcell .fleft h2 span { position: relative; z-index: 2; display: block; width: max-content; padding: 3.4vw 4.0vw; letter-spacing: 0.1em; line-height: 1; overflow: hidden;}
  .recruit_cell .r_section02 .cell .flcell .fleft h2 span::after {
    display: block;
    position: absolute;
    z-index: -1;
    left: 0;
    top: 0;
    content: "";
    background: #797364;
    width: 100%;
    height: 100%;
    animation-name: test_box_slide;
    animation-duration:.5s;
    animation-fill-mode: forwards;
    transform: translateX(-100%);
  }
  .recruit_cell .r_section02 .cell .flcell .fleft p { padding: 0 0 0; font-size: 100%; line-height: 2.0; margin: 0 0 10.6vw;}
  .recruit_cell .r_section02 .cell .flcell .fleft p:last-of-type { margin-bottom: 8.3vw;}
  .recruit_cell .r_section02 .cell.rev .flcell .fleft h2 { padding: 0 0 0 5.5vw;}
  .recruit_cell .r_section02 .cell.rev .flcell .fleft p { padding: 0 0 0 5.5vw;}
  .recruit_cell .r_section02 .cell .flcell .fleft .num { position: absolute; bottom: 0; right: 0; width: 45.3vw;}
  .recruit_cell .r_section02 .cell.rev .flcell .fleft .num { bottom: 0; right: inherit; left: 0; width: 45.3vw;}
  .recruit_cell .r_section02 .cell .flcell .fright { width: 89vw; margin: 0 auto 0vw; padding: 2.6vw 2.6vw; background: url(/wp-content/themes/vcd/images/recruit/kado01.png) top left no-repeat, url(/wp-content/themes/vcd/images/recruit/kado02.png) top right no-repeat, url(/wp-content/themes/vcd/images/recruit/kado03.png) bottom left no-repeat, url(/wp-content/themes/vcd/images/recruit/kado04.png) bottom right no-repeat; background-size: 2.1vw 2.1vw, 2.1vw 2.1vw, 2.1vw 2.1vw, 2.1vw 2.1vw;}
  .recruit_cell .r_section02 .cell .flcell .fright li { display: block; padding: 6.4vw 6.4vw; background: #fff; margin: 0 0 2.1vw;}
  .recruit_cell .r_section02 .cell .flcell .fright li:last-child { margin: 0 0 0vw;}
  .recruit_cell .r_section02 .cell .flcell .fright li .ttl { font-size: 112.5%; font-weight: bold; margin: 0 0 5.3vw; line-height: 1;}
  .recruit_cell .r_section02 .cell .flcell .fright li .txt { font-size: 100%; margin: 0 0 0vw; line-height: 2.0;}
  .recruit_cell .r_section03 { position: relative; z-index: 2; background: #fff; padding: 32vw 0 32vw;}
  .recruit_cell .r_section03 ul { display: flex; flex-wrap: wrap; width: 89vw; margin: 0 auto; border-top: 1px solid #DDDDDD; border-left: 1px solid #DDDDDD; border-right: 1px solid #DDDDDD;}
  .recruit_cell .r_section03 ul li { width: calc(100% - 5.4vw); border-bottom: 1px solid #DDDDDD; padding: 8.0vw 5.3vw;}
  .recruit_cell .r_section03 ul li .ttl { text-align: center; font-size: 112.5%; font-weight: bold; color: #797364; margin: 0 auto 5.3vw; line-height: 1;}
  .recruit_cell .r_section03 ul li .txt { font-size: 100%; line-height: 2.0; margin: 0;}
  .recruit_cell .r_section04 { position: relative; z-index: 2; background: url(/wp-content/themes/vcd/images/recruit/r_section04_bg.png) bottom right no-repeat; background-size: 37vw 37vw; padding: 32vw 0 40vw;}
  .recruit_cell .r_section04 .under_cell .t_center { text-align: center;}
  .recruit_cell .r_section04 .img { display: block; margin: 10.6vw auto 0; width: 100%;}
  .recruit_cell .r_section05 { position: relative; z-index: 2; background: #000; padding: 32vw 0 13.8vw;}
  .recruit_cell .r_section05 .h2_ttl { margin-bottom: 16vw;}
  .recruit_cell .r_section05 .cell { position: relative; display: block; width: 78.4vw; margin: 0 auto 17.3vw; background: #fff; padding: 14.5vw 5.3vw 17.3vw;}
  .recruit_cell .r_section05 .cell .box { width: 100%; margin: 0 auto;}
  .recruit_cell .r_section05 .cell .box h3 { position: absolute; left: 0; right: 0; top: -6.0vw; display: block; font-size: 175%; color: #fff; width: max-content; background: #797364; padding: 2.4vw 3.0vw; margin: auto; line-height: 1; letter-spacing: 0.1em;}
  .recruit_cell .r_section05 .cell .box .lead { font-size: 100%; margin: 0 0 8.0vw; line-height: 2.0;}
  .recruit_cell .r_section05 .cell .box .btn_gld { width: 100%;}
  .recruit_cell .r_section06 { position: relative; z-index: 2; background: #FFFFFF; padding: 32vw 0 32vw;}
  .recruit_cell .r_section06 dl { display: flex; flex-wrap: wrap; flex-direction: column; border-top: 1px solid #DDDDDD;}
  .recruit_cell .r_section06 dl:last-of-type { border-bottom: 1px solid #DDDDDD;}
  .recruit_cell .r_section06 dl dt { padding: 6.6vw 0 5.0vw; width: 100%; font-size: 100%; font-weight: bold;}
  .recruit_cell .r_section06 dl dd { padding: 0vw 0 6.6vw; width: 100%; font-size: 100%;}
  .recruit_cell .r_section06 dl dd a { text-decoration: underline; color: #797364;}
  .recruit_cell .r_section07 { position: relative; z-index: 2; padding: 0; background: #000;}
  .recruit_cell .r_section07 a { position: relative; z-index: 2; display: flex; justify-content: center; align-items: center; width: 100%; height: 80vw; text-align: center; color: #fff; line-height: 1; font-size: 200%; font-family: "Montserrat", sans-serif; font-weight: 600; letter-spacing: 0.4em;}
  .recruit_cell .r_section07 a::after { display: block; position: absolute; z-index: 3; content: ""; width: 89vw; height: 21.3vw; background: url(/wp-content/themes/vcd/images/recruit/r_section07_bg_sp.png) bottom no-repeat; background-size: 100% 100%; bottom: 0; right: 0;}

  /* service */
  .service_kv { position: relative; z-index: 2; background: #000; padding: 32vw 0 32vw;}
  .service_kv .img_cell { display: flex; align-items: center; flex-direction: column; margin: 0 auto 1.0vw; width: 89%;}
  .service_kv .img_cell .box { display: flex; justify-content: center; align-items: center; flex-direction: column; width: 100%; height: 49.3vw; padding: 0vw 0vw; position: relative;}
  .service_kv .img_cell .box .bg { z-index: 1; position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; width: 100%; height: 49.3vw;}
  .service_kv .img_cell .box .bg img { width: 100%; height: 100%; display: block; transition: all .2s; transform: scale(0, 1); transform-origin:center;}
  .service_kv .img_cell .box .bg:nth-of-type(3) img {transition: all .2s ease 0.1s;}
  .service_kv .img_cell .box .bg:nth-of-type(5) img {transition: all .2s ease 0.2s;}
  .service_kv .img_cell .box .bg.active img { transform:scale(1, 1);}

  .service_kv .img_cell .box:nth-of-type(1) { margin: -3vw 0;}
  .service_kv .img_cell .box:nth-of-type(3) { margin: -3vw 0;}
  .service_kv .img_cell .box:nth-of-type(5) { margin: -3vw 0;}
  .service_kv .img_cell .box .h3_01 { position: relative; z-index: 2; text-align: center; font-size: 150%; margin: 0 auto 1.5vw; font-family: "Barlow", sans-serif; font-weight: 500; color: #000;}
  .service_kv .img_cell .box .h3_02 { position: relative; z-index: 2; text-align: center; font-size: 150%; margin: 0 auto 1.5vw; font-family: "Barlow", sans-serif; font-weight: 500; color: #C29826;}
  .service_kv .img_cell .box .c_img { position: relative; z-index: 2; width: 80%; margin: 0 auto; opacity: 0;}
  .service_kv .img_cell .kakeru { position: relative; width: 13.3vw; height: 13.3vw; z-index: 2;}
  .service_kv .img_cell .kakeru:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    background: url(../images/index/section03_kakeru.png) no-repeat;
    background-size: 100% 100%;
    width: 13.3vw;
    height: 13.3vw;
    transition: transform .3s cubic-bezier(0.8, 0, 0.2, 1) 0s;
    transform: scale(0, 0);
    transform-origin:center;
  }
  .service_kv .img_cell .kakeru.active:before {
    animation-name:fadeSpreadAnime;
    animation-delay: 2.0s;
    animation-duration:0.2s;
    animation-fill-mode:forwards;
    opacity: 0;
  }
  .service_kv .arrow { width: 69.3vw; margin: 0 auto 10.1vw;}
  .service_kv .arrow .img_arrow { width: 1.8vw; height: 14.6vw; margin: 0 auto; position: relative; z-index: 2; overflow: hidden;}
  .service_kv .arrow .img_arrow::before {
    position: absolute;
    content: '';
    z-index: 1;
    background: url(../images/index/section03_img04_01.png) no-repeat;
    background-size: 100% 100%;
    width: 1.8vw;
    height: 14.6vw;
    transition: all .3s;
    transform: scale(1, 0);
    transform-origin: top;
    opacity: 0;
  }
  .service_kv .arrow .img_arrow.active::before {
    animation-name:img-wrap;
    animation-delay: 2.5s;
    animation-duration:0.3s;
    animation-fill-mode:forwards;
    opacity: 0;
  }
  .service_kv .arrow .img_bnr { width: 100%; margin: -0.3vw auto 0; position: relative; z-index: 1;}
  .service_about { position: relative; z-index: 2; padding: 42vw 0 42vw; background: url(../images/service/service_about_top.png) right top no-repeat, url(../images/service/service_about_btm.png) right bottom no-repeat; background-size: 37vw 37vw, 37vw 37vw;}
  .service_about .ttl { text-align: center; line-height: 1; font-size: 137.5%; font-weight: bold; line-height: 2.0; color: #797364; margin: 0 auto 13vw; letter-spacing: 0.1em;}
  .service_about .txt { text-align: left; line-height: 2.0; font-size: 100%; color: #000; margin: 0 auto 10.6vw; letter-spacing: 0.1em;}
  .service_about .txt span { font-weight: bold;}
  .service_about .txt:last-of-type { margin: 0 auto 0vw;}
  .service_flow { position: relative; z-index: 2; background: #000; padding: 0 0vw 10.7vw;}
  .service_flow .ttl { position: absolute; display: block; top: -13.0vw; left: 0; right: 0;}
  .service_flow .ttl .sub { font-size: 250%; font-family: "Montserrat", sans-serif; font-weight: 600; color: #000; line-height: 1; letter-spacing: 0.05em; margin: 0 0 1.0vw;}
  .service_flow .ttl h2 { font-size: 375%; font-family: "Montserrat", sans-serif; font-weight: 600; color: #fff; line-height: 1; letter-spacing: 0.05em; margin-top: -1.3vw;}
  .service_flow .img { padding: 22.6vw 0 0;}
  .service_case { position: relative; z-index: 2; padding: 32vw 0 33.2vw; background: #fff;}
  .list_service_case { }
  .list_service_case li.cell { margin: 0 0 10.6vw; padding: 0 0 10.6vw; border-bottom: 1px solid #DDDDDD;}
  .list_service_case li.cell:last-child { margin: 0 0; padding: 0 0; border-bottom: none;}
  .list_service_case li.cell .txt_case { font-size: 75%; font-family: "Montserrat", sans-serif; font-weight: 600; color: #000; line-height: 1; letter-spacing: 0.05em; margin: 0 0 4.0vw;}
  .list_service_case li.cell .flcell { display: flex; justify-content: space-between; flex-direction: column;}
  .list_service_case li.cell .flcell .img { width: 100%; margin: 0 0 9.3vw;}
  .list_service_case li.cell .flcell .img img { aspect-ratio: 16 / 9; object-fit: cover;}
  .list_service_case li.cell .flcell .txt_cell { width: 100%;}
  .list_service_case li.cell .flcell .txt_cell h3 { display: block; font-size: 137.5%; color: #fff; width: max-content; background: #797364; padding: 2.4vw 3.0vw; margin: 0; line-height: 1; letter-spacing: 0.1em;}
  .list_service_case li.cell .flcell .txt_cell .subttl { display: block; font-size: 112.5%; color: #fff; width: max-content; background: #000; padding: 2.4vw 3.0vw; margin: 0 0 4.0vw; line-height: 1; letter-spacing: 0.1em;}
  .list_service_case li.cell .flcell .txt_cell .tab { display: flex; flex-wrap: wrap; margin: 0 0 5.3vw;}
  .list_service_case li.cell .flcell .txt_cell .tab li { display: block; padding: 1.3vw 4.0vw; margin: 0 2.6vw 0 0; background: #DAD8D2; border-radius: 2px; font-weight: bold; font-size: 67.5%; color: #797364; letter-spacing: 0.1em;}
  .list_service_case li.cell .flcell .txt_cell .txt { font-size: 100%; line-height: 2.0; margin: 0 0 0;}
  .list_service_case li.cell .flcell .txt_cell .txt p { font-size: 100%; line-height: 2.0; margin: 0 0 5.0vw; word-break: normal;}
  .list_service_case li.cell .flcell .txt_cell .txt p:last-of-type { margin: 0 0 0vw;}
  .service_experts { padding: 32vw 0 32vw;}
  .service_experts h2 { text-align: center; font-size: 375%; font-family: "Montserrat", sans-serif; font-weight: 600; color: #000; line-height: 1; letter-spacing: 0.05em; margin: 0 0 11.4vw;}
  .service_experts .service_experts_lead { font-size: 137.5%; font-weight: bold; line-height: 2.0; margin: 0 0 12vw; letter-spacing: 0.1em; text-align: center;}
  .service_experts .list_service_experts { margin: 0 0 21.3vw;}
  .service_experts .list_service_experts li { display: flex; flex-direction: column; margin: 0 0 6.4vw;}
  .service_experts .list_service_experts li:last-child { margin: 0 0 0vw;}
  .service_experts .list_service_experts li .img { width: 100%;}
  .service_experts .list_service_experts li .txt_cell { width: calc(100% - 9.6vw); background: #000; color: #fff; padding: 10.6vw 4.8vw;}
  .service_experts .list_service_experts li .txt_cell .subttl { font-size: 75%; color: #F6F6F7; margin: 0 0 4.2vw; line-height: 1;}
  .service_experts .list_service_experts li .txt_cell h3 { font-size: 112.5%; color: #fff; font-weight: bold; margin: 0 0 6.9vw; line-height: 1; letter-spacing: 0.1em;}
  .service_experts .list_service_experts li .txt_cell h3 span { font-size: 66%; font-family: "Montserrat", sans-serif; font-weight: 600; color: #C29826; margin-left: 3.7vw; letter-spacing: 0.05em;}
  .service_experts .list_service_experts li .txt_cell .txt_ttl { position: relative; font-size: 87.5%; font-weight: bold; color: #797364; margin: 0 0 4.0vw; line-height: 1; letter-spacing: 0.05em;}
  .service_experts .list_service_experts li .txt_cell .txt_ttl::after { display: block; position: absolute; content: ""; background: #372F2F; width: calc(100% - 4em); height: 1px; right: 0; top: 0; bottom: 0; margin: auto;}
  .service_experts .list_service_experts li .txt_cell .txt { font-size: 87.5%; color: #fff; margin: 0 0 0; line-height: 2.0; letter-spacing: 0.05em;}


  /* contact */
  .contact_flow { display: block; width: 80vw; margin: 0 auto 17vw;}
  .contact_cell { display: block; margin: 12vw auto 0vw; padding: 12vw 0 0; border-top: 1px solid #DDDDDD;}
  .contact_lead { font-size: 137.5%; font-weight: bold; text-align: center; margin: 0 auto 3.4vw;}
  .contact_cell .flcell { display: flex; justify-content: space-between; flex-direction: column; margin: 0 0 2.7vw;}
  .contact_cell .flcell .fleft { width: 100%; display: flex; align-items: center; margin: 0vw 0 6.0vw; font-size: 100%; font-weight: bold;}
  .contact_cell .flcell .fleft span { display: flex; justify-content: center; align-items: center; width: 8.0vw; height: 5.3vw; font-size: 62.5%; color: #fff; background: #CD6B6B; font-weight: normal; border-radius: 2px; margin-left: 4.0vw;}
  .contact_cell .flcell .fright { width: 100%; font-size: 100%; margin: 0 0 10.6vw;}
  .contact_cell .flcell:last-of-type .fright { margin: 0 0 0vw;}
  .contact_cell .open_normal .flcell:last-of-type .fright,
  .contact_cell .open_new .flcell:last-of-type .fright { margin: 0 0 10.6vw;}
  .contact_cell .flcell .fright input[type=text] { display: block; width: calc(100% - 6.0vw); height: 17vw; line-height: 17vw; padding: 0 3.0vw; border: none; background: #fff; font-size: 100%; font-family: YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;}
  .contact_cell .flcell .fright textarea { display: block; width: calc(100% - 6.0vw); height: 53.8vw; padding: 3.0vw 3.0vw; line-height: 2.0; border: none; background: #fff; font-size: 100%; font-family: YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;}
  .contact_cell .flcell .fright.is-error input[type=text],
  .contact_cell .flcell .fright.is-error textarea { border: 1px solid #E25F5F;}
  ::placeholder { color: #DAD8D2; font-size: 100%;}
  .contact_cell .flcell .fright .contact_select { margin-top: 1.0vw;}
  .contact_cell .txt_pp { position: relative; padding: 0 0 18.0vw; text-align: center; margin: 10.6vw auto 0vw; }
  .contact_btn { display: flex; justify-content: center; align-items: center; margin: 0 auto 42.6vw;}
  .under_ input.btn_contact_gld { cursor: pointer; position: relative; display: flex; justify-content: center; align-items: center; width: 89vw; height: 21.3vw; border: 2px solid #C29826; margin: 0; padding: 0 1.6vw 0 0; font-size: 100%; font-weight: bold; letter-spacing: 0.1em; color: #C29826; background: url(/wp-content/themes/vcd/images/common/arrow04.png) 70% center no-repeat; background-size: 4.2vw 4.2vw;}
  .under_cell .contact_btn .link_back { margin: 0 5.5vw 0 0; border: none; font-weight: bold; color: #000; font-size: 100%;}
  .contact_confirm .contact_cell { background: #fff; padding: 12vw 5.3vw; border: none;}
  .contact_confirm .contact_cell .flcell:last-of-type { margin: 0 0 0vw;}
  .contact_confirm .contact_cell .flcell .fleft { margin: 0vw 0 0;}
  .contact_confirm .contact_cell .flcell .fleft span { display: none;}
  .contact_confirm .contact_cell .open_normal,
  .contact_confirm .contact_cell .open_new { margin: 0 0 2.7vw;}
  .contact_confirm .contact_cell .open_normal .flcell:last-of-type,
  .contact_confirm .contact_cell .open_new .flcell:last-of-type { margin: 0 0 2.7vw;}
  .contact_confirm .contact_cell .txt_pp { display: none;}
  .contact_confirm .contact_btn { margin: 10.6vw auto 42.6vw; width: 89%;}
  .under_ .contact_confirm input.link_back { height: 21.3vw; width: 30vw; display: block; font-size: 100%;}
  .under_ .contact_confirm input.btn_contact_gld { width: 40.2vw; background: url(/wp-content/themes/vcd/images/common/arrow04.png) 85% center no-repeat; background-size: 4.2vw 4.2vw;}
  .mw_wp_form_input .open_new {display: none;}
  .mw_wp_form_input .open_normal {display: none;}
  .mw_wp_form .contact_cell .error { position: relative; display: block; width: calc(100% - 5.2vw + 2px); padding: 2.6vw 2.6vw; margin: 4.2vw 0 0; background: #E25F5F; color: #fff; font-size: 87.5%; font-weight: bold;}
  .mw_wp_form .contact_cell .error::after { display: block; position: absolute; content: ""; width: 2.6vw; height: 2.1vw; background: url(/wp-content/themes/vcd/images/common/icon_error.png) no-repeat; background-size: 100% 100%; top: -2.1vw; left: 4.2vw;}
  .mw_wp_form .contact_cell .txt_pp .error { position: absolute; bottom: 4.0vw; left: 0; right: 0; width: 73vw; margin: 1.0vw auto 0; text-align: left;}
  .contact_confirm .under_cell { width: 100%;}
  .contact_confirm .under_cell .t_center {margin: 0 auto; width: 89%;}

  /* news */
  .news_categorylist { display: flex; justify-content: center; margin: 0 auto 11.1vw;}
  .news_categorylist p a { display: block; padding: 1.0vw 2.5vw; border-radius: 6vw; font-size: 62.5%; color: #fff; background: #000;}
  .news_categorylist.other p a { background: #DAD8D2;}
  .news_categorylist ul { display: flex; justify-content: center; border-left: 1px solid #ddd; padding: 0 0 0 3.0vw; margin: 0 0 0 3.0vw;}
  .news_categorylist ul li { margin: 0 3.0vw 0 0;}
  .news_categorylist ul li a { display: block; padding: 1.0vw 2.5vw; border-radius: 6vw; font-size: 62.5%; color: #fff; background: #DAD8D2;}
  .news_categorylist ul li a.is-active { background: #000; }

  .list_news { margin: 0 auto 10.3vw;}
  .list_news li a { display: flex; justify-content: space-between; padding: 3.4vw 0 3.4vw; border-bottom: 1px solid #DDDDDD;}
  .list_news li a .img { width: 35.8%;}
  .list_news li a .img img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover;}
  .list_news li a .txtcell { position: relative; width: calc(59% - 6.4vw); padding: 0 6.4vw 0 0;}
  .list_news li a .txtcell::after { display: block; position: absolute; content: ""; right: 0; top: 0; bottom: 0; margin: auto; width: 4.2vw; height: 4.2vw; background: url(../images/common/arrow01.png) no-repeat; background-size: 100% 100%;}
  .list_news li a .txtcell .info { display: flex; align-items: center; margin: 0 0 2.3vw;}
  .list_news li a .txtcell .category { display: block; width: max-content; background: #000; padding: 1.0vw 2.5vw; margin: 0 0; border-radius: 6vw; color: #fff; letter-spacing: 0.1em; font-size: 62.5%; font-weight: bold;}
  .list_news li a .txtcell .date { font-size: 62.5%; font-family: "Montserrat", sans-serif; font-weight: 600; color: #797364; margin: 0 0 0 2.3vw; letter-spacing: 0.05em;}
  .list_news li a .txtcell .ttl { color: #000; font-size: 100%; line-height: 2.0; margin: 0;}
  .newsdetail_cell { position: relative; z-index: 2;}
  .newsdetail_cell .under_cell { margin-bottom: 16vw;}
  .newsdetail_cell .newsdetail_info { display: flex; align-items: center; margin: 0 auto 2.7vw}
  .newsdetail_cell .newsdetail_info .category { display: block; width: max-content; background: #000; padding: 1.0vw 2.5vw; margin: 0 2.3vw 0 0; border-radius: 6vw; color: #fff; letter-spacing: 0.1em; font-size: 62.5%; font-weight: bold;}
  .newsdetail_cell .newsdetail_info .date { font-size: 62.5%; font-family: "Montserrat", sans-serif; font-weight: 600; color: #797364; margin: 0 0 0; letter-spacing: 0.05em;}
  .newsdetail_cell h2 { font-size: 137.5%; font-weight: bold; line-height: 2.0; margin: 0 0 21.3vw; padding: 0 0 12vw; border-bottom: 1px solid #DDDDDD;}
  .newsdetail_cell .news_main { margin: 0 auto 42.1vw;}
  .newsdetail_cell .news_main .mainimg { display: block; margin: 0 auto 16vw;}
  .newsdetail_cell .news_main .mainimg img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover;}
  .newsdetail_cell .news_main p { font-size: 100%; line-height: 2.0;}
  .newsdetail_cell .detailpagenation { background: #fff; padding: 0vw 6.6vw;}
  .newsdetail_cell .detailpagenation .cell { position: relative; display: flex; justify-content: space-between; flex-direction: column; width: 100%; margin: 0 auto; align-items: center;}
  .newsdetail_cell .detailpagenation .cell .prev { position: relative; width: calc(100% - 20vw); padding: 8.0vw 10vw 8.0vw 10vw;}
  .newsdetail_cell .detailpagenation .cell .prev::after { display: block; position: absolute; content: ""; width: 4.2vw; height: 4.2vw; background: url(../images/common/arrow03.png) right center no-repeat; background-size: 100% 100%; top: 0; bottom: 0; left: 0; margin: auto;}
  .newsdetail_cell .detailpagenation .cell .next { position: relative; width: calc(100% - 20vw); padding: 8.0vw 10vw 8.0vw 10vw; border-top: 1px solid #ddd;}
  .newsdetail_cell .detailpagenation .cell .next::after { display: block; position: absolute; content: ""; width: 4.2vw; height: 4.2vw; background: url(../images/common/arrow01.png) right center no-repeat; background-size: 100% 100%; top: 0; bottom: 0; right: 0; margin: auto;}
  .newsdetail_cell .detailpagenation .cell .prev .pagenation_info,
  .newsdetail_cell .detailpagenation .cell .next .pagenation_info { display: flex; align-items: center; margin: 0 0 2.3vw;}
  .newsdetail_cell .detailpagenation .cell .prev .pagenation_info .category,
  .newsdetail_cell .detailpagenation .cell .next .pagenation_info .category { display: block; width: max-content; background: #000; padding: 1.0vw 2.5vw; margin: 0 2.3vw 0 0; border-radius: 6vw; color: #fff; letter-spacing: 0.1em; font-size: 62.5%; font-weight: bold;}
  .newsdetail_cell .detailpagenation .cell .prev .pagenation_info .date,
  .newsdetail_cell .detailpagenation .cell .next .pagenation_info .date { font-size: 62.5%; font-family: "Montserrat", sans-serif; font-weight: 600; color: #797364; margin: 0 0 0; letter-spacing: 0.05em;}

  .security_img { display: block; width: 65vw; margin: 0 auto 15vw;;}

  .under_ h2.h2_ttl { position: relative; text-align: center; font-size: 137.5%; font-weight: bold; line-height: 1; padding: 0 0 5.3vw; margin: 0 auto 9.3vw; letter-spacing: 0.15em;}
  .under_ h2.h2_ttl:after { display: block; content: ""; position: absolute; bottom: 0; left: 0; right: 0; margin: auto; background: #000; height: 1px; width: 20px; }
  .under_ h2.h2_ttl.wht { color: #fff;}
  .under_ h2.h2_ttl.wht:after { background: #fff;}

  .under_ .btn_gld { display: flex; justify-content: center; align-items: center; width: 89vw; height: 19.2vw; border: 2px solid #C29826; margin: 0 auto; font-size: 100%; font-family: "Montserrat", sans-serif; font-weight: 500; color: #C29826;}
  .under_ .btn_gld img { width: 4.2vw; margin-left: 4.0vw;}

  html,body { overflow-x: hidden;}

}


.hide-area{
  display: none;
}

.modaal-close:after,
.modaal-close:before{
  background:#ccc;
}

.modaal-close:focus:after,
.modaal-close:focus:before,
.modaal-close:hover:after,
.modaal-close:hover:before{
  background:#666;
}

#modaal-title{
  font-size:1.2rem;
  text-align: center;
  margin: 0 0 20px 0;
}

.modaal-video .modaal-inner-wrapper{
  padding:0;
}

/* 20240508 add */
@media (min-width: 769px) {
  .kv { min-height: 50vw;}
  .news_txt { margin-bottom: 10vw;}
}
@media (max-width: 768px) {
  .kv { min-height: 150vw;}
  .news_txt { margin-bottom: 30vw;}
}

.kv,
.kv .img { display: block;}
