@charset "UTF-8";

body {
    animation: fadeIn 2s ease 0s 1 normal;
    -webkit-animation: fadeIn 2s ease 0s 1 normal;
}

/*@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}*/

.ownerBlocks {
  display: flex;
  margin-bottom: 1.5em;
  justify-content: center;
  align-items: flex-end;
}

.block-reverse {
  flex-direction: row-reverse;
}

.ownerBlocks-left,
.ownerBlocks-right {
  /*padding: 0.5em 0.75em;*/
}

.ownerBlocks-left {
  /*flex: 0 60%;*/
  width: 70%;
}

.ownerBlocks-right {
  /*flex: 1;*/
  width: 140px;
}

@media all and (max-width: 640px) {
  .ownerBlocks {
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }

  .ownerBlocks-right,
  .ownerBlocks-left {
    flex: 100%;
    padding: 0.5em 0.75em;
  }

  .ownerBlocks-left {
    width: 100%;
  }

  .ownerBlocks-right {
    width: 140px;
  }
}

/*---------------------------------------------*/

/* _system
---------------------------------------------------------------------------------------*/
.systemBlocks {
  margin: 4rem auto;
  display: block;
}

@media all and (max-width: 768px) {
  .systemBlocks {
    margin: 1rem auto;
    padding: 0 0.25em;
    display: block;
  }
}

.systemBlocks img {
  margin: 0 auto;
}

.border-btm {
  padding: 0 0 0.2em;
  border-bottom: solid 2px #1e1e1e;
  margin-bottom: 2em;
  text-align: center;
}

.ttl-deco {
  text-align: center;
  font-size:1.5rem;
  font-weight: bold;
}

.ttl-deco:before {
  content: "";
  display: inline-block;
  background: url("../images/ttl_bg_left.svg") no-repeat;
  position: relative;
  top: 0;
  margin-right: 0.5em;
  width: 26px;
  height: 26px;
  vertical-align: bottom;
}

.ttl-deco:after {
  content: "";
  display: inline-block;
  background: url("../images/ttl_bg_right.svg") no-repeat;
  position: relative;
  top: 0;
  margin-left: 0.5em;
  width: 26px;
  height: 26px;
  vertical-align: bottom;
}

.system-h3{
  font-size:1.8rem;
  font-feature-settings: "palt";
}

_:-ms-fullscreen, :root .system-h3 {
  font-feature-settings: "pwid";
}


@media all and (max-width: 640px) {
.system-h3{
  font-size:1.4rem;
}
}

.mt-40p {
  margin-top: 40px;
}

.mb-60p {
  margin-bottom: 60px;
}

.system_wrapper {
    max-width: 700px;
    margin: 0 auto;
}

.nv-box{
margin: 0 90px 30px 0;
text-align: right;
}

img.has-arrow{
    margin: 30px 0 20px;
}
/*---------------------------------------------*/

/* _faq
---------------------------------------------------------------------------------------*/
.faq-arrow {
  display: block;
  position: relative;
  z-index: 10;
}

.faq-arrow:after {
  content: "";
  display: inline-block;
  width: 53px;
  height: 29px;
  background: url("../images/faq_icon_arrow_pc.png") no-repeat;
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  z-index: -5;
  right: -30px;
  top: 110px;
}

div.faq-q {
  padding-left: 10px;
  padding-right: 30px;
}

div.faq-a {
  padding-right: 0;
  padding-left: 40px;
  padding-bottom: 1.6rem;
}

@media all and (max-width: 640px) {
  .faq-arrow:after {
    content: "";
    display: inline-block;
    width: 30px;
    height: 45px;
    background: url("../images/faq_icon_arrow_sp.svg") no-repeat;
    background-size: contain;
    vertical-align: middle;
    position: absolute;
    z-index: -5;
    right: 42%;
    top: initial;
    bottom: -35px;
  }

  div.faq-q {
    padding-left: 5px;
    padding-right: 5px;
  }

  div.faq-a {
    padding-right: 5px;
    padding-left: 5px;
    padding-top: 38px;
    padding-bottom: 1.6rem;
  }
}


/*---------------------------------------------*/

/* _value
---------------------------------------------------------------------------------------*/
/*100nen*/
.vision-catch {
  margin: 0 0 28px;
  font-size: 25px;
  line-height: 1.8;
  font-weight: 700;
}
@media all and (max-width: 640px) {
  .vision-catch {
    margin: 0 0 8px;
    font-size: 14px;
    line-height: 1.9;
    text-align: center
  }
}

.vision-lead {
  margin: 0 0 72px;
  font-size: 20px;
  line-height: 2
}
@media all and (max-width: 640px) {
  .vision-lead {
    margin: 50px 20px 30px;
    font-size: 16px;
    line-height: 1.65;
    text-align: justify;
  }
}

.vision-white-ttl {
  margin: 0 0 26px;
  font-size: 22px;
  line-height: 1.9;
	font-weight: 800;
}
@media all and (max-width: 640px) {
  .vision-white-ttl {
    margin: 0 0 8px;
    font-size: 16px;
    line-height: 1.9;
  }
}
.vision-white-text {
  margin: 0;
  font-size: 18px;
  line-height: 2.45;
  font-feature-settings: "palt";
  font-weight: 500;
}
_:-ms-fullscreen, :root .vision-white-text {
  font-feature-settings: "pwid";
}

@media all and (max-width: 640px) {
  .vision-white-text {
    margin: 0;
    font-size: 16px;
    line-height: 1.65;
  }
}
.vision-bottom-ttl {
  margin: 0 0 64px;
  font-size: 20px;
  line-height: 2.2
}
@media all and (max-width: 640px) {
  .vision-bottom-ttl {
    border-top: 1px solid #e4d2b6;
    padding: 37px 0 0;
    margin: 0 0 25px;
    font-size: 14px;
    line-height: 1.75;
    text-align: left
  }
}

.button,
.button2 {
  text-align: center;
  cursor: pointer;
  transition: 0.5s;
}

.bg-value {
  background: #fdfcf9 !important;
}

.value_list div {
  padding: 1.2rem 0 0.2rem 0;
}

@media all and (max-width: 640px) {
  .value_list div {
    padding: 0.4rem 0 0 0;
  }
}






.anime-elm {
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation-duration: 1.2s;
    animation-duration: 1.2s;
    opacity: 0
}
.set-anime {
    -webkit-animation-name: fadeInUp;
    animation-name: fadeInUp
}
.set-anime.fade-in {
    -webkit-animation-name: fadeIn;
    animation-name: fadeIn
}
.set-anime.fade-in-down {
    -webkit-animation-name: fadeInDown;
    animation-name: fadeInDown
}
.set-anime.fade-in-top {
    -webkit-animation-name: fadeInTop;
    animation-name: fadeInTop
}
.set-anime.fade-in-left {
    -webkit-animation-name: fadeInLeft;
    animation-name: fadeInLeft
}
.set-anime.fade-in-left-lg {
    -webkit-animation-name: fadeInLeftLg;
    animation-name: fadeInLeftLg
}
.set-anime.fade-in-left-sp {
    -webkit-animation-name: fadeInLeftSp;
    animation-name: fadeInLeftSp
}
.set-anime.fade-in-right {
    -webkit-animation-name: fadeInRight;
    animation-name: fadeInRight
}
.set-anime.fade-in-top-left {
    -webkit-animation-name: fadeInTopLeft;
    animation-name: fadeInTopLeft
}
.set-anime.fade-in-top-right {
    -webkit-animation-name: fadeInTopRight;
    animation-name: fadeInTopRight
}
.set-anime.fade-in-bottom-left {
    -webkit-animation-name: fadeInBottomLeft;
    animation-name: fadeInBottomLeft
}
.set-anime.fade-in-bottom-right {
    -webkit-animation-name: fadeInBottomRight;
    animation-name: fadeInBottomRight
}
@-webkit-keyframes fadeIn {
    0% {
        opacity: 0
    }
    to {
        opacity: 1
    }
}
@keyframes fadeIn {
    0% {
        opacity: 0
    }
    to {
        opacity: 1
    }
}
@-webkit-keyframes fadeInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(20px);
        transform: translateY(20px)
    }
    to {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}
@keyframes fadeInUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(20px);
        transform: translateY(20px)
    }
    to {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}
@-webkit-keyframes fadeInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px)
    }
    to {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}
@keyframes fadeInDown {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px)
    }
    to {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}
@-webkit-keyframes fadeInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(20px);
        transform: translateX(20px)
    }
    to {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}
@keyframes fadeInLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateX(20px);
        transform: translateX(20px)
    }
    to {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}
@-webkit-keyframes fadeInLeftLg {
    0% {
        opacity: 0;
        -webkit-transform: translateX(30px);
        transform: translateX(30px)
    }
    to {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}
@keyframes fadeInLeftLg {
    0% {
        opacity: 0;
        -webkit-transform: translateX(30px);
        transform: translateX(30px)
    }
    to {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}
@-webkit-keyframes fadeInLeftSp {
    0% {
        opacity: 0;
        -webkit-transform: translateX(20px);
        transform: translateX(20px)
    }
    to {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}
@keyframes fadeInLeftSp {
    0% {
        opacity: 0;
        -webkit-transform: translateX(20px);
        transform: translateX(20px)
    }
    to {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}
@-webkit-keyframes fadeInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-20px);
        transform: translateX(-20px)
    }
    to {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}
@keyframes fadeInRight {
    0% {
        opacity: 0;
        -webkit-transform: translateX(-20px);
        transform: translateX(-20px)
    }
    to {
        opacity: 1;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}
@-webkit-keyframes fadeInTop {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px)
    }
    to {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}
@keyframes fadeInTop {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-20px);
        transform: translateY(-20px)
    }
    to {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}
@-webkit-keyframes fadeInTopLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-30px) translateX(-30px);
        transform: translateY(-30px) translateX(-30px)
    }
    to {
        opacity: 1;
        -webkit-transform: translateY(0) translateX(0);
        transform: translateY(0) translateX(0)
    }
}
@keyframes fadeInTopLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-30px) translateX(-30px);
        transform: translateY(-30px) translateX(-30px)
    }
    to {
        opacity: 1;
        -webkit-transform: translateY(0) translateX(0);
        transform: translateY(0) translateX(0)
    }
}
@-webkit-keyframes fadeInTopRight {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-30px) translateX(30px);
        transform: translateY(-30px) translateX(30px)
    }
    to {
        opacity: 1;
        -webkit-transform: translateY(0) translateX(0);
        transform: translateY(0) translateX(0)
    }
}
@keyframes fadeInTopRight {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-30px) translateX(30px);
        transform: translateY(-30px) translateX(30px)
    }
    to {
        opacity: 1;
        -webkit-transform: translateY(0) translateX(0);
        transform: translateY(0) translateX(0)
    }
}
@-webkit-keyframes fadeInBottomLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateY(30px) translateX(-30px);
        transform: translateY(30px) translateX(-30px)
    }
    to {
        opacity: 1;
        -webkit-transform: translateY(0) translateX(0);
        transform: translateY(0) translateX(0)
    }
}
@keyframes fadeInBottomLeft {
    0% {
        opacity: 0;
        -webkit-transform: translateY(30px) translateX(-30px);
        transform: translateY(30px) translateX(-30px)
    }
    to {
        opacity: 1;
        -webkit-transform: translateY(0) translateX(0);
        transform: translateY(0) translateX(0)
    }
}
@-webkit-keyframes fadeInBottomRight {
    0% {
        opacity: 0;
        -webkit-transform: translateY(30px) translateX(30px);
        transform: translateY(30px) translateX(30px)
    }
    to {
        opacity: 1;
        -webkit-transform: translateY(0) translateX(0);
        transform: translateY(0) translateX(0)
    }
}
@keyframes fadeInBottomRight {
    0% {
        opacity: 0;
        -webkit-transform: translateY(30px) translateX(30px);
        transform: translateY(30px) translateX(30px)
    }
    to {
        opacity: 1;
        -webkit-transform: translateY(0) translateX(0);
        transform: translateY(0) translateX(0)
    }
}
@media only screen and(max-width:640px) {
    @-webkit-keyframes fadeInDown {
        0% {
            opacity: 0;
            -webkit-transform: translateY(20px);
            transform: translateY(20px)
        }
        to {
            opacity: 1;
            -webkit-transform: translateY(0);
            transform: translateY(0)
        }
    }
    @keyframes fadeInDown {
        0% {
            opacity: 0;
            -webkit-transform: translateY(20px);
            transform: translateY(20px)
        }
        to {
            opacity: 1;
            -webkit-transform: translateY(0);
            transform: translateY(0)
        }
    }
    @-webkit-keyframes fadeInLeft {
        0% {
            opacity: 0;
            -webkit-transform: translateY(20px);
            transform: translateY(20px)
        }
        to {
            opacity: 1;
            -webkit-transform: translateY(0);
            transform: translateY(0)
        }
    }
    @keyframes fadeInLeft {
        0% {
            opacity: 0;
            -webkit-transform: translateY(20px);
            transform: translateY(20px)
        }
        to {
            opacity: 1;
            -webkit-transform: translateY(0);
            transform: translateY(0)
        }
    }
    @-webkit-keyframes fadeInRight {
        0% {
            opacity: 0;
            -webkit-transform: translateY(20px);
            transform: translateY(20px)
        }
        to {
            opacity: 1;
            -webkit-transform: translateY(0);
            transform: translateY(0)
        }
    }
    @keyframes fadeInRight {
        0% {
            opacity: 0;
            -webkit-transform: translateY(20px);
            transform: translateY(20px)
        }
        to {
            opacity: 1;
            -webkit-transform: translateY(0);
            transform: translateY(0)
        }
    }
    @-webkit-keyframes fadeInTopLeft {
        0% {
            opacity: 0;
            -webkit-transform: translateY(20px);
            transform: translateY(20px)
        }
        to {
            opacity: 1;
            -webkit-transform: translateY(0);
            transform: translateY(0)
        }
    }
    @keyframes fadeInTopLeft {
        0% {
            opacity: 0;
            -webkit-transform: translateY(20px);
            transform: translateY(20px)
        }
        to {
            opacity: 1;
            -webkit-transform: translateY(0);
            transform: translateY(0)
        }
    }
    @-webkit-keyframes fadeInTopRight {
        0% {
            opacity: 0;
            -webkit-transform: translateY(20px);
            transform: translateY(20px)
        }
        to {
            opacity: 1;
            -webkit-transform: translateY(0);
            transform: translateY(0)
        }
    }
    @keyframes fadeInTopRight {
        0% {
            opacity: 0;
            -webkit-transform: translateY(20px);
            transform: translateY(20px)
        }
        to {
            opacity: 1;
            -webkit-transform: translateY(0);
            transform: translateY(0)
        }
    }
    @-webkit-keyframes fadeInBottomLeft {
        0% {
            opacity: 0;
            -webkit-transform: translateY(20px);
            transform: translateY(20px)
        }
        to {
            opacity: 1;
            -webkit-transform: translateY(0);
            transform: translateY(0)
        }
    }
    @keyframes fadeInBottomLeft {
        0% {
            opacity: 0;
            -webkit-transform: translateY(20px);
            transform: translateY(20px)
        }
        to {
            opacity: 1;
            -webkit-transform: translateY(0);
            transform: translateY(0)
        }
    }
    @-webkit-keyframes fadeInBottomRight {
        0% {
            opacity: 0;
            -webkit-transform: translateY(20px);
            transform: translateY(20px)
        }
        to {
            opacity: 1;
            -webkit-transform: translateY(0);
            transform: translateY(0)
        }
    }
    @keyframes fadeInBottomRight {
        0% {
            opacity: 0;
            -webkit-transform: translateY(20px);
            transform: translateY(20px)
        }
        to {
            opacity: 1;
            -webkit-transform: translateY(0);
            transform: translateY(0)
        }
    }
}

.delay1 {
    -webkit-animation-delay: 0.1s;
    animation-delay: 0.1s
}
.delay2 {
    -webkit-animation-delay: 0.2s;
    animation-delay: 0.2s
}
.delay3 {
    -webkit-animation-delay: 0.3s;
    animation-delay: 0.3s
}
.delay4 {
    -webkit-animation-delay: 0.4s;
    animation-delay: 0.4s
}
.delay5 {
    -webkit-animation-delay: 0.5s;
    animation-delay: 0.5s
}
.delay6 {
    -webkit-animation-delay: 0.6s;
    animation-delay: 0.6s
}
.delay7 {
    -webkit-animation-delay: 0.7s;
    animation-delay: 0.7s
}
.delay8 {
    -webkit-animation-delay: 0.8s;
    animation-delay: 0.8s
}
.delay9 {
    -webkit-animation-delay: 0.9s;
    animation-delay: 0.9s
}
.delay10 {
    -webkit-animation-delay: 1s;
    animation-delay: 1s
}
.delay11 {
    -webkit-animation-delay: 1.1s;
    animation-delay: 1.1s
}
.delay12 {
    -webkit-animation-delay: 1.2s;
    animation-delay: 1.2s
}
.delay13 {
    -webkit-animation-delay: 1.3s;
    animation-delay: 1.3s
}
.delay14 {
    -webkit-animation-delay: 1.4s;
    animation-delay: 1.4s
}
.delay15 {
    -webkit-animation-delay: 1.5s;
    animation-delay: 1.5s
}
.delay16 {
    -webkit-animation-delay: 1.6s;
    animation-delay: 1.6s
}
.delay17 {
    -webkit-animation-delay: 1.7s;
    animation-delay: 1.7s
}
.delay18 {
    -webkit-animation-delay: 1.8s;
    animation-delay: 1.8s
}
.delay19 {
    -webkit-animation-delay: 1.9s;
    animation-delay: 1.9s
}
.delay20 {
    -webkit-animation-delay: 2s;
    animation-delay: 2s
}
.delay21 {
    -webkit-animation-delay: 2.1s;
    animation-delay: 2.1s
}
.delay22 {
    -webkit-animation-delay: 2.2s;
    animation-delay: 2.2s
}
.delay23 {
    -webkit-animation-delay: 2.3s;
    animation-delay: 2.3s
}
.delay24 {
    -webkit-animation-delay: 2.4s;
    animation-delay: 2.4s
}
.delay25 {
    -webkit-animation-delay: 2.5s;
    animation-delay: 2.5s
}
.delay26 {
    -webkit-animation-delay: 2.6s;
    animation-delay: 2.6s
}
.delay27 {
    -webkit-animation-delay: 2.7s;
    animation-delay: 2.7s
}
.delay28 {
    -webkit-animation-delay: 2.8s;
    animation-delay: 2.8s
}
.delay29 {
    -webkit-animation-delay: 2.9s;
    animation-delay: 2.9s
}
.delay30 {
    -webkit-animation-delay: 3s;
    animation-delay: 3s
}
.delay31 {
    -webkit-animation-delay: 3.1s;
    animation-delay: 3.1s
}
.delay32 {
    -webkit-animation-delay: 3.2s;
    animation-delay: 3.2s
}
.delay33 {
    -webkit-animation-delay: 3.3s;
    animation-delay: 3.3s
}
.delay34 {
    -webkit-animation-delay: 3.4s;
    animation-delay: 3.4s
}
.delay35 {
    -webkit-animation-delay: 3.5s;
    animation-delay: 3.5s
}
.delay36 {
    -webkit-animation-delay: 3.6s;
    animation-delay: 3.6s
}
.delay37 {
    -webkit-animation-delay: 3.7s;
    animation-delay: 3.7s
}
.delay38 {
    -webkit-animation-delay: 3.8s;
    animation-delay: 3.8s
}
.delay39 {
    -webkit-animation-delay: 3.9s;
    animation-delay: 3.9s
}
.delay40 {
    -webkit-animation-delay: 4s;
    animation-delay: 4s
}
.delay41 {
    -webkit-animation-delay: 4.1s;
    animation-delay: 4.1s
}
.delay42 {
    -webkit-animation-delay: 4.2s;
    animation-delay: 4.2s
}
.delay43 {
    -webkit-animation-delay: 4.3s;
    animation-delay: 4.3s
}
.delay44 {
    -webkit-animation-delay: 4.4s;
    animation-delay: 4.4s
}
.delay45 {
    -webkit-animation-delay: 4.5s;
    animation-delay: 4.5s
}
.delay46 {
    -webkit-animation-delay: 4.6s;
    animation-delay: 4.6s
}
.delay47 {
    -webkit-animation-delay: 4.7s;
    animation-delay: 4.7s
}

.vision-white-img-box {
    position: relative;
    max-width: 873px;
    margin: 0 0 76px;
    padding-top: 38.52272727272727%
}
.vision-img {
    position: absolute;
    -webkit-animation-duration: 1.8s;
    animation-duration: 1.8s;
    -webkit-animation-delay: 10s;
    animation-delay: 10s
}
.vision-img01 {
    top: 0;
    left: .3436426116838488%;
    right: .9163802978235969%;
    margin: 2.7491408934707904% 0 0;
    -webkit-animation-delay: 75ms;
    animation-delay: 75ms
}
.vision-img02 {
    top: 0;
    left: 12.829324169530354%;
    margin: 0;
    width: 9.163802978235967%;
    -webkit-animation-delay: 0.325s;
    animation-delay: 0.325s
}
.vision-img03 {
    top: 0;
    left: 10.767468499427263%;
    margin: 12.714776632302405% 0 0;
    width: 13.172966781214205%;
    -webkit-animation-delay: 0.5525s;
    animation-delay: 0.5525s
}
.vision-img04 {
    top: 0;
    left: 0;
    margin: 18.785796105383735% 0 0;
    width: 19.129438717067583%;
    -webkit-animation-delay: 0.825s;
    animation-delay: 0.825s
}
.vision-img05 {
    top: 0;
    left: 1.2600229095074456%;
    margin: 26.002290950744563% 0 0;
    width: 15.578465063001145%;
    -webkit-animation-delay: 1.0575s;
    animation-delay: 1.0575s
}
.vision-img06 {
    top: 0;
    left: 15.807560137457044%;
    margin: 18.785796105383735% 0 0;
    width: 20.274914089347078%;
    -webkit-animation-delay: 1.575s;
    animation-delay: 1.575s
}
.vision-img07 {
    top: 0;
    left: 18.671248568155786%;
    margin: 26.002290950744563% 0 0;
    width: 15.578465063001145%;
    -webkit-animation-delay: 1.825s;
    animation-delay: 1.825s
}
.vision-img08 {
    top: 0;
    left: 27.491408934707906%;
    margin: 8.018327605956472% 0 0;
    width: 13.974799541809851%;
    -webkit-animation-delay: 2.275s;
    animation-delay: 2.275s
}
.vision-img09 {
    top: 0;
    left: 46.96449026345933%;
    margin: 0;
    width: 43.75715922107675%;
    -webkit-animation-delay: 2.525s;
    animation-delay: 2.525s
}
.vision-img10 {
    top: 0;
    left: 62.31386025200458%;
    margin: 12.600229095074456% 0 0;
    width: 13.172966781214205%;
    -webkit-animation-delay: 2.775s;
    animation-delay: 2.775s
}
.vision-img11 {
    top: 0;
    left: 32.98969072164948%;
    margin: 18.785796105383735% 0 0;
    width: 66.89576174112256%;
    -webkit-animation-delay: 3.025s;
    animation-delay: 3.025s
}
.vision-img12 {
    top: 0;
    left: 61.28293241695304%;
    margin: 26.002290950744563% 0 0;
    width: 15.578465063001145%;
    -webkit-animation-delay: 3.275s;
    animation-delay: 3.275s
}




@media all and (max-width: 640px) {
  .vision-white-box {
        margin: 0 0 37px;
        padding: 40px 0 0;
        -webkit-box-shadow: none;
        box-shadow: none;
        background: none;
        border-top: 1px solid #e4d2b6
    }
    .vision-white-box-inner {
        padding: 0;
        margin: 0 auto
    }
    .vision-white-img-box {
        margin: 0 0 36px;
        padding-top: 179.2857142857143%
    }
    .vision-img {
        position: absolute;
        -webkit-animation-duration: 1.8s;
        animation-duration: 1.8s;
        -webkit-animation-delay: 10s;
        animation-delay: 10s;
        opacity: 1
    }
    .vision-img img {
        width: 100%
    }
    .vision-img01 {
        top: 0;
        left: auto;
        right: 7.142857142857142%;
        bottom: 0;
        margin: 0;
        -webkit-animation-delay: 75ms;
        animation-delay: 75ms;
        width: 30.357142857142854%
    }
    .vision-img02 {
        top: 0;
        left: 78.718182%;
        margin: 25.2% 0 0;
        width: 21.428571428571427%;
        -webkit-animation-delay: 0.325s;
        animation-delay: 0.325s
    }
    .vision-img03 {
        top: 0;
        left: 65.990909%;
        margin: 25.3% 0 0;
        width: 7.142857142857142%;
        -webkit-animation-delay: 0.575s;
        animation-delay: 0.575s
    }
    .vision-img04 {
        top: 0;
        left: 45.714285714285715%;
        margin: -.7142857142857143% 0 0;
        width: 16.785714285714285%;
        -webkit-animation-delay: 0.825s;
        animation-delay: 0.825s
    }
    .vision-img05 {
        top: 0;
        left: -.9090909090909091%;
        margin: 8.202291% 0 0;
        width: 42.857142857142854%;
        -webkit-animation-delay: 1.075s;
        animation-delay: 1.075s
    }
    .vision-img06 {
        top: 0;
        left: 45.714285714285715%;
        margin: 31.585796% 0 0;
        width: 16.785714285714285%;
        -webkit-animation-delay: 1.575s;
        animation-delay: 1.575s
    }
    .vision-img07 {
        top: 0;
        left: -.9090909090909091%;
        margin: 40.702291% 0 0;
        width: 42.857142857142854%;
        -webkit-animation-delay: 1.825s;
        animation-delay: 1.825s
    }
    .vision-img08 {
        top: 0;
        left: 68.091409%;
        margin: 48.018328% 0 0;
        width: 13.974799541809851%;
        -webkit-animation-delay: 2.275s;
        animation-delay: 2.275s
    }
    .vision-img09 {
        top: 0;
        left: 78.718182%;
        margin: 81.3% 0 0;
        width: 21.428571428571427%;
        -webkit-animation-delay: 2.525s;
        animation-delay: 2.525s
    }
    .vision-img10 {
        top: 0;
        left: 65.990909%;
        margin: 107.600229% 0 0;
        width: 7.142857142857142%;
        -webkit-animation-delay: 2.775s;
        animation-delay: 2.775s
    }
    .vision-img11 {
        top: 0;
        left: 45.714285714285715%;
        margin: 64.785796% 0 0;
        width: 16.785714285714285%;
        -webkit-animation-delay: 3.025s;
        animation-delay: 3.025s
    }
    .vision-img12 {
        top: 0;
        left: -.9090909090909091%;
        margin: 108.902291% 0 0;
        width: 42.857142857142854%;
        -webkit-animation-delay: 3.275s;
        animation-delay: 3.275s
    }
}


/*----- 2020/12/08追加 -----*/
a{
    outline:none !important;
    -webkit-tap-highlight-color:rgba(0,0,0,0);
}
a:focus{
    outline:none !important;
}
button,input,input:focus {
    outline:none;
}
input::-moz-focus-inner, 
button::-moz-focus-inner  {
    border:none;
}


.gothic-txt {
    font-family: Yu Gothic, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans JP", "ヒラギノ角ゴ ProN", Meiryo, "Hiragino Sans", "Hiragino Kaku Gothic Pro", "Yu Gothic", YuGothic, Meiryo, "Helvetica Neue", sans-serif;}

.lh-1 {
 line-height:1!important
}
.lh-18 {
 line-height:18px!important
}
.lh-20 {
 line-height:20px!important
}
.lh-22 {
 line-height:22px!important
}
.lh-24 {
 line-height:24px!important
}
.lh-26 {
 line-height:26px!important
}
.lh-28 {
 line-height:28px!important
}
.p-0 {
 padding:0!important
}
.p-16 {
 padding:16px!important
}
.p-20 {
 padding:20px!important
}
.pt-10 {
 padding-top:10px!important
}
.pt-16 {
 padding-top:16px!important
}
.pt-18 {
 padding-top:18px!important
}
.pt-20 {
 padding-top:20px!important
}
.pt-22 {
 padding-top:22px!important
}
.pt-30 {
 padding-top:30px!important
}
.pt-40 {
 padding-top:40px!important
}
.pb-14 {
 padding-bottom:14px!important
}
.pb-30 {
 padding-bottom:30px!important
}
.pb-36 {
 padding-bottom:36px!important
}
.pb-50 {
 padding-bottom:50px!important
}
.pl-10 {
 padding-left:10px!important
}
.pl-26 {
 padding-left:26px!important
}
.py-8 {
 padding-top:8px!important;
 padding-bottom:8px!important
}
.px-20 {
 padding-left:20px!important;
 padding-right:20px!important
}
@media (min-width:641px) {
 .pt-md-0 {
  padding-top:0!important
 }
 .pt-md-16 {
  padding-top:16px!important
 }
 .pt-md-30 {
  padding-top:30px!important
 }
 .pt-md-62 {
  padding-top:62px!important
 }
 .pt-md-44 {
  padding-top:44px!important
 }
 .pb-md-22 {
  padding-bottom:22px!important
 }
 .pb-md-24 {
  padding-bottom:24px!important
 }
 .pl-md-20 {
  padding-left:20px!important
 }
 .pl-md-34 {
  padding-left:34px!important
 }
 .pb-md-20 {
  padding-bottom:20px!important
 }
 .pb-md-44 {
  padding-bottom:44px!important
 }
 .pb-md-80 {
  padding-bottom:80px!important
 }
 .px-md-0 {
  padding-left:0!important;
  padding-right:0!important
 }
 .px-md-14 {
  padding-left:14px!important;
  padding-right:14px!important
 }
 .px-md-20 {
  padding-left:20px!important;
  padding-right:20px!important
 }
 .px-md-25 {
  padding-left:25px!important;
  padding-right:25px!important
 }
 .px-md-30 {
  padding-left:30px!important;
  padding-right:30px!important
 }
 .px-md-36 {
  padding-left:36px!important;
  padding-right:36px!important
 }
 .px-md-62 {
  padding-left:62px!important;
  padding-right:62px!important
 }
 .py-md-0 {
  padding-top:0!important;
  padding-bottom:0!important
 }
 .py-md-14 {
  padding-top:14px!important;
  padding-bottom:14px!important
 }
 .py-md-18 {
  padding-top:18px!important;
  padding-bottom:18px!important
 }
 .py-md-22 {
  padding-top:22px!important;
  padding-bottom:22px!important
 }
 .py-md-30 {
  padding-top:30px!important;
  padding-bottom:30px!important
 }
 .px-md-45 {
  padding-left:45px!important;
  padding-right:45px!important
 }
}

.font-space005 {letter-spacing: 0.05em; }
.font-space0 {letter-spacing: 0; }
.font-space-003 {letter-spacing: -0.03em; }
.font-space-004 {letter-spacing: -0.04em; }
.font-space-005 {letter-spacing: -0.05em; }
.font-space-006 {letter-spacing: -0.06em; }
.font-space-01 {letter-spacing: -0.1em; }



.listItem {
    margin-bottom: 1.2em;
    padding-bottom: 0;
}
/*.listItem .Link{
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}*/


.listItem a{
    display: block;
    padding: 0 !important;
    height: 100%;
}

@media all and (max-width: 640px) {
.listItem {
    margin-bottom: 10px;
	padding: 5px 0.75rem 0;
}   
}

.listItem .card {
    font-family: "游明朝", YuMincho, "Times New Roman", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    text-align: center;
    filter: none;
    color: #231815;
    background: none;
    padding: 0 0.96em 1.5em;
}
@media all and (max-width: 640px) {
.listItem .card {
    padding: 0 0.96rem 1.5em;
}   
}


.box-n {
    padding-left: 0.1em !important;
    padding-right: 0.1em !important;
}



.listItem .card .card-image {
    padding-top: 1rem;
}

/*.listItem .card .card-header {
    padding-top: 0;
}*/
.listItem .card .card-subtitle {
    font-feature-settings: "palt";
    font-size: 17px;
    font-weight: 600;
    padding-top: 5px;
}
_:-ms-fullscreen, :root .listItem .card .card-subtitle {
  font-feature-settings: "pwid";
}

.listItem .card .card-title01 {
    padding-top: 22px;
    padding-bottom: 6px;
}
.listItem .card .card-title02 {
    padding-top: 14px;
    padding-bottom: 7px;
}
.listItem .card .card-title03 {
    padding-top: 16px;
    padding-bottom: 5px;
}
.listItem .card .card-title04 {
    padding-top: 14px;
    padding-bottom: 7px;
}

.listItem .card .con-ttl {
    font-size: 32px;
    padding-top: 0.4em;
    padding-bottom: 7px;
    line-height: 1.1;
    font-weight: 600;
    letter-spacing: -0.03em;
}
.listItem .card .con-ttl span {
    font-size: 18px;
}

.listItem .card-con {
    font-size: 14px;
    /*letter-spacing: -0.1em;*/
    font-feature-settings: "palt";
    font-weight: 600;
    padding-top: 0.6em;
}
_:-ms-fullscreen, :root .listItem .card-con {
  font-feature-settings: "pwid";
}
@media all and (max-width: 640px) {
.listItem .card-con {
    font-size: 13px;
    /*letter-spacing: -0.1em;*/
    font-feature-settings: "palt";
    font-weight: 600;
    padding-top: 0.6em;
}
}   

.listItem .card-con07,
.listItem .card-con08{
    font-size: 14px;
    font-feature-settings: "palt";
    font-weight: 600;
    padding-top: 1.46em;
    line-height: 1.6;
}
@media all and (max-width: 640px) {
.listItem .card-con07,
.listItem .card-con08{
    font-size: 13px;
    font-feature-settings: "palt";
    font-weight: 600;
    padding-top: 1.2em;
    line-height: 1.6;
}
}

.listItem .card-txt04 {
    padding-top: 0.4em;
    font-size: 12px;
}
.listItem .card-txt05 {
    font-family: Yu Gothic, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans JP", "ヒラギノ角ゴ ProN", Meiryo, "Hiragino Sans", "Hiragino Kaku Gothic Pro", "Yu Gothic", YuGothic, Meiryo, "Helvetica Neue", sans-serif;
    font-size: 12px;
    text-align: left;
    line-height: 1.16;
    font-feature-settings: "palt";
    padding-top: 2.0em;
}
.listItem .card-txt09 {
    font-family: Yu Gothic, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans JP", "ヒラギノ角ゴ ProN", Meiryo, "Hiragino Sans", "Hiragino Kaku Gothic Pro", "Yu Gothic", YuGothic, Meiryo, "Helvetica Neue", sans-serif;
    font-size: 11px;
    text-align: left;
    line-height: 1.1;
    font-feature-settings: "palt";
    text-indent: -1em;
	padding-top: 0.6em;
    padding-left: 2.6em;
	padding-right: 1.4em;
    padding-bottom: 0.4em;
}
.listItem .card .card-btn {
    padding-top: 0.8em;
}
.light-gray {
    background-color: #F2F2F2;
}
.dark-gray {
    background-color: #E0E0E0;
}