
/* RESET
 * * -----------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}

q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

*,
*:before,
*:after {
  box-sizing: border-box;
}

body * {
  word-break: break-word;
}

img {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  height: auto;
}

input,
label,
select,
button {
  line-height: inherit;
}

input,
label,
select,
button,
textarea {
  margin: 0;
  border: 0;
  padding: 0;
  word-break: normal;
  display: inline-block;
  vertical-align: middle;
  white-space: normal;
  background: none;
  -webkit-appearance: none;
  font: inherit;
}

button:focus {
  outline: 0;
}

input:focus,
textarea:focus,
select:focus {
  outline: auto;
}

input[type=search] {
  -webkit-appearance: textfield;
}

::-webkit-search-decoration {
  display: none;
}

textarea {
  overflow: auto;
  white-space: pre-line;
  resize: none;
}

/* PRINTING
 * * -----------------------------------------------*/
@media print {
  body {
    -webkit-print-color-adjust: exact;
  }

html,
body {
    margin: 0;
  }

  @page {
    margin: 0;
  }
  @page :left {
    margin: 0;
  }
  @page :right {
    margin: 0;
  }
  @page :first {
    margin-top: 0;
  }
}



/* GENERAL
 * * -----------------------------------------------*/
body {
  background-color: #fff;
  color: #555;
  font-family: "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
  line-height: 1.285;
  -webkit-text-size-adjust: none;
  -moz-text-size-adjust: none;
  -ms-text-size-adjust: none;
}

main {
  position: relative;
  overflow: hidden;
}
main::before {
  background-image: url(../img/main_bg.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  height: 100%;
  width: 100%;
  content: '';
  position: fixed;
  opacity: .1;
  top: 0;
  left: 0;
}

body.fixed {
  overflow: hidden;
}

a {
  color: #333;
  text-decoration: none;
}

.hidden {
  display: none;
}

.is-light {
  font-weight: 300;
}

.is-italic {
  font-style: italic;
}

.is-bold {
  font-weight: bold;
}

.is-normal {
  font-weight: normal;
}

/* RESPONSIVE
 * * -----------------------------------------------*/
@media print, (min-width: 768px) {
  body {
    font-size: 14px;
  }

  .container {
    min-width: 1440px;
  }

  .sm {
    display: none !important;
  }

  .trans {
    opacity: 1;
    transition: opacity 0.26s ease;
  }
  .trans:hover {
    opacity: 0.8;
  }
}
@media print {
  body {
    -ms-transform: scale(0.6) !important;
        transform: scale(0.6) !important;
    -ms-transform-origin: left top;
        transform-origin: left top;
    width: 60% !important;
  }
}
@media only screen and (max-width: 767.98px) {
  html {
    font-size: calc(100vw / 7.5);
  }

  body {
    font-size: 0.28rem;
  }

  .container {
    min-width: 320px;
  }

  .wrapper {
    width: auto;
    padding-left: 0.4rem;
    padding-right: 0.4rem;
  }

  .md {
    display: none !important;
  }
}

/* header
 * * -----------------------------------------------*/


header .wrapper {
  display: -ms-flexbox;
  display: flex;
}
header .logo a {
  display: block;
}

header .list-navigation a,
header .header-right{
  font-family: "Roboto Condensed", sans-serif;
  font-size: 20px;
  color: #555;
}

header .list-navigation a.pc{
  display: none;
}

@media print, (min-width: 768px) {
  header .list-navigation a {
    display: block;
  }
  header .list-navigation a.sp{
    display: none;
  }
  header .list-navigation a.pc{
    display: block;
  }
}
@media only screen and (max-width: 767.98px) {
  header .list-navigation a {
    font-size: 24px;
    font-weight: 600;
    display: inline-block;
  }
  header .list-navigation a span {
    font-family: "Roboto Condensed", sans-serif;
    display: block;
    color: #333;
  }
}

header .header-navigation {
  display: none;
  z-index: 100;
}
header .button-menu {
  position: absolute;
  z-index: 101;
  cursor: pointer;
}
header .button-menu span {
  background-color: #555;
  display: block;
  height: 1px;
  transition: all 0.4s ease;
  position: absolute;
  left: 50%;
  -ms-transform: translateX(-50%);
      transform: translateX(-50%);
}

header .is-active {
  border: none;
}

@media print, (min-width: 768px) {
  header {
    width: 100%;
    z-index: 1111;
    position: relative;
    left: 0;
    top: 0;
  }
  header .logo {
    height: 41px;
  }
  header .header-left {
    display: flex;
    align-items: center;
    padding: 0 0 0 40px;
    height: 86px;
    position: relative;
  }
  header .detail-left {
    position: absolute;
    right: 0;
    top: 50px;
    width: 867px;
  }

  header .header-right {
    position: relative;
    width: 100%;
    height: 84px;
  }
  header .detail-right {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
  }
  header .button-menu {
    display: none;
  }
  header .button-menu span {
    width: 40px;
    border-radius: 10px;
  }
  header .button-menu span:nth-child(1) {
    top: 48px;
  }
  header .button-menu span:nth-child(2) {
    top: 55px;
  }
  header .button-menu span:nth-child(3) {
    top: 62px;
  }

  header .is-active span:nth-child(1) {
    -ms-transform: translate(-50%, 9px) rotate(-45deg);
        transform: translate(-50%, 9px) rotate(-45deg);
  }
  header .is-active span:nth-child(2) {
    opacity: 0;
  }
  header .is-active span:nth-child(3) {
    -ms-transform: translate(-50%, -4px) rotate(-135deg);
        transform: translate(-50%, -4px) rotate(-135deg);
  }
  header .block-contact {
    margin-left: 77px;
  }
  header .block-contact .contact-text {
    width: 150px;
  }
}
@media print and (-ms-high-contrast: none), print and (-ms-high-contrast: active), (min-width: 768px) and (-ms-high-contrast: none), (min-width: 768px) and (-ms-high-contrast: active) {
  header .block-contact .contact-text {
    word-break: break-word;
  }
}
@media print, (min-width: 768px) {
  header .header-navigation {
    display: flex!important;
    flex-wrap: nowrap;
    align-items: center;
    right: 0;
    left: auto;
    top: 0;
  }
}

@media print, (min-width: 768px) {
  header .list-navigation {
    display: -ms-flexbox;
    display: flex;
    height:: 100%;
    -ms-flex-align: center;
        align-items: center;
  }
  header .list-navigation li {
    width: auto;
    padding: 0 8px;
    height: 100%;
  }
  header .list-navigation a {
    width: auto;
    display: flex;
  }
  header .list-navigation a:hover {
    color: #F89686;
  }
  header .list-navigation a span {
    display: none;
  }
}

@media print, (min-width: 968px) {
  header .list-navigation li {
    padding: 0 20px;
  }
}

.contact-link-block {
  padding: 14px 44px;
  margin:  0 auto;
}

.contact-link {
  background-color: #F89686;
  text-align: center;
  display: block;
  border-radius: 30px;
  font-weight: bold;
  line-height: 1;
  font-size: 20px;
  padding: 20px;
  color: #fff;
}

@media print, (min-width: 768px) {
  .contact-link-block {
    padding: 10px 40px 10px 20px;
  }
  .contact-link {
    background-color: #F89686;
    box-shadow: inset 2px 3px 0 rgba(0,0,0,0.16), 2px 3px 3px rgba(0, 0, 0, 0.16);
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.16);
    font-size: 20px;
    padding: 16px 40px;
    color: #fff;
  }
  .contact-link:hover {
    background-color: #F89686;
    box-shadow: none;
    text-shadow: none;
    font-size: 20px;
    padding: 16px 40px;
    color: #fff;
  }
}


@media print and (-ms-high-contrast: none), print and (-ms-high-contrast: active), (min-width: 768px) and (-ms-high-contrast: none), (min-width: 768px) and (-ms-high-contrast: active) {
  header .list-navigation a {
    padding-top: 50px;
  }
}
@media print, (min-width: 768px) {
  header .contact-number {
    pointer-events: none;
  }
}
@media only screen and (max-width: 767.98px) {
  header {
    width: 100%;
    top: 0;
    left: 0;
    z-index: 111;
  }

  .is-fixed header {
    position: fixed;
    background-color: #fff;
  }

  header .wrapper {
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: relative;
    padding-left: 0;
    padding-right: 0;
  }
  header .logo {
    height: 31px;
  }
  header .logo img {
    width: 100%;
  }
  header .header-left {
    z-index: 111;
    position: relative;
    margin: 0;
    padding: 19px 23px;
    height: 70px;

  }
  header .header-right {
    position: fixed;
    top: 0;
    right: 0;
    height: 65px;
    width: 1.66rem;
    z-index: 11;
    padding: 0.3rem 0.2rem;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
  header .header-navigation {
    background-color: #F7F7F7;
    padding: 117px 26px 46px;
    overflow-y: scroll;
    overflow-x: hidden;
    position: fixed;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
  }
  header .list-navigation li {
    width: 80%;
    margin-bottom: 30px;
  }
  header .list-navigation .navigation-item {
    width: 100%;
    margin-bottom: 38px;
  }
  header .list-navigation .navigation-item .navigation-item-title {
    margin-bottom: 7px;
    font-size: 18px;
  }
  header .list-navigation .navigation-item .navigation-item-title small {
    font-family: "Roboto Condensed", sans-serif;
    font-size: 10px;
    display: block;
    position: relative;
    left: -7px;
    font-weight: 100;
  }
  header .list-navigation .navigation-item .navigation-item-link a {
    font-family: "Roboto Condensed", sans-serif;
    font-weight: bold;
    font-size: 36px;
    color: #fff;
  }
  header .list-navigation .navigation-item .navigation-item-link a:hover {
    color: #F89686;
  }

  header .list-navigation .navigation-item .navigation-item-body a {
    font-weight: 100;
    font-size: 18px;
  }
  header .list-navigation .navigation-item .navigation-item-body a:hover {
    color: #F89686;
  }

  header .footer-item .footer-item-body a:hover {
    color: #F89686;
  }

  header .contact-link-block {
    display: none;
  }
  header .animateme {
    position: absolute;
    font-weight: bolder;
    bottom: 0;
    left: 0;
    z-index: -1;
  }


  header .button-menu {
    width: 28px;
    height: 28px;
    right: 14px;
    top: 50%;
    -ms-transform: translateY(-50%);
        transform: translateY(-50%);
    &.is-active {
      right: 12px;
      top: 36px;
    }
  }

  header .button-menu span {
    width: 0.4rem;
  }
  header .button-menu span:nth-child(1) {
    top: 10px;
  }
  header .button-menu span:nth-child(2) {
    top: 18px;
  }
  header .is-active span:nth-child(1) {
    top: 10px;
    -ms-transform: translateX(-0.21rem) rotate(-25deg);
        transform: translateX(-0.21rem) rotate(-25deg);
  }
  header .is-active span:nth-child(2) {
    top: 10px;
    -ms-transform: translateX(-0.21rem) rotate(25deg);
        transform: translateX(-0.21rem) rotate(25deg);
  }

  header .overlay {
    position: fixed;
    width: 100%;
    height: 100%;
    right: 0;
    top: 0;
    z-index: 99;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s;
  }
  header .overlay.is-show {
    opacity: 1;
    visibility: visible;
    transition: all 0.3s;
  }
}

@media print, (min-width: 692px) {
  header .list-navigation .navigation-item .navigation-item-title {
    display: none;
  }
  header .list-navigation .navigation-item.contact-item {
    display: none;
  }
  header .contact-link-block {
    display: block;
  }
  header .animateme {
    display: none;
  }

}

/* footer
 * * -----------------------------------------------*/

footer {
  background: #F7F7F7;
  overflow: hidden;
  z-index: 1;
  position: relative;
}
footer .animateme {
  font-size: 60px;
}

footer .logo-scroll1,footer .logo-scroll2 {
  font-weight: bold;
}


footer .footer-wrapper {
  width: 100%;
  padding: 0 24px;
}

footer .main-link {
  display: inline-block;
  width: 100%;
  max-width: 180px;
  margin: 23px 0;
}
footer .footer-logo {
  width: 100%;
}

footer .footer-block {
  width: 100%;
}

footer .page-top-link {
  display: flex;
  align-items: center;
}
footer .page-top-link span {
  font-size: 16px;
  position: relative;
  margin-right: 11px;
  top: -1px;
}
footer .page-top-link:hover span {
  color: #F89686;
}
footer .page-top-link .go-top-circle {
  border: 1px solid #333;
  border-radius: 50%;
  height: 48px;
  display: inline-block;
  position: relative;
  width: 48px;
  margin: 0;
}
footer .page-top-link:hover .go-top-circle {
  background-color: #000;
  transition: all 0.6s;
}

footer .page-top-link .go-top-circle::before {
  background-image: url(../img/go_top.svg);
  background-repeat: no-repeat;
  background-position: center;
  display: inline-block;
  z-index: 0;
  position: relative;
  content: '';
  height: 100%;
  width: 100%;
}


@keyframes go-top {
  0% {
    background-position-y: 0;
  }
  50% {
    background-position-y: -40px;
  }
  51% {
    background-position-y: 40px;
  }
  100% {
    background-position-y: 0;
  }

}

footer .page-top-link:hover .go-top-circle::before {
  background-image: url(../img/go_top_white.svg);
  display: inline-block;
  content: '';
  height: 100%;
  width: 100%;
  z-index: 0;
  animation: go-top 0.3s cubic-bezier(0.85, 0, 0.15, 1);
  -webkit-animation: go-top 0.3s cubic-bezier(0.85, 0, 0.15, 1);

}

footer .footer-item {
  width: 100%;
  margin-bottom: 38px;
}

footer .footer-item .footer-item-title {
  margin-bottom: 2px;
  font-size: 18px;
}
footer .footer-item .footer-item-title small {
  font-family: "Roboto Condensed", sans-serif;
  font-size: 10px;
  display: block;
  position: relative;
  left: -7px;
  font-weight: 100;
}

footer .footer-item .footer-item-body a {
  font-weight: 100;
  font-size: 18px;
  font-family: "Roboto Condensed", sans-serif;
}
footer .footer-item .footer-item-body a:hover {
  color: #F89686;
}

footer .footer-item .footer-item-link a {
  font-family: "Roboto Condensed", sans-serif;
  font-weight: bold;
  font-size: 36px;
  color: #fff;
}
footer .footer-item .footer-item-link a.pc {
  display: none;
}
footer .footer-item .footer-item-link a:hover {
  color: #F89686;
}

footer .copyright {
  font-family: "Roboto Condensed", sans-serif;
  font-weight: 100;
  padding: 56px 0 52px;
  font-size: 12px;
  display: block;
  color: #333333;
}

@media print, (min-width: 692px) {
  footer .footer-wrapper {
    padding: 0 100px;
  }

  footer .animateme {
    font-size: 127px;
  }

  footer .page-top-link {
    position: absolute;
    right: 157px;
    bottom: 333px;
    top: auto;
  }
  footer .page-top-link span {
    top: 1px;
  }
  footer .footer-item .footer-item-title small {
    top: -5px;
  }
  footer .footer-item .footer-item-body a:hover {
    color: #F89686;
  }
  footer .footer-item .footer-item-link a.sp {
    display: none;
  }
  footer .footer-item .footer-item-link a.pc {
    display: block;
  }
}

@media print, (min-width: 1000px) {

  footer .main-link {
    max-width: 329px;
    margin-right: 130px;
    margin-top: 15px;
    width: 20%;
  }

  footer .footer-wrapper {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    padding: 0 10%;
    margin: 200px 0 150px;
  }
  footer .footer-block {
    width: 30%;
    max-width: 350px;
  }
  footer .copyright {
    text-align: left;
    font-size: 16px;
    width: 100%;
  }

}



/* MODULE
 * * -----------------------------------------------*/

@keyframes scroll-bottom {
  0% {
    transform: scale(1,0);
    transform-origin: top;
    -webkit-transform-origin: top;;
  }
  50% {
    transform: scale(1,1);
    transform-origin: top;
    -webkit-transform-origin: top;
  }
  51% {
    transform: scale(1,1);
    transform-origin: bottom;
    -webkit-transform-origin: bottom;
  }
  100% {
    transform: scale(1,0);
    transform-origin: bottom;
    -webkit-transform-origin: bottom;
  }

}

.scroll-bottom {
  transition: all .2s ease;
  position: fixed;
  height: 132px;
  z-index: 11;
  bottom: 20px;
  opacity: 1;
  right: 25px;
}
.scroll-bottom a {
  font-size: 12px;
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg);
  text-decoration: unset;
  letter-spacing: 2px;
  position: absolute;
  border-radius: 50%;
  color: #000;
  padding: 3px 0;
  display: block;
  height: 25px;
  width: 65px;
  left: -26px;
  bottom: 0;
  font-family: "Roboto Condensed", sans-serif;
}
.scroll-bottom .scroll-ber {
  -webkit-animation: scroll-bottom 2.5s linear 2.5s infinite;
  animation: scroll-bottom 2.5s linear 2.5s infinite;
  background-color: #fff;
  position: absolute;
  height: 70px;
  z-index: 1;
  width: 1px;
  left: 7px;
  bottom: 60px;
}
.scroll-bottom::after, .scroll-top::after {
    background-color: #000;
    position: absolute;
    height: 70px;
    content: "";
    width: 1px;
    left: 7px;
    bottom: 60px;
}

@media print, (min-width: 768px) {
  .scroll-bottom {
    margin-bottom: 10px;
    height: 252px;
    bottom: 20px;
    right: 40px;
  }
  .scroll-bottom a {
    font-size: 18px;
    height: 35px;
    width: 80px;
    left: -35px;
  }
  .scroll-bottom .scroll-ber {
    height: 150px;
    bottom: 70px;

  }
  .scroll-bottom::after, .scroll-top::after {
    height: 150px;
    bottom: 70px;
  }
}


.section-indicator {
  display: flex;
  width: 67px;
  justify-content: flex-end;
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 10;
}

.section-indicator img {
  width: 10px;
}

.indicator-menu {
  opacity: 1;
  font-size: 10px;
  position: fixed;
  bottom: 21px;
  right: 30px;
}
.indicator-menu .target-link {
  justify-content: flex-end;
  position: relative;
  width: 100%;
  display: flex;
  right: -15px;
  color: #fff;
}

.indicator-menu .target-link::before {
  background-color: #777;
  content: '';
  width: 10px;
  height: 1px;
  display: block;
  position: absolute;
  right: 0;
  top: 6px;
}
.indicator-menu .target-link span {
  position: relative;
  right: 30px;
  opacity: 0;
}

.indicator-menu .target-link.is-active {
  transition: all .2s ease;
  right: -15px;
  opacity: 1;
}

.indicator-menu .target-link.is-active::before {
  background-color: #FF003E;
  content: '';
  width: 20px;
  height: 1px;
  display: block;
  position: absolute;
  right: 0;
  top: 6px;
}

.indicator-menu .target-link.is-active span {
  opacity: 1;
}

@media print, (min-width: 768px) {
  .indicator-menu {
    right: 60px;
    bottom: 310px;
  }
}


.red {
  color: #FF0046;
}

@media print, (min-width: 768px) {
  .hidden-br {
    display: none;
  }
}


/* ANIMATION
 * * -----------------------------------------------*/


@keyframes logo-text-motion{
  0%{
      display: block;
      opacity: 0;
  }
  100%{
      opacity: 1;
  }
}


@keyframes logo-scale{
  0%{
      transform: scale(0.8);
      opacity: 0;
  }
  100%{
      transform: scale(1);
      opacity: 1;
  }
}


@keyframes title-animation1{
  0%{
      transform: translateX(100%);
  }
  100%{
      transform: translateX(-100%);
  }
}




.animateme {
  font-family: "Roboto Condensed", sans-serif;
  font-weight: 300;
  white-space: nowrap;
  font-size: 86px;
  color: #EFEFEF;
  display: flex;
}
@media print, (min-width: 768px) {
  .animateme {
    font-size: 180px;
  }
}
.logo-scroll1{
  animation-name: title-animation1;
  animation-duration: 120s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  animation-delay: -60s;
  padding-right: 20px;

}
@media print, (min-width: 768px) {
  .logo-scroll1{
    padding-right: 30px;
  }
}


@keyframes title-animation2{
  0%{
      transform: translateX(0%);
      opacity: 1;
  }
  100%{
      transform: translateX(-200%);
      opacity: 1;
  }
}

.logo-scroll2{
  animation-name: title-animation2;
  animation-duration: 120s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  animation-delay: 0s;
}
.logo-contact-scroll2{
  animation-name: title-animation2;
  animation-duration: 120s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  animation-delay: 0s;
  padding-right: 20px;
}
@media print, (min-width: 768px) {
  .logo-contact-scroll2{
    padding-right: 30px;
  }
}

.wow {
  visibility: hidden;
}

@media print {
  .wow {
    visibility: visible !important;
  }
}

.animated {
  animation-duration: 2s;
  animation-fill-mode: both;
}
@keyframes fade-in-up {
  0% {
    opacity: 0;
    -ms-transform: translateY(50px);
    transform: translateY(50px);
  }
  100% {
    opacity: 1;
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}
.fade-in-up {
  animation-name: fade-in-up;
}

@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.fade-in {
  animation-name: fade-in;
}

.column-product {
  position: relative;
}

.section-block {
  padding-top: 100px;
}

.section-title {
  margin: 0 auto 50px;
  text-align: center;
  font-weight: 600;
  font-size: 40px;
  width: 100%;
  color: #fff;
}
.section-title span {
  font-family: "Roboto Condensed", sans-serif;
  letter-spacing: 2px;
  margin-bottom: 14px;
  font-size: 24px;
  color: #FF0046;
  display: block;
}

@media only screen and (max-width: 767.98px) {
  .section-title {
    left: 50%;
    top: 1.2rem;
    font-size: 0.5rem;
  }
}

/* MAIN
 * * -----------------------------------------------*/

.section-top-main {
  padding-top: 15vh;
  padding-left: 24px;
  overflow: hidden;
  height: 100vh;
  position: relative;
}

.main-bg-image {
  width: 100%;
  padding: 0%;
  z-index: -1;
  position: absolute;
  padding-top: 80%;
  overflow: hidden;
  bottom: 7vh;
  max-height: 35vh;
}


.main-bg-image .main-img-sp {
  display: inline-block;
  position: relative;
  top: -50vh;
  max-width: 130%;
  left: -14%;
  height: auto;
}
.main-bg-image .main-img-pc {
  display: none;
}

@media print, (min-width: 768px) {
  .main-bg-image {
    padding-top: 60%;
    position: relative;
    bottom: 0;
    clip-path: polygon(0 0%, 100% 0%, 100% 100%, 75% 100%, 50% 100%, 50% 80%, 0 80%);
  }
  .main-bg-image .main-img-sp {
    display: none;
  }
  .main-bg-image .main-img-pc {
    display: inline-block;
    position: absolute;
    top: -20vh;
    max-width: 120%;
    left: -10%;
    height: auto;
  }
}

.section-top-main .main-left {
  width: 100%;
  margin-bottom: 80px;
  margin-top: 30px;
}
.section-top-main .main-left .main-left-block {
  overflow: hidden;
  padding-right: 64px;
  max-width: 500px;
}


.section-top-main .main-left img {
  max-height: 368px;
  position: relative;
  bottom: -181px;
  transition: 0.4s;
}

.section-top-main .main-left .main-text-sp {
  display: block;
}
.section-top-main .main-left .main-text-pc {
  display: none;
}
.section-top-main .main-left p {
  font-family: "Roboto Condensed", sans-serif;
  font-size: 20px;
  overflow: hidden;
}
.section-top-main .main-left p span {
  position: relative;
  bottom: -30px;
  transition: 0.4s;
}

.section-top-main .main-left .main-left-block.fadeIn img {
  bottom: 0;
  transition: 0.4s;
}
.section-top-main .main-left .main-left-text.fadeIn span {
  bottom: 0;
  transition: 0.4s;
}

@media print, (min-width: 768px) {

  .section-top-main .main-left {
    margin-bottom: 98px;
    height: auto;
  }
  .section-top-main .main-left .main-left-block {
    max-width: 933px;
  }
  .section-top-main .main-left .main-text-sp {
    display: none;
  }
  .section-top-main .main-left .main-text-pc {
    display: block;
  }
  .section-top-main .main-left p {
    font-size: 24px;
  }
}


.section-top-main .main-right {
  padding: 0 36px;
  font-size: 36px;
  font-weight: 600;
}
.section-top-main .main-right .red {
  color: #FF0046;
}
.section-top-main .main-right p {
  font-size: 18px;
  margin-top: 13px;
}
.main-logo-scroll {
  white-space: nowrap;
  width: 150%;
}
.main-logo-scroll img {
  padding: 0 20px;
  margin-top: 40px;
  width: 210%;
  max-width: none;
}

@media print, (min-width: 768px) {
  .section-top-main {
    padding-top: 140px;
    padding-left: 140px;
    height: auto;
    z-index: 1;
  }

  .section-top-main .main-left {
    width: auto;
  }
  .section-top-main .main-left img {
    max-height: 515px;
  }
  .section-top-main .main-right {
    font-size: 46px;
  }
  .section-top-main .main-right p {
    font-size: 24px;
    margin-top: 16px;
  }
  .main-logo-scroll img {
    margin-top: -60px;
    padding: 0 20px;
    width: 100%;
  }
}


/* ABOUT US
 * * -----------------------------------------------*/

.section-about-us .about-us-top .animateme {
  font-family: "Roboto Condensed", sans-serif;
  white-space: nowrap;
  display: flex;
  font-size: 86px;
  color: #EFEFEF;
}
.section-about-us .about-us-top p {
  padding-left: 31px;
  font-size: 18px;
}
.section-about-us .about-us-top small {
  font-family: "Roboto Condensed", sans-serif;
  padding-left: 21px;
  font-size: 10px;
  font-weight: 100;
}

.section-about-us .about-us-bottom {
  padding-left: 31px;
}

.section-about-us .about-us-bottom .about-us-bottom-left {
  transition: 0.4s;
  padding: 30px;
  opacity: 0;
  position: relative;
  left: -10px;
}
.section-about-us .about-us-bottom .about-us-bottom-left .about-us-bottom-title {
  position: relative;
  display: inline-block;
  font-size: 33px;
  margin-bottom: 35px;
  font-weight: bold;
  letter-spacing: .2em;
  margin-left: -1em;
}
.section-about-us .about-us-bottom .about-us-bottom-left .about-us-bottom-title::before {
  font-family: "Roboto Condensed", sans-serif;
  content: '“';
  position: relative;
  left: 0.5em;
}
.section-about-us .about-us-bottom .about-us-bottom-left .about-us-bottom-title::after {
  font-family: "Roboto Condensed", sans-serif;
  right: 0;
  position: absolute;
  content: '“';
}
.section-about-us .about-us-bottom .about-us-bottom-left .about-us-bottom-title span {
  color: #F89686;
}
.section-about-us .about-us-bottom .about-us-bottom-left p {
  line-height: 2.2;
  color: #555;
  font-size: 16px;
}
.section-about-us .about-us-bottom .about-us-bottom-left p .pc-visible {
  display: none;
}

.section-about-us .about-us-bottom .about-us-bottom-right {
  transition: 0.4s;
  position: relative;
  right: -20px;
  opacity: 0;
}


.section-about-us .about-us-bottom .about-us-bottom-right .main-about-us-small-img {
  position: absolute;
  opacity: 0;
  left: -50px;
  top: 0;
}
.section-about-us .about-us-bottom .about-us-bottom-right.fadeInDown .main-about-us-small-img {
  transition: 1.5s;
  transition-delay: .6s;
  opacity: 1;
  left: 0px;
}


/* フェードイン*/
.section-about-us .about-us-bottom .about-us-bottom-left.fadeInDown {
  transition: 1.5s;
  transition-delay: .3s;
  opacity: 1;
  left: 0px;
}
.section-about-us .about-us-bottom .about-us-bottom-right.fadeInDown {
  transition: 1.5s;
  transition-delay: .3s;
  opacity: 1;
  right: 0px;
}


@media print, (min-width: 768px) {
  .section-about-us .about-us-top .animateme {
    font-size: 180px;
    display: flex;
  }
  .section-about-us .about-us-top p {
    padding-left: 140px;
  }
  .section-about-us .about-us-top small {
    padding-left: 130px;
    font-family: "Roboto Condensed", sans-serif;
    color: #333;
  }
  .section-about-us .about-us-bottom {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: flex-start;
    padding-left: 100px;
    padding-bottom: 130px;
  }
  .section-about-us .about-us-bottom .about-us-bottom-left {
    width: 40%;
    padding: 30px;
  }
  .section-about-us .about-us-bottom .about-us-bottom-left p {
    letter-spacing: 0.2rem;
    font-size: 14px;
  }
  .section-about-us .about-us-bottom .about-us-bottom-left p .pc-visible {
    display: block;
  }

  .section-about-us .about-us-bottom .about-us-bottom-right {
    width: 60%;
  }
  .section-about-us .about-us-bottom .about-us-bottom-left .about-us-bottom-title {
    font-size: 37px;
    margin-bottom: 65px;
  }
}

@media print, (min-width: 992px) {
  .section-about-us .about-us-bottom {
    padding-left: 200px;
    padding-bottom: 130px;
  }
  .section-about-us .about-us-bottom .about-us-bottom-left .about-us-bottom-title {
    font-size: 43px;
    white-space: nowrap;
  }
}

@media print, (min-width: 1400px) {
  .section-about-us .about-us-bottom {
    padding-left: 248px;
    padding-bottom: 130px;
  }
  .section-about-us .about-us-bottom .about-us-bottom-left {
    padding: 30px 0;
  }
  .section-about-us .about-us-bottom .about-us-bottom-left p {
    font-size: 16px;
    letter-spacing: 0.2rem;
  }
  .section-about-us .about-us-bottom .about-us-bottom-left .about-us-bottom-title {
    font-size: 3.4rem;
  }
}

@media print, (min-width: 1400px) {

  .section-about-us .about-us-top p {
    padding-left: 278px;
  }
  .section-about-us .about-us-top small {
    padding-left: 268px;
  }

  .section-about-us .about-us-bottom {
    padding-left: 268px;
  }

}


/* OUR BUSINESS
 * * -----------------------------------------------*/

.section-our-business .our-business-top .animateme {
  font-family: "Roboto Condensed", sans-serif;
  white-space: nowrap;
  font-size: 86px;
  color: #EFEFEF;
  display: flex;
}
.section-our-business .our-business-top p {
  padding-left: 31px;
  font-size: 18px;
}
.section-our-business .our-business-top small {
  font-family: "Roboto Condensed", sans-serif;
  padding-left: 21px;
  font-size: 10px;
  font-weight: 100;
}




.section-our-business .our-business-bottom .our-business-bottom-left {
  padding: 30px;
  position: relative;
}

.section-our-business .our-business-bottom .our-business-bottom-left .main-our-business-img {
  opacity: 0;
  object-fit: cover;
  display: inline-block;
  width: 100%;
  height: 100%;
  background: #EFEFEF;
  transition: 0.4s;
}
.section-our-business .our-business-bottom .our-business-bottom-left .sp-active .main-our-business-img {
  opacity: 1;
  transition: 1s;
  transition-delay: .3s;
}

.section-our-business .our-business-bottom .our-business-bottom-block .our-business-bottom-title {
  font-family: "Roboto Condensed", sans-serif;
  font-weight: bolder;
  font-size: 27px;
  margin-bottom: 17px;
  color: #EFEFEF;
  opacity: 0;
}
.section-our-business .our-business-bottom .our-business-bottom-left .sp-active .our-business-bottom-title {
  color: #F89686;
  opacity: 1;
  transition: 0.4s;
}

.section-our-business .our-business-bottom .our-business-bottom-block .our-business-bottom-title span small::before {
  content:  ' ◼︎';
  margin-right: 5px;
  position: relative;
  color: #eee;
  font-size: 19px;
  top: 4px;
}
.section-our-business .our-business-bottom .our-business-bottom-left .sp-active .our-business-bottom-title span small::before {
  color: #F89686;
  transition: 0.4s;
}



.section-our-business .our-business-bottom .our-business-bottom-block {
  margin-bottom: 59px;
}


.section-our-business .our-business-bottom .our-business-bottom-block .our-business-bottom-title span {
  font-size: 16px;
  font-weight: 100;
  display: block;
  color: #555;
}
.section-our-business .our-business-bottom .our-business-bottom-block .our-business-bottom-title span small {
  margin-bottom: 12px;
  margin-right: 20px;
  display: block;
  font-size: 10px;
  color: #555;
}


.section-our-business .our-business-bottom .our-business-bottom-block p {
  margin-top: 22px;
  line-height: 1.7;
  color: #555;
  font-size: 16px;
  opacity: 0;
}
.section-our-business .our-business-bottom .our-business-bottom-block.sp-active p {
  opacity: 1;
  transition: 1s;
  transition-delay: .6s;
}


.section-our-business .our-business-bottom .our-business-bottom-right {
  display: none;
}


/* フェードイン*/
.section-our-business.fadeInDown .our-business-bottom .our-business-bottom-left {
  transition: 0.8s;
  opacity: 1;
  left: 0px;
}
.section-our-business.fadeInDown .our-business-bottom .our-business-bottom-right {
  transition: 0.8s;
  opacity: 1;
  right: 0px;
}


@media print, (min-width: 768px) {
  .section-our-business .our-business-top .animateme {
    font-size: 180px;
  }
  .section-our-business .our-business-top p {
    padding-left: 140px;
  }
  .section-our-business .our-business-top small {
    padding-left: 130px;
    font-family: "Roboto Condensed", sans-serif;
    color: #333;
  }

  .section-our-business .our-business-bottom {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
    padding-left: 100px;
    padding-bottom: 130px;
  }



  .section-our-business .our-business-bottom .our-business-bottom-block .our-business-bottom-title span {
    display: flex;
    margin-left: -50px;
  }

  .section-our-business .our-business-bottom .our-business-bottom-left {
    width: 60%;
    padding: 30px 60px 30px 0;
  }

  .section-our-business .our-business-bottom .our-business-bottom-left .our-business-bottom-block {
    margin-bottom: 0;
    visibility: hidden;
    position: relative;
    height: 0;
  }
  .section-our-business .our-business-bottom .our-business-bottom-left .our-business-bottom-block::before {
    background: linear-gradient(180deg, rgba(0,0,0,1) 0%, rgba(0,0,0,.5) 20%, rgba(0,0,0,.2)50%, rgba(0,0,0,.5)80%, rgba(0,0,0,1)100%);
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    opacity: 0;
  }
  .section-our-business .our-business-bottom .our-business-bottom-left .our-business-bottom-block.active::before {
    opacity: 1;
    transition: 0.4s;
  }
  .section-our-business .our-business-bottom .our-business-bottom-left .our-business-bottom-block.active::after {
    background: #000;
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    opacity: 1;
    z-index: -2;
  }


  .section-our-business .our-business-bottom .our-business-bottom-left .our-business-bottom-block .our-business-bottom-title {
    opacity: 0;
    transition: 0.4s;
  }
  .section-our-business .our-business-bottom .our-business-bottom-left .our-business-bottom-block .main-our-business-img {
    object-position: 470px 100%;
    transition: 0.4s;
    background-color: #000;
    opacity: 0;
  }

  .section-our-business .our-business-bottom .our-business-bottom-left .our-business-bottom-block.active {
    display: block;
    position: relative;
    visibility: visible;
    height: auto;
  }
  .section-our-business .our-business-bottom .our-business-bottom-left .our-business-bottom-block.active .our-business-bottom-title {
    opacity: 1;
    transition: 0.4s;
  }
  .section-our-business .our-business-bottom .our-business-bottom-left .our-business-bottom-block.active .main-our-business-img {
    object-position: 0 100%;
    opacity: 1;
    z-index: -1;
    position: relative;
    transition: 1s;
    height: auto;
    background-color: #000;
    opacity: 1;
  }
  .section-our-business .our-business-bottom .our-business-bottom-left .our-business-bottom-block.active p {
    opacity: 1;
    transition: 0.4s;
  }

  .section-our-business .our-business-bottom .our-business-bottom-left .our-business-bottom-block .our-business-bottom-title {
    font-size: 30px;
    margin-bottom: 17px;
    color: #fff;
    position: absolute;
    top: 80px;
    left: 80px;
  }
  .section-our-business .our-business-bottom .our-business-bottom-left .our-business-bottom-block .our-business-bottom-title span {
    font-size: 16px;
    display: block;
    color: #fff;
    margin-left: 0;
  }
  .section-our-business .our-business-bottom .our-business-bottom-left .our-business-bottom-block .our-business-bottom-title span small {
    font-size: 10px;
    color: #fff;
  }
  .section-our-business .our-business-bottom .our-business-bottom-left .our-business-bottom-block .our-business-bottom-title span small::before {
    color: #E87171;
  }
  .section-our-business .our-business-bottom .our-business-bottom-left .our-business-bottom-block p {
    transition: 0.4s;
    opacity: 0;
    color: #fff;
    position: absolute;
    padding: 80px;
    bottom: 0;
    left: 0;
  }


  .section-our-business .our-business-bottom .our-business-bottom-right {
    display: block;
    width: 40%;
    padding: 30px 0;
    position: relative;
    right: -20px;
  }
  .section-our-business .our-business-bottom .our-business-bottom-right p {
    font-size: 20px;
  }

  .section-our-business .our-business-bottom .our-business-bottom-right .our-business-bottom-block {
    margin-bottom: 0;
  }
  .section-our-business .our-business-bottom .our-business-bottom-right .our-business-bottom-block.active .our-business-bottom-title {
    color: #F89686;
    padding-left: 100px;
    transition: 0.4s;
  }
  .section-our-business .our-business-bottom .our-business-bottom-right .our-business-bottom-block.active .our-business-bottom-title span {
    margin-left: -50px;
    transition: 0.4s;
    display: flex;
    align-items: flex-start;
  }
  .section-our-business .our-business-bottom .our-business-bottom-right .our-business-bottom-block.active .our-business-bottom-title span small::before {
    color: #F89686;
    transition: 0.4s;
  }

  .section-our-business .our-business-bottom .our-business-bottom-right .our-business-bottom-block .our-business-bottom-title {
    border-bottom: 1px solid #F7F7F7;
    padding: 40px 0 40px 50px;
    margin-bottom: 0;
    color: #eee;
    opacity: 1;
    transition: 0.4s;
  }
  .section-our-business .our-business-bottom .our-business-bottom-right .our-business-bottom-block:first-child .our-business-bottom-title {
    border-top: 1px solid #F7F7F7;
  }

  .section-our-business .our-business-bottom .our-business-bottom-right .our-business-bottom-block:hover .our-business-bottom-title {
    color: #F89686;
  }

}

@media print, (min-width: 1400px) {

  .section-our-business .our-business-top p {
    padding-left: 278px;
  }
  .section-our-business .our-business-top small {
    padding-left: 268px;
  }

  .section-our-business .our-business-bottom {
    padding-left: 248px;
    padding-right: 190px;
    padding-bottom: 130px;
  }

}


/* ESG
 * * -----------------------------------------------*/

.section-esg-investment {
  background: #F7F7F7;
  padding: 100px 20px;
}
.section-esg-investment.pc{
  display: none;
}


.section-esg-investment .about-esg-investment p {
  padding-left: 8px;
  font-size: 18px;
}
.section-esg-investment .about-esg-investment small {
  font-size: 10px;
  font-family: "Roboto Condensed", sans-serif;
  font-weight: 100;
}


.section-esg-investment .esg-investment-top {
  position: relative;
  display: inline-block;
  font-size: 30px;
  margin: 30px 0;
  font-weight: bold;
  letter-spacing: .1em;
}
.section-esg-investment .esg-investment-top span {
  color: #F89686;
}



.section-esg-investment .pin-spacer .logo-animation {
  width: 100% !important;
  height: auto !important;
  padding: 0px !important;
}
.section-esg-investment .pin-spacer .logo-animation .logo-move {
  max-width: 85%;
  margin: 10px auto 0;
}



.section-esg-investment .logo-scroll {
  height: 230vh;
}

.section-esg-investment .esg-investment-center .esg-investment-center-right {
  padding: 30px 30px 50px;
  text-align: center;
}


.section-esg-investment .esg-investment-center .esg-investment-center-left .sp-active .esg-investment-center-title {
  color: #F89686;
  transition: 0.4s;
}
.section-esg-investment .esg-investment-center .esg-investment-center-left.sp-active .esg-investment-center-title span small::before {
  color: #F89686;
  transition: 0.4s;
}
.section-esg-investment .esg-investment-center .esg-investment-center-right .sp-active .main-esg-investment-img {
  object-position: 0px 100%;
  transition: 0.4s;
}

.section-esg-investment .esg-investment-center .esg-investment-center-block {
  margin-bottom: 59px;
}

.section-esg-investment .esg-investment-center .esg-investment-center-block .esg-investment-center-title {
  font-family: "Roboto Condensed", sans-serif;
  font-weight: bolder;
  font-size: 30px;
  margin-bottom: 17px;
  color: #EFEFEF;
  white-space: nowrap;
}
.section-esg-investment .esg-investment-center .esg-investment-center-block .esg-investment-center-title span {
  font-weight: 100;
  font-size: 16px;
  display: block;
  color: #555;
}
.section-esg-investment .esg-investment-center .esg-investment-center-block .esg-investment-center-title span small {
  margin-bottom: 12px;
  display: block;
  font-size: 10px;
  color: #555;
}
.section-esg-investment .esg-investment-center .esg-investment-center-block .esg-investment-center-title span small::before {
  content:  ' ◼︎';
  margin-right: 5px;
  position: relative;
  color: #fff;
  font-size: 19px;
  top: 4px;
}

.section-esg-investment .esg-investment-center .esg-investment-center-block p {
  margin-top: 22px;
  line-height: 1.7;
  color: #555;
  font-size: 16px;
}
.section-esg-investment .esg-investment-center .esg-investment-center-left {
  display: none;
}


.section-esg-investment .esg-investment-bottom {
  line-height: 2.2;
  letter-spacing: 0.2rem;
  margin-top: 20px;
  font-size: 16px;
}

.section-esg-investment.sp .esg-investment-bottom {
  letter-spacing: 0;
  bottom: 10px;
  font-size: 16px;
  line-height: 1.5;
}
@media print, (min-width: 410px) {
  .section-esg-investment.sp .esg-investment-bottom {
    line-height: 2;
    margin-top: 10px;
    font-size: 16px;
  }
  .section-esg-investment .pin-spacer .logo-animation .logo-move {
      max-width: 78%;
      margin: 20px auto 0;
  }
}


@media print, (min-width: 768px) {

  .section-esg-investment {
    padding: 100px 130px;
  }
  .section-esg-investment.sp{
    display: none;
  }
  .section-esg-investment.pc{
    display: block;
  }

  .esg-investment-wrapper {
    max-width: 1000px;
    margin: 0 auto;
  }

  .section-esg-investment .esg-investment-top {
    font-size: 40px;
  }
  .section-esg-investment .esg-investment-top br {
    display: none;
  }
  .section-esg-investment .esg-investment-center {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
    padding-left: 100px;
    padding-bottom: 0px;
  }

  .section-esg-investment .esg-investment-center .esg-investment-center-block .esg-investment-center-title span {
    margin-left: -50px;
    display: flex;
    color: #555;
  }
  .section-esg-investment .esg-investment-center .esg-investment-center-block .esg-investment-center-title span small {
    margin-bottom: 12px;
    margin-right: 20px;
  }
  .section-esg-investment .esg-investment-center .esg-investment-center-right {
    position: relative;
    width: 50%;
    padding: 0;
    opacity: 0;
    position: relative;
    right: -20px;
  }
  .section-esg-investment .esg-investment-center .esg-investment-center-right .main-esg-investment-img {
    position: absolute;
    padding: 0;
    display: none;
    height: 100%;
    width: 100%;
    z-index: 1;
  }
  .section-esg-investment .esg-investment-center .esg-investment-center-right .img1 {
    display: block;
  }

  .section-esg-investment .esg-investment-center .esg-investment-center-right.scroll1 .img1 {
    display: block;
  }
  .section-esg-investment .esg-investment-center .esg-investment-center-right.scroll2 .img2 {
    display: block;
  }
  .section-esg-investment .esg-investment-center .esg-investment-center-right.scroll3 .img3 {
    display: block;
  }


  .section-esg-investment .esg-investment-center .esg-investment-center-right .main-esg-investment-loop {
    position: relative;
    left: 0;
    top: 0;
    width: 100%;
    z-index: 0;
    margin-bottom: 0px;
    transform: rotate(0deg);
  }
  .section-esg-investment .esg-investment-center .esg-investment-center-right.scroll1 .main-esg-investment-loop {
    transform: rotate(0deg);
    transition: 0.4s;
  }
  .section-esg-investment .esg-investment-center .esg-investment-center-right.scroll2 .main-esg-investment-loop {
    transform: rotate(115deg);
    transition: 0.4s;
    position: relative;
    top: -15px;
    left: -5px;
  }
  .section-esg-investment .esg-investment-center .esg-investment-center-right.scroll3 .main-esg-investment-loop {
    margin-bottom: 20px;
    margin-left: 12px;
    transform: rotate(239deg);
    transition: 0.4s;
  }

  .section-esg-investment .esg-investment-center .esg-investment-center-right .esg-investment-center-block {
    margin-bottom: 0;
    visibility: hidden;
    height: 0;
  }
  .section-esg-investment .esg-investment-center .esg-investment-center-right .esg-investment-center-block::before {
    background: linear-gradient(180deg, rgba(0,0,0,1) 0%, rgba(0,0,0,.5) 20%, rgba(0,0,0,.2)50%, rgba(0,0,0,.5)80%, rgba(0,0,0,1)100%);
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
  }

  .section-esg-investment .esg-investment-center .esg-investment-center-right .esg-investment-center-block .esg-investment-center-title {
    opacity: 0;
    transition: 0.4s;
  }
  .section-esg-investment .esg-investment-center .esg-investment-center-right .esg-investment-center-block .main-esg-investment-img {
    object-position: 470px 100%;
    transition: 0.4s;
  }

  .section-esg-investment .esg-investment-center .esg-investment-center-right .esg-investment-center-block.active {
    display: block;
    position: relative;
    visibility: visible;
    height: auto;
  }
  .section-esg-investment .esg-investment-center .esg-investment-center-right .esg-investment-center-block.active .esg-investment-center-title {
    opacity: 1;
    transition: 0.4s;
  }
  .section-esg-investment .esg-investment-center .esg-investment-center-right .esg-investment-center-block.active .main-esg-investment-img {
    object-position: 0 100%;
    transition: 0.4s;
  }
  .section-esg-investment .esg-investment-center .esg-investment-center-right .esg-investment-center-block.active p {
    opacity: 1;
    transition: 0.4s;
  }

  .section-esg-investment .esg-investment-center .esg-investment-center-right .esg-investment-center-block .esg-investment-center-title {
    font-size: 30px;
    margin-bottom: 17px;
    color: #fff;
    position: absolute;
    top: 80px;
    left: 80px;
  }
  .section-esg-investment .esg-investment-center .esg-investment-center-right .esg-investment-center-block .esg-investment-center-title span {
    font-size: 16px;
    display: block;
    color: #fff;
  }
  .section-esg-investment .esg-investment-center .esg-investment-center-right .esg-investment-center-block .esg-investment-center-title span small {
    font-size: 10px;
    color: #fff;
  }
  .section-esg-investment .esg-investment-center .esg-investment-center-right .esg-investment-center-block .esg-investment-center-title span small::before {
    color: #E87171;
  }
  .section-esg-investment .esg-investment-center .esg-investment-center-right .esg-investment-center-block p {
    transition: 0.4s;
    opacity: 0;
    color: #fff;
    position: absolute;
    padding: 80px;
    bottom: 0;
    left: 0;
  }


  .section-esg-investment .esg-investment-center .esg-investment-center-left {
    display: block;
    width: 60%;
    padding: 0;
    opacity: 0;
    position: relative;
    left: -20px;
  }
  .section-esg-investment .esg-investment-center .esg-investment-center-left p {
    font-size: 20px;
  }

  .section-esg-investment .esg-investment-center .esg-investment-center-left .esg-investment-center-block {
    margin-bottom: 0;
  }
  .section-esg-investment .esg-investment-center .esg-investment-center-left .esg-investment-center-block.active .esg-investment-center-title {
    color: #F89686;
    padding-left: 50px;
    transition: 0.4s;
  }
  .section-esg-investment .esg-investment-center .esg-investment-center-left .esg-investment-center-block.active .esg-investment-center-title span {
    margin-left: -50px;
    transition: 0.4s;
    display: flex;
  }
  .section-esg-investment .esg-investment-center .esg-investment-center-left .esg-investment-center-block.active .esg-investment-center-title span small::before {
    color: #F89686;
    transition: 0.4s;
  }

  .section-esg-investment .esg-investment-center .esg-investment-center-left .esg-investment-center-block .esg-investment-center-title {
    border-bottom: 1px solid #F7F7F7;
    padding: 40px 30px 40px 0px;
    margin-bottom: 0;
    color: #fff;
    transition: 0.4s;
  }
  .section-esg-investment .esg-investment-center .esg-investment-center-left .esg-investment-center-block:first-child .esg-investment-center-title {
    border-top: 1px solid #F7F7F7;
  }

  .section-esg-investment .esg-investment-center .esg-investment-center-left .esg-investment-center-block:hover .esg-investment-center-title {
    color: #F89686;
  }

  /* フェードイン*/
  .section-esg-investment.fadeInDown .esg-investment-center .esg-investment-center-left {
    transition: 0.8s;
    opacity: 1;
    left: 0px;
  }
  .section-esg-investment.fadeInDown .esg-investment-center .esg-investment-center-right {
    transition: 0.8s;
    opacity: 1;
    right: 0px;
  }

}

@media print, (min-width: 1400px) {
  .section-esg-investment {
    padding: 100px 248px 100px 278px;
  }
  .section-esg-investment .esg-investment-center {
    padding-bottom: 30px;
  }

}

/* CONTACT
 * * -----------------------------------------------*/

.section-contact {
  background-image: url(../img/contact_bg_sp.jpg);
  background-repeat: no-repeat;
  background-position: center;

  background-size: cover;
  position: relative;
  padding: 100px 20px;
}
.section-contact::after {
  background-color: rgba(0, 0, 0, .3);
  position: absolute;
  content: '';
  height: 100%;
  width: 100%;
  left: 0;
  top: 0;
}
.section-contact h2 {
  position: relative;
  z-index: 1;
}
.section-contact .animateme {
  font-size: 60px;
}


@media print, (min-width: 768px) {
  .section-contact {
    background-image: url(../img/contact_bg_pc.jpg);
    background-size: cover;
    padding: 200px 20px;
  }
  .section-contact .animateme {
    font-size: 180px;
  }

}


/*# sourceMappingURL=top.css.map */
