.camera-section {
  position: relative;
  color: #000;
  padding-top: 53px;
  text-align: center; }

@media (min-width: 60em) {
  .camera-section {
    padding-top: 40px; } }

.camera-section .tl {
  display: block; }

.camera-section .tl.sub-h3 {
  letter-spacing: -0.4px; }

.camera-section .desc {
  display: block;
  color: initial;
  font-size: 80%;
  opacity: 0.75; }

.camera-section .swiper-pagination {
  text-align: center; }

.camera-section .swiper-pagination-bullet {
  width: 20px;
  border: 0 !important;
  padding-top: 3px !important;
  height: auto !important;
  opacity: 0.5;
  background-color: #fff; }

.camera-section .swiper-pagination-bullet-active {
  width: 30px; }

.camera-section .swiper-pagination-bullet-active, .camera-section .swiper-pagination-bullet-active:hover, .camera-section .swiper-pagination-bullet-active:focus {
  background-color: #000; }

.camera-section .swiper-button-prev, .camera-section .swiper-button-next {
  margin-top: 0;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.camera-section .swiper-button-prev::before, .camera-section .swiper-button-next::before {
  font-size: 3rem;
  font-weight: bold; }

@media (min-width: 45em) {
  .camera-section .swiper-button-prev::before, .camera-section .swiper-button-next::before {
    font-size: 5rem; } }

.hero-section {
  position: relative;
  overflow: hidden;
  background-color: #000; }

.hero-section__item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.hero-section__item li {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1; }

.hero-section__item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover; }

.hero-section__cont {
  position: absolute;
  z-index: 3;
  left: 50%;
  bottom: 10%;
  width: 200px;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%); }

@media (min-width: 60em) {
  .hero-section__cont {
    width: 500px; } }

.hero-section .swiper-pagination {
  position: absolute;
  z-index: 5;
  bottom: 5%; }

.cont-section {
  position: relative;
  padding: 5rem 0; }

.cont-section span {
  display: inline-block; }

.cont-section .flexible-obj {
  z-index: 3; }

@media (min-width: 60em) {
  .cont-section {
    padding: 8rem 0; } }

@media (min-width: 75em) {
  .cont-section {
    padding: 10rem 0; } }

.cont-section__head {
  text-align: center;
  margin: 0 auto 3rem auto; }

@media (min-width: 60em) {
  .cont-section__head {
    margin-bottom: 4rem; } }

@media (min-width: 75em) {
  .cont-section__head {
    margin-bottom: 5rem; } }

.rangefinder-section img {
  width: 100%; }

.aspect-section {
  position: relative; }

.aspect-section .thumb {
  position: relative; }

.aspect-section .thumb-box {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 0;
  padding-bottom: 63%;
  background-color: #0a0a0a; }

.aspect-section .thumb-img {
  position: absolute;
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }

.aspect-section figcaption {
  position: absolute;
  z-index: 3;
  left: 0;
  bottom: 0;
  text-align: left;
  background-color: rgba(10, 10, 10, 0.5);
  padding: 5px 1rem;
  display: inline-block;
  color: #fff;
  font-size: 75%;
  opacity: 0.8; }

.aspect-section .image {
  position: absolute;
  z-index: 2;
  bottom: 0;
  right: 0;
  width: 100px;
  -webkit-transform: translate(18%, 28%);
      -ms-transform: translate(18%, 28%);
          transform: translate(18%, 28%); }

.aspect-section .cont {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 2rem;
  text-align: left;
  margin-top: 3rem;
  padding: 0 2rem; }

.aspect-section .sub {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1; }

.aspect-section .sub.dial {
  -webkit-box-flex: 0.5;
      -ms-flex: 0.5;
          flex: 0.5; }

.aspect-section .sub.film {
  -webkit-box-flex: 0.3;
      -ms-flex: 0.3;
          flex: 0.3; }

.aspect-section .swiper-wrapper {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.aspect-section .swiper-slide {
  opacity: 0.4;
  -webkit-transform: scale(0.85);
      -ms-transform: scale(0.85);
          transform: scale(0.85);
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s; }

.aspect-section .swiper-slide-active {
  z-index: 3;
  opacity: 1;
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1); }

.aspect-section .swiper-pagination {
  margin-top: 3rem; }

@media (max-width: 59.99em) {
  .aspect-section .swiper-button-prev, .aspect-section .swiper-button-next {
    top: 30%;
    padding: 0.5rem;
    background-color: rgba(255, 255, 255, 0.4);
    border-radius: 3px; } }

@media (min-width: 60em) {
  .aspect-section .image {
    width: 200px; } }

.film-section {
  background: -o-linear-gradient(315deg, #737373 24%, #323232 83%);
  background: linear-gradient(135deg, #737373 24%, #323232 83%); }

.film-section,
.film-section .tl,
.film-section .link-btn {
  color: #fff; }

.natural-section {
  position: relative; }

.natural-section,
.natural-section .tl {
  color: #fff; }

.figure__cover {
  position: relative;
  overflow: hidden;
  text-align: center;
  height: calc(100vh - 50px); }

@media (min-width: 45em) {
  .figure__cover {
    height: calc(100vh - 60px); } }

@media (min-width: 60em) {
  .figure__cover {
    height: calc(100vh - 70px); } }

.figure__cover,
.figure__cover .tl {
  color: #fff; }

.figure__cover .p {
  margin: 0; }

.figure__cover .bg {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }

.figure__cover .bg .video-rwd {
  width: 100%;
  height: 100%; }

.figure__cover .bg img,
.figure__cover .bg video {
  width: 100%;
  height: 100%;
  max-height: 100vh;
  -o-object-fit: cover;
     object-fit: cover; }

.no-objectfit .figure__cover .bg img, .no-objectfit
.figure__cover .bg video {
  top: 50% !important;
  left: 50% !important;
  right: auto !important;
  bottom: auto !important;
  min-width: 100%;
  min-height: 100%;
  max-width: none;
  width: auto !important;
  height: auto !important;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0); }

.figure__cover .bg figcaption {
  position: absolute;
  right: 0;
  bottom: 0;
  padding: 1rem;
  text-align: left;
  font-size: 75%;
  opacity: 0.8; }

.figure__cover .cont {
  position: absolute;
  z-index: 10;
  left: 0;
  right: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 2rem; }

.figure__cover .cont-cc {
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  text-align: center; }

.figure__cover .cont-lb {
  bottom: 3rem;
  text-align: left; }

.figure__cover .ul-lb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  gap: 2rem; }

@media (min-width: 60em) {
  .figure__cover .bg figcaption {
    padding: 2rem; }
  .figure__cover .cont {
    padding: 4rem; }
  .figure__cover .ul-lb {
    gap: 4rem; } }

@media (min-width: 75em) {
  .figure__cover .cont-lb {
    left: 2rem; }
  .figure__cover .ul-lb {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 8rem; } }

@media (min-width: 100em) {
  .figure__cover .cont-lb {
    left: 5rem; }
  .figure__cover .ul-lb {
    gap: 12rem; } }

.figure__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.figure__items .item {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1; }

.figure__thumb {
  position: relative; }

.figure__thumb img {
  width: 100%; }

.figure__thumb figcaption {
  display: block;
  margin-top: 1rem;
  text-align: left;
  font-size: 75%;
  opacity: 0.8; }

.reverse__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2rem; }

.reverse__items .thumb,
.reverse__items .cont {
  position: relative; }

.reverse__items img {
  width: 100%; }

@media (min-width: 60em) {
  .reverse__items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 4rem; }
  .reverse__items .thumb,
  .reverse__items .cont {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1; }
  .reverse__items .cont {
    text-align: left; }
  .reverse__items .over {
    font-size: 7rem; }
  .reverse__items--reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .reverse__items--reverse .cont {
    text-align: right; }
  .reverse__items--thumb .thumb {
    -webkit-box-flex: 2;
        -ms-flex: 2;
            flex: 2; }
  .reverse__items--cont .cont {
    -webkit-box-flex: 2;
        -ms-flex: 2;
            flex: 2; }
  .reverse__items--vstart {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start; }
  .reverse__items--vend {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end; } }

.fewagac-sec {
  position: relative; }

.fewagac-sec .thumb {
  position: relative; }

.fewagac-sec .copy {
  position: absolute; }

.fewagac-sec .copy.desc {
  margin: 0; }

.fewagac-sec .cont {
  margin: 2rem 0; }

.fewagac-sec .tl {
  text-align: center;
  margin-bottom: 2rem; }

@media (min-width: 60em) {
  .fewagac-sec .cont {
    position: absolute;
    margin: 0; }
  .fewagac-sec .tl {
    text-align: left; } }

.fewagac-sec-04 .copy {
  right: 0;
  bottom: 0; }

@media (min-width: 60em) {
  .fewagac-sec-04 {
    margin-top: 100px !important; }
  .fewagac-sec-04 .cont {
    position: absolute;
    left: 0;
    top: -20%;
    width: 38%; }
  .fewagac-sec-04 .copy {
    bottom: 15%; } }

@media (min-width: 75em) {
  .fewagac-sec-04 {
    margin-top: 80px !important; }
  .fewagac-sec-04 .cont {
    top: 0; } }

.fewagac-sec-05 .copy {
  left: 0;
  bottom: 0; }

@media (min-width: 60em) {
  .fewagac-sec-05 {
    margin-bottom: 170px; }
  .fewagac-sec-05 .cont {
    left: 0;
    bottom: -25%;
    width: 55%; }
  .fewagac-sec-05 .tl {
    position: absolute;
    right: 0;
    top: 0;
    width: 30%; }
  .fewagac-sec-05 .copy {
    left: auto;
    right: 44%;
    bottom: 12%; } }

@media (min-width: 75em) {
  .fewagac-sec-05 {
    margin-bottom: 130px; }
  .fewagac-sec-05 .tl {
    top: 15%; }
  .fewagac-sec-05 .cont {
    bottom: -10%; } }

@media (min-width: 100em) {
  .fewagac-sec-05 .tl {
    top: 25%; }
  .fewagac-sec-05 .cont {
    bottom: -3%; } }

.fewagac-sec-06 .copy {
  right: 0;
  bottom: 16%;
  width: 50%; }

@media (min-width: 60em) {
  .fewagac-sec-06 {
    margin-bottom: 200px; }
  .fewagac-sec-06 .copy {
    bottom: 28%; }
  .fewagac-sec-06 .cont {
    right: 0;
    bottom: -15%;
    width: 47%; } }

@media (min-width: 75em) {
  .fewagac-sec-06 {
    margin-bottom: 100px; }
  .fewagac-sec-06 .cont {
    bottom: 0; } }

@media (min-width: 100em) {
  .fewagac-sec-06 .copy {
    bottom: 30%; } }

.other__items {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow: hidden;
  padding: 2rem;
  border-radius: 2rem;
  background-color: #e5e5e5;
  text-align: center; }

.other__items .thumb img {
  max-width: 100px;
  margin: 0 auto; }

.other__items .cont {
  margin-top: 2rem; }

@media (min-width: 45em) {
  .other__items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  .other__items .cont {
    margin-top: 0;
    padding-left: 2rem;
    text-align: left; } }

@media (min-width: 60em) {
  .other__items {
    padding: 4rem; }
  .other__items .thumb img {
    max-width: 200px; }
  .other__items .cont {
    padding-left: 4rem; } }
