@charset "UTF-8";
.t-about-vision {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  padding-bottom: 16.5rem; }

.t-about-vision__slogan {
  width: 47.32%;
  max-width: 20.4rem;
  margin: 0 auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  -webkit-align-items: flex-start;
  -moz-align-items: flex-start;
  align-items: flex-start; }
  .lang-en .t-about-vision__slogan,
  .lang-zh-cn .t-about-vision__slogan,
  .lang-zh-tw .t-about-vision__slogan {
    width: auto;
    margin: 0;
    max-width: initial;
    font-size: 4.4rem; }
  @media screen and (max-width: 768px) {
    .t-about-vision__slogan {
      max-width: auto;
      width: 60%; }
      .lang-en .t-about-vision__slogan,
      .lang-zh-cn .t-about-vision__slogan,
      .lang-zh-tw .t-about-vision__slogan {
        width: 95%;
        font-size: 2.4rem; } }

.t-about-vision__slogan img {
  width: 100%;
  height: auto; }

.t-about-vision__block {
  position: relative;
  z-index: 5; }
  .lang-en .t-about-vision__block,
  .lang-zh-cn .t-about-vision__block,
  .lang-zh-tw .t-about-vision__block {
    margin-left: 160px; }
    @media screen and (max-width: 768px) {
      .lang-en .t-about-vision__block,
      .lang-zh-cn .t-about-vision__block,
      .lang-zh-tw .t-about-vision__block {
        margin-left: 0; } }
  .t-about-vision__block:first-child {
    width: 39%;
    padding-top: 9rem; }
    .lang-en .t-about-vision__block:first-child,
    .lang-zh-cn .t-about-vision__block:first-child,
    .lang-zh-tw .t-about-vision__block:first-child {
      width: auto; }
    @media screen and (max-width: 768px) {
      .t-about-vision__block:first-child {
        width: 50%;
        padding-top: 4rem;
        -webkit-box-ordinal-group: 3;
        -webkit-order: 2;
        -moz-order: 2;
        -ms-flex-order: 2;
        order: 2; }
        .lang-en .t-about-vision__block:first-child .c-txt-lead2,
        .lang-zh-cn .t-about-vision__block:first-child .c-txt-lead2,
        .lang-zh-tw .t-about-vision__block:first-child .c-txt-lead2 {
          width: 56%; } }
  .t-about-vision__block:nth-child(2) {
    width: 61%;
    padding-top: 16.6rem; }
    @media screen and (max-width: 768px) {
      .t-about-vision__block:nth-child(2) {
        width: 50%;
        padding-top: 8rem;
        -webkit-box-ordinal-group: 2;
        -webkit-order: 1;
        -moz-order: 1;
        -ms-flex-order: 1;
        order: 1; } }

.t-about-visual {
  height: 40vw; }
  @media screen and (max-width: 768px) {
    .t-about-visual {
      height: 70vw; } }

.t-about-vision__obj {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0; }

.t-about-obj {
  position: absolute; }
  .t-about-obj img {
    width: 100%;
    height: auto; }
  .t-about-obj.-type1 {
    width: 28.7rem;
    height: 28.6rem;
    top: 40rem;
    left: -7.3rem;
    z-index: 2; }
    @media screen and (max-width: 1364px) {
      .t-about-obj.-type1 {
        width: 26rem;
        height: 26rem;
        top: 48rem; } }
    @media screen and (max-width: 768px) {
      .t-about-obj.-type1 {
        width: 24rem;
        height: 24rem;
        top: 32%;
        left: auto;
        right: -2rem; } }
  .t-about-obj.-type2 {
    width: 20.7rem;
    height: 20.7rem;
    top: -4rem;
    right: 15rem;
    z-index: 5; }
    @media screen and (max-width: 1364px) {
      .t-about-obj.-type2 {
        width: 18rem;
        height: 18rem;
        right: 5rem; } }
    @media screen and (max-width: 768px) {
      .t-about-obj.-type2 {
        opacity: 0; } }
  .t-about-obj.-type3 {
    width: 18rem;
    height: 18rem;
    top: 14rem;
    right: 6rem; }
    @media screen and (max-width: 1364px) {
      .t-about-obj.-type3 {
        opacity: 0; } }
  .t-about-obj.-type4 {
    width: 26%;
    max-width: 41.5rem;
    z-index: 5;
    bottom: -5rem;
    right: 5rem; }
    @media screen and (max-width: 958px) {
      .t-about-obj.-type4 {
        opacity: 0; } }
    @media screen and (max-width: 768px) {
      .t-about-obj.-type4 {
        width: 20.7rem;
        height: 12.8rem;
        bottom: -2rem;
        right: auto;
        left: 0;
        opacity: 1; } }

/* 特徴セクション
---------------------------------------------------------------- */
.t-aspect {
  position: relative; }
  @media screen and (min-width: 1800px) {
    .t-aspect {
      height: 80rem; } }

.t-aspect + .t-aspect {
  margin-top: 6rem; }
  @media screen and (max-width: 768px) {
    .t-aspect + .t-aspect {
      margin-top: 4rem; } }

.t-aspect__inner {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 8rem 7% 8rem 0;
  width: 43%; }
  @media screen and (min-width: 1800px) {
    .t-aspect__inner {
      height: 80rem;
      display: -webkit-box;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      -webkit-align-items: center;
      -moz-align-items: center;
      align-items: center; } }
  @media screen and (max-width: 768px) {
    .t-aspect__inner {
      width: calc(100% - 6rem);
      padding: 2.5rem 0 0 0; } }

.t-aspect:nth-child(2n) .t-aspect__inner {
  width: 57%;
  margin-left: 43%;
  padding-left: 7%;
  padding-right: 12.5%; }
  @media screen and (max-width: 768px) {
    .t-aspect:nth-child(2n) .t-aspect__inner {
      width: calc(100% - 6rem);
      margin-left: 0;
      padding: 2.5rem 0 0 0; } }

.t-aspect:nth-child(2n)::after {
  width: 43%;
  right: auto;
  left: 0; }

.t-aspect__pict {
  width: 57%;
  height: 100%;
  overflow: hidden;
  position: absolute;
  top: 0;
  right: 0; }
  @media screen and (max-width: 768px) {
    .t-aspect__pict {
      width: 100%;
      height: 10rem;
      position: relative;
      display: block; } }
  .t-aspect__pict img {
    width: 100%;
    height: auto; }
  .t-aspect:nth-child(2n) .t-aspect__pict {
    width: 43%;
    right: auto;
    left: 0; }
    @media screen and (max-width: 768px) {
      .t-aspect:nth-child(2n) .t-aspect__pict {
        width: 100%; } }

.t-aspect__pict,
.slick-list,
.slick-track,
.slick-slider {
  height: 100%; }
  @media screen and (max-width: 768px) {
    .t-aspect__pict,
    .slick-list,
    .slick-track,
    .slick-slider {
      height: 70vw; } }

.t-aspect__pict p {
  width: 100%;
  height: 100%; }

.t-aspect__pict__img {
  position: relative; }
  .t-aspect__pict__img::after {
    content: attr(data-caption);
    font-size: 1.2rem;
    position: absolute;
    bottom: 2rem;
    left: 2rem;
    color: #fff;
    z-index: 10; }
    @media screen and (max-width: 768px) {
      .t-aspect__pict__img::after {
        bottom: 1.5rem;
        left: 1.5rem; } }

.t-aspect__inner img {
  width: 100%;
  height: auto; }

.t-aspect__number {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  align-items: center; }

.t-aspect__number__number {
  font-size: 2.6rem;
  color: #dd882c;
  font-family: 'Times New Roman', serif; }
  @media screen and (max-width: 768px) {
    .t-aspect__number__number {
      font-size: 2rem; } }

.t-aspect__number__text {
  font-size: 1.1rem;
  position: relative;
  padding-left: 1.5em;
  margin-left: 1.2em;
  color: #dd882c;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-family: 'Times New Roman', serif; }

.t-aspect__number__text::before {
  content: "";
  width: 1px;
  height: 50px;
  background: #f5dbbf;
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%) rotate(40deg);
  -ms-transform: translateY(-50%) rotate(40deg);
  transform: translateY(-50%) rotate(40deg); }
  @media screen and (max-width: 768px) {
    .t-aspect__number__text::before {
      height: 20px; } }

.t-aspect__title {
  font-size: 5rem;
  padding-top: 2.4rem;
  font-family: 'Noto Serif JP', serif; }
  @media screen and (max-width: 768px) {
    .t-aspect__title {
      font-size: 3.2rem;
      padding-top: 2rem; } }

.lang-en .t-aspect__title {
  font-family: 'Times New Roman', serif; }

.t-aspect__lead {
  font-size: 2rem;
  padding-top: 4.7rem;
  padding-bottom: 3rem;
  font-weight: 600;
  font-family: 'Noto Serif JP', serif; }
  .lang-en .t-aspect__lead,
  .lang-zh-cn .t-aspect__lead,
  .lang-zh-tw .t-aspect__lead {
    font-family: 'Times New Roman', serif; }
  @media screen and (max-width: 768px) {
    .t-aspect__lead {
      font-size: 1.7rem;
      padding-top: 2.5rem;
      padding-bottom: 2.5rem; } }

.t-aspect__map {
  width: 34.5rem;
  height: 32.5rem;
  position: absolute;
  top: 0;
  right: 4.2rem;
  z-index: -1; }
  @media screen and (max-width: 768px) {
    .t-aspect__map {
      right: -1rem;
      -webkit-transform: scale(0.5, 0.5);
      -ms-transform: scale(0.5, 0.5);
      transform: scale(0.5, 0.5);
      -webkit-transform-origin: 100% 0;
      -ms-transform-origin: 100% 0;
      transform-origin: 100% 0;
      z-index: 5;
      top: 40vw;
      right: 2rem; } }

.t-aspect__map__pointer {
  width: .8rem;
  height: .8rem;
  background: #f39938;
  border-radius: 100%;
  position: absolute;
  top: 13rem;
  left: 19.5rem;
  z-index: 6; }

.t-aspect__map__pointer::after,
.t-aspect__map__pointer::before {
  content: "";
  width: 10px;
  height: 10px;
  background: none;
  border-radius: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #f39938;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }

.t-aspect__map__pointer::after {
  -webkit-animation-name: scaleMapin;
  animation-name: scaleMapin;
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite; }

.t-aspect__map__pointer::before {
  -webkit-animation-name: scaleMapin;
  animation-name: scaleMapin;
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-delay: 1.8s;
  animation-delay: 1.8s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite; }

@-webkit-keyframes scaleMapin {
  0% {
    opacity: 0;
    width: 10px;
    height: 10px; }
  5% {
    opacity: 1; }
  80% {
    opacity: 0; }
  100% {
    opacity: 0;
    width: 60px;
    height: 60px; } }

@keyframes scaleMapin {
  0% {
    opacity: 0;
    width: 10px;
    height: 10px; }
  5% {
    opacity: 1; }
  80% {
    opacity: 0; }
  100% {
    opacity: 0;
    width: 60px;
    height: 60px; } }

.t-aspect-notice {
  background: #f6f6f6;
  padding: 1rem;
  margin-top: 3rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  align-items: center; }

.t-aspect-notice__block {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }
  .t-aspect-notice__block:first-child {
    width: 20%; }
  .t-aspect-notice__block:last-child {
    width: 80%;
    padding-left: 2rem; }

.t-aspect-notice__label {
  font-weight: bold;
  font-size: 1.3rem;
  padding-top: 2px; }

.t-aspect-notice__copy {
  font-size: 1.3rem;
  line-height: 1.5;
  color: #777;
  padding-top: 1rem; }
  @media screen and (max-width: 768px) {
    .t-aspect-notice__copy {
      padding-top: .6rem; } }
