@charset "UTF-8";


@import url("https://fonts.googleapis.com/css2?family=Josefin+Sans:wght@100..700&family=Roboto:wght@100..900&family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&family=Zen+Old+Mincho:wght@500;700&display=swap");
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    -webkit-animation-delay: -1ms;
    animation-delay: -1ms;
    -webkit-animation-duration: 1ms;
    animation-duration: 1ms;
    -webkit-animation-iteration-count: 1;
    animation-iteration-count: 1;
    background-attachment: initial;
    scroll-behavior: auto;
    -webkit-transition-delay: 0s;
            transition-delay: 0s;
    -webkit-transition-duration: 0s;
            transition-duration: 0s;
  }
}
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

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 {
  -moz-tab-size: 4;
  -o-tab-size: 4;
  tab-size: 4;
  margin: 0;
  padding: 0;
  border: none;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

a,
area,
button,
input,
label,
select,
summary,
textarea,
[tabindex] {
  -ms-touch-action: manipulation;
      touch-action: manipulation;
}

iframe,
img,
input,
select,
textarea {
  max-width: 100%;
  height: auto;
}

audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

ol, ul {
  list-style: none;
}

img {
  image-rendering: -webkit-optimize-contrast;
}

a {
  color: inherit;
  text-decoration: none;
}

table {
  border-collapse: collapse;
}

button {
  border-radius: 0;
  text-transform: none;
  border: none;
  cursor: pointer;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

:root {
  --s: 1px;
  --h: 1px;
  --f: 1px;
  --px: 1px;
}
@media screen and (max-width: 1600px) {
  :root {
    --s: 0.0625vw;
    --h: 0.0625vw;
  }
}
@media screen and (max-width: 960px) {
  :root {
    --s: 0.14vw;
    --h: 0.11vw;
    --f: 0.18vw;
    --px: 0.18vw;
  }
}

@-webkit-keyframes btnWave {
  0% {
    background-position: left calc(var(--px) * 0) top;
  }
  100% {
    background-position: left calc(var(--px) * 60) top;
  }
}

@keyframes btnWave {
  0% {
    background-position: left calc(var(--px) * 0) top;
  }
  100% {
    background-position: left calc(var(--px) * 60) top;
  }
}
@-webkit-keyframes animeBoat {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(calc(var(--px) * 10));
            transform: translateY(calc(var(--px) * 10));
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes animeBoat {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(calc(var(--px) * 10));
            transform: translateY(calc(var(--px) * 10));
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.parallaxSlideup {
  will-change: transform;
}

html {
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent;
  text-align: justify;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}

body {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-style: normal;
  color: #363636;
  font-size: calc(var(--f) * 18);
  line-height: 1.88;
  letter-spacing: 0.05em;
  font-weight: 500;
  color: #363636;
}
@media screen and (max-width: 960px) {
  body {
    letter-spacing: 0;
  }
}

h1, h2, h3, h4, h5, h6, b, strong, dt, th {
  font-weight: inherit;
}

br.sp {
  display: none;
}

span.nl {
  display: inline-block;
}

@media screen and (max-width: 960px) {
  br.pc {
    display: none;
  }
  br.sp {
    display: inline;
  }
}
.footer {
  position: relative;
  overflow: hidden;
  color: #fff;
  background: #1B5095 url(../img/_common/footer-bg.svg) right top/calc(var(--px) * 228) auto no-repeat;
}
.footer__container {
  width: 1480px;
  max-width: 90vw;
  padding: calc(var(--px) * 60) 0 0;
  margin: 0 auto;
}
.footer__info {
  margin: 0 0 calc(var(--px) * 46);
}
.footer__info .logo img {
  display: block;
  width: calc(var(--px) * 152);
  margin: 0 0 calc(var(--px) * 28);
}
.footer__info .address {
  margin: 0 0 calc(var(--px) * 28);
  font-size: calc(var(--f) * 16);
  line-height: 1.625;
}
.footer__info .contact .label a {
  display: inline-block;
  padding: 0.35em 3.6em 0.45em;
  border: 1px solid #fff;
  border-radius: 999px;
}
.footer__nav {
  margin: 0 0 calc(var(--px) * 46);
}
.footer__nav .link {
  font-size: calc(var(--f) * 15);
  font-weight: 600;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
}
.footer__nav .link:hover {
  opacity: 0.7;
}
.footer__nav .link::before {
  content: "● ";
}
.footer__nav .item {
  margin: 0 0 calc(var(--px) * 24);
}
.footer__nav .sub li {
  margin: 0.5em 0 0;
}
.footer__nav .sub a {
  font-size: calc(var(--f) * 15);
  font-weight: 400;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
}
.footer__nav .sub a:hover {
  opacity: 0.7;
}
.footer__nav .sub a::before {
  content: "─ ";
}
.footer__asahi {
  margin: 0 0 calc(var(--px) * 68);
}
.footer__asahi .logo {
  margin: 0 0 calc(var(--px) * 8);
}
.footer__asahi .logo img {
  display: block;
  width: calc(var(--px) * 231);
}
.footer__asahi .contents {
  font-size: calc(var(--f) * 14);
  line-height: 1.5;
  font-weight: 400;
}
.footer__copyright {
  position: relative;
  z-index: 10;
  padding: calc(var(--px) * 32) 0 calc(var(--px) * 22);
  color: #009AF0;
  font-size: calc(var(--f) * 16);
  font-weight: 500;
}
.footer__copyright::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  z-index: -1;
  display: block;
  width: 100vw;
  height: 192%;
  margin-left: -50vw;
  background: #E5F5FC;
  -webkit-clip-path: polygon(0 51%, 100% 0, 100% 100%, 0 100%);
          clip-path: polygon(0 51%, 100% 0, 100% 100%, 0 100%);
}
@media screen and (min-width: 960.02px) {
  .footer__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 0 calc(var(--s) * 205);
  }
  .footer__nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 0 calc(var(--s) * 90);
  }
  .footer__asahi {
    width: 100%;
  }
  .footer__copyright {
    width: 100%;
  }
}
@media screen and (max-width: 960px) {
  .footer__nav {
    position: relative;
    padding-left: 50%;
  }
  .footer__nav .items:first-child {
    position: absolute;
    left: 0;
    top: 0;
    width: 50%;
  }
}

.header {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 2000;
  width: 100%;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 41, 79, 0.5)), color-stop(50%, rgba(6, 37, 63, 0)));
  background: linear-gradient(rgba(0, 41, 79, 0.5), rgba(6, 37, 63, 0) 50%);
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
}
.header__logo {
  position: relative;
}
.header__logo::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  display: block;
  width: 100%;
  height: 100%;
  background: url(../img/_common/logo.svg) center/contain no-repeat;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
}
@media screen and (min-width: 960.02px) {
  .header__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    height: calc(var(--px) * 108);
    padding: 0 calc(var(--s) * 30);
  }
}
@media screen and (max-width: 960px) {
  .header__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    height: calc(var(--px) * 98);
    padding: 0 2.5vw;
  }
  .header__logo img {
    width: calc(var(--px) * 125);
  }
}
body.scroll .header {
  background: #fff;
}
body.scroll .header__logo::after {
  opacity: 1;
}

@media screen and (min-width: 960.02px) {
  .nav__btn, .nav__label {
    display: none;
  }
  .nav__wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: calc(var(--s) * 30);
    color: #fff;
  }
  .nav__contents .items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: calc(var(--s) * 30);
  }
  .nav__contents .item {
    position: relative;
  }
  .nav__contents .item::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    pointer-events: none;
    display: block;
    width: calc(var(--px) * 120);
    height: calc(var(--px) * 120);
    margin: calc(var(--px) * -60) 0 0 calc(var(--px) * -60);
    background: #009AF0;
    border-radius: 999px;
    opacity: 0;
    -webkit-transform: scale(0.5);
            transform: scale(0.5);
  }
  .nav__contents .item:hover:after {
    -webkit-animation: navHover 1200ms ease-in-out 0ms forwards;
            animation: navHover 1200ms ease-in-out 0ms forwards;
  }
  .nav__contents .link {
    position: relative;
    -webkit-transition-duration: 300ms;
            transition-duration: 300ms;
  }
  .nav__contents .link::before, .nav__contents .link::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    pointer-events: none;
    display: block;
    width: calc(var(--px) * 120);
    height: calc(var(--px) * 120);
    margin: calc(var(--px) * -60) 0 0 calc(var(--px) * -60);
    background: #009AF0;
    border-radius: 999px;
    opacity: 0;
    -webkit-transform: scale(0.5);
            transform: scale(0.5);
  }
  .nav__contents .link:hover {
    color: #009AF0;
  }
  .nav__contents .link:hover:before {
    -webkit-animation: navHover 1200ms ease-in-out 200ms forwards;
            animation: navHover 1200ms ease-in-out 200ms forwards;
  }
  .nav__contents .link:hover:after {
    -webkit-animation: navHover 1200ms ease-in-out 400ms forwards;
            animation: navHover 1200ms ease-in-out 400ms forwards;
  }
  @-webkit-keyframes navHover {
    0% {
      opacity: 0;
      -webkit-transform: scale(0);
              transform: scale(0);
    }
    10% {
      opacity: 0.7;
      -webkit-transform: scale(0);
              transform: scale(0);
    }
    100% {
      opacity: 0;
      -webkit-transform: scale(1);
              transform: scale(1);
    }
  }
  @keyframes navHover {
    0% {
      opacity: 0;
      -webkit-transform: scale(0);
              transform: scale(0);
    }
    10% {
      opacity: 0.7;
      -webkit-transform: scale(0);
              transform: scale(0);
    }
    100% {
      opacity: 0;
      -webkit-transform: scale(1);
              transform: scale(1);
    }
  }
  .nav__lang {
    position: relative;
    padding: 0 0 0 calc(var(--px) * 22);
    background: url(../img/_common/nav-lang.svg) left center/calc(var(--px) * 18) auto no-repeat;
  }
  .nav__lang::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
    opacity: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: url(../img/_common/nav-lang-navy.svg) left center/calc(var(--px) * 18) auto no-repeat;
    -webkit-transition-duration: 300ms;
            transition-duration: 300ms;
  }
  .nav__lang .items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .nav__lang .item::before {
    content: "/";
    display: inline-block;
    margin: 0 0.25em 0 0.5em;
  }
  .nav__lang .item:first-child::before {
    display: none;
  }
  .nav__lang .link {
    -webkit-transition-duration: 300ms;
            transition-duration: 300ms;
  }
  .nav__lang .link:hover {
    color: #009AF0;
  }
  body.scroll .nav__wrap {
    color: #1B5095;
  }
  body.scroll .nav__lang::after {
    opacity: 1;
  }
}
@media screen and (max-width: 960px) {
  .nav__btn {
    display: none;
  }
  .nav__label {
    position: absolute;
    right: 0;
    top: 0;
    display: block;
    width: calc(var(--px) * 98 * 0.75);
    height: calc(var(--px) * 98);
  }
  .nav__label span {
    position: absolute;
    top: calc(var(--px) * 38);
    right: 0;
    left: 0;
    display: block;
    width: 40%;
    height: calc(var(--px) * 2);
    margin: auto;
    background: #fff;
    -webkit-transition-duration: 300ms;
            transition-duration: 300ms;
  }
  .nav__label span::before, .nav__label span::after {
    content: "";
    position: absolute;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: #fff;
    -webkit-transition-duration: 300ms;
            transition-duration: 300ms;
  }
  .nav__label span::before {
    top: calc(var(--px) * -12);
  }
  .nav__label span::after {
    top: calc(var(--px) * 12);
  }
  .nav__label::after {
    font-family: "Josefin Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 300;
    font-style: normal;
    line-height: 1;
    letter-spacing: 0;
    content: "MENU";
    position: absolute;
    left: 0;
    bottom: calc(var(--px) * 12);
    display: block;
    width: 100%;
    color: #fff;
    font-size: calc(var(--f) * 15);
    font-weight: 400;
    text-align: center;
  }
  .nav__btn:checked + .nav__label span {
    background: transparent;
  }
  .nav__btn:checked + .nav__label span::before {
    top: 0;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .nav__btn:checked + .nav__label span::after {
    top: 0;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
  .nav__btn:checked + .nav__label::after {
    content: "CLOSE";
  }
  .nav__wrap {
    overflow-y: scroll;
    position: absolute;
    left: 100%;
    top: 100%;
    opacity: 0;
    pointer-events: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-line-pack: center;
        align-content: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: calc(var(--px) * 16) 0;
    width: 100%;
    height: calc(100vh - var(--px) * 98);
    color: #fff;
    background: rgba(27, 80, 149, 0.85);
    -webkit-transition-duration: 400ms;
            transition-duration: 400ms;
  }
  .nav__btn:checked + .nav__label + .nav__wrap {
    left: 0;
    opacity: 1;
    pointer-events: all;
  }
  .nav__contents {
    width: 100%;
  }
  .nav__contents a {
    display: block;
    width: 85vw;
    padding: 0.5em 0;
    margin: 0 auto 2.5vw;
    font-size: calc(var(--f) * 22);
    text-align: center;
    border: 1px solid #fff;
    border-radius: 999px;
  }
  .nav__lang {
    padding: 0 0 0 calc(var(--px) * 26);
    font-size: calc(var(--f) * 22);
    background: url(../img/_common/nav-lang.svg) left center/calc(var(--px) * 20) auto no-repeat;
  }
  .nav__lang .items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .nav__lang .item::before {
    content: "/";
    display: inline-block;
    margin: 0 0.25em 0 0.5em;
  }
  .nav__lang .item:first-child::before {
    display: none;
  }
  body.scroll .nav__label span {
    background: #1B5095;
  }
  body.scroll .nav__label span::before, body.scroll .nav__label span::after {
    background: #1B5095;
  }
  body.scroll .nav__label::after {
    color: #1B5095;
  }
}

.homeAbout {
  position: relative;
  z-index: 10;
  background: #fff url(../img/home/about-bg.svg) right top/calc(var(--px) * 367) auto no-repeat;
}
.homeAbout__container {
  width: 1100px;
  max-width: 90vw;
  padding: calc(var(--h) * 140) 0 calc(var(--h) * 130);
  margin: 0 auto;
}
.homeAbout__head .text {
  position: relative;
  margin: 0 0 calc(var(--px) * 40);
}
.homeAbout__head .text .en {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: block;
  color: #1B5095;
  font-size: calc(var(--f) * 87);
  font-weight: 200;
}
.homeAbout__head .text .en::first-letter {
  color: #f00;
}
.homeAbout__head .text .ja {
  position: relative;
  display: block;
  margin: calc(var(--px) * -8) 0 0;
  font-size: calc(var(--f) * 14);
  line-height: 1;
}
.homeAbout__head .text::after {
  content: "";
  display: block;
  width: calc(var(--px) * 106);
  height: 1px;
  margin: calc(var(--px) * 42) 0 0;
  background: #1B5095;
}
@media screen and (max-width: 960px) {
  .homeAbout__head .text .en {
    font-size: calc(var(--f) * 84);
  }
}
.homeAbout__text .top {
  font-size: calc(var(--f) * 38);
  line-height: 1.45;
  margin: 0 0 calc(var(--px) * 40);
  color: #1B5095;
  font-size: calc(var(--f) * 36);
  line-height: 1.6;
}
.homeAbout__text .contents {
  font-size: calc(var(--f) * 20);
  line-height: 2.05;
  margin: 0 0 calc(var(--px) * 40);
  font-size: calc(var(--f) * 18);
}
.homeAbout__text .more {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.homeAbout__text .more .label {
  position: relative;
  overflow: hidden;
  z-index: 10;
  background: #46D7C6;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
}
.homeAbout__text .more .label::before {
  content: "";
  position: absolute;
  left: 0;
  top: 100%;
  z-index: -2;
  width: 200%;
  height: 200%;
  background: url(../img/_common/button-hover.svg) left top/calc(var(--px) * 60) auto repeat-x;
  -webkit-transition-duration: 1000ms;
          transition-duration: 1000ms;
  -webkit-animation: btnWave 600ms linear 0ms infinite;
          animation: btnWave 600ms linear 0ms infinite;
}
.homeAbout__text .more .label::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: url(../img/_common/arrow-white.svg) right calc(var(--px) * 24) center/calc(var(--px) * 20) auto no-repeat;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
}
.homeAbout__text .more .label a, .homeAbout__text .more .label button, .homeAbout__text .more .label input {
  display: block;
  cursor: pointer;
  min-width: calc(var(--px) * 230);
  padding: calc(var(--px) * 25) calc(var(--px) * 60) calc(var(--px) * 21) calc(var(--px) * 20);
  color: #fff;
  font-size: calc(var(--f) * 18);
  border: none;
  outline: none;
  background: none;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
}
.homeAbout__text .more .label:hover::before {
  top: -50%;
}
.homeAbout__front {
  position: absolute;
  left: 0;
  bottom: 100%;
  overflow: hidden;
  display: block;
  width: 100%;
}
.homeAbout__front img {
  display: block;
  width: 100%;
}
@media screen and (min-width: 960.02px) {
  .homeAbout__container {
    padding-left: calc(var(--px) * 440);
  }
  .homeAbout__photo {
    position: absolute;
    top: 0;
    left: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-line-pack: center;
        align-content: center;
    width: calc(var(--s) * 580);
    height: 100%;
  }
}
@media screen and (max-width: 960px) {
  .homeAbout {
    background-size: calc(var(--px) * 200) auto;
  }
  .homeAbout__container {
    padding-bottom: calc(var(--h) * 720);
  }
  .homeAbout__photo {
    position: absolute;
    bottom: calc(var(--h) * 140);
    left: 0;
    z-index: -1;
    width: calc(var(--s) * 480);
  }
  .homeAbout__front img {
    position: relative;
    margin-left: -35vw;
    width: 150vw;
    max-width: unset;
  }
}
.anime-set .homeAbout__head .text {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
}
.anime-set .homeAbout__text .top {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 200ms;
          transition-delay: 200ms;
}
.anime-set .homeAbout__text .contents {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 300ms;
          transition-delay: 300ms;
}
.anime-set .homeAbout__text .more {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 400ms;
          transition-delay: 400ms;
}
.anime-set .homeAbout__photo {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 1000ms;
          transition-delay: 1000ms;
}
.anime-off .homeAbout__head .text {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .homeAbout__text .top {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .homeAbout__text .contents {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .homeAbout__text .more {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .homeAbout__photo {
  opacity: 0;
  -webkit-transform: translateX(calc(var(--px) * -40));
          transform: translateX(calc(var(--px) * -40));
}

.homeAsahi {
  position: relative;
  overflow: hidden;
  padding: calc(var(--h) * 136) 0 calc(var(--h) * 98);
  background: #fff;
}
.homeAsahi__container {
  position: relative;
  z-index: 10;
  width: calc(var(--px) * 774);
  max-width: 90vw;
  padding: calc(var(--h) * 140) 0;
  padding: calc(var(--px) * 50) calc(var(--px) * 20) calc(var(--px) * 45);
  margin: 0 auto;
  border: 1px solid #1B5095;
}
.homeAsahi__container::before, .homeAsahi__container::after {
  content: "";
  position: absolute;
  display: block;
  z-index: -1;
  background: #fff;
}
.homeAsahi__container::before {
  left: -5%;
  top: calc(var(--px) * 28);
  width: 110%;
  height: calc(100% - var(--px) * 52);
}
.homeAsahi__container::after {
  left: calc(var(--px) * 24);
  top: -5%;
  width: calc(100% - var(--px) * 48);
  height: 110%;
}
.homeAsahi__logo {
  margin: 0 0 calc(var(--px) * 21);
  text-align: center;
}
.homeAsahi__logo img {
  display: inline-block;
  width: calc(var(--px) * 178);
}
.homeAsahi__asahi {
  margin: 0 0 calc(var(--px) * 30);
  text-align: center;
}
.homeAsahi__asahi img {
  display: inline-block;
  width: calc(var(--px) * 230);
}
.homeAsahi__contents p {
  text-align: center;
}
.anime-set .homeAsahi__logo {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.anime-set .homeAsahi__asahi {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
}
.anime-set .homeAsahi__contents {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 200ms;
          transition-delay: 200ms;
}
.anime-off .homeAsahi__logo {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .homeAsahi__asahi {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .homeAsahi__contents {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}

.homeEnergy {
  position: relative;
  overflow: hidden;
  background: #fff;
}
.homeEnergy__container {
  width: 1100px;
  max-width: 90vw;
  padding: calc(var(--h) * 140) 0;
  margin: 0 auto;
}
.homeEnergy__head {
  margin: 0 0 calc(var(--px) * 64);
}
.homeEnergy__head .text .en {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: block;
  color: #1B5095;
  font-size: calc(var(--f) * 48);
  text-align: center;
}
.homeEnergy__head .text .en b {
  color: #f00;
}
.homeEnergy__head .text .ja {
  position: relative;
  display: block;
  margin: calc(var(--px) * 20) 0 0 calc(var(--px) * 6);
  font-size: calc(var(--f) * 22);
  line-height: 1.5;
  letter-spacing: 0.1em;
  text-align: center;
}
.homeEnergy__chart img {
  display: block;
  width: auto;
  max-width: calc(100% + var(--s) * 70);
  margin: 0 calc(var(--s) * -35);
}
.anime-set .homeEnergy__head .en {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.anime-set .homeEnergy__head .ja {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
}
.anime-set .homeEnergy__chart {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 200ms;
          transition-delay: 200ms;
}
.anime-off .homeEnergy__head .en,
.anime-off .homeEnergy__head .ja {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .homeEnergy__chart {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}

.homeJoinus {
  position: relative;
  overflow: hidden;
  color: #fff;
  background: -webkit-gradient(linear, left top, left bottom, from(#42B5E7), to(#00B9FF));
  background: linear-gradient(#42B5E7, #00B9FF);
}
.homeJoinus::before {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 20;
  pointer-events: none;
  display: block;
  width: 100%;
  height: calc(var(--h) * 318);
  background: url(../img/home/joinus-bg.svg) left top/100% auto no-repeat;
}
.homeJoinus::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -1px;
  z-index: 20;
  pointer-events: none;
  display: block;
  width: 100%;
  height: calc(var(--h) * 160);
  background: #E5F5FC;
  -webkit-clip-path: polygon(0 66.25%, 100% 0, 100% 100%, 0 100%);
          clip-path: polygon(0 66.25%, 100% 0, 100% 100%, 0 100%);
}
.homeJoinus__container {
  position: relative;
  width: 1162px;
  max-width: 90vw;
  padding: calc(var(--h) * 100) 0 calc(var(--h) * 385);
  margin: 0 auto;
}
.homeJoinus__container::before {
  -webkit-animation: animeBoat 4000ms ease-in-out infinite;
          animation: animeBoat 4000ms ease-in-out infinite;
  content: "";
  position: absolute;
  left: calc(var(--px) * -135);
  bottom: calc(var(--h) * 296);
  z-index: 10;
  pointer-events: none;
  display: block;
  width: calc(var(--px) * 300);
  height: calc(var(--px) * 300);
  background: url(../img/home/about-bottom.svg) left bottom/contain no-repeat;
}
@media only screen and (max-width: 1480px) {
  .homeJoinus__container::before {
    left: 0;
  }
}
.homeJoinus__head .text {
  position: relative;
  margin: 0 0 calc(var(--px) * 40);
  position: relative;
  margin: 0 0 calc(var(--px) * 40);
  margin-bottom: calc(var(--h) * 60);
}
.homeJoinus__head .text .en {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: block;
  color: #1B5095;
  font-size: calc(var(--f) * 87);
  font-weight: 200;
}
.homeJoinus__head .text .en::first-letter {
  color: #f00;
}
.homeJoinus__head .text .ja {
  position: relative;
  display: block;
  margin: calc(var(--px) * -8) 0 0;
  font-size: calc(var(--f) * 14);
  line-height: 1;
}
.homeJoinus__head .text::after {
  content: "";
  display: block;
  width: calc(var(--px) * 106);
  height: 1px;
  margin: calc(var(--px) * 42) 0 0;
  background: #1B5095;
}
@media screen and (max-width: 960px) {
  .homeJoinus__head .text .en {
    font-size: calc(var(--f) * 84);
  }
}
.homeJoinus__head .text .en {
  color: #fff !important;
}
.homeJoinus__head .text .ja {
  color: #fff;
}
.homeJoinus__head .text::after {
  background-color: #fff !important;
}
.homeJoinus__head .text .en {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: block;
  color: #1B5095;
  font-size: calc(var(--f) * 87);
  font-weight: 200;
}
.homeJoinus__head .text .en::first-letter {
  color: #f00;
}
.homeJoinus__head .text .ja {
  position: relative;
  display: block;
  margin: calc(var(--px) * -8) 0 0;
  font-size: calc(var(--f) * 14);
  line-height: 1;
}
.homeJoinus__head .text::after {
  content: "";
  display: block;
  width: calc(var(--px) * 106);
  height: 1px;
  margin: calc(var(--px) * 42) 0 0;
  background: #1B5095;
}
@media screen and (max-width: 960px) {
  .homeJoinus__head .text .en {
    font-size: calc(var(--f) * 84);
  }
}
.homeJoinus__head .text .en {
  text-align: center;
}
.homeJoinus__head .text .ja {
  text-align: center;
}
.homeJoinus__head .text::after {
  margin-right: auto;
  margin-left: auto;
}
.homeJoinus__text .top {
  font-size: calc(var(--f) * 38);
  line-height: 1.45;
  margin: 0 0 calc(var(--px) * 40);
  font-size: calc(var(--f) * 36);
}
.homeJoinus__text .contents {
  font-size: calc(var(--f) * 20);
  line-height: 2.05;
  margin: 0 0 calc(var(--px) * 60);
  font-size: calc(var(--f) * 18);
}
.homeJoinus__text .more {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.homeJoinus__text .more .label {
  position: relative;
  overflow: hidden;
  z-index: 10;
  background: #46D7C6;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
}
.homeJoinus__text .more .label::before {
  content: "";
  position: absolute;
  left: 0;
  top: 100%;
  z-index: -2;
  width: 200%;
  height: 200%;
  background: url(../img/_common/button-hover.svg) left top/calc(var(--px) * 60) auto repeat-x;
  -webkit-transition-duration: 1000ms;
          transition-duration: 1000ms;
  -webkit-animation: btnWave 600ms linear 0ms infinite;
          animation: btnWave 600ms linear 0ms infinite;
}
.homeJoinus__text .more .label::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: url(../img/_common/arrow-white.svg) right calc(var(--px) * 24) center/calc(var(--px) * 20) auto no-repeat;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
}
.homeJoinus__text .more .label a, .homeJoinus__text .more .label button, .homeJoinus__text .more .label input {
  display: block;
  cursor: pointer;
  min-width: calc(var(--px) * 230);
  padding: calc(var(--px) * 25) calc(var(--px) * 60) calc(var(--px) * 21) calc(var(--px) * 20);
  color: #fff;
  font-size: calc(var(--f) * 18);
  border: none;
  outline: none;
  background: none;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
}
.homeJoinus__text .more .label:hover::before {
  top: -50%;
}
.homeJoinus__text .more .label {
  background-color: #fff;
  border: 1px solid #fff;
}
.homeJoinus__text .more .label::after {
  background-image: url(../img/_common/arrow-navy.svg);
}
.homeJoinus__text .more .label a, .homeJoinus__text .more .label button, .homeJoinus__text .more .label input {
  color: #1B5095;
}
.homeJoinus__text .more .label a:hover, .homeJoinus__text .more .label button:hover, .homeJoinus__text .more .label input:hover {
  color: #fff;
}
.homeJoinus__text .more .label:hover::after {
  background-image: url(../img/_common/arrow-white.svg);
}
.homeJoinus__photo span {
  position: relative;
  overflow: hidden;
  display: block;
}
@media screen and (min-width: 960.02px) {
  .homeJoinus__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .homeJoinus__head {
    width: 100%;
  }
  .homeJoinus__text {
    width: 54.7%;
    padding-top: calc(var(--h) * 30);
  }
  .homeJoinus__text .contents {
    padding-right: calc(var(--s) * 30);
  }
  .homeJoinus__text .more {
    padding-right: calc(var(--s) * 80);
  }
  .homeJoinus__photo {
    width: 36.6%;
  }
}
@media screen and (max-width: 960px) {
  .homeJoinus::before {
    background-size: 300vw auto;
  }
  .homeJoinus__container {
    padding-bottom: calc(var(--h) * 520);
  }
  .homeJoinus__container::before {
    left: unset;
    right: -1vw;
    bottom: calc(var(--h) * 282);
  }
  .homeJoinus__photo {
    position: relative;
    overflow: hidden;
    aspect-ratio: 4/3;
    margin-top: calc(var(--h) * 60);
  }
  .homeJoinus__photo span {
    position: relative;
    overflow: hidden;
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 50%;
    height: 100%;
  }
  .homeJoinus__photo span img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .homeJoinus__photo span:last-child {
    left: 50%;
  }
}
.anime-set .homeJoinus__head .text {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
}
.anime-set .homeJoinus__text .top {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 200ms;
          transition-delay: 200ms;
}
.anime-set .homeJoinus__text .contents {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 300ms;
          transition-delay: 300ms;
}
.anime-set .homeJoinus__text .more {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 400ms;
          transition-delay: 400ms;
}
.anime-set .homeJoinus__photo {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
}
.anime-off .homeJoinus__head .text {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .homeJoinus__text .top {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .homeJoinus__text .contents {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .homeJoinus__text .more {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .homeJoinus__photo {
  opacity: 0;
  -webkit-transform: translateX(calc(var(--px) * 40));
          transform: translateX(calc(var(--px) * 40));
}

.homeMv {
  position: sticky;
  left: 0;
  top: 0;
  overflow: hidden;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
}
.homeMv__container {
  position: relative;
}
.homeMv__head {
  position: absolute;
  left: 0;
  top: 32.7%;
  z-index: 10;
  opacity: 0;
  width: 100%;
  height: calc(var(--px) * 320);
  padding: calc(var(--px) * 80) 0 0;
  background: url(../img/home/mv-logo.svg) center/contain no-repeat;
  -webkit-animation: homeMvLogo 2000ms ease-in-out 2000ms forwards;
          animation: homeMvLogo 2000ms ease-in-out 2000ms forwards;
}
.homeMv__head .ja {
  display: block;
  width: 100%;
  margin: 0 0 calc(var(--px) * 20);
  color: #fff;
  font-size: calc(var(--f) * 40);
  line-height: 1;
  letter-spacing: 0.35em;
  text-align: center;
  white-space: nowrap;
  text-shadow: calc(var(--px) * 2) calc(var(--px) * 2) calc(var(--px) * 8) rgba(0, 0, 0, 0.5);
}
.homeMv__head .en {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: block;
  width: 100%;
  color: #1B5095;
  font-size: calc(var(--f) * 30);
  text-align: center;
  white-space: nowrap;
  text-shadow: calc(var(--px) * 2) calc(var(--px) * 2) calc(var(--px) * 8) rgba(255, 255, 255, 0.5);
}
@-webkit-keyframes homeMvLogo {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes homeMvLogo {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.homeMv__video {
  position: relative;
  width: 100%;
}
.homeMv__video .video video {
  display: block;
  width: 100%;
}
.homeMv__video .front {
  position: absolute;
  left: 0;
  bottom: 0;
  display: block;
  width: 100%;
}
.homeMv__video .front img {
  display: block;
  width: 100%;
}
@media screen and (max-width: 960px) {
  .homeMv__head {
    top: 26%;
    height: calc(var(--px) * 260);
  }
  .homeMv__head .ja {
    font-size: calc(var(--f) * 36);
  }
  .homeMv__head .en {
    font-size: calc(var(--f) * 26);
  }
  .homeMv__video .video {
    aspect-ratio: 1/1;
  }
  .homeMv__video .video video {
    -o-object-fit: cover;
       object-fit: cover;
    display: block;
    width: 100%;
    height: 100%;
  }
  .homeMv__video .front img {
    position: relative;
    margin-left: -35vw;
    width: 150vw;
    max-width: unset;
  }
}
body.anime-off .homeMv__head {
  -webkit-animation: none;
          animation: none;
}
body.scrollSecond .homeMv {
  opacity: 0;
}

html {
  overflow-y: scroll;
}

body.scroll-lock {
  overflow: hidden;
  height: calc(100vh + 1px);
}

.homeNews {
  position: relative;
  background: #E5F5FC;
}
.homeNews__container {
  position: relative;
  width: 855px;
  max-width: 90vw;
  padding: 0 0 calc(var(--h) * 170);
  margin: 0 auto;
}
.homeNews__head .text {
  position: relative;
  margin: 0 0 calc(var(--px) * 40);
  margin-bottom: calc(var(--h) * 66);
}
.homeNews__head .text .en {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: block;
  color: #1B5095;
  font-size: calc(var(--f) * 87);
  font-weight: 200;
}
.homeNews__head .text .en::first-letter {
  color: #f00;
}
.homeNews__head .text .ja {
  position: relative;
  display: block;
  margin: calc(var(--px) * -8) 0 0;
  font-size: calc(var(--f) * 14);
  line-height: 1;
}
.homeNews__head .text::after {
  content: "";
  display: block;
  width: calc(var(--px) * 106);
  height: 1px;
  margin: calc(var(--px) * 42) 0 0;
  background: #1B5095;
}
@media screen and (max-width: 960px) {
  .homeNews__head .text .en {
    font-size: calc(var(--f) * 84);
  }
}
.homeNews__head .text .en {
  text-align: center;
}
.homeNews__head .text .ja {
  text-align: center;
}
.homeNews__head .text::after {
  margin-right: auto;
  margin-left: auto;
}
.homeNews__list .item {
  margin: 0 0 calc(var(--h) * 40);
}
.homeNews__list .item:last-child {
  margin-bottom: 0;
}
.homeNews__list .box {
  position: relative;
  display: block;
}
.homeNews__list .box a {
  text-decoration: underline;
}
.homeNews__list .date {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
}
.homeNews__list .title {
  margin-bottom: calc(var(--px) * 3);
  color: #1B5095;
  font-size: calc(var(--f) * 21);
}
.homeNews__list .contents {
  font-size: calc(var(--f) * 16);
  line-height: 1.82;
}
@media screen and (min-width: 960.02px) {
  .homeNews__list .box {
    padding-left: calc(var(--s) * 150);
  }
  .homeNews__list .date {
    position: absolute;
    left: 0;
    top: 0.85em;
  }
}
@media screen and (max-width: 960px) {
  .homeNews__list .date {
    font-size: calc(var(--f) * 20);
  }
}
.anime-set .homeNews__head .text {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.anime-set .homeNews__list .item:nth-child(1) {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 200ms;
          transition-delay: 200ms;
}
.anime-set .homeNews__list .item:nth-child(2) {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 200ms;
          transition-delay: 200ms;
}
.anime-set .homeNews__list .item:nth-child(3) {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 200ms;
          transition-delay: 200ms;
}
.anime-off .homeNews__head .text {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .homeNews__list .item {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}

.homeOP {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 3000;
  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;
  pointer-events: none;
  width: 100%;
  height: 100%;
  background: #fff;
  -webkit-animation: homeOP 600ms ease-in-out 400ms forwards;
          animation: homeOP 600ms ease-in-out 400ms forwards;
}
@-webkit-keyframes homeOP {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes homeOP {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.homeOP__logo {
  opacity: 0;
  -webkit-transform: scale(0.75);
          transform: scale(0.75);
  -webkit-animation: homeOPlogo 0ms cubic-bezier(0.6, 1.03, 0.9, 1.18) 0ms forwards;
          animation: homeOPlogo 0ms cubic-bezier(0.6, 1.03, 0.9, 1.18) 0ms forwards;
}
.homeOP__logo img {
  display: block;
  width: calc(var(--px) * 280);
}
@-webkit-keyframes homeOPlogo {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.75);
            transform: scale(0.75);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes homeOPlogo {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.75);
            transform: scale(0.75);
  }
  100% {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
body.anime-off .homeOP {
  pointer-events: all;
  -webkit-animation: none;
          animation: none;
}

.homeService {
  position: relative;
  background: #E5F5FC;
}
.homeService__container {
  width: 1100px;
  max-width: 90vw;
  padding: calc(var(--h) * 140) 0 calc(var(--h) * 160);
  margin: 0 auto;
}
.homeService__head .text {
  position: relative;
  margin: 0 0 calc(var(--px) * 40);
}
.homeService__head .text .en {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: block;
  color: #1B5095;
  font-size: calc(var(--f) * 87);
  font-weight: 200;
}
.homeService__head .text .en::first-letter {
  color: #f00;
}
.homeService__head .text .ja {
  position: relative;
  display: block;
  margin: calc(var(--px) * -8) 0 0;
  font-size: calc(var(--f) * 14);
  line-height: 1;
}
.homeService__head .text::after {
  content: "";
  display: block;
  width: calc(var(--px) * 106);
  height: 1px;
  margin: calc(var(--px) * 42) 0 0;
  background: #1B5095;
}
@media screen and (max-width: 960px) {
  .homeService__head .text .en {
    font-size: calc(var(--f) * 84);
  }
}
.homeService__text .top {
  font-size: calc(var(--f) * 38);
  line-height: 1.45;
  margin: 0 0 calc(var(--px) * 40);
  color: #1B5095;
  font-size: calc(var(--f) * 36);
}
.homeService__text .contents {
  font-size: calc(var(--f) * 20);
  line-height: 2.05;
  margin: 0 0 calc(var(--px) * 40);
  font-size: calc(var(--f) * 18);
}
.homeService__text .more {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.homeService__text .more .label {
  position: relative;
  overflow: hidden;
  z-index: 10;
  background: #46D7C6;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
}
.homeService__text .more .label::before {
  content: "";
  position: absolute;
  left: 0;
  top: 100%;
  z-index: -2;
  width: 200%;
  height: 200%;
  background: url(../img/_common/button-hover.svg) left top/calc(var(--px) * 60) auto repeat-x;
  -webkit-transition-duration: 1000ms;
          transition-duration: 1000ms;
  -webkit-animation: btnWave 600ms linear 0ms infinite;
          animation: btnWave 600ms linear 0ms infinite;
}
.homeService__text .more .label::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: url(../img/_common/arrow-white.svg) right calc(var(--px) * 24) center/calc(var(--px) * 20) auto no-repeat;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
}
.homeService__text .more .label a, .homeService__text .more .label button, .homeService__text .more .label input {
  display: block;
  cursor: pointer;
  min-width: calc(var(--px) * 230);
  padding: calc(var(--px) * 25) calc(var(--px) * 60) calc(var(--px) * 21) calc(var(--px) * 20);
  color: #fff;
  font-size: calc(var(--f) * 18);
  border: none;
  outline: none;
  background: none;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
}
.homeService__text .more .label:hover::before {
  top: -50%;
}
.homeService__photo {
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 960.02px) {
  .homeService {
    padding: calc(var(--h) * 73) 0 0;
  }
  .homeService__container {
    padding-left: calc(var(--s) * 500);
  }
  .homeService__photo {
    position: absolute;
    bottom: 0;
    left: 0;
    width: calc(var(--s) * 615);
    height: calc(100% - var(--h) * 73);
  }
  .homeService__photo .parallaxSlideup {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: auto;
    max-width: unset;
    height: 120%;
  }
}
@media only screen and (min-width: 960.02px) and (max-width: 1470px) {
  .homeService__container {
    padding-left: 40vw;
  }
}
@media screen and (max-width: 960px) {
  .homeService__photo {
    aspect-ratio: 4/3;
    margin-top: calc(var(--h) * 60);
  }
  .homeService__photo .parallaxSlideup {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 100%;
    height: auto;
  }
}
.anime-set .homeService__head .text {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
}
.anime-set .homeService__text .top {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 200ms;
          transition-delay: 200ms;
}
.anime-set .homeService__text .contents {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 300ms;
          transition-delay: 300ms;
}
.anime-set .homeService__text .more {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 400ms;
          transition-delay: 400ms;
}
.anime-set .homeService__photo {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
}
.anime-off .homeService__head .text {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .homeService__text .top {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .homeService__text .contents {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .homeService__text .more {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .homeService__photo {
  opacity: 0;
  -webkit-transform: translateX(calc(var(--px) * -40));
          transform: translateX(calc(var(--px) * -40));
}

.homeSustainability {
  position: relative;
  overflow: hidden;
  background: #E5F5FC;
}
.homeSustainability__container {
  width: 1100px;
  max-width: 90vw;
  padding: calc(var(--h) * 140) 0 calc(var(--h) * 120);
  margin: 0 auto;
}
.homeSustainability__head .text {
  position: relative;
  margin: 0 0 calc(var(--px) * 40);
}
.homeSustainability__head .text .en {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: block;
  color: #1B5095;
  font-size: calc(var(--f) * 87);
  font-weight: 200;
}
.homeSustainability__head .text .en::first-letter {
  color: #f00;
}
.homeSustainability__head .text .ja {
  position: relative;
  display: block;
  margin: calc(var(--px) * -8) 0 0;
  font-size: calc(var(--f) * 14);
  line-height: 1;
}
.homeSustainability__head .text::after {
  content: "";
  display: block;
  width: calc(var(--px) * 106);
  height: 1px;
  margin: calc(var(--px) * 42) 0 0;
  background: #1B5095;
}
@media screen and (max-width: 960px) {
  .homeSustainability__head .text .en {
    font-size: calc(var(--f) * 84);
  }
}
.homeSustainability__text .top {
  font-size: calc(var(--f) * 38);
  line-height: 1.45;
  margin: 0 0 calc(var(--px) * 40);
  color: #1B5095;
  font-size: calc(var(--f) * 36);
}
.homeSustainability__text .contents {
  font-size: calc(var(--f) * 20);
  line-height: 2.05;
  margin: 0 0 calc(var(--px) * 70);
  font-size: calc(var(--f) * 18);
}
.homeSustainability__text .more {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.homeSustainability__text .more .label {
  position: relative;
  overflow: hidden;
  z-index: 10;
  background: #46D7C6;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
}
.homeSustainability__text .more .label::before {
  content: "";
  position: absolute;
  left: 0;
  top: 100%;
  z-index: -2;
  width: 200%;
  height: 200%;
  background: url(../img/_common/button-hover.svg) left top/calc(var(--px) * 60) auto repeat-x;
  -webkit-transition-duration: 1000ms;
          transition-duration: 1000ms;
  -webkit-animation: btnWave 600ms linear 0ms infinite;
          animation: btnWave 600ms linear 0ms infinite;
}
.homeSustainability__text .more .label::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: url(../img/_common/arrow-white.svg) right calc(var(--px) * 24) center/calc(var(--px) * 20) auto no-repeat;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
}
.homeSustainability__text .more .label a, .homeSustainability__text .more .label button, .homeSustainability__text .more .label input {
  display: block;
  cursor: pointer;
  min-width: calc(var(--px) * 230);
  padding: calc(var(--px) * 25) calc(var(--px) * 60) calc(var(--px) * 21) calc(var(--px) * 20);
  color: #fff;
  font-size: calc(var(--f) * 18);
  border: none;
  outline: none;
  background: none;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
}
.homeSustainability__text .more .label:hover::before {
  top: -50%;
}
@media screen and (min-width: 960.02px) {
  .homeSustainability__container {
    padding-left: calc(var(--s) * 60);
  }
  .homeSustainability__text .more {
    padding-right: calc(var(--s) * 545);
  }
  .homeSustainability__photo {
    position: relative;
    overflow: hidden;
    position: absolute;
    top: calc(var(--h) * 140);
    right: 0;
    width: 44vw;
    height: calc(100% - var(--h) * 305);
    border-radius: 999px 0 0 999px;
  }
  .homeSustainability__photo img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
@media screen and (max-width: 960px) {
  .homeSustainability__photo {
    position: relative;
    overflow: hidden;
    aspect-ratio: 4/3;
    margin-top: calc(var(--h) * 60);
  }
  .homeSustainability__photo img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
.anime-set .homeSustainability__head .text {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
}
.anime-set .homeSustainability__text .top {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 200ms;
          transition-delay: 200ms;
}
.anime-set .homeSustainability__text .contents {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 300ms;
          transition-delay: 300ms;
}
.anime-set .homeSustainability__text .more {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 400ms;
          transition-delay: 400ms;
}
.anime-set .homeSustainability__photo {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
}
.anime-off .homeSustainability__head .text {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .homeSustainability__text .top {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .homeSustainability__text .contents {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .homeSustainability__text .more {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .homeSustainability__photo {
  opacity: 0;
  -webkit-transform: translateX(calc(var(--px) * 40));
          transform: translateX(calc(var(--px) * 40));
}

.homeTeam {
  position: relative;
  overflow: hidden;
  width: 100%;
  padding: calc(var(--h) * 140) 0 calc(var(--h) * 130);
  background: #F8F7F2;
}
.homeTeam__container {
  position: relative;
  width: 1100px;
  max-width: 90vw;
  margin: 0 auto calc(var(--h) * 105);
}
.homeTeam__head .text {
  position: relative;
  margin: 0 0 calc(var(--px) * 40);
}
.homeTeam__head .text .en {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: block;
  color: #1B5095;
  font-size: calc(var(--f) * 87);
  font-weight: 200;
}
.homeTeam__head .text .en::first-letter {
  color: #f00;
}
.homeTeam__head .text .ja {
  position: relative;
  display: block;
  margin: calc(var(--px) * -8) 0 0;
  font-size: calc(var(--f) * 14);
  line-height: 1;
}
.homeTeam__head .text::after {
  content: "";
  display: block;
  width: calc(var(--px) * 106);
  height: 1px;
  margin: calc(var(--px) * 42) 0 0;
  background: #1B5095;
}
@media screen and (max-width: 960px) {
  .homeTeam__head .text .en {
    font-size: calc(var(--f) * 84);
  }
}
.homeTeam__text .top {
  font-size: calc(var(--f) * 38);
  line-height: 1.45;
  margin: 0 0 calc(var(--px) * 40);
  color: #1B5095;
  font-size: calc(var(--f) * 36);
}
.homeTeam__text .contents {
  font-size: calc(var(--f) * 20);
  line-height: 2.05;
  margin: 0 0 calc(var(--px) * 40);
  font-size: calc(var(--f) * 18);
}
.homeTeam__text .more {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.homeTeam__text .more .label {
  position: relative;
  overflow: hidden;
  z-index: 10;
  background: #46D7C6;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
}
.homeTeam__text .more .label::before {
  content: "";
  position: absolute;
  left: 0;
  top: 100%;
  z-index: -2;
  width: 200%;
  height: 200%;
  background: url(../img/_common/button-hover.svg) left top/calc(var(--px) * 60) auto repeat-x;
  -webkit-transition-duration: 1000ms;
          transition-duration: 1000ms;
  -webkit-animation: btnWave 600ms linear 0ms infinite;
          animation: btnWave 600ms linear 0ms infinite;
}
.homeTeam__text .more .label::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: url(../img/_common/arrow-white.svg) right calc(var(--px) * 24) center/calc(var(--px) * 20) auto no-repeat;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
}
.homeTeam__text .more .label a, .homeTeam__text .more .label button, .homeTeam__text .more .label input {
  display: block;
  cursor: pointer;
  min-width: calc(var(--px) * 230);
  padding: calc(var(--px) * 25) calc(var(--px) * 60) calc(var(--px) * 21) calc(var(--px) * 20);
  color: #fff;
  font-size: calc(var(--f) * 18);
  border: none;
  outline: none;
  background: none;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
}
.homeTeam__text .more .label:hover::before {
  top: -50%;
}
.homeTeam__gallery {
  width: calc(var(--px) * 350);
  margin: 0 auto;
}
.homeTeam__gallery .items {
  -webkit-transition-timing-function: linear;
          transition-timing-function: linear;
}
.homeTeam__gallery .item {
  padding: 0 calc(var(--px) * 9);
}
.homeTeam__gallery .text {
  position: relative;
  margin: calc(var(--px) * 17) 0;
  padding: calc(var(--px) * 14) 0 calc(var(--px) * 20);
  color: #fff;
  background: #1B5095;
  border-radius: calc(var(--px) * 8);
}
.homeTeam__gallery .text::after {
  content: "";
  position: absolute;
  left: 48%;
  bottom: calc(100% - 1px);
  display: block;
  width: calc(var(--px) * 25);
  height: calc(var(--px) * 30);
  background: #1B5095;
  -webkit-clip-path: polygon(100% 0, 100% 100%, 0 100%);
          clip-path: polygon(100% 0, 100% 100%, 0 100%);
}
.homeTeam__gallery .title {
  position: relative;
  font-size: calc(var(--f) * 18);
  line-height: 2.05;
  text-align: center;
  white-space: nowrap;
}
.homeTeam__gallery .narrow {
  -webkit-transform: scaleX(0.85);
          transform: scaleX(0.85);
}
.homeTeam__gallery .contents {
  font-size: calc(var(--f) * 16);
  line-height: 1.5;
  padding: 0 calc(var(--px) * 12);
  font-size: calc(var(--f) * 15);
  text-align: center;
}
@media screen and (min-width: 960.02px) {
  .homeTeam__container {
    padding-left: calc(var(--s) * 542);
  }
  .homeTeam__photo {
    position: relative;
    overflow: hidden;
    position: absolute;
    bottom: 0;
    left: 0;
    width: calc(var(--s) * 434);
    height: 100%;
  }
  .homeTeam__photo img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
@media screen and (max-width: 960px) {
  .homeTeam__photo {
    position: relative;
    overflow: hidden;
    aspect-ratio: 4/3;
    margin-top: calc(var(--h) * 60);
  }
  .homeTeam__photo img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
.anime-set .homeTeam__head .text {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
}
.anime-set .homeTeam__text .top {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 200ms;
          transition-delay: 200ms;
}
.anime-set .homeTeam__text .contents {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 300ms;
          transition-delay: 300ms;
}
.anime-set .homeTeam__text .more {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 400ms;
          transition-delay: 400ms;
}
.anime-set .homeTeam__photo {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
}
.anime-off .homeTeam__head .text {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .homeTeam__text .top {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .homeTeam__text .contents {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .homeTeam__text .more {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .homeTeam__photo {
  opacity: 0;
  -webkit-transform: translateX(calc(var(--px) * -40));
          transform: translateX(calc(var(--px) * -40));
}

.homeValue {
  position: relative;
  z-index: 10;
}
.homeValue::before {
  content: "";
  position: absolute;
  right: 0;
  bottom: -1px;
  pointer-events: none;
  display: block;
  width: 100%;
  height: calc(var(--h) * 120);
  background: #E5F5FC;
  -webkit-clip-path: polygon(100% 0, 100% 100%, 0 100%);
          clip-path: polygon(100% 0, 100% 100%, 0 100%);
}
.homeValue::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: calc(var(--h) * 30);
  pointer-events: none;
  display: block;
  width: 100%;
  height: calc(var(--h) * 216);
  background: url(../img/home/value-bg-bottom.png) right top/auto 100% no-repeat;
}
.homeValue__container {
  width: 900px;
  max-width: 90vw;
  padding: calc(var(--h) * 110) 0 calc(var(--h) * 176);
  margin: 0 auto;
}
.homeValue__head .text {
  position: relative;
  margin: 0 0 calc(var(--px) * 40);
  position: relative;
  margin: 0 0 calc(var(--px) * 40);
}
.homeValue__head .text .en {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: block;
  color: #1B5095;
  font-size: calc(var(--f) * 87);
  font-weight: 200;
}
.homeValue__head .text .en::first-letter {
  color: #f00;
}
.homeValue__head .text .ja {
  position: relative;
  display: block;
  margin: calc(var(--px) * -8) 0 0;
  font-size: calc(var(--f) * 14);
  line-height: 1;
}
.homeValue__head .text::after {
  content: "";
  display: block;
  width: calc(var(--px) * 106);
  height: 1px;
  margin: calc(var(--px) * 42) 0 0;
  background: #1B5095;
}
@media screen and (max-width: 960px) {
  .homeValue__head .text .en {
    font-size: calc(var(--f) * 84);
  }
}
.homeValue__head .text .en {
  color: #fff !important;
}
.homeValue__head .text .ja {
  color: #fff;
}
.homeValue__head .text::after {
  background-color: #fff !important;
}
.homeValue__head .text .en {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: block;
  color: #1B5095;
  font-size: calc(var(--f) * 87);
  font-weight: 200;
}
.homeValue__head .text .en::first-letter {
  color: #f00;
}
.homeValue__head .text .ja {
  position: relative;
  display: block;
  margin: calc(var(--px) * -8) 0 0;
  font-size: calc(var(--f) * 14);
  line-height: 1;
}
.homeValue__head .text::after {
  content: "";
  display: block;
  width: calc(var(--px) * 106);
  height: 1px;
  margin: calc(var(--px) * 42) 0 0;
  background: #1B5095;
}
@media screen and (max-width: 960px) {
  .homeValue__head .text .en {
    font-size: calc(var(--f) * 84);
  }
}
.homeValue__head .text .en {
  text-align: center;
}
.homeValue__head .text .ja {
  text-align: center;
}
.homeValue__head .text::after {
  margin-right: auto;
  margin-left: auto;
}
.homeValue__list .head {
  width: calc(var(--px) * 250);
  height: calc(var(--px) * 150);
  color: #fff;
  font-size: calc(var(--f) * 38);
  line-height: 1.31;
  font-weight: 700;
  text-align: center;
  background: url(../img/home/value-list-head.svg) center bottom/contain no-repeat;
}
.homeValue__list .item {
  position: relative;
  aspect-ratio: 250/320;
  background: url(../img/home/value-list-frame.svg) center top/100% auto no-repeat;
}
.homeValue__list .ico {
  display: block;
  margin: 0 0 calc(var(--px) * 4);
}
.homeValue__list .ico img {
  display: block;
  height: calc(var(--px) * 130);
  margin: 0 auto;
}
.homeValue__list .title {
  font-size: calc(var(--f) * 35);
  text-align: center;
}
.homeValue__list .text {
  color: #1B5095;
  font-size: calc(var(--f) * 20);
  line-height: 1.64;
  text-align: center;
}
.homeValue__ship {
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  display: block;
  width: 100%;
  height: 100%;
}
.homeValue__ship::before {
  -webkit-animation: animeBoat 4000ms ease-in-out infinite;
          animation: animeBoat 4000ms ease-in-out infinite;
  content: "";
  position: absolute;
  left: calc(var(--px) * 52);
  top: calc(var(--px) * -110);
  pointer-events: none;
  display: block;
  width: calc(var(--px) * 275);
  height: calc(var(--px) * 275);
  background: url(../img/home/about-bottom.svg) left top/contain no-repeat;
}
@media only screen and (min-width: 1600.01px) {
  .homeValue__ship::before {
    bottom: -1.1875vw;
  }
}
.homeValue__ship::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
  background: url(../img/home/value-bg.webp) left top/100% auto no-repeat;
}
@media screen and (min-width: 960.02px) {
  .homeValue__head .text {
    margin-bottom: calc(var(--px) * -22);
  }
  .homeValue__list .head {
    margin: calc(var(--px) * 50) auto 0;
  }
  .homeValue__list .items {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: calc(var(--px) * -204);
  }
  .homeValue__list .item {
    width: calc(var(--px) * 250);
  }
  .homeValue__list .item:nth-child(1) {
    margin-right: calc(var(--px) * 250);
  }
  .homeValue__list .item:nth-child(1), .homeValue__list .item:nth-child(2) {
    margin-bottom: calc(var(--px) * 60);
  }
  .homeValue__list .item:nth-child(1)::after, .homeValue__list .item:nth-child(2)::after {
    content: "";
    position: absolute;
    left: 0;
    top: 100%;
    display: block;
    width: 100%;
    height: calc(var(--px) * 60);
    background: url(../img/home/value-spacer.svg) center/calc(var(--px) * 81) no-repeat;
  }
}
@media screen and (max-width: 960px) {
  .homeValue::after {
    height: calc(var(--h) * 260);
  }
  .homeValue__container {
    padding-bottom: calc(var(--h) * 100);
  }
  .homeValue__container::after {
    left: unset;
    right: 2vw;
  }
  .homeValue__head .text {
    margin-bottom: calc(var(--px) * 20);
  }
  .homeValue__list .head {
    margin: 0 auto;
    -webkit-transform-origin: center top;
            transform-origin: center top;
    -webkit-transform: scale(0.85);
            transform: scale(0.85);
  }
  .homeValue__list .items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 5vw;
  }
  .homeValue__list .item {
    width: calc((100% - 5vw) / 2);
  }
  .homeValue__list .ico {
    padding-top: calc(var(--px) * 10);
  }
  .homeValue__list .ico img {
    height: calc(var(--px) * 115);
  }
  .homeValue__list .title {
    font-size: calc(var(--f) * 32);
  }
  .homeValue__list .text {
    font-size: calc(var(--f) * 19);
  }
  .homeValue__ship::after {
    background-size: 300vw auto;
  }
}
.anime-set .homeValue__head .text {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.anime-set .homeValue__list .head {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
}
.anime-set .homeValue__list .item {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-in-out;
          transition-timing-function: ease-in-out;
}
.anime-set .homeValue__list .item:nth-child(1) {
  -webkit-transition-delay: 200ms;
          transition-delay: 200ms;
}
.anime-set .homeValue__list .item:nth-child(2) {
  -webkit-transition-delay: 300ms;
          transition-delay: 300ms;
}
.anime-set .homeValue__list .item:nth-child(3) {
  -webkit-transition-delay: 400ms;
          transition-delay: 400ms;
}
.anime-set .homeValue__list .item:nth-child(4) {
  -webkit-transition-delay: 500ms;
          transition-delay: 500ms;
}
.anime-set .homeValue__list .item:nth-child(5) {
  -webkit-transition-delay: 600ms;
          transition-delay: 600ms;
}
.anime-off .homeValue__head .text {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .homeValue__list .head,
.anime-off .homeValue__list .item {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}

.businessField {
  position: relative;
  background: url(../img/business/field-bg.svg) right top/calc(var(--px) * 408) auto no-repeat;
}
.businessField::after {
  -webkit-animation: animeBoat 4000ms ease-in-out infinite;
          animation: animeBoat 4000ms ease-in-out infinite;
  content: "";
  position: absolute;
  left: calc(var(--px) * 36);
  bottom: calc(var(--px) * -19);
  pointer-events: none;
  display: block;
  width: calc(var(--px) * 275);
  height: calc(var(--px) * 275);
  background: url(../img/home/about-bottom.svg) left bottom/contain no-repeat;
}
@media only screen and (min-width: 1600.01px) {
  .businessField::after {
    bottom: -1.1875vw;
  }
}
.businessField__container {
  width: 1100px;
  max-width: 90vw;
  padding: calc(var(--h) * 100) 0;
  margin: 0 auto;
}
.businessField__head .text {
  position: relative;
  margin: 0 0 calc(var(--px) * 40);
  margin-bottom: calc(var(--h) * 70);
}
.businessField__head .text .en {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: block;
  color: #1B5095;
  font-size: calc(var(--f) * 87);
  font-weight: 200;
}
.businessField__head .text .en::first-letter {
  color: #f00;
}
.businessField__head .text .ja {
  position: relative;
  display: block;
  margin: calc(var(--px) * -8) 0 0;
  font-size: calc(var(--f) * 14);
  line-height: 1;
}
.businessField__head .text::after {
  content: "";
  display: block;
  width: calc(var(--px) * 106);
  height: 1px;
  margin: calc(var(--px) * 42) 0 0;
  background: #1B5095;
}
@media screen and (max-width: 960px) {
  .businessField__head .text .en {
    font-size: calc(var(--f) * 84);
  }
}
.businessField__head .text .en {
  font-size: calc(var(--f) * 62);
  text-align: center;
}
.businessField__head .text .ja {
  margin-top: calc(var(--px) * 16);
  font-size: calc(var(--f) * 16);
  text-align: center;
}
.businessField__head .text::after {
  margin-top: calc(var(--px) * 20);
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 960px) {
  .businessField__head .text .en {
    font-size: calc(var(--f) * 58);
    text-align: center;
  }
}
.businessField__text p {
  font-size: calc(var(--f) * 20);
  line-height: 2.05;
  font-size: calc(var(--f) * 19);
}
@media screen and (min-width: 960.02px) {
  .businessField__text {
    text-align: center;
  }
}
@media screen and (max-width: 960px) {
  .businessField {
    background-size: calc(var(--px) * 210) auto;
  }
  .businessField::after {
    left: unset;
    right: 2vw;
  }
  .businessField__container {
    padding-bottom: calc(var(--h) * 160);
  }
}
.anime-set .businessField__head .text {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.anime-set .businessField__text .contents {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
}
.anime-off .businessField__head .text {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .businessField__text .contents {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}

.companyAccess {
  position: relative;
  color: #363636;
  background: #F8F7F2;
}
.companyAccess__container {
  width: 1100px;
  max-width: 90vw;
  padding: calc(var(--h) * 100) 0 calc(var(--h) * 90);
  margin: 0 auto;
}
.companyAccess__head .text {
  font-size: calc(var(--f) * 28);
  line-height: 1.5;
  margin: 0 0 calc(var(--h) * 60);
  text-align: center;
}
.companyAccess__box {
  font-size: calc(var(--f) * 17);
  line-height: 1.76;
}
.companyAccess__box .map {
  aspect-ratio: 540/405;
}
.companyAccess__box .map iframe {
  display: block;
  width: 100%;
  aspect-ratio: 540/320;
  margin: 0 0 calc(var(--px) * 4);
}
.companyAccess__box .map img {
  display: block;
  width: 100%;
  margin: 0 0 calc(var(--px) * 4);
}
.companyAccess__box .zoom {
  padding: 0 0 0 calc(var(--px) * 30);
  background: url(../img/company/access-ico-zoom.svg) left top calc(var(--px) * 5)/calc(var(--px) * 20) auto no-repeat;
}
.companyAccess__box .box {
  margin: 0 0 calc(var(--px) * 20);
}
.companyAccess__box .box:last-child {
  margin-bottom: 0;
}
.companyAccess__box .title {
  padding: 0 0 0 calc(var(--px) * 34);
  margin: 0 0 calc(var(--px) * 10);
  background: url(../img/company/access-ico-car.svg) left center/calc(var(--px) * 24) auto no-repeat;
}
.companyAccess__box .title--train {
  background-image: url(../img/company/access-ico-train.svg);
}
.companyAccess__box .title--walk {
  background-image: url(../img/company/access-ico-walk.svg);
}
.companyAccess__box .title--map {
  padding-left: calc(var(--px) * 26);
  background-image: url(../img/company/access-ico-map.svg);
  background-size: calc(var(--px) * 16) auto;
}
.companyAccess__box .subtitle {
  margin: calc(var(--px) * 12) 0 0;
}
.companyAccess__box .title + .subtitle {
  margin-top: 0;
}
.companyAccess__box .items li {
  position: relative;
  padding: 0 0 0 calc(var(--px) * 24);
}
.companyAccess__box .items li::before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
  display: block;
}
.companyAccess__box .flow li {
  position: relative;
  padding: 0 0 0 calc(var(--px) * 24);
}
.companyAccess__box .flow li .num {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: calc(var(--px) * 22);
  text-align: right;
}
@media screen and (min-width: 960.02px) {
  .companyAccess__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .companyAccess__head {
    width: 100%;
  }
  .companyAccess__box {
    width: calc((100% - var(--px) * 20) / 2);
  }
  .companyAccess__box:nth-child(2) .box {
    padding-right: calc(var(--px) * 40);
  }
  .companyAccess__box:nth-child(3) .box {
    padding-left: calc(var(--px) * 40);
  }
}
@media screen and (max-width: 960px) {
  .companyAccess__box {
    margin-bottom: calc(var(--h) * 160);
  }
  .companyAccess__box:last-child {
    margin-bottom: 0;
  }
  .companyAccess__box .map {
    aspect-ratio: unset;
    margin-bottom: calc(var(--px) * 32);
  }
}
.companyAccess__head.anime-set, .companyAccess__box.anime-set {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
}
.companyAccess__head.anime-off, .companyAccess__box.anime-off {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}

.companyLogo {
  position: relative;
  overflow: hidden;
  z-index: 10;
  padding: calc(var(--h) * 140) 0 calc(var(--h) * 200);
  background: #42B5E7 url(../img/business/strengths-bg.svg) center top calc(var(--px) * 70)/cover no-repeat;
}
.companyLogo__container {
  width: 1100px;
  max-width: 90vw;
  padding: calc(var(--h) * 100) calc(var(--s) * 70) calc(var(--h) * 106);
  margin: 0 auto;
  background: #fff;
}
.companyLogo__head {
  font-size: calc(var(--f) * 27);
  line-height: 1.5;
  margin: 0 0 calc(var(--h) * 100);
  text-align: center;
}
.companyLogo__logo {
  margin: 0 0 calc(var(--h) * 75);
  text-align: center;
}
.companyLogo__logo img {
  display: inline-block;
  width: calc(var(--px) * 270);
}
.companyLogo__text p {
  margin: 0 0 calc(var(--px) * 13);
}
.companyLogo__text p:last-child {
  margin-bottom: 0;
}
.companyLogo__bg-photo {
  position: absolute;
  right: 0;
  top: calc(var(--h) * 56);
  z-index: -1;
  overflow: hidden;
  display: block;
  width: calc(var(--h) * 696);
  border-radius: 999px 0 0 999px;
}
.companyLogo__bg-photo img {
  display: block;
  width: 100%;
}
@media screen and (min-width: 960.02px) {
  .companyLogo__text {
    text-align: center;
  }
}
@media screen and (max-width: 960px) {
  .companyLogo__logo img {
    width: calc(var(--px) * 200);
  }
}
.anime-set .companyLogo__container {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 200ms;
          transition-delay: 200ms;
}
.anime-set .companyLogo__head .text {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
}
.anime-set .companyLogo__logo {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 200ms;
          transition-delay: 200ms;
}
.anime-set .companyLogo__text {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 300ms;
          transition-delay: 300ms;
}
.anime-off .companyLogo__container {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .companyLogo__head .text {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .companyLogo__logo {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .companyLogo__text {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}

body.company::before {
  content: "";
  display: block;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 0;
  width: 100%;
  height: 100vh;
  background: url(../img/company/message-bg.jpg) center/cover no-repeat;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  will-change: transform;
}

.companyMessage {
  position: relative;
  z-index: 10;
}
.companyMessage__container {
  width: 720px;
  max-width: 90vw;
  padding: calc(var(--h) * 90) 0 calc(var(--h) * 160);
  margin: 0 auto;
}
.companyMessage__head .text {
  position: relative;
  margin: 0 0 calc(var(--px) * 40);
  margin-bottom: calc(var(--h) * 70);
  margin: 0 0 calc(var(--h) * 80);
}
.companyMessage__head .text .en {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: block;
  color: #1B5095;
  font-size: calc(var(--f) * 87);
  font-weight: 200;
}
.companyMessage__head .text .en::first-letter {
  color: #f00;
}
.companyMessage__head .text .ja {
  position: relative;
  display: block;
  margin: calc(var(--px) * -8) 0 0;
  font-size: calc(var(--f) * 14);
  line-height: 1;
}
.companyMessage__head .text::after {
  content: "";
  display: block;
  width: calc(var(--px) * 106);
  height: 1px;
  margin: calc(var(--px) * 42) 0 0;
  background: #1B5095;
}
@media screen and (max-width: 960px) {
  .companyMessage__head .text .en {
    font-size: calc(var(--f) * 84);
  }
}
.companyMessage__head .text .en {
  font-size: calc(var(--f) * 62);
  text-align: center;
}
.companyMessage__head .text .ja {
  margin-top: calc(var(--px) * 16);
  font-size: calc(var(--f) * 16);
  text-align: center;
}
.companyMessage__head .text::after {
  margin-top: calc(var(--px) * 20);
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 960px) {
  .companyMessage__head .text .en {
    font-size: calc(var(--f) * 58);
    text-align: center;
  }
}
.companyMessage__text {
  font-size: calc(var(--f) * 20);
  line-height: 2.05;
  font-size: calc(var(--f) * 18);
}
.companyMessage__text p {
  margin: 0 0 calc(var(--px) * 41);
}
.companyMessage__text p:last-child {
  margin-bottom: 0;
}
.companyMessage__name {
  margin: calc(var(--px) * 36) 0 0;
}
.companyMessage__name dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-line-pack: center;
      align-content: center;
  gap: calc(var(--px) * 20);
}
.companyMessage__name dl dt {
  padding-top: 0.5em;
}
.companyMessage__name dl dd {
  font-size: 1.33em;
  font-weight: 400;
}
@media screen and (min-width: 960.02px) {
  .companyMessage__name {
    padding-right: calc(var(--px) * 40);
  }
}
@media screen and (max-width: 960px) {
  .companyMessage__text p br {
    display: none;
  }
}
.anime-set .companyMessage__head .text {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.anime-set .companyMessage__text p:nth-child(1) {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
}
.anime-set .companyMessage__text p:nth-child(2) {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 200ms;
          transition-delay: 200ms;
}
.anime-set .companyMessage__text p:nth-child(3) {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 300ms;
          transition-delay: 300ms;
}
.anime-set .companyMessage__text p:nth-child(4) {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 400ms;
          transition-delay: 400ms;
}
.anime-set .companyMessage__text p:nth-child(5) {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 500ms;
          transition-delay: 500ms;
}
.anime-set .companyMessage__name {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 600ms;
          transition-delay: 600ms;
}
.anime-off .companyMessage__head .text {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .companyMessage__text p:nth-child(1) {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .companyMessage__text p:nth-child(2) {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .companyMessage__text p:nth-child(3) {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .companyMessage__text p:nth-child(4) {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .companyMessage__text p:nth-child(5) {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .companyMessage__name {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}

.companyProfile {
  position: relative;
  background: #fff;
}
.companyProfile__container {
  width: 900px;
  max-width: 90vw;
  padding: calc(var(--h) * 140) 0 calc(var(--h) * 100);
  margin: 0 auto;
}
.companyProfile__head .text {
  position: relative;
  margin: 0 0 calc(var(--px) * 40);
  margin-bottom: calc(var(--h) * 70);
  margin: 0 0 calc(var(--h) * 48);
}
.companyProfile__head .text .en {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: block;
  color: #1B5095;
  font-size: calc(var(--f) * 87);
  font-weight: 200;
}
.companyProfile__head .text .en::first-letter {
  color: #f00;
}
.companyProfile__head .text .ja {
  position: relative;
  display: block;
  margin: calc(var(--px) * -8) 0 0;
  font-size: calc(var(--f) * 14);
  line-height: 1;
}
.companyProfile__head .text::after {
  content: "";
  display: block;
  width: calc(var(--px) * 106);
  height: 1px;
  margin: calc(var(--px) * 42) 0 0;
  background: #1B5095;
}
@media screen and (max-width: 960px) {
  .companyProfile__head .text .en {
    font-size: calc(var(--f) * 84);
  }
}
.companyProfile__head .text .en {
  font-size: calc(var(--f) * 62);
  text-align: center;
}
.companyProfile__head .text .ja {
  margin-top: calc(var(--px) * 16);
  font-size: calc(var(--f) * 16);
  text-align: center;
}
.companyProfile__head .text::after {
  margin-top: calc(var(--px) * 20);
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 960px) {
  .companyProfile__head .text .en {
    font-size: calc(var(--f) * 58);
    text-align: center;
  }
}
.companyProfile__data .table {
  width: 100%;
  margin: 0 0 calc(var(--h) * 54);
}
.companyProfile__data .table th, .companyProfile__data .table td {
  padding: calc(var(--px) * 20.5) 0;
  vertical-align: middle;
  border-bottom: 1px solid #C4C4C4;
}
.companyProfile__data .table th {
  width: calc(var(--px) * 212);
  color: #1B5095;
  text-align: justify;
  -moz-text-align-last: justify;
       text-align-last: justify;
}
.companyProfile__data .asahi .logo {
  margin: 0 0 calc(var(--px) * 8);
}
.companyProfile__data .asahi .logo img {
  display: block;
  width: calc(var(--px) * 217);
}
.companyProfile__chart .title {
  font-size: calc(var(--f) * 28);
  line-height: 1.5;
  margin: 0 0 calc(var(--h) * 70);
  color: #1B5095;
  text-align: center;
}
.companyProfile__chart .chart img {
  display: block;
  width: 100%;
}
@media screen and (min-width: 960.02px) {
  .companyProfile__data .table th {
    padding-right: calc(var(--px) * 84);
    padding-left: calc(var(--px) * 25);
  }
  .companyProfile__data .asahi {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-line-pack: center;
        align-content: center;
  }
  .companyProfile__data .asahi .logo {
    padding: calc(var(--px) * 10) calc(var(--px) * 40) 0 0;
  }
}
@media screen and (max-width: 960px) {
  .companyProfile__data .table th {
    width: calc(var(--px) * 110);
    padding-right: calc(var(--px) * 30);
  }
  .companyProfile__data .asahi .logo {
    margin-bottom: calc(var(--px) * 10);
  }
}
.anime-set .companyProfile__head .text {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.anime-set .companyProfile__data {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
}
.companyProfile__chart.anime-set {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
}
.anime-off .companyProfile__head .text {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .companyProfile__data {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.companyProfile__chart.anime-off {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}

.contactForm {
  position: relative;
  background: url(../img/business/field-bg.svg) right calc(var(--px) * -60) top calc(var(--px) * -6)/calc(var(--px) * 408) auto no-repeat;
}
.contactForm .contactStep1,
.contactForm .contactStep2 {
  display: none;
}
.contactForm.formMain--step1 .contactStep1, .contactForm.formMain--step2 .contactStep2 {
  display: block;
}
.contactForm--thanks {
  background: none;
}
.contactForm--thanks::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  display: block;
  width: 100%;
  height: calc(var(--px) * 100);
  background: url(../img/contact/thanks-bg.svg) center top/100% auto no-repeat;
}
.contactForm .required {
  color: #f00;
}
.contactForm .error {
  display: inline-block;
  padding: 0 0.5em;
  margin: 0.5em 0 0;
  color: #fff;
  font-size: calc(var(--f) * 15);
  background: #f00;
}
.contactForm__container {
  width: 800px;
  max-width: 90vw;
  padding: calc(var(--h) * 100) 0 calc(var(--h) * 250);
  margin: 0 auto;
}
.contactForm__head .text {
  font-size: calc(var(--f) * 38);
  line-height: 1.45;
  margin: 0 0 calc(var(--h) * 60);
  color: #1B5095;
  font-size: calc(var(--f) * 36);
  text-align: center;
}
.contactForm__text {
  font-size: calc(var(--f) * 20);
  line-height: 2.05;
  margin: 0 0 calc(var(--h) * 100);
  font-size: calc(var(--f) * 19);
}
.contactForm__text--check {
  color: #1B5095;
  font-size: calc(var(--f) * 23);
  font-weight: 500;
}
.contactForm__thanks {
  padding: calc(var(--f) * 42) 0 0;
}
.contactForm__thanks p {
  margin: 0 0 calc(var(--f) * 34);
}
.contactForm__thanks p:last-child {
  margin-bottom: 0;
}
.contactForm__form table {
  width: 100%;
}
.contactForm__form th, .contactForm__form td {
  display: block;
  font-size: calc(var(--f) * 19);
}
.contactForm__form th {
  margin: 0 0 calc(var(--px) * 10);
}
.contactForm__form td {
  margin: 0 0 calc(var(--px) * 48);
}
.contactForm__form input[type=text],
.contactForm__form input[type=email],
.contactForm__form input[type=tel],
.contactForm__form select,
.contactForm__form textarea {
  display: block;
  width: 100%;
  padding: calc(var(--px) * 10) calc(var(--px) * 20);
  border: 1px solid #D6D6D6;
  border-radius: calc(var(--px) * 4);
  background: #F7F7F7;
}
.contactForm__form input[type=text]::-webkit-input-placeholder, .contactForm__form input[type=email]::-webkit-input-placeholder, .contactForm__form input[type=tel]::-webkit-input-placeholder, .contactForm__form select::-webkit-input-placeholder, .contactForm__form textarea::-webkit-input-placeholder {
  color: #9E9E9E;
}
.contactForm__form input[type=text]::-moz-placeholder, .contactForm__form input[type=email]::-moz-placeholder, .contactForm__form input[type=tel]::-moz-placeholder, .contactForm__form select::-moz-placeholder, .contactForm__form textarea::-moz-placeholder {
  color: #9E9E9E;
}
.contactForm__form input[type=text]:-ms-input-placeholder, .contactForm__form input[type=email]:-ms-input-placeholder, .contactForm__form input[type=tel]:-ms-input-placeholder, .contactForm__form select:-ms-input-placeholder, .contactForm__form textarea:-ms-input-placeholder {
  color: #9E9E9E;
}
.contactForm__form input[type=text]::-ms-input-placeholder, .contactForm__form input[type=email]::-ms-input-placeholder, .contactForm__form input[type=tel]::-ms-input-placeholder, .contactForm__form select::-ms-input-placeholder, .contactForm__form textarea::-ms-input-placeholder {
  color: #9E9E9E;
}
.contactForm__form input[type=text]::placeholder,
.contactForm__form input[type=email]::placeholder,
.contactForm__form input[type=tel]::placeholder,
.contactForm__form select::placeholder,
.contactForm__form textarea::placeholder {
  color: #9E9E9E;
}
.contactForm__form textarea {
  height: calc(var(--px) * 180);
}
.contactForm__form .notice {
  position: relative;
  margin: calc(var(--px) * -12) 0 calc(var(--px) * 20);
  font-size: calc(var(--f) * 16);
}
.contactForm__form .wpcf7-radio {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: calc(var(--px) * 18) calc(var(--s) * 60);
}
.contactForm__form .wpcf7-radio .wpcf7-list-item label input {
  display: none;
}
.contactForm__form .wpcf7-radio .wpcf7-list-item label .wpcf7-list-item-label {
  cursor: pointer;
  display: block;
  padding: 0 0 0 calc(var(--px) * 34);
  background: url(../img/contact/radio-off.svg) left calc(var(--px) * 4) center/calc(var(--px) * 20) auto no-repeat;
}
.contactForm__form .wpcf7-radio .wpcf7-list-item label input:checked + .wpcf7-list-item-label {
  background-image: url(../img/contact/radio-on.svg);
}
.contactForm__check table {
  width: 100%;
}
.contactForm__check th, .contactForm__check td {
  font-size: calc(var(--f) * 19);
}
.contactForm__agree {
  margin: 0 0 calc(var(--h) * 70);
}
.contactForm__agree .wpcf7-form-control-wrap {
  display: block;
  margin: 0 0 calc(var(--px) * 8);
  text-align: center;
}
.contactForm__agree .wpcf7-acceptance {
  display: block;
}
.contactForm__agree .wpcf7-acceptance .wpcf7-list-item {
  display: block;
}
.contactForm__agree .wpcf7-acceptance .wpcf7-list-item label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: calc(var(--px) * 10);
}
.contactForm__agree p {
  text-align: center;
}
.contactForm__agree p a {
  color: #009AF0;
}
.contactForm__submit {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: calc(var(--f) * 30) calc(var(--f) * 70);
}
.contactForm__submit .label {
  position: relative;
  overflow: hidden;
  z-index: 10;
  background: #46D7C6;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
}
.contactForm__submit .label::before {
  content: "";
  position: absolute;
  left: 0;
  top: 100%;
  z-index: -2;
  width: 200%;
  height: 200%;
  background: url(../img/_common/button-hover.svg) left top/calc(var(--px) * 60) auto repeat-x;
  -webkit-transition-duration: 1000ms;
          transition-duration: 1000ms;
  -webkit-animation: btnWave 600ms linear 0ms infinite;
          animation: btnWave 600ms linear 0ms infinite;
}
.contactForm__submit .label::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: url(../img/_common/arrow-white.svg) right calc(var(--px) * 24) center/calc(var(--px) * 20) auto no-repeat;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
}
.contactForm__submit .label a, .contactForm__submit .label button, .contactForm__submit .label input {
  display: block;
  cursor: pointer;
  min-width: calc(var(--px) * 230);
  padding: calc(var(--px) * 25) calc(var(--px) * 60) calc(var(--px) * 21) calc(var(--px) * 20);
  color: #fff;
  font-size: calc(var(--f) * 18);
  border: none;
  outline: none;
  background: none;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
}
.contactForm__submit .label:hover::before {
  top: -50%;
}
.contactForm__submit .label {
  border: 1px solid #46D7C6;
  border-radius: 999px;
  width: calc(var(--px) * 400);
}
.contactForm__submit .label::after {
  display: none;
}
.contactForm__submit .label:hover {
  border-color: #009AF0;
}
.contactForm__submit .label input, .contactForm__submit .label button {
  padding: calc(var(--px) * 25) 0 calc(var(--px) * 19);
  min-width: unset;
  width: 100%;
  font-size: calc(var(--f) * 22);
  text-align: center;
}
.contactForm__submit .label.back, .contactForm__submit .label.submit {
  width: calc(var(--f) * 200);
}
.contactForm__submit .label.back {
  background: #fff;
}
.contactForm__submit .label.back button {
  color: #46D7C6;
}
.contactForm__submit .label.back button:hover {
  color: #fff;
}
.contactForm__submit .wpcf7-spinner {
  position: absolute;
  top: 100%;
  right: 0;
  left: 0;
  display: block;
  margin: 0 auto;
  opacity: 1 !important;
  border: 1px solid rgba(255, 0, 0, 0.3);
}
@media screen and (min-width: 960.02px) {
  .contactForm__text {
    text-align: center;
  }
  .contactForm__check {
    margin: 0 0 calc(var(--h) * 100);
  }
  .contactForm__check th, .contactForm__check td {
    padding: calc(var(--f) * 24) 0;
    border-bottom: 1px solid #D6D6D6;
  }
}
@media screen and (max-width: 960px) {
  .contactForm {
    background-size: calc(var(--px) * 210) auto;
  }
  .contactForm__check {
    margin: 0 0 calc(var(--h) * 100);
  }
  .contactForm__check th, .contactForm__check td {
    display: block;
    width: 100%;
  }
  .contactForm__check th {
    padding: calc(var(--f) * 24) 0 calc(var(--f) * 8);
    font-size: calc(var(--f) * 17);
    font-weight: 700;
  }
  .contactForm__check td {
    padding: 0 0 calc(var(--f) * 24);
    border-bottom: 1px solid #D6D6D6;
  }
}
.contactForm__head.anime-set {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.contactForm__text.anime-set {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.contactForm__form.anime-set {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.contactForm__head.anime-off {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.contactForm__text.anime-off {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.contactForm__form.anime-off {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}

.wpcf7-response-output {
  width: 800px;
  max-width: 80%;
  margin: calc(var(--h) * -150) auto calc(var(--px) * 50) !important;
}

.coreOperations {
  position: relative;
  background: url(../img/home/value-bg.webp) left top/100% auto no-repeat;
}
.coreOperations__container {
  width: 900px;
  max-width: 90vw;
  padding: calc(var(--h) * 100) 0 0;
  margin: 0 auto;
}
.coreOperations__head .text {
  position: relative;
  margin: 0 0 calc(var(--px) * 40);
  position: relative;
  margin: 0 0 calc(var(--px) * 40);
  margin-bottom: calc(var(--h) * 70);
  margin-bottom: calc(var(--h) * 140);
}
.coreOperations__head .text .en {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: block;
  color: #1B5095;
  font-size: calc(var(--f) * 87);
  font-weight: 200;
}
.coreOperations__head .text .en::first-letter {
  color: #f00;
}
.coreOperations__head .text .ja {
  position: relative;
  display: block;
  margin: calc(var(--px) * -8) 0 0;
  font-size: calc(var(--f) * 14);
  line-height: 1;
}
.coreOperations__head .text::after {
  content: "";
  display: block;
  width: calc(var(--px) * 106);
  height: 1px;
  margin: calc(var(--px) * 42) 0 0;
  background: #1B5095;
}
@media screen and (max-width: 960px) {
  .coreOperations__head .text .en {
    font-size: calc(var(--f) * 84);
  }
}
.coreOperations__head .text .en {
  color: #fff !important;
}
.coreOperations__head .text .ja {
  color: #fff;
}
.coreOperations__head .text::after {
  background-color: #fff !important;
}
.coreOperations__head .text .en {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: block;
  color: #1B5095;
  font-size: calc(var(--f) * 87);
  font-weight: 200;
}
.coreOperations__head .text .en::first-letter {
  color: #f00;
}
.coreOperations__head .text .ja {
  position: relative;
  display: block;
  margin: calc(var(--px) * -8) 0 0;
  font-size: calc(var(--f) * 14);
  line-height: 1;
}
.coreOperations__head .text::after {
  content: "";
  display: block;
  width: calc(var(--px) * 106);
  height: 1px;
  margin: calc(var(--px) * 42) 0 0;
  background: #1B5095;
}
@media screen and (max-width: 960px) {
  .coreOperations__head .text .en {
    font-size: calc(var(--f) * 84);
  }
}
.coreOperations__head .text .en {
  font-size: calc(var(--f) * 62);
  text-align: center;
}
.coreOperations__head .text .ja {
  margin-top: calc(var(--px) * 16);
  font-size: calc(var(--f) * 16);
  text-align: center;
}
.coreOperations__head .text::after {
  margin-top: calc(var(--px) * 20);
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 960px) {
  .coreOperations__head .text .en {
    font-size: calc(var(--f) * 58);
    text-align: center;
  }
}
.coreOperations__list {
  margin: 0 0 calc(var(--h) * 68);
}
.coreOperations__list .item {
  position: relative;
  z-index: 10;
  padding: 0 calc(var(--px) * 35) calc(var(--px) * 40);
  background: url(../img/business/operations-frame-bottom.svg) center bottom/100% auto no-repeat;
}
.coreOperations__list .item::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 100%;
  z-index: -1;
  display: block;
  width: 100%;
  height: calc(var(--px) * 50);
  background: url(../img/business/operations-frame.svg) center top/100% auto no-repeat;
}
.coreOperations__list .title {
  font-size: calc(var(--f) * 28);
  line-height: 1.5;
  padding: calc(var(--px) * 11);
  margin: 0 0 calc(var(--px) * 20);
  color: #fff;
  font-size: calc(var(--f) * 25);
  text-align: center;
  background: #1B5095;
  border-radius: 999px;
}
.coreOperations__list .ico {
  margin: 0 0 calc(var(--px) * 20);
  text-align: center;
}
.coreOperations__list .ico img {
  display: inline-block;
  width: calc(var(--px) * 232);
}
.coreOperations__result {
  padding: calc(var(--px) * 6) 0;
  margin: 0 0 calc(var(--h) * 130);
  color: #fff;
  border-top: calc(var(--px) * 2) solid #fff;
  border-bottom: calc(var(--px) * 2) solid #fff;
}
.coreOperations__result p {
  font-size: calc(var(--f) * 27);
  line-height: 1.5;
  font-weight: 400;
  text-align: center;
}
.coreOperations__result p b {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-variation-settings: "wdth" 100;
  display: inline-block;
  margin: 0 0.2em;
  font-size: 1.78em;
}
.coreOperations__result p small {
  font-size: 0.66em;
  font-weight: 500;
}
.coreOperations__photo {
  position: relative;
  overflow: hidden;
  display: block;
  width: 100%;
  aspect-ratio: 1600/650;
}
.coreOperations__photo .parallaxSlideup {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: auto;
}
@media screen and (min-width: 960.02px) {
  .coreOperations__list .items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .coreOperations__list .item {
    width: calc((100% - var(--s) * 57) / 2);
  }
}
@media screen and (max-width: 960px) {
  .coreOperations {
    background-size: 300% auto;
  }
  .coreOperations__list .item {
    margin: 0 calc(var(--px) * 32) calc(var(--px) * 80);
  }
  .coreOperations__list .item:last-child {
    margin-bottom: 0;
  }
  .coreOperations__result {
    padding: calc(var(--px) * 16) 0;
  }
  .coreOperations__result p {
    line-height: 1;
  }
}
.anime-set .coreOperations__head .text {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.anime-set .coreOperations__list .item:nth-child(1) {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
}
.anime-set .coreOperations__list .item:nth-child(2) {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 200ms;
          transition-delay: 200ms;
}
.anime-off .coreOperations__head .text {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .coreOperations__list .item {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}

.coreOperationsDetail {
  position: relative;
  padding: calc(var(--h) * 140) 0;
  background: #E5F5FC;
}
.coreOperationsDetail#operations-2 {
  background: #F8F7F2;
}
.coreOperationsDetail__container {
  position: relative;
  width: 1100px;
  max-width: 90vw;
  margin: 0 auto;
}
.coreOperationsDetail__head {
  font-size: calc(var(--f) * 28);
  line-height: 1.5;
  padding: calc(var(--px) * 12) 0;
  margin: 0 0 calc(var(--px) * 35);
  color: #fff;
  font-size: calc(var(--f) * 26);
  text-align: center;
  background: #1B5095;
  border-radius: 0 999px 999px 0;
}
.coreOperationsDetail__text {
  margin: 0 0 calc(var(--px) * 48);
}
.coreOperationsDetail__text .top {
  font-size: calc(var(--f) * 22);
  line-height: 1.73;
  margin: 0 0 calc(var(--px) * 38);
  color: #1B5095;
}
.coreOperationsDetail__chart {
  margin: 0 0 calc(var(--px) * 74);
}
.coreOperationsDetail__list {
  margin: 0 0 calc(var(--h) * 130);
}
.coreOperationsDetail__list .head {
  font-size: calc(var(--f) * 27);
  line-height: 1.5;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-line-pack: center;
      align-content: center;
  gap: calc(var(--px) * 40);
  margin: 0 0 calc(var(--h) * 80);
  color: #1B5095;
  font-size: calc(var(--f) * 26);
  white-space: nowrap;
}
.coreOperationsDetail__list .head::before, .coreOperationsDetail__list .head::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  margin-top: calc(var(--px) * 3);
  background: #1B5095;
}
.coreOperationsDetail__list .title {
  font-size: calc(var(--f) * 22);
  line-height: 1.73;
  padding: 0.22em 0;
  margin: 0 0 calc(var(--px) * 20);
  color: #1B5095;
  text-align: center;
  background: #fff;
  border: calc(var(--px) * 2) solid #1B5095;
  border-radius: 999px;
}
.coreOperationsDetail__list .top {
  margin: 0 0 calc(var(--px) * 20);
  color: #1B5095;
  font-size: calc(var(--f) * 20);
  line-height: 1.7;
}
.coreOperationsDetail__photo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.coreOperationsDetail__photo span {
  position: relative;
  overflow: hidden;
  display: block;
  width: 50%;
}
@media screen and (min-width: 960.02px) {
  .coreOperationsDetail__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .coreOperationsDetail__head {
    position: absolute;
    left: 0;
    top: 0;
    width: 44.2%;
  }
  .coreOperationsDetail__text {
    width: 44.2%;
    padding-top: calc(var(--px) * 99);
  }
  .coreOperationsDetail__chart {
    width: 50.7%;
  }
  .coreOperationsDetail__list {
    width: 100%;
  }
  .coreOperationsDetail__list .items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: calc(var(--h) * 60) calc(var(--s) * 74);
  }
  .coreOperationsDetail__list .item {
    width: calc((100% - var(--s) * 149) / 3);
  }
  .coreOperationsDetail__photo {
    width: 100%;
  }
}
@media screen and (max-width: 960px) {
  .coreOperationsDetail__list .item {
    margin: 0 calc(var(--px) * 32) calc(var(--h) * 60);
  }
  .coreOperationsDetail__list .item:last-child {
    margin-bottom: 0;
  }
}
.coreOperationsDetail__head.anime-set {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.coreOperationsDetail__text.anime-set {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.coreOperationsDetail__chart.anime-set {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.coreOperationsDetail__list.anime-set .head {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.coreOperationsDetail__list.anime-set .item {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
}
.coreOperationsDetail__list.anime-set .item:nth-child(2) {
  -webkit-transition-delay: 200ms;
          transition-delay: 200ms;
}
.coreOperationsDetail__list.anime-set .item:nth-child(3) {
  -webkit-transition-delay: 300ms;
          transition-delay: 300ms;
}
.coreOperationsDetail__list.anime-set .item:nth-child(4) {
  -webkit-transition-delay: 400ms;
          transition-delay: 400ms;
}
.coreOperationsDetail__list.anime-set .item:nth-child(5) {
  -webkit-transition-delay: 500ms;
          transition-delay: 500ms;
}
.coreOperationsDetail__list.anime-set .item:nth-child(6) {
  -webkit-transition-delay: 600ms;
          transition-delay: 600ms;
}
.coreOperationsDetail__list.anime-set .item:nth-child(7) {
  -webkit-transition-delay: 700ms;
          transition-delay: 700ms;
}
.coreOperationsDetail__list.anime-set .item:nth-child(8) {
  -webkit-transition-delay: 800ms;
          transition-delay: 800ms;
}
.coreOperationsDetail__list.anime-set .item:nth-child(9) {
  -webkit-transition-delay: 900ms;
          transition-delay: 900ms;
}
.coreOperationsDetail__photo.anime-set {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.coreOperationsDetail__head.anime-off {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.coreOperationsDetail__text.anime-off {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.coreOperationsDetail__chart.anime-off {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.coreOperationsDetail__list.anime-off .item {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.coreOperationsDetail__photo.anime-off {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}

.jobDetail {
  position: relative;
}
.jobDetail__container {
  width: 1100px;
  max-width: 90vw;
  padding: calc(var(--h) * 100) 0 0;
  margin: 0 auto;
}
.jobDetail__head .text {
  font-size: calc(var(--f) * 26);
  line-height: 1.5;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-line-pack: center;
      align-content: center;
  gap: calc(var(--px) * 40);
  margin: 0 0 calc(var(--h) * 76);
  white-space: nowrap;
}
.jobDetail__head .text::before, .jobDetail__head .text::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  margin-top: calc(var(--px) * 3);
  background: #363636;
}
.jobDetail__detail {
  margin-bottom: calc(var(--h) * 55);
}
.jobDetail__detail:first-child {
  margin-bottom: 0;
}
.jobDetail__detail .head {
  font-size: calc(var(--f) * 22);
  line-height: 1.73;
  margin: 0 0 calc(var(--px) * 26);
}
.jobDetail__detail .head::before {
  content: "●";
  color: #009AF0;
}
.jobDetail__detail .job__items {
  margin: 0 0 calc(var(--px) * 12);
}
.jobDetail__detail .job__items:last-child {
  margin-bottom: 0;
}
.jobDetail__detail .job__item {
  margin: 0 0 calc(var(--px) * 12);
}
.jobDetail__detail .job__item:last-child {
  margin-bottom: 0;
}
.jobDetail__detail .job__title {
  color: #1B5095;
  font-size: calc(var(--f) * 19);
}
.jobDetail__detail .job__list li {
  position: relative;
  padding: 0 0 0 calc(var(--px) * 26);
}
.jobDetail__detail .job__list li::before {
  content: "・";
  position: absolute;
  left: calc(var(--px) * 12);
  top: 0;
}
.jobDetail__detail .data__table {
  width: 100%;
}
.jobDetail__detail .data__table th {
  background: #ECF9FF;
}
.jobDetail__detail .data__table .notice {
  padding: 0 0 0 calc(var(--px) * 25);
  font-size: calc(var(--f) * 15);
}
.jobDetail__detail .data__table .orderList li {
  position: relative;
  margin-bottom: calc(var(--px) * 10);
  padding: 0 0 0 calc(var(--px) * 25);
}
.jobDetail__detail .data__table .orderList li:last-child {
  margin-bottom: 0;
}
.jobDetail__detail .data__table .orderList li .num {
  position: absolute;
  left: 0;
  top: 0;
}
.jobDetail__detail .data__table .orderList .notice,
.jobDetail__detail .data__table .orderList .notice li {
  padding-left: 0;
}
.jobDetail__detail .entry {
  position: relative;
  margin: calc(var(--px) * -12) 0 0;
}
.jobDetail__detail .entry__btn {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-style: normal;
  color: #363636;
  font-size: calc(var(--f) * 18);
  line-height: 1.88;
  letter-spacing: 0.05em;
  font-weight: 500;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: calc(var(--h) * 100);
}
.jobDetail__detail .entry__btn .label {
  position: relative;
  overflow: hidden;
  z-index: 10;
  background: #46D7C6;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
}
.jobDetail__detail .entry__btn .label::before {
  content: "";
  position: absolute;
  left: 0;
  top: 100%;
  z-index: -2;
  width: 200%;
  height: 200%;
  background: url(../img/_common/button-hover.svg) left top/calc(var(--px) * 60) auto repeat-x;
  -webkit-transition-duration: 1000ms;
          transition-duration: 1000ms;
  -webkit-animation: btnWave 600ms linear 0ms infinite;
          animation: btnWave 600ms linear 0ms infinite;
}
.jobDetail__detail .entry__btn .label::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: url(../img/_common/arrow-white.svg) right calc(var(--px) * 24) center/calc(var(--px) * 20) auto no-repeat;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
}
.jobDetail__detail .entry__btn .label a, .jobDetail__detail .entry__btn .label button, .jobDetail__detail .entry__btn .label input {
  display: block;
  cursor: pointer;
  min-width: calc(var(--px) * 230);
  padding: calc(var(--px) * 25) calc(var(--px) * 60) calc(var(--px) * 21) calc(var(--px) * 20);
  color: #fff;
  font-size: calc(var(--f) * 18);
  border: none;
  outline: none;
  background: none;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
}
.jobDetail__detail .entry__btn .label:hover::before {
  top: -50%;
}
@media screen and (max-width: 960px) {
  .jobDetail__detail .entry__btn {
    letter-spacing: 0;
  }
}
.jobDetail__detail .entry__btn .label::after {
  display: none;
}
.jobDetail__detail .entry__btn .label a, .jobDetail__detail .entry__btn .label button, .jobDetail__detail .entry__btn .label input {
  width: calc(var(--px) * 270);
  padding: calc(var(--px) * 12) 0;
  color: #fff;
  font-size: calc(var(--f) * 22);
  text-align: center;
  background-image: none;
}
.jobDetail__asahi {
  margin: calc(var(--h) * 150) 0 0;
}
.jobDetail__asahi .logo {
  margin: 0 0 calc(var(--px) * 8);
}
.jobDetail__asahi .logo img {
  display: block;
  width: calc(var(--px) * 217);
}
@media screen and (min-width: 960.02px) {
  .jobDetail__detail .job {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: calc(var(--s) * 60);
  }
  .jobDetail__detail .data__table {
    border-top: 1px solid #DFDFDF;
  }
  .jobDetail__detail .data__table th, .jobDetail__detail .data__table td {
    padding: calc(var(--px) * 16) calc(var(--px) * 24);
    font-size: calc(var(--f) * 17);
    vertical-align: middle;
    border-bottom: 1px solid #DFDFDF;
  }
  .jobDetail__detail .data__table th {
    text-align: center;
    white-space: nowrap;
  }
  .jobDetail__detail .data__table td:last-child {
    padding-right: 0;
  }
  .jobDetail__asahi {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-line-pack: center;
        align-content: center;
  }
  .jobDetail__asahi .logo {
    padding: calc(var(--px) * 10) calc(var(--px) * 40) 0 0;
  }
}
@media screen and (max-width: 960px) {
  .jobDetail__detail .data__table {
    border-top: 1px solid #DFDFDF;
  }
  .jobDetail__detail .data__table col {
    display: none;
  }
  .jobDetail__detail .data__table th, .jobDetail__detail .data__table td {
    display: block;
    width: 100%;
    padding: calc(var(--px) * 12) calc(var(--px) * 18);
  }
  .jobDetail__detail .data__table th br {
    display: none;
  }
  .jobDetail__detail .data__table td {
    padding-bottom: calc(var(--px) * 40);
    border-bottom: 1px solid #DFDFDF;
  }
  .jobDetail__asahi .logo {
    margin-bottom: calc(var(--px) * 10);
  }
}
.jobDetail__head.anime-set {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.jobDetail__detail.anime-set {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.jobDetail__asahi.anime-set {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.jobDetail__head.anime-off {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.jobDetail__detail.anime-off {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.jobDetail__asahi.anime-off {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}

.joinUs {
  position: relative;
  background: url(../img/business/field-bg.svg) right calc(var(--px) * -60) top calc(var(--px) * -6)/calc(var(--px) * 408) auto no-repeat;
}
.joinUs__container {
  width: 1100px;
  max-width: 90vw;
  padding: calc(var(--h) * 100) 0 calc(var(--h) * 100);
  margin: 0 auto;
}
.joinUs__head .text {
  position: relative;
  margin: 0 0 calc(var(--px) * 40);
  margin-bottom: calc(var(--h) * 70);
}
.joinUs__head .text .en {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: block;
  color: #1B5095;
  font-size: calc(var(--f) * 87);
  font-weight: 200;
}
.joinUs__head .text .en::first-letter {
  color: #f00;
}
.joinUs__head .text .ja {
  position: relative;
  display: block;
  margin: calc(var(--px) * -8) 0 0;
  font-size: calc(var(--f) * 14);
  line-height: 1;
}
.joinUs__head .text::after {
  content: "";
  display: block;
  width: calc(var(--px) * 106);
  height: 1px;
  margin: calc(var(--px) * 42) 0 0;
  background: #1B5095;
}
@media screen and (max-width: 960px) {
  .joinUs__head .text .en {
    font-size: calc(var(--f) * 84);
  }
}
.joinUs__head .text .en {
  font-size: calc(var(--f) * 62);
  text-align: center;
}
.joinUs__head .text .ja {
  margin-top: calc(var(--px) * 16);
  font-size: calc(var(--f) * 16);
  text-align: center;
}
.joinUs__head .text::after {
  margin-top: calc(var(--px) * 20);
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 960px) {
  .joinUs__head .text .en {
    font-size: calc(var(--f) * 58);
    text-align: center;
  }
}
.joinUs__top {
  font-size: calc(var(--f) * 38);
  line-height: 1.45;
  margin: 0 0 calc(var(--h) * 60);
  color: #1B5095;
  font-size: calc(var(--f) * 36);
  text-align: center;
}
.joinUs__text {
  font-size: calc(var(--f) * 20);
  line-height: 2.05;
  font-size: calc(var(--f) * 19);
}
@media screen and (min-width: 960.02px) {
  .joinUs__text {
    text-align: center;
  }
}
@media screen and (max-width: 960px) {
  .joinUs {
    background-size: calc(var(--px) * 210) auto;
  }
}
.anime-set .joinUs__head .text {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.anime-set .joinUs__top {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
}
.anime-set .joinUs__text {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 200ms;
          transition-delay: 200ms;
}
.anime-off .joinUs__head .text {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .joinUs__top {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .joinUs__text {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}

.keyStrengths {
  position: relative;
  overflow: hidden;
  z-index: 10;
  padding: calc(var(--h) * 140) 0 calc(var(--h) * 180);
  background: url(../img/business/strengths-bg.svg) center top/cover no-repeat;
}
.keyStrengths__container {
  width: 1200px;
  max-width: 90vw;
  padding: calc(var(--h) * 100) calc(var(--s) * 70) calc(var(--h) * 136);
  margin: 0 auto;
  background: #fff;
}
.keyStrengths__head .text {
  position: relative;
  margin: 0 0 calc(var(--px) * 40);
  margin-bottom: calc(var(--h) * 70);
  margin-bottom: calc(var(--h) * 80);
}
.keyStrengths__head .text .en {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: block;
  color: #1B5095;
  font-size: calc(var(--f) * 87);
  font-weight: 200;
}
.keyStrengths__head .text .en::first-letter {
  color: #f00;
}
.keyStrengths__head .text .ja {
  position: relative;
  display: block;
  margin: calc(var(--px) * -8) 0 0;
  font-size: calc(var(--f) * 14);
  line-height: 1;
}
.keyStrengths__head .text::after {
  content: "";
  display: block;
  width: calc(var(--px) * 106);
  height: 1px;
  margin: calc(var(--px) * 42) 0 0;
  background: #1B5095;
}
@media screen and (max-width: 960px) {
  .keyStrengths__head .text .en {
    font-size: calc(var(--f) * 84);
  }
}
.keyStrengths__head .text .en {
  font-size: calc(var(--f) * 62);
  text-align: center;
}
.keyStrengths__head .text .ja {
  margin-top: calc(var(--px) * 16);
  font-size: calc(var(--f) * 16);
  text-align: center;
}
.keyStrengths__head .text::after {
  margin-top: calc(var(--px) * 20);
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 960px) {
  .keyStrengths__head .text .en {
    font-size: calc(var(--f) * 58);
    text-align: center;
  }
}
.keyStrengths__list .item {
  position: relative;
  padding: calc(var(--h) * 75) calc(var(--s) * 36) calc(var(--px) * 10);
  border: 1px solid #1B5095;
}
.keyStrengths__list .num {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  position: absolute;
  top: calc(var(--px) * -22);
  right: 0;
  left: 0;
  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;
  width: calc(var(--px) * 47);
  aspect-ratio: 47/59;
  padding: calc(var(--px) * 6) 0 0;
  margin: 0 auto;
  color: #fff;
  font-size: calc(var(--f) * 40);
  background: #1B5095;
  border-radius: 999px;
}
.keyStrengths__list .title {
  padding: 0 0 calc(var(--px) * 14);
  margin: 0 0 calc(var(--px) * 20);
  color: #1B5095;
  font-size: calc(var(--f) * 26);
  font-weight: 500;
  text-align: center;
  border-bottom: 1px solid #1B5095;
}
.keyStrengths__list .text {
  margin: 0 0 calc(var(--px) * 20);
}
.keyStrengths__list .ico {
  position: relative;
  margin: 0 calc(var(--s) * -20);
}
.keyStrengths__list .ico img {
  display: block;
  width: 100%;
}
.keyStrengths__bg-photo {
  position: absolute;
  right: 0;
  top: calc(var(--h) * 56);
  z-index: -1;
  overflow: hidden;
  display: block;
  width: calc(var(--h) * 696);
  border-radius: 999px 0 0 999px;
}
.keyStrengths__bg-photo img {
  display: block;
  width: 100%;
}
@media screen and (min-width: 960.02px) {
  .keyStrengths__list .items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .keyStrengths__list .item {
    width: calc((100% - var(--s) * 40) / 3);
  }
}
@media screen and (max-width: 960px) {
  .keyStrengths__list .item {
    margin: 0 0 calc(var(--h) * 60);
  }
  .keyStrengths__list .item:last-child {
    margin-bottom: 0;
  }
  .keyStrengths__list .ico {
    margin: calc(var(--px) * -30) calc(var(--s) * 20) 0;
  }
}
.anime-set .keyStrengths__container {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
}
.anime-set .keyStrengths__head .text {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 200ms;
          transition-delay: 200ms;
}
.anime-set .keyStrengths__list .item:nth-child(1) {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 300ms;
          transition-delay: 300ms;
}
.anime-set .keyStrengths__list .item:nth-child(2) {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 400ms;
          transition-delay: 400ms;
}
.anime-set .keyStrengths__list .item:nth-child(3) {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 500ms;
          transition-delay: 500ms;
}
.anime-off .keyStrengths__container {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .keyStrengths__head .text {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .keyStrengths__list .item {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}

.ourCommitment {
  position: relative;
  background: url(../img/business/field-bg.svg) right calc(var(--px) * -60) top calc(var(--px) * -6)/calc(var(--px) * 408) auto no-repeat;
}
.ourCommitment::after {
  -webkit-animation: animeBoat 4000ms ease-in-out infinite;
          animation: animeBoat 4000ms ease-in-out infinite;
  content: "";
  position: absolute;
  right: calc(var(--px) * 50);
  bottom: calc(var(--px) * -19);
  pointer-events: none;
  display: block;
  width: calc(var(--px) * 265);
  height: calc(var(--px) * 265);
  background: url(../img/home/about-bottom.svg) left bottom/contain no-repeat;
}
@media only screen and (min-width: 1600.01px) {
  .ourCommitment::after {
    bottom: -1.1875vw;
  }
}
.ourCommitment__container {
  width: 1100px;
  max-width: 90vw;
  padding: calc(var(--h) * 100) 0 calc(var(--h) * 112);
  margin: 0 auto;
}
@media only screen and (max-width: 1400px) {
  .ourCommitment__container {
    padding-bottom: calc(var(--h) * 240);
  }
}
.ourCommitment__head .text {
  position: relative;
  margin: 0 0 calc(var(--px) * 40);
  margin-bottom: calc(var(--h) * 70);
}
.ourCommitment__head .text .en {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: block;
  color: #1B5095;
  font-size: calc(var(--f) * 87);
  font-weight: 200;
}
.ourCommitment__head .text .en::first-letter {
  color: #f00;
}
.ourCommitment__head .text .ja {
  position: relative;
  display: block;
  margin: calc(var(--px) * -8) 0 0;
  font-size: calc(var(--f) * 14);
  line-height: 1;
}
.ourCommitment__head .text::after {
  content: "";
  display: block;
  width: calc(var(--px) * 106);
  height: 1px;
  margin: calc(var(--px) * 42) 0 0;
  background: #1B5095;
}
@media screen and (max-width: 960px) {
  .ourCommitment__head .text .en {
    font-size: calc(var(--f) * 84);
  }
}
.ourCommitment__head .text .en {
  font-size: calc(var(--f) * 62);
  text-align: center;
}
.ourCommitment__head .text .ja {
  margin-top: calc(var(--px) * 16);
  font-size: calc(var(--f) * 16);
  text-align: center;
}
.ourCommitment__head .text::after {
  margin-top: calc(var(--px) * 20);
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 960px) {
  .ourCommitment__head .text .en {
    font-size: calc(var(--f) * 58);
    text-align: center;
  }
}
.ourCommitment__text .box::after {
  content: "";
  display: block;
  height: calc(var(--px) * 10);
  margin: calc(var(--px) * 40) 0 calc(var(--px) * 70);
  background: url(../img/sustainability/commitment-spacer.svg) center/contain no-repeat;
}
.ourCommitment__text .box:last-child::after {
  display: none;
}
.ourCommitment__text .ja {
  font-size: calc(var(--f) * 38);
  line-height: 1.45;
  display: block;
  margin: 0 0 calc(var(--px) * 30);
  color: #1B5095;
  font-size: calc(var(--f) * 36);
  text-align: center;
}
.ourCommitment__text .ja:first-child:last-child {
  margin-bottom: calc(var(--px) * 20);
  font-size: calc(var(--f) * 30);
}
.ourCommitment__text .en {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: block;
  margin: 0 0 calc(var(--px) * 30);
  color: #42B5E7;
  font-size: calc(var(--f) * 46);
  text-align: center;
}
.ourCommitment__text .contents {
  font-size: calc(var(--f) * 20);
  line-height: 2.05;
  font-size: calc(var(--f) * 19);
  text-align: center;
}
.ourCommitment__text .contents p {
  margin: 0 0 calc(var(--px) * 18);
}
.ourCommitment__text .contents p:last-child {
  margin-bottom: 0;
}
.ourCommitment__photo .photo {
  position: absolute;
  left: 0;
  top: 32.2%;
  overflow: hidden;
  z-index: -1;
  width: calc(var(--s) * 386);
  border-radius: 0 999px 999px 0;
}
@media screen and (min-width: 960.02px) {
  .ourCommitment__text {
    text-align: center;
  }
}
@media screen and (max-width: 960px) {
  .ourCommitment {
    background-size: calc(var(--px) * 210) auto;
  }
  .ourCommitment::after {
    right: 2vw;
  }
  .ourCommitment__container {
    padding-bottom: calc(var(--h) * 160);
  }
  .ourCommitment__text .box::after {
    margin: calc(var(--px) * 70) 0 calc(var(--px) * 100);
  }
  .ourCommitment__photo .photo {
    top: 42%;
    width: calc(var(--s) * 190);
  }
}
.anime-set .ourCommitment__head .text {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.ourCommitment__text .box.anime-set .ja {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
}
.ourCommitment__text .box.anime-set .en {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 200ms;
          transition-delay: 200ms;
}
.ourCommitment__text .box.anime-set .contents {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 300ms;
          transition-delay: 300ms;
}
.ourCommitment__photo .photo.anime-set {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
}
.anime-off .ourCommitment__head .text {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.ourCommitment__text .box.anime-off .ja {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.ourCommitment__text .box.anime-off .en {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.ourCommitment__text .box.anime-off .contents {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.ourCommitment__photo .photo.anime-off {
  opacity: 0;
  -webkit-transform: translateX(calc(var(--px) * -40));
          transform: translateX(calc(var(--px) * -40));
}

.ourPhilosophy {
  position: relative;
  overflow: hidden;
  z-index: 10;
  background: #fff url(../img/company/philosophy-bg.svg) center bottom/100% auto no-repeat;
}
.ourPhilosophy::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  display: block;
  width: 100%;
  height: 100%;
  background: url(../img/business/field-bg.svg) right top/calc(var(--px) * 408) auto no-repeat;
}
.ourPhilosophy__container {
  width: 1100px;
  max-width: 90vw;
  padding: calc(var(--h) * 100) 0 calc(var(--h) * 130);
  margin: 0 auto;
}
.ourPhilosophy__head .text {
  position: relative;
  margin: 0 0 calc(var(--px) * 40);
  margin-bottom: calc(var(--h) * 70);
  margin-bottom: calc(var(--h) * 80);
}
.ourPhilosophy__head .text .en {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: block;
  color: #1B5095;
  font-size: calc(var(--f) * 87);
  font-weight: 200;
}
.ourPhilosophy__head .text .en::first-letter {
  color: #f00;
}
.ourPhilosophy__head .text .ja {
  position: relative;
  display: block;
  margin: calc(var(--px) * -8) 0 0;
  font-size: calc(var(--f) * 14);
  line-height: 1;
}
.ourPhilosophy__head .text::after {
  content: "";
  display: block;
  width: calc(var(--px) * 106);
  height: 1px;
  margin: calc(var(--px) * 42) 0 0;
  background: #1B5095;
}
@media screen and (max-width: 960px) {
  .ourPhilosophy__head .text .en {
    font-size: calc(var(--f) * 84);
  }
}
.ourPhilosophy__head .text .en {
  font-size: calc(var(--f) * 62);
  text-align: center;
}
.ourPhilosophy__head .text .ja {
  margin-top: calc(var(--px) * 16);
  font-size: calc(var(--f) * 16);
  text-align: center;
}
.ourPhilosophy__head .text::after {
  margin-top: calc(var(--px) * 20);
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 960px) {
  .ourPhilosophy__head .text .en {
    font-size: calc(var(--f) * 58);
    text-align: center;
  }
}
.ourPhilosophy__text .box {
  margin: 0 0 calc(var(--h) * 84);
}
.ourPhilosophy__text .box:nth-child(2) {
  margin-bottom: calc(var(--h) * 104);
}
.ourPhilosophy__text .box:last-child {
  margin-bottom: 0;
}
.ourPhilosophy__text .title {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  margin: 0 0 calc(var(--px) * 20);
  color: #1B5095;
  font-size: calc(var(--f) * 45);
  font-weight: 200;
  text-align: center;
}
.ourPhilosophy__text .contents {
  font-size: calc(var(--f) * 20);
  line-height: 2.05;
  font-size: calc(var(--f) * 19);
  text-align: center;
}
.ourPhilosophy__text .list {
  padding-top: calc(var(--h) * 50);
}
.ourPhilosophy__text .list__item {
  margin: 0 0 calc(var(--h) * 74);
}
.ourPhilosophy__text .list__item:last-child {
  margin-bottom: 0;
}
.ourPhilosophy__text .list__title {
  font-size: calc(var(--f) * 24);
  line-height: 1.5;
  font-weight: 700;
  padding: 0 0 calc(var(--px) * 18);
  margin: 0 0 calc(var(--px) * 20);
  color: #1B5095;
  font-size: calc(var(--f) * 23);
  text-align: center;
  border-bottom: 1px solid #1B5095;
}
.ourPhilosophy__text .list__contents {
  font-size: calc(var(--f) * 19);
  line-height: 1.85;
  text-align: center;
}
.ourPhilosophy__photo .photo {
  position: absolute;
  overflow: hidden;
  z-index: -1;
}
.ourPhilosophy__photo .photo--1 {
  left: 0;
  top: 20.2%;
  width: calc(var(--s) * 320);
  border-radius: 0 999px 999px 0;
}
.ourPhilosophy__photo .photo--2 {
  right: 0;
  top: 44.5%;
  width: calc(var(--s) * 305);
  border-radius: 999px 0 0 999px;
}
.ourPhilosophy__bottom {
  position: relative;
  overflow: hidden;
  display: block;
  width: 100%;
  aspect-ratio: 1600/650;
}
.ourPhilosophy__bottom .parallaxSlideup {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: auto;
}
@media screen and (min-width: 960.02px) {
  .ourPhilosophy__text .list__items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .ourPhilosophy__text .list__item {
    width: calc(var(--px) * 306);
    max-width: 31.5%;
  }
  .ourPhilosophy__text .list__item:first-child, .ourPhilosophy__text .list__item:last-child {
    width: 100%;
    max-width: unset;
  }
  .ourPhilosophy__text .list__item:first-child .list__title, .ourPhilosophy__text .list__item:last-child .list__title {
    width: calc(var(--px) * 547);
    margin-right: auto;
    margin-left: auto;
  }
}
@media screen and (max-width: 960px) {
  .ourPhilosophy {
    background-size: 300vw auto;
  }
  .ourPhilosophy::before {
    background-size: calc(var(--px) * 210) auto;
  }
  .ourPhilosophy__text .box:nth-child(1) {
    margin-bottom: calc(var(--h) * 150);
  }
  .ourPhilosophy__text .box:nth-child(2) {
    margin-bottom: calc(var(--h) * 150);
  }
  .ourPhilosophy__text .list {
    padding-top: calc(var(--h) * 20);
  }
  .ourPhilosophy__photo .photo--1 {
    top: 21%;
    width: calc(var(--s) * 170);
  }
  .ourPhilosophy__photo .photo--2 {
    top: 38%;
    width: calc(var(--s) * 170);
  }
}
.anime-set .ourPhilosophy__head .text {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.ourPhilosophy__text .box.anime-set .title {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
}
.ourPhilosophy__text .box.anime-set .contents {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 200ms;
          transition-delay: 200ms;
}
.ourPhilosophy__text .box.anime-set .list__item:nth-child(1) {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 300ms;
          transition-delay: 300ms;
}
.ourPhilosophy__text .box.anime-set .list__item:nth-child(2) {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 400ms;
          transition-delay: 400ms;
}
.ourPhilosophy__text .box.anime-set .list__item:nth-child(3) {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 500ms;
          transition-delay: 500ms;
}
.ourPhilosophy__text .box.anime-set .list__item:nth-child(4) {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 600ms;
          transition-delay: 600ms;
}
.ourPhilosophy__text .box.anime-set .list__item:nth-child(5) {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 700ms;
          transition-delay: 700ms;
}
.ourPhilosophy__photo .photo--1.anime-set,
.ourPhilosophy__photo .photo--2.anime-set {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
}
.anime-off .ourPhilosophy__head .text {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.ourPhilosophy__text .box.anime-off .title,
.ourPhilosophy__text .box.anime-off .contents,
.ourPhilosophy__text .box.anime-off .list__item {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.ourPhilosophy__photo .photo--1.anime-off {
  opacity: 0;
  -webkit-transform: translateX(calc(var(--px) * -40));
          transform: translateX(calc(var(--px) * -40));
}
.ourPhilosophy__photo .photo--2.anime-off {
  opacity: 0;
  -webkit-transform: translateX(calc(var(--px) * 40));
          transform: translateX(calc(var(--px) * 40));
}

.pageTitle {
  position: relative;
  overflow: hidden;
}
.pageTitle__head {
  position: relative;
  z-index: 10;
  padding: calc(var(--px) * 232) 0 calc(var(--px) * 120);
  background: url(../img/home/mv-logo.svg) center top calc(var(--px) * 120)/calc(var(--px) * 287) auto no-repeat;
}
.pageTitle__head .en {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: block;
  width: 100%;
  color: #fff;
  font-size: calc(var(--f) * 48);
  font-weight: 500;
  letter-spacing: 0.075em;
  text-align: center;
  white-space: nowrap;
}
.pageTitle__bg {
  position: relative;
  overflow: hidden;
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
}
.pageTitle__bg img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 960px) {
  .pageTitle__head {
    padding: calc(var(--px) * 150) 0 calc(var(--px) * 80);
    background-position: center top calc(var(--px) * 40);
    background-size: calc(var(--px) * 260) auto;
  }
}

.privacyPolicy {
  position: relative;
}
.privacyPolicy__container {
  width: 800px;
  max-width: 90vw;
  padding: calc(var(--h) * 100) 0 calc(var(--h) * 180);
  margin: 0 auto;
}
.privacyPolicy__head .text {
  font-size: calc(var(--f) * 38);
  line-height: 1.45;
  margin: 0 0 calc(var(--h) * 100);
  color: #1B5095;
  font-size: calc(var(--f) * 36);
  text-align: center;
}
.privacyPolicy__head .text small {
  font-size: calc(var(--f) * 22);
  line-height: 1.73;
  display: block;
}
.privacyPolicy__text .title {
  margin: calc(var(--h) * 70) 0 calc(var(--px) * 12);
  font-weight: 700;
}
.privacyPolicy__text .title::before {
  content: "■ ";
  color: #1B5095;
}
.privacyPolicy__text .text > * {
  margin: 0 0 calc(var(--px) * 10);
}
.privacyPolicy__text .text > *:last-child {
  margin-bottom: 0;
}
.privacyPolicy__text .text ol li {
  position: relative;
  padding: 0 0 0 calc(var(--px) * 26);
}
.privacyPolicy__text .text ol li span.num {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: calc(var(--px) * 24);
  text-align: right;
}
.privacyPolicy__text .notice {
  font-size: calc(var(--f) * 16);
  line-height: 1.5;
}
.privacyPolicy__head.anime-set {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.privacyPolicy__text.anime-set {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.privacyPolicy__form.anime-set {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.privacyPolicy__head.anime-off {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.privacyPolicy__text.anime-off {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.privacyPolicy__form.anime-off {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}

.recruitmentMessage {
  position: relative;
  background: #F8F7F2;
}
.recruitmentMessage__container {
  width: 1200px;
  max-width: 90vw;
  padding: calc(var(--h) * 160) 0 calc(var(--h) * 115);
  margin: 0 auto;
}
.recruitmentMessage__box {
  margin-top: calc(var(--h) * 160);
}
.recruitmentMessage__box:first-child {
  margin-top: 0;
}
.recruitmentMessage__box .text {
  font-family: "Zen Old Mincho", serif;
  font-weight: 700;
  font-style: normal;
  font-size: calc(var(--f) * 22);
  line-height: 1.91;
  letter-spacing: -0.06em;
  color: #1B5095;
  font-size: calc(var(--f) * 20);
  font-weight: 500;
  letter-spacing: 0.01em;
}
.recruitmentMessage__box .photo {
  position: relative;
}
.recruitmentMessage__box .photo::after {
  content: "";
  position: absolute;
  left: calc(var(--px) * -25);
  top: calc(var(--px) * -25);
  display: block;
  width: calc(var(--px) * 95);
  height: calc(var(--px) * 78);
  background: url(../img/recruitment/message-quote.svg) center/contain no-repeat;
}
.recruitmentMessage__box .photo__name {
  position: absolute;
  text-align: right;
}
.recruitmentMessage__box .photo__name span {
  display: inline-block;
  padding: 0 calc(var(--px) * 16);
  color: #fff;
  font-size: calc(var(--f) * 19);
  line-height: 2.1;
  font-weight: 700;
  background: #1B5095;
}
.recruitmentMessage__box .photo__name span.name {
  position: relative;
  right: calc(var(--px) * -20);
}
.recruitmentMessage__summary {
  font-family: "Zen Old Mincho", serif;
  font-weight: 700;
  font-style: normal;
  font-size: calc(var(--f) * 22);
  line-height: 1.91;
  letter-spacing: -0.06em;
  margin: calc(var(--h) * 130) 0 0;
  color: #1B5095;
  text-align: center;
}
.recruitmentMessage__bottom {
  position: relative;
  overflow: hidden;
  display: block;
  width: 100%;
  aspect-ratio: 1600/650;
}
.recruitmentMessage__bottom .parallaxSlideup {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: auto;
}
@media screen and (min-width: 960.02px) {
  .recruitmentMessage__box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-line-pack: center;
        align-content: center;
  }
  .recruitmentMessage__box .text {
    width: 100%;
  }
  .recruitmentMessage__box .photo {
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
  .recruitmentMessage__box:nth-child(2n+1) .text {
    padding-left: calc(var(--s) * 86);
  }
  .recruitmentMessage__box:nth-child(2n+1) .photo {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
    width: calc(var(--px) * 500);
    margin-left: calc(var(--s) * 162);
  }
  .recruitmentMessage__box:nth-child(2n+1) .photo__name {
    right: calc(var(--s) * -46);
    bottom: calc(var(--s) * 16);
  }
}
@media only screen and (min-width: 960.02px) and (max-width: 1400px) {
  .recruitmentMessage__box:nth-child(2n+1) .photo {
    margin-left: 0;
  }
}
@media screen and (min-width: 960.02px) {
  .recruitmentMessage__box:nth-child(2n+2) .text {
    padding-right: calc(var(--s) * 110);
    text-align: right;
  }
  .recruitmentMessage__box:nth-child(2n+2) .photo {
    width: calc(var(--px) * 513);
    margin-right: calc(var(--s) * 46);
  }
  .recruitmentMessage__box:nth-child(2n+2) .photo__name {
    left: calc(var(--s) * -20);
    bottom: calc(var(--s) * 16);
  }
}
@media only screen and (min-width: 960.02px) and (max-width: 1400px) {
  .recruitmentMessage__box:nth-child(2n+2) .photo {
    margin-right: 0;
  }
}
@media screen and (max-width: 960px) {
  .recruitmentMessage__container {
    padding-top: calc(var(--f) * 80);
  }
  .recruitmentMessage__box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 0;
  }
  .recruitmentMessage__box .photo {
    width: 100%;
    margin: calc(var(--h) * 80) calc(var(--s) * 40) calc(var(--h) * 140);
  }
  .recruitmentMessage__box .photo__name {
    right: calc(var(--s) * -46);
    bottom: calc(var(--s) * -32);
  }
  .recruitmentMessage__summary {
    margin-top: 0;
  }
}
.recruitmentMessage__box.anime-set .text {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.recruitmentMessage__box.anime-set .photo {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
}
.recruitmentMessage__summary.anime-set .text {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.recruitmentMessage__box.anime-off .text {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.recruitmentMessage__box.anime-off .photo {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 40));
          transform: translateY(calc(var(--px) * 40));
}
.recruitmentMessage__summary.anime-off .text {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}

.sustainabilitySDGs {
  position: relative;
  background: url(../img/sustainability/sdgs-bg.svg) center bottom/100% auto no-repeat;
}
.sustainabilitySDGs__container {
  width: 1100px;
  max-width: 90vw;
  padding: calc(var(--h) * 140) 0 calc(var(--h) * 200);
  margin: 0 auto;
}
.sustainabilitySDGs__head .text {
  position: relative;
  margin: 0 0 calc(var(--px) * 40);
  margin-bottom: calc(var(--h) * 70);
}
.sustainabilitySDGs__head .text .en {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: block;
  color: #1B5095;
  font-size: calc(var(--f) * 87);
  font-weight: 200;
}
.sustainabilitySDGs__head .text .en::first-letter {
  color: #f00;
}
.sustainabilitySDGs__head .text .ja {
  position: relative;
  display: block;
  margin: calc(var(--px) * -8) 0 0;
  font-size: calc(var(--f) * 14);
  line-height: 1;
}
.sustainabilitySDGs__head .text::after {
  content: "";
  display: block;
  width: calc(var(--px) * 106);
  height: 1px;
  margin: calc(var(--px) * 42) 0 0;
  background: #1B5095;
}
@media screen and (max-width: 960px) {
  .sustainabilitySDGs__head .text .en {
    font-size: calc(var(--f) * 84);
  }
}
.sustainabilitySDGs__head .text .en {
  font-size: calc(var(--f) * 62);
  text-align: center;
}
.sustainabilitySDGs__head .text .ja {
  margin-top: calc(var(--px) * 16);
  font-size: calc(var(--f) * 16);
  text-align: center;
}
.sustainabilitySDGs__head .text::after {
  margin-top: calc(var(--px) * 20);
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 960px) {
  .sustainabilitySDGs__head .text .en {
    font-size: calc(var(--f) * 58);
    text-align: center;
  }
}
.sustainabilitySDGs__head .text .ja {
  color: #363636;
}
.sustainabilitySDGs__data {
  margin-bottom: calc(var(--h) * 90);
}
.sustainabilitySDGs__data .head {
  font-size: calc(var(--f) * 38);
  line-height: 1.45;
  margin-bottom: calc(var(--h) * 80);
  font-size: calc(var(--f) * 36);
  text-align: center;
}
.sustainabilitySDGs__data .items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: calc(var(--px) * 10);
}
.sustainabilitySDGs__data .items img {
  display: block;
  width: calc(var(--px) * 130);
}
.sustainabilitySDGs__detail {
  margin: 0 0 calc(var(--h) * 65);
}
.sustainabilitySDGs__detail:last-child {
  margin-bottom: 0;
}
.sustainabilitySDGs__detail .text__box {
  margin-bottom: calc(var(--h) * 60);
}
.sustainabilitySDGs__detail .text__box:last-child {
  margin-bottom: 0;
}
.sustainabilitySDGs__detail .text__goal {
  position: relative;
  padding: calc(var(--px) * 4) 0 calc(var(--px) * 4) calc(var(--px) * 69);
  margin: 0 0 calc(var(--px) * 16);
  color: #000;
  font-size: calc(var(--f) * 21);
  font-weight: 700;
}
.sustainabilitySDGs__detail .text__goal .num {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  font-variation-settings: "wdth" 100;
  position: absolute;
  left: 0;
  top: 0;
  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;
  width: calc(var(--px) * 49);
  height: calc(var(--px) * 47);
  color: #fff;
  font-size: calc(var(--f) * 32);
  background: #363636;
}
.sustainabilitySDGs__detail .text__goal--7 .num {
  background: #FABD00;
}
.sustainabilitySDGs__detail .text__goal--8 .num {
  background: #970A31;
}
.sustainabilitySDGs__detail .text__goal--9 .num {
  background: #EC6A06;
}
.sustainabilitySDGs__detail .text__goal--12 .num {
  background: #D39206;
}
.sustainabilitySDGs__detail .text__goal--13 .num {
  background: #407936;
}
.sustainabilitySDGs__detail .text__goal--14 .num {
  background: #0075BA;
}
.sustainabilitySDGs__detail .text__top {
  color: #1B5095;
  font-size: calc(var(--f) * 19);
  font-weight: 700;
}
.sustainabilitySDGs__detail .text__contents {
  font-size: calc(var(--f) * 17);
  line-height: 1.76;
}
.sustainabilitySDGs__detail .photo__inner {
  position: relative;
  overflow: hidden;
  display: block;
}
.sustainabilitySDGs__detail .photo__inner img {
  display: block;
  width: 100%;
}
@media screen and (min-width: 960.02px) {
  .sustainabilitySDGs__detail {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .sustainabilitySDGs__detail .text {
    width: 43.2%;
  }
  .sustainabilitySDGs__detail .photo {
    width: 47.7%;
  }
  .sustainabilitySDGs__detail:nth-child(2n) .photo {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
  }
}
@media screen and (max-width: 960px) {
  .sustainabilitySDGs {
    background-size: 300vw auto;
  }
  .sustainabilitySDGs__detail .photo {
    margin-top: calc(var(--h) * 30);
    margin-bottom: calc(var(--h) * 80);
  }
}
.anime-set .sustainabilitySDGs__head .text {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.anime-set .sustainabilitySDGs__data .head {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
}
.anime-set .sustainabilitySDGs__data .items li:nth-child(1) {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 200ms;
          transition-delay: 200ms;
}
.anime-set .sustainabilitySDGs__data .items li:nth-child(2) {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 300ms;
          transition-delay: 300ms;
}
.anime-set .sustainabilitySDGs__data .items li:nth-child(3) {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 400ms;
          transition-delay: 400ms;
}
.anime-set .sustainabilitySDGs__data .items li:nth-child(4) {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 500ms;
          transition-delay: 500ms;
}
.anime-set .sustainabilitySDGs__data .items li:nth-child(5) {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 600ms;
          transition-delay: 600ms;
}
.anime-set .sustainabilitySDGs__data .items li:nth-child(6) {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 700ms;
          transition-delay: 700ms;
}
.sustainabilitySDGs__detail .text__box.anime-set {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.sustainabilitySDGs__detail .photo__inner.anime-set {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.anime-off .sustainabilitySDGs__head .text {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .sustainabilitySDGs__data .head {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .sustainabilitySDGs__data .items li {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.sustainabilitySDGs__detail .text__box.anime-off {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.sustainabilitySDGs__detail .photo__inner.anime-off {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}

.sustainabilityTheme {
  position: relative;
  z-index: 10;
  background: url(../img/home/value-bg.webp) left top/100% auto no-repeat;
}
.sustainabilityTheme__container {
  width: 1100px;
  max-width: 90vw;
  padding: calc(var(--h) * 140) 0;
  margin: 0 auto;
}
.sustainabilityTheme__head .text {
  font-size: calc(var(--f) * 38);
  line-height: 1.45;
  margin-bottom: calc(var(--h) * 80);
  color: #fff;
  font-size: calc(var(--f) * 36);
  text-align: center;
}
.sustainabilityTheme__list .item {
  padding: calc(var(--px) * 30) 0 calc(var(--px) * 50);
  background: #fff;
}
.sustainabilityTheme__list .title::after {
  content: "";
  display: block;
  width: calc(var(--px) * 68);
  height: 1px;
  margin: calc(var(--px) * 20) auto;
  background: #1B5095;
}
.sustainabilityTheme__list .ja {
  font-size: calc(var(--f) * 24);
  line-height: 1.5;
  font-weight: 700;
  display: block;
  margin: 0 0 calc(var(--px) * 18);
  color: #1B5095;
  text-align: center;
}
.sustainabilityTheme__list .en {
  font-family: "Josefin Sans", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  line-height: 1;
  letter-spacing: 0;
  display: block;
  color: #009AF0;
  font-size: calc(var(--f) * 27);
  text-align: center;
}
.sustainabilityTheme__list .text {
  padding: 0 calc(var(--s) * 30) calc(var(--s) * 30);
  color: #1B5095;
  text-align: left;
}
.sustainabilityTheme__list .photo {
  margin: 0 0 calc(var(--px) * 30);
}
.sustainabilityTheme__list .photo img {
  display: block;
  width: 100%;
}
.sustainabilityTheme__list .merit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.sustainabilityTheme__bottom {
  position: relative;
  overflow: hidden;
  display: block;
  width: 100%;
  aspect-ratio: 1600/650;
}
.sustainabilityTheme__bottom .parallaxSlideup {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: auto;
}
@media screen and (min-width: 960.02px) {
  .sustainabilityTheme__list .items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .sustainabilityTheme__list .item {
    width: calc((100% - var(--s) * 80) / 3);
  }
  .sustainabilityTheme__list .text {
    min-height: calc(var(--px) * 132);
    padding-bottom: 0;
  }
}
@media screen and (max-width: 960px) {
  .sustainabilityTheme {
    background-size: 300% auto;
  }
  .sustainabilityTheme__list .item {
    margin: 0 calc(var(--px) * 40) calc(var(--h) * 30);
  }
  .sustainabilityTheme__list .item:last-child {
    margin-bottom: 0;
  }
  .sustainabilityTheme__list .photo {
    position: relative;
    overflow: hidden;
    aspect-ratio: 2/1;
  }
  .sustainabilityTheme__list .photo img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
.anime-set .sustainabilityTheme__head .text {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-out;
          transition-timing-function: ease-out;
  -webkit-transition-delay: 0ms;
          transition-delay: 0ms;
}
.anime-set .sustainabilityTheme__list .item {
  -webkit-transition-duration: 600ms;
          transition-duration: 600ms;
  -webkit-transition-timing-function: ease-in-out;
          transition-timing-function: ease-in-out;
}
.anime-set .sustainabilityTheme__list .item:nth-child(1) {
  -webkit-transition-delay: 100ms;
          transition-delay: 100ms;
}
.anime-set .sustainabilityTheme__list .item:nth-child(2) {
  -webkit-transition-delay: 200ms;
          transition-delay: 200ms;
}
.anime-set .sustainabilityTheme__list .item:nth-child(3) {
  -webkit-transition-delay: 300ms;
          transition-delay: 300ms;
}
.anime-set .sustainabilityTheme__list .item:nth-child(4) {
  -webkit-transition-delay: 400ms;
          transition-delay: 400ms;
}
.anime-set .sustainabilityTheme__list .item:nth-child(5) {
  -webkit-transition-delay: 500ms;
          transition-delay: 500ms;
}
.anime-off .sustainabilityTheme__head .text {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}
.anime-off .sustainabilityTheme__list .item {
  opacity: 0;
  -webkit-transform: translateY(calc(var(--px) * 80));
          transform: translateY(calc(var(--px) * 80));
}