@charset "utf-8";
@font-face {
  src: url(/assets/fonts/glyphs.woff2?73b58484ee99e99b82e865fdcf49f72f) format("woff2"), url(/assets/fonts/glyphs.woff?73b58484ee99e99b82e865fdcf49f72f) format("woff");
  font-family: glyphs
}

i[class^=glyphs-]:before, i[class*=" glyphs-"]:before {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-family: glyphs!important;
  font-style: normal;
  font-variant: normal;
  font-weight: 400!important;
  line-height: 1;
  text-transform: none
}

.glyphs-icon_arrow_gray:before {
  content: "\f101"
}

.glyphs-icon_fb:before {
  content: "\f102"
}

.glyphs-icon_line:before {
  content: "\f103"
}

.glyphs-icon_tw:before {
  content: "\f104"
}

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, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline
}

ol, ul {
  list-style: none
}

table {
  border-collapse: separate;
  border-spacing: 0;
  vertical-align: middle
}

caption, th, td {
  font-weight: 400;
  text-align: left;
  vertical-align: middle
}

img {
  vertical-align: middle
}

h1, h2, h3, h4, h5, h6, div, p, ul, ol, li, dl, dt, dd, img, nav {
  margin: 0;
  padding: 0
}

.cleafix:after {
  display: block;
  clear: both;
  content: ''
}

main {
  display: block
}

figure {
  display: block;
  margin: 0;
  padding: 0
}

figure img {
  max-width: 100%
}

.is-ja {
  -webkit-font-smoothing: antialiased;
  box-sizing: border-box;
  color: #606060;
  font-family: Lato, Noto Sans JP, 'ヒラギノ角ゴ Pro', Hiragino Kaku Gothic Pro, 'ヒラギノ角ゴ Pro W3', Hiragino Kaku Gothic Pro, 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', Osaka, Tahoma, Verdana, Arial, Verdana, sans-serif;
  -webkit-font-feature-settings: 'palt';
  font-feature-settings: 'palt';
  letter-spacing: .1em;
  line-height: 1.6
}

.is-en {
  -webkit-font-smoothing: antialiased;
  box-sizing: border-box;
  color: #606060;
  font-family: Noto Sans JP, 'ヒラギノ角ゴ Pro', Hiragino Kaku Gothic Pro, 'ヒラギノ角ゴ Pro W3', Hiragino Kaku Gothic Pro, 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', Osaka, Tahoma, Verdana, Arial, Verdana, sans-serif;
  -webkit-font-feature-settings: 'palt';
  font-feature-settings: 'palt';
  letter-spacing: .1em;
  line-height: 1.6
}

.is-en .f_change {
  font-family: Lato
}

.is-cc {
  -webkit-font-smoothing: antialiased;
  box-sizing: border-box;
  color: #606060;
  font-family: Noto Sans SC, 'ヒラギノ角ゴ Pro', Hiragino Kaku Gothic Pro, 'ヒラギノ角ゴ Pro W3', Hiragino Kaku Gothic Pro, 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', Osaka, Tahoma, Verdana, Arial, Verdana, sans-serif;
  -webkit-font-feature-settings: 'palt';
  font-feature-settings: 'palt';
  letter-spacing: .1em;
  line-height: 1.6
}

.is-cc .f_change {
  font-family: Lato, Noto Sans SC, 'ヒラギノ角ゴ Pro', Hiragino Kaku Gothic Pro
}

.is-ko {
  -webkit-font-smoothing: antialiased;
  box-sizing: border-box;
  color: #606060;
  font-family: Noto Sans Korean, 'ヒラギノ角ゴ Pro', Hiragino Kaku Gothic Pro, 'ヒラギノ角ゴ Pro W3', Hiragino Kaku Gothic Pro, 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', Osaka, Tahoma, Verdana, Arial, Verdana, sans-serif;
  -webkit-font-feature-settings: 'palt';
  font-feature-settings: 'palt';
  letter-spacing: .1em;
  line-height: 1.6
}

.is-ko .f_change {
  font-family: Lato, Noto Sans Korea, 'ヒラギノ角ゴ Pro', Hiragino Kaku Gothic Pro
}

a {
  color: inherit;
  text-decoration: none
}

img {
  max-width: 100%
}

@-webkit-keyframes lineMovetoLeft {
  0% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%)
  }
  100% {
    -webkit-transform: translateX(100%);
    transform: translateX(100%)
  }
}

@keyframes lineMovetoLeft {
  0% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%)
  }
  100% {
    -webkit-transform: translateX(100%);
    transform: translateX(100%)
  }
}

@-webkit-keyframes lineMovetoBottom {
  0% {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%)
  }
  100% {
    -webkit-transform: translateY(100%);
    transform: translateY(100%)
  }
}

@keyframes lineMovetoBottom {
  0% {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%)
  }
  100% {
    -webkit-transform: translateY(100%);
    transform: translateY(100%)
  }
}

@-webkit-keyframes mapPointColor {
  0% {
    background-color: #fff;
    box-shadow: 0 0 100px 100px #fff
  }
  100% {
    background-color: #bec3c3;
    box-shadow: 0 0 100px 100px #bec3c3
  }
}

@keyframes mapPointColor {
  0% {
    background-color: #fff;
    box-shadow: 0 0 100px 100px #fff
  }
  100% {
    background-color: #bec3c3;
    box-shadow: 0 0 100px 100px #bec3c3
  }
}

@-webkit-keyframes mapPointShow {
  0% {
    -webkit-transform: scale(0);
    transform: scale(0)
  }
  50% {
    -webkit-transform: scale(1);
    transform: scale(1)
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1)
  }
}

@keyframes mapPointShow {
  0% {
    -webkit-transform: scale(0);
    transform: scale(0)
  }
  50% {
    -webkit-transform: scale(1);
    transform: scale(1)
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1)
  }
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0
  }
  50% {
    opacity: 1
  }
  100% {
    opacity: 1
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0
  }
  50% {
    opacity: 1
  }
  100% {
    opacity: 1
  }
}

@-webkit-keyframes ListUp {
  0% {
    visibility: hidden;
    -webkit-transform: translateY(30px);
    transform: translateY(30px);
    opacity: 0
  }
  100% {
    visibility: visible;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1
  }
}

@keyframes ListUp {
  0% {
    visibility: hidden;
    -webkit-transform: translateY(30px);
    transform: translateY(30px);
    opacity: 0
  }
  100% {
    visibility: visible;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1
  }
}

@-webkit-keyframes ListUp_SP {
  0% {
    visibility: hidden;
    -webkit-transform: translateY(4vw);
    transform: translateY(4vw);
    opacity: 0
  }
  100% {
    visibility: visible;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1
  }
}

@keyframes ListUp_SP {
  0% {
    visibility: hidden;
    -webkit-transform: translateY(4vw);
    transform: translateY(4vw);
    opacity: 0
  }
  100% {
    visibility: visible;
    -webkit-transform: translateX(0);
    transform: translateX(0);
    opacity: 1
  }
}

@media only screen and (max-width:680px) {
  .sns {
    padding: 0;
    background-color: transparent
  }
  .header {
    padding: 0
  }
  .header a:visited, .header a:link {
    color: #606060
  }
  .footer {
    padding: 0
  }
  .pc {
    display: none!important
  }
  .root {
    position: relative;
    width: 100%;
    min-width: 100%;
    padding-top: 16vw;
    overflow: hidden
  }
  .inner {
    box-sizing: border-box;
    position: relative;
    width: 100%;
    margin: 0 auto;
    padding: 0 4vw
  }
  .header {
    z-index: 99;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    min-width: 100%;
    color: #fff;
    font-size: 3.4666666666666663vw;
    font-weight: 700;
    line-height: 1.2
  }
  .header__row {
    box-sizing: border-box;
    display: -ms-flexbox;
    display: flex;
    z-index: 99;
    position: relative;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: justify;
    justify-content: space-between;
    height: 16vw;
    padding: 3.733333333333334vw 4vw;
    background-color: #bec3c3
  }
  .header__logo img {
    width: 38.13333333333333vw
  }
  .header__logo-text {
    display: block;
    margin-top: 1.3333333333333335vw;
    color: #fff;
    font-family: Noto Sans JP;
    font-size: 2.4vw;
    font-style: normal;
    font-weight: 500;
    line-height: 1
  }
  .header__bg {
    visibility: hidden;
    z-index: -1;
    position: absolute;
    top: 16vw;
    left: 0;
    width: 100%;
    height: 100vh;
    background-color: #eff0f0;
    opacity: 0;
    transition: .3s cubic-bezier(.25, .82, .165, 1)
  }
  .header__bg.is-open {
    visibility: visible;
    opacity: 1
  }
  .header a {
    text-decoration: none
  }
  .menu-btn {
    z-index: 999;
    position: relative;
    width: 5.333333333333334vw;
    height: 4.933333333333334vw
  }
  .menu-btn:before, .menu-btn:after {
    display: block;
    position: absolute;
    left: 0;
    width: 100%;
    height: 1px;
    -webkit-transform-origin: left;
    transform-origin: left;
    background-color: #fff;
    content: '';
    transition: .3s cubic-bezier(.25, .82, .165, 1)
  }
  .menu-btn:before {
    top: 0
  }
  .menu-btn:after {
    bottom: 0
  }
  .menu-btn__bar {
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #fff
  }
  .menu-btn.is-open:before {
    -webkit-transform: translate(.26666666666666666vw, .4vw) rotate(45deg);
    transform: translate(.26666666666666666vw, .4vw) rotate(45deg)
  }
  .menu-btn.is-open:after {
    -webkit-transform: translate(.26666666666666666vw, -.4vw) rotate(-45deg);
    transform: translate(.26666666666666666vw, -.4vw) rotate(-45deg)
  }
  .menu-btn.is-open .menu-btn__bar {
    opacity: 0
  }
  .global-navi {
    visibility: hidden;
    z-index: 1;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 0;
    font-size: 3.4666666666666663vw;
    text-align: center;
    opacity: 0;
    transition: .4s cubic-bezier(.165, .84, .44, 1)
  }
  .global-navi__inner {
    -webkit-overflow-scrolling: touch;
    box-sizing: border-box;
    height: calc(100vh);
    padding-top: 16vw;
    overflow-x: hidden;
    overflow-y: scroll
  }
  .global-navi__list {
    font-weight: 700
  }
  .global-navi__item {
    position: relative;
    overflow: hidden;
    background-color: #fff
  }
  .global-navi__item>p {
    height: 18.933333333333334vw;
    line-height: 18.933333333333334vw
  }
  .global-navi__item a {
    display: block
  }
  .global-navi__item.is-open .global-navi__head:after {
    -webkit-transform: translate(0, -50%) rotate(180deg);
    transform: translate(0, -50%) rotate(180deg)
  }
  .global-navi__item.is-open .global-sub {
    height: auto;
    opacity: 1
  }
  .global-navi__head {
    position: relative;
    font-size: 3.4666666666666663vw
  }
  .global-navi__head a {
    pointer-events: none
  }
  .global-navi__head:before {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #eff0f0;
    content: ''
  }
  .global-navi__head:after {
    display: block;
    position: absolute;
    top: 50%;
    right: 4vw;
    width: 5.6000000000000005vw;
    height: 3.0666666666666664vw;
    -webkit-transform: translate(0, -50%) rotate(0);
    transform: translate(0, -50%) rotate(0);
    background: url(/assets/images/utils/icon_arrow_gray.svg) center center no-repeat;
    background-size: 100%;
    content: '';
    transition: -webkit-transform .3s ease;
    transition: transform .3s ease;
    transition: transform .3s ease, -webkit-transform .3s ease;
    will-change: transform
  }
  .global-navi.is-open {
    visibility: visible;
    z-index: 9;
    height: auto;
    opacity: 1
  }
  .global-sub {
    width: 100%;
    height: 0;
    opacity: 0;
    transition: .3s ease
  }
  .global-sub__inner {
    position: relative
  }
  .global-sub__list {
    background-color: #eff0f0
  }
  .global-sub__list li {
    border-bottom: 1px solid #fff
  }
  .global-sub__list a {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 13.333333333333334vw
  }
  .global-sub__list.is-flex {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: justify;
    justify-content: space-between
  }
  .global-sub__list.is-flex li {
    width: calc((100% - 1px)/2)
  }
  .global-sub__list.is-flex li:nth-of-type(odd) {
    border-right: 1px solid #fff
  }
  .global-sub .icon-blank {
    margin-left: 1.3333333333333335vw
  }
  .global-marugame__head {
    font-size: 26px
  }
  .global-marugame__list li {
    border-top: 1px solid #fff
  }
  .global-marugame a {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 13.333333333333334vw;
    background-color: #d8dbdb
  }
  .sns-policy {
    display: -ms-flexbox;
    display: flex;
    background-color: #fff;
    font-size: 2.933333333333333vw
  }
  .sns-policy li {
    width: 50%
  }
  .sns-policy a {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 18.933333333333334vw
  }
  .language-select {
    position: relative;
    padding: 5.333333333333334vw 4vw;
    background-color: #eff0f0;
    color: #606060
  }
  .language-select:before {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 1px;
    height: 60px;
    background-color: #fff;
    content: ''
  }
  .language-select__head {
    font-family: Lato;
    font-size: 3.4666666666666663vw;
    font-style: normal;
    font-weight: 900
  }
  .language-select__list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 5.333333333333334vw;
    font-size: 2.666666666666667vw;
    font-weight: 700;
    text-align: center
  }
  .language-select__list li {
    width: calc((100% - 2px)/2)
  }
  .language-select__list li:nth-of-type(n+3) {
    margin-top: 2px
  }
  .language-select a {
    display: block;
    height: 8vw;
    background-color: #fff;
    line-height: 8vw
  }
  .language-select a:visited, .language-select a:link {
    color: #606060
  }
  .foot-brand {
    position: relative;
    border-top: 1px solid #e3e3e3
  }
  .foot-brand:after {
    display: block;
    z-index: 2;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #e3e3e3;
    content: ''
  }
  .foot-brand .inner {
    padding: 0
  }
  .foot-brand__list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: start;
    justify-content: flex-start
  }
  .foot-brand__item {
    box-sizing: border-box;
    width: 50%;
    height: 16vw;
    border-bottom: 1px solid #e3e3e3
  }
  .foot-brand__item:nth-of-type(odd) {
    border-right: 1px solid #e3e3e3
  }
  .foot-brand__item--1 .logo {
    width: 24.666666666666668vw
  }
  .foot-brand__item--2 .logo {
    width: 21.73333333333333vw
  }
  .foot-brand__item--3 .logo {
    width: 16.933333333333334vw
  }
  .foot-brand__item--4 .logo {
    width: 23.466666666666665vw
  }
  .foot-brand__item--5 .logo {
    width: 23.066666666666666vw
  }
  .foot-brand__item--6 .logo {
    width: 25.333333333333336vw
  }
  .foot-brand__item--7 .logo {
    width: 26vw
  }
  .foot-brand__item--8 .logo {
    width: 25.866666666666667vw
  }
  .foot-brand__item--9 .logo {
    width: 26.400000000000002vw
  }
  .foot-brand__item--10 .logo {
    width: 15.866666666666667vw
  }
  .foot-brand__item--11 .logo {
    width: 28.799999999999997vw
  }
  .foot-brand__item--12 .logo {
    width: 25.333333333333336vw
  }
  .foot-brand__item--13 .logo {
    width: 12vw
  }
  .foot-brand__item--14 .logo {
    width: 32vw
  }
  .foot-brand__item--15 .logo {
    width: 13.200000000000001vw
  }
  .foot-brand__item--16 .logo {
    width: 20.933333333333334vw
  }
  .foot-brand__item--17 .logo {
    width: 16.400000000000002vw
  }
  .foot-brand__item--18 .logo {
    width: 22.53333333333333vw
  }
  .foot-brand__item--19 .logo {
    width: 28.799999999999997vw
  }
  .foot-brand__item--20 .logo {
    width: 29.599999999999998vw
  }
  .foot-brand__item--21 .logo {
    width: 16vw
  }
  .foot-brand__item--22 .logo {
    width: 18.666666666666668vw
  }
  .foot-brand__item--23 .logo {
    width: 34.66666666666667vw
  }
  .foot-brand__item a {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 100%
  }
  .foot-brand__item img {
    max-width: 26.666666666666668vw;
    max-height: 11.466666666666667vw
  }
  .footer {
    position: relative;
    padding: 6.666666666666667vw 0 0;
    background-color: #eff0f0
  }
  .footer__inner {
    padding: 0 4vw
  }
  .footer-links {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 70px 0 50px;
    font-size: 1.6vw;
    letter-spacing: .2em;
    line-height: 1.2
  }
  .footer-links__box {
    margin-bottom: 30px
  }
  .footer-links__head {
    font-weight: 700
  }
  .footer-links__list {
    padding-left: 1em
  }
  .footer-links__list li {
    margin-top: 10px
  }
  .footer-others {
    text-align: center
  }
  .footer-others__environment {
    margin-bottom: 5.333333333333334vw;
    font-size: 2.4vw;
    line-height: 2.4
  }
  .footer-find {
    margin-bottom: 5.333333333333334vw;
    padding: 0 4vw;
    text-align: center
  }
  .footer-find__title {
    font-size: 4.8vw;
    font-weight: 900;
    letter-spacing: .1em
  }
  .footer-find__list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 4vw;
    font-size: 3.2vw;
    font-weight: 700
  }
  .footer-find__item {
    width: 50%
  }
  .footer-find__item:nth-of-type(n+3) {
    margin-top: 5.333333333333334vw
  }
  .footer-find__item a {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    text-decoration: none
  }
  .footer-find .icon-wrap {
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    margin-right: 5px;
    overflow: hidden;
    border-radius: 100%;
    background-color: #fff;
    font-size: 10px
  }
  .footer-find .icon-wrap:before {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-transform: scale(0);
    transform: scale(0);
    border-radius: 100%;
    background-color: #818181;
    content: '';
    transition: -webkit-transform .3s ease;
    transition: transform .3s ease;
    transition: transform .3s ease, -webkit-transform .3s ease;
    will-change: transform
  }
  .footer-find .icon-wrap .icon {
    z-index: 2
  }
  .footer-find .icon-wrap .icon-fb:before {
    width: 7px;
    height: 12px
  }
  .sns-list {
    display: -ms-flexbox!important;
    display: flex!important;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center
  }
  .sns-list__item {
    width: 11.466666666666667vw;
    height: 11.466666666666667vw
  }
  .sns-list__item:nth-of-type(n+2) {
    margin-left: 6.4vw
  }
  .sns-list a {
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background-color: #fff
  }
  .footer-copy {
    margin-top: 8vw;
    border-top: 1px solid #d4d4d4;
    text-align: center
  }
  .footer-copy .inner {
    padding-top: 6.4vw;
    padding-bottom: 4vw
  }
  .footer-copy__logo {
    width: 31.466666666666665vw;
    margin: 0 auto
  }
  .footer-copy small {
    display: block;
    margin-top: 6.4vw;
    font-family: Noto Sans JP;
    font-size: 2vw;
    font-style: normal;
    font-weight: 500;
    letter-spacing: 0
  }
  .mv-text__mask, .mount-text__mask {
    display: block;
    position: relative;
    width: 100%;
    overflow: hidden
  }
  .mv-text__target, .mount-text__target {
    display: block;
    -webkit-transform: translateY(100%) skewY(13deg);
    transform: translateY(100%) skewY(13deg);
    -webkit-transform-origin: left top;
    transform-origin: left top;
    transition-duration: 1s;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    transition-timing-function: cubic-bezier(.25, .82, .165, 1);
    will-change: transform
  }
  .is-unmask .mask01 .mv-text__target, .is-unmask .mask01 .mount-text__target {
    transition-delay: 0s
  }
  .is-unmask .mask02 .mv-text__target, .is-unmask .mask02 .mount-text__target {
    transition-delay: .8s
  }
  .is-unmask .mask03 .mv-text__target, .is-unmask .mask03 .mount-text__target {
    transition-delay: 1.6s
  }
  .is-unmask .mask04 .mv-text__target, .is-unmask .mask04 .mount-text__target {
    transition-delay: 2.4000000000000004s
  }
  .is-unmask .mask05 .mv-text__target, .is-unmask .mask05 .mount-text__target {
    transition-delay: 3.2s
  }
  .is-unmask .mask06 .mv-text__target, .is-unmask .mask06 .mount-text__target {
    transition-delay: 4s
  }
  .is-unmask .mask07 .mv-text__target, .is-unmask .mask07 .mount-text__target {
    transition-delay: 4.800000000000001s
  }
  .is-unmask .mv-text__target, .is-unmask .mount-text__target {
    -webkit-transform: translateY(0) skewY(0);
    transform: translateY(0) skewY(0)
  }
  .btn a:hover {
    text-decoration: none
  }
  .btn-slide {
    position: relative;
    background-color: #bec3c3;
    color: #fff;
    font-size: 3.2vw
  }
  .btn-slide:before {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-transform: scale(0, 1);
    transform: scale(0, 1);
    -webkit-transform-origin: right top;
    transform-origin: right top;
    background-color: #8e9595;
    content: '';
    transition: -webkit-transform .4s cubic-bezier(.075, .82, .165, 1);
    transition: transform .4s cubic-bezier(.075, .82, .165, 1);
    transition: transform .4s cubic-bezier(.075, .82, .165, 1), -webkit-transform .4s cubic-bezier(.075, .82, .165, 1);
    will-change: transform
  }
  .btn-slide__line {
    position: absolute;
    top: 50%;
    right: 0;
    width: 9.333333333333334vw;
    height: 1px;
    overflow: hidden
  }
  .btn-slide__line:before {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    content: ''
  }
  .btn-slide a {
    box-sizing: border-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    padding: 0 4vw
  }
  .btn-slide a:visited, .btn-slide a:link {
    color: #fff
  }
  .btn-slide:hover:before {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-transform-origin: left top;
    transform-origin: left top
  }
  .btn-slide:hover .btn-slide__line:before {
    -webkit-animation: lineMovetoLeft 1.2s ease infinite forwards;
    animation: lineMovetoLeft 1.2s ease infinite forwards
  }
  .page-title {
    z-index: 2;
    position: relative;
    padding: 11.333333333333332vw 0 6.666666666666667vw;
    color: #606060;
    font-size: 8vw;
    line-height: 1
  }
  .page-title__en {
    padding-bottom: .1em;
    font-family: Lato;
    font-style: normal;
    font-weight: 700;
    letter-spacing: .08em
  }
  .page-title__jp {
    margin-top: 2.666666666666667vw;
    font-family: Noto Sans JP;
    font-size: 3.4666666666666663vw;
    font-style: normal;
    font-weight: 600;
    letter-spacing: .18em
  }
  .line-text {
    display: inline-block;
    padding-bottom: 1.0666666666666667vw;
    background: linear-gradient(transparent 60%, #eff0f0 0)
  }
  .section-block {
    position: relative
  }
  .section-title {
    font-size: 7.199999999999999vw;
    font-weight: 900;
    letter-spacing: .12em;
    line-height: 1;
    white-space: nowrap
  }
  .lede-title {
    font-size: 4.8vw;
    letter-spacing: .15em;
    line-height: 1.3
  }
  .lede-text {
    font-size: 3.733333333333334vw;
    letter-spacing: .12em;
    line-height: 1.9
  }
  .is-ja .lede-text p+p {
    margin-top: 1.9em
  }
  .icon {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center
  }
  .icon:before {
    display: block;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    content: ''
  }
  .icon-fb:before {
    width: 2.4vw;
    height: 4.8vw;
    background-image: url(/assets/images/utils/icon_fb_gray.svg)
  }
 .icon-ut:before {
     width: 5.333333333333334vw;
    height: 4.266666666666667vw;
    background-image: url(/assets/images/utils/icon_youtube_gray.png)
  }
 .icon-in:before {
    width: 5.333333333333334vw;
    height: 4.266666666666667vw;
    background-image: url(/assets/images/utils/icon_instagram_gray.png)
  }
  .icon-tw:before {
    width: 5.333333333333334vw;
    height: 4.266666666666667vw;
    background-image: url(/assets/images/utils/icon_tw_gray.svg)
  }
  .icon-line:before {
    width: 6.4vw;
    height: 2.1333333333333333vw;
    background-image: url(/assets/images/utils/icon_line_gray.svg)
  }
  .icon-weibo:before {
    width: 5.333333333333334vw;
    height: 4.266666666666667vw;
    background-image: url(/assets/images/utils/icon_weibo_gray.png)
  }
  .icon-pdf {
    display: inline-block;
    margin-bottom: .5333333333333333vw;
    margin-left: 2vw;
    vertical-align: middle
  }
  .icon-pdf:before {
    width: 2.666666666666667vw;
    height: 3.5999999999999996vw;
    background-image: url(/assets/images/utils/icon_pdf.png)
  }
  .icon-blank {
    display: inline-block;
    vertical-align: middle
  }
  .icon-blank:before {
    width: 3.4666666666666663vw;
    height: 2.933333333333333vw
  }
  .icon-blank__white:before {
    background-image: url(/assets/images/utils/icon_blank_white.png)
  }
  .icon-blank__gray:before {
    background-image: url(/assets/images/utils/icon_blank_gray.png)
  }
  .icon-ir-material:before {
    width: 15.466666666666667vw;
    height: 19.066666666666666vw;
    background-image: url(/assets/images/utils/icon_ir_material.png)
  }
  .icon-ir-guide:before {
    width: 15.333333333333332vw;
    height: 12.533333333333333vw;
    background-image: url(/assets/images/utils/icon_ir_guide.png)
  }
  .icon-ir-management:before {
    width: 19.866666666666667vw;
    height: 11.333333333333332vw;
    background-image: url(/assets/images/utils/icon_ir_management.png)
  }
  .icon-ir-financial:before {
    width: 17.333333333333336vw;
    height: 17.333333333333336vw;
    background-image: url(/assets/images/utils/icon_ir_financial.png)
  }
  .icon-ir-stock:before {
    width: 13.866666666666665vw;
    height: 16.133333333333333vw;
    background-image: url(/assets/images/utils/icon_ir_stock.png)
  }
  .icon-ir-library:before {
    width: 15.066666666666666vw;
    height: 15.466666666666667vw;
    background-image: url(/assets/images/utils/icon_ir_library.png)
  }
  .icon-ir-calender:before {
    width: 15.466666666666667vw;
    height: 16.8vw;
    background-image: url(/assets/images/utils/icon_ir_calender.png)
  }
  .icon-ir-other:before {
    width: 13.733333333333334vw;
    height: 17.333333333333336vw;
    background-image: url(/assets/images/utils/icon_ir_other.png)
  }
  .move-line--b {
    display: block;
    position: absolute;
    bottom: 0;
    left: 50%;
    overflow: hidden
  }
  .move-line--b:before {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: ''
  }
  .news-tag {
    box-sizing: border-box;
    min-width: 9.333333333333334vw;
    padding: 1.0666666666666667vw 0;
    background-color: #fab5a0;
    color: #fff;
    font-family: Lato;
    font-size: 1.866666666666667vw;
    font-style: normal;
    font-weight: 900;
    letter-spacing: .05em;
    line-height: 1;
    text-align: center
  }
  .modal {
    display: -ms-flexbox;
    display: flex;
    visibility: hidden;
    z-index: 99;
    position: fixed;
    top: 0;
    left: 0;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    opacity: 0
  }
  .modal__bg {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, .8)
  }
  .modal__close {
    position: absolute;
    top: -10vw;
    right: 0;
    width: 7.6vw;
    height: 7.6vw;
    background: url(/assets/images/utils/icon_modal_close.png) center center no-repeat;
    background-size: contain;
    text-indent: -9999px
  }
  .modal__inner {
    position: relative;
    width: 92vw;
    margin-top: 10vw
  }
  .modal__content {
    position: relative;
    width: 100%;
    padding-top: 56.25%
  }
  .modal__content iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
  }
}

@media(min-width:681px), print {
  .header {
    padding: 0
  }
  .footer {
    padding: 0
  }
  .brand-list__item a:hover img {
    opacity: 1
  }
  .inner {
    max-width: 100%
  }
  .sp {
    display: none!important
  }
  .root {
    position: relative;
    width: 100%;
    min-width: 1100px;
    padding-top: 100px;
    overflow: hidden
  }
  .inner {
    box-sizing: border-box;
    position: relative;
    width: 1100px;
    margin: 0 auto
  }
  .header {
    z-index: 10;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    min-width: 1100px;
    height: 100px;
    background-color: #bec3c3;
    color: #fff;
    font-size: 13px;
    line-height: 1.2;
    transition: 1s cubic-bezier(.165, .84, .44, 1)
  }
  .header a {
    transition: opacity .3s ease;
    will-change: opacity
  }
  .header a:visited, .header a:link {
    color: #fff
  }
  .header a:hover {
    opacity: .7
  }
  .header a:hover {
    text-decoration: none
  }
  .header__inner {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    height: 100%
  }
  .header__logo-text {
    display: block;
    margin-top: 10px;
    font-family: Noto Sans JP;
    font-size: 12px;
    font-style: normal;
    font-weight: 500;
    line-height: 1
  }
  .header__logo img {
    width: 209px;
    height: 27px
  }
  .header.is-up {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%)
  }
  .header.is-scroll {
    height: 70px;
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
  .header.is-scroll .header__logo-text {
    display: none
  }
  .header.is-scroll .global-navi__head {
    padding-top: 30px
  }
  .header.is-scroll .language-select:before {
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px)
  }
  .header.is-scroll .language-select__head {
    padding-top: 32px
  }
  .global-navi {
    height: 100%
  }
  .global-navi__inner {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: end;
    justify-content: flex-end;
    height: 100%
  }
  .global-navi__list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: end;
    align-items: flex-end;
    font-weight: 700
  }
  .global-navi__item {
    box-sizing: border-box;
    height: 100%;
    cursor: pointer
  }
  .global-navi__item:nth-of-type(1) .global-navi__head {
    padding-left: 40px
  }
  .global-navi__item.is-over .global-navi__head:before {
    opacity: 1
  }
  .global-navi__item.is-over .global-sub {
    visibility: visible;
    z-index: 2;
    height: auto;
    opacity: 1
  }
  .global-navi__item a {
    display: block
  }
  .global-navi__head {
    box-sizing: border-box;
    position: relative;
    height: 100%;
    padding: 40px 15px 0
  }
  .global-navi__head:before {
    position: absolute;
    top: 100%;
    left: 50%;
    -webkit-transform: translate(-50%, -100%);
    transform: translate(-50%, -100%);
    border-right: 9px solid transparent;
    border-bottom: solid 11px #d9dede;
    border-left: 9px solid transparent;
    content: '';
    opacity: 0;
    transition: .3s cubic-bezier(.165, .84, .44, 1);
    will-change: opacity
  }
  .global-navi .icon-blank {
    margin-bottom: 2px;
    margin-left: 5px
  }
  .global-sub {
    visibility: hidden;
    z-index: 1;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    height: 0;
    background-color: #d9dede;
    color: #606060;
    font-size: 13px;
    font-weight: 700;
    opacity: 0;
    transition: all .2s linear
  }
  .global-sub__inner {
    display: -ms-flexbox;
    display: flex;
    position: relative;
    width: 960px;
    margin: 0 auto;
    padding: 47px 0;
    letter-spacing: 0
  }
  .global-sub__inner>.global-sub__list {
    margin-top: 2px
  }
  .global-sub__head {
    position: relative;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 198px;
    margin-right: 40px;
    font-size: 17px;
    line-height: 1;
    white-space: nowrap;
    word-break: keep-all;
    transition: 1s cubic-bezier(.165, .84, .44, 1)
  }
  .global-sub__head:before {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 1px;
    height: 100%;
    background-color: #9c9f9f;
    content: ''
  }
  .global-sub__head-link {
    margin-top: 45px;
    font-size: 13px
  }
  .global-sub__caption {
    margin-bottom: 20px;
    font-size: 16px
  }
  .global-sub__list {
    box-sizing: border-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: calc(100% - 198px)
  }
  .global-sub__list li {
    letter-spacing: .08em
  }
  .global-sub__list li:nth-of-type(4n+1) {
    margin-bottom: 15px
  }
  .global-sub__list li:last-of-type {
    margin-bottom: 0
  }
  .global-sub__list:not(.global-sub__list-wide) li {
    min-width: calc(100%/4)
  }
  .global-sub__list-wide li {
    padding-right: 30px
  }
  .global-sub__list-wide li:nth-of-type(3n+1) {
    margin-bottom: 15px
  }
  .global-sub__list-wide li:last-of-type {
    margin-bottom: 0
  }
  .global-sub__list-oneline li {
    margin-bottom: 0!important
  }
  .global-sub__list--company {
    -ms-flex-pack: justify;
    justify-content: space-between
  }
  .global-sub__list--company li {
    min-width: auto!important;
    padding-right: 60px
  }
  .global-sub__list--recruit li {
    min-width: auto!important;
    padding-right: 90px
  }
  .global-sub__box {
    display: inline-block;
    vertical-align: middle
  }
  .global-sub__box-inner {
    display: -ms-flexbox;
    display: flex
  }
  .global-sub__box+.global-sub__box {
    margin-left: 30px
  }
  .global-sub__box--wide .global-sub__list {
    margin-right: 72px!important
  }
  .global-sub__box .global-sub__caption {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 100%
  }
  .global-sub__box .global-sub__list {
    display: inline-block;
    width: auto;
    margin-right: 30px;
    vertical-align: top
  }
  .global-sub__box .global-sub__list li {
    margin-top: 0;
    margin-bottom: 15px
  }
  .global-sub__box .global-sub__list li:nth-last-of-type(-n+4) {
    margin-bottom: 15px
  }
  .global-sub__box .global-sub__list li:last-child {
    margin-bottom: 0
  }
  .global-sub a:visited, .global-sub a:link {
    color: #606060
  }
  .global-marugame {
    min-width: calc((100% - 198px)/4)
  }
  .global-marugame__list {
    font-weight: 400
  }
  .global-marugame__list li {
    position: relative;
    margin-top: 15px;
    padding-left: 1em
  }
  .global-marugame__list li:before {
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    width: 7px;
    height: 11px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    background: url(../images/utils/icon_arrow_dark_gray.svg) center center no-repeat;
    background-size: contain;
    content: ''
  }
  .language-select {
    position: relative;
    padding-left: 10px
  }
  .language-select:before {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 2px;
    height: 60px;
    background-color: #fff;
    content: '';
    transition: 1s cubic-bezier(.165, .84, .44, 1)
  }
  .language-select:hover .language-select__list {
    visibility: visible;
    height: auto;
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1
  }
  .language-select__head {
    box-sizing: border-box;
    height: 100%;
    padding-top: 42px;
    font-family: Lato;
    font-size: 12px;
    font-style: normal;
    font-weight: 900;
    cursor: pointer;
    transition: .4s cubic-bezier(.165, .84, .44, 1)
  }
  .language-select__list {
    visibility: hidden;
    position: absolute;
    top: 100%;
    left: 0;
    width: 110px;
    height: 0;
    padding-top: 30px;
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
    opacity: 0;
    transition: .4s cubic-bezier(.165, .84, .44, 1)
  }
  .language-select__list li {
    margin-top: 1px
  }
  .language-select__list a {
    display: block;
    height: 30px;
    background-color: #d9dede;
    font-size: 11px;
    font-weight: 700;
    line-height: 30px;
    text-align: center
  }
  .language-select__list a:visited, .language-select__list a:link {
    color: #606060
  }
  .foot-brand {
    border-top: 2px solid #e3e3e3
  }
  .foot-brand__list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 60px 0
  }
  .foot-brand__item {
    width: 140px;
    height: 140px;
    margin-left: 24px;
    border: 1px solid #e3e3e3;
    border-radius: 50%
  }
  .foot-brand__item:nth-of-type(6n+1) {
    margin-left: 0
  }
  .foot-brand__item:nth-of-type(n+7) {
    margin-top: 24px
  }
  .foot-brand__item--1 .logo {
    width: 101px
  }
  .foot-brand__item--2 .logo {
    width: 88px
  }
  .foot-brand__item--3 .logo {
    width: 87px
  }
  .foot-brand__item--4 .logo {
    width: 91px
  }
  .foot-brand__item--5 .logo {
    width: 100px
  }
  .foot-brand__item--6 .logo {
    width: 102px
  }
  .foot-brand__item--7 .logo {
    width: 108px
  }
  .foot-brand__item--8 .logo {
    width: 109px
  }
  .foot-brand__item--9 .logo {
    width: 107px
  }
  .foot-brand__item--10 .logo {
    width: 79px
  }
  .foot-brand__item--11 .logo {
    width: 110px
  }
  .foot-brand__item--12 .logo {
    width: 97px
  }
  .foot-brand__item--13 .logo {
    width: 62px
  }
  .foot-brand__item--14 .logo {
    width: 115px
  }
  .foot-brand__item--15 .logo {
    width: 77px
  }
  .foot-brand__item--16 .logo {
    width: 105px
  }
  .foot-brand__item--17 .logo {
    width: 93px
  }
  .foot-brand__item--18 .logo {
    width: 94px

  }
  .foot-brand__item--19 .logo {
    width: 109px
  }
  .foot-brand__item--20 .logo {
    width: 107px
  }
  .foot-brand__item--21 .logo {
    width: 86px
  }
  .foot-brand__item--22 .logo {
    width: 86px
  }
  .foot-brand__item--23 .logo {
    width: 108px
  }
  .foot-brand__item a {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    transition: opacity .3s ease;
    will-change: opacity
  }
  .foot-brand__item a:hover {
    opacity: .7
  }
  .footer {
    z-index: 2;
    position: relative;
    background-color: #eff0f0
  }
  .footer__inner {
    padding: 0 70px
  }
  .footer a:visited, .footer a:link {
    color: #606060
  }
  .footer-links {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 70px 0 50px;
    font-size: 12px;
    letter-spacing: .2em;
    line-height: 1.4
  }
  .footer-links__box {
    margin-bottom: 30px
  }
  .footer-links__head {
    font-weight: 700
  }
  .footer-links__list {
    padding-left: 1em
  }
  .footer-links__list li {
    margin-top: 8px
  }
  .footer-links__sublist {
    padding-left: 1em
  }
  .footer-links a {
    transition: opacity .3s ease;
    will-change: opacity
  }
  .footer-links a:hover {
    opacity: .7
  }
  .footer-links a:hover {
    text-decoration: none
  }
  .footer-links .icon-blank {
    margin-left: 5px
  }
  .footer-others {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-bottom: 55px;
    font-size: 12px
  }
  .footer-others__environment {
    line-height: 2.5
  }
  .footer-others__environment a {
    transition: opacity .3s ease;
    will-change: opacity
  }
  .footer-others__environment a:hover {
    opacity: .7
  }
  .footer-others__environment a:hover {
    text-decoration: none
  }
  .footer-find {
    margin-top: 30px;
    text-align: center
  }
  .footer-find__title {
    font-size: 24px;
    font-weight: 900;
    letter-spacing: .1em
  }
  .footer-find__list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 40px;
    font-size: 12px;
    font-weight: 700
  }
  .footer-find__item:nth-of-type(n+2) {
    margin-left: 65px
  }
  .footer-find__item a {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    text-decoration: none
  }
  .footer-find__item a:hover .icon-wrap {
    color: #fff
  }
  .footer-find__item a:hover .icon-wrap:before {
    -webkit-transform: scale(1);
    transform: scale(1)
  }
  .footer-find__item a:hover .icon-fb:before {
    background-image: url(../images/utils/icon_fb_white.svg?v71154cbfcf95d980d09d33ef76116bdb)
  }
  .footer-find .icon-wrap {
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    margin-right: 5px;
    overflow: hidden;
    border-radius: 100%;
    background-color: #fff;
    font-size: 10px
  }
  .footer-find .icon-wrap:before {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-transform: scale(0);
    transform: scale(0);
    border-radius: 100%;
    background-color: #818181;
    content: '';
    transition: -webkit-transform .3s ease;
    transition: transform .3s ease;
    transition: transform .3s ease, -webkit-transform .3s ease;
    will-change: transform
  }
  .footer-find .icon-wrap .icon {
    z-index: 2
  }
  .footer-find .icon-wrap .icon-fb:before {
    width: 7px;
    height: 12px
  }
  .sns-list {
    display: -ms-flexbox;
    display: flex
  }
  .sns-list__item {
    width: 44px;
    height: 44px
  }
  .sns-list__item:nth-of-type(n+2) {
    margin-left: 24px
  }
  .sns-list a {
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: #fff
  }
  .sns-list a:before {
    display: block;
    z-index: 0;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-transform: scale(0);
    transform: scale(0);
    -webkit-transform-origin: center center;
    transform-origin: center center;
    border-radius: 50%;
    background-color: #818181;
    content: '';
    transition: .3s ease
  }
  .sns-list a:hover:before {
    -webkit-transform: scale(1);
    transform: scale(1)
  }
  .sns-list a:hover .icon {
    z-index: 2;
    position: relative
  }
  .sns-list a:hover .icon-fb:before {
    background-image: url(/assets/images/utils/icon_fb_white.svg)
  }
  .sns-list a:hover .icon-tw:before {
    background-image: url(/assets/images/utils/icon_tw_white.svg)
  }
 .sns-list a:hover .icon-ut:before {
    background-image: url(/assets/images/utils/icon_youtube_white.png)
  }
.sns-list a:hover .icon-in:before {
    background-image: url(/assets/images/utils/icon_instagram_white.png)
  }
  .sns-list a:hover .icon-line:before {
    background-image: url(/assets/images/utils/icon_line_white.svg)
  }
  .sns-list a:hover .icon-weibo:before {
    background-image: url(/assets/images/utils/icon_weibo_white.png)
  }
  .sns-list .icon:before {
    transition: .3s ease
  }
  .footer-copy {
    border-top: 1px solid #d4d4d4
  }
  .footer-copy .inner {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: end;
    align-items: flex-end;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-top: 30px;
    padding-bottom: 30px
  }
  .footer-copy__logo {
    width: 190px
  }
  .footer-copy__logo img {
    height: 21px
  }
  .footer-copy small {
    font-family: Noto Sans JP;
    font-size: 10px;
    font-style: normal;
    font-weight: 500;
    letter-spacing: .1em
  }
  .mount-text {
    display: block
  }
  .mv-text__mask, .mount-text__mask {
    display: block;
    position: relative;
    width: 100%;
    overflow: hidden
  }
  .mv-text__target, .mount-text__target {
    display: block;
    -webkit-transform: translateY(100%) skewY(13deg);
    transform: translateY(100%) skewY(13deg);
    -webkit-transform-origin: left top;
    transform-origin: left top;
    transition-duration: 1s;
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    transition-timing-function: cubic-bezier(.25, .82, .165, 1);
    will-change: transform
  }
  .is-unmask .mask01 .mv-text__target, .is-unmask .mask01 .mount-text__target {
    transition-delay: 0s
  }
  .is-unmask .mask02 .mv-text__target, .is-unmask .mask02 .mount-text__target {
    transition-delay: .8s
  }
  .is-unmask .mask03 .mv-text__target, .is-unmask .mask03 .mount-text__target {
    transition-delay: 1.6s
  }
  .is-unmask .mask04 .mv-text__target, .is-unmask .mask04 .mount-text__target {
    transition-delay: 2.4000000000000004s
  }
  .is-unmask .mask05 .mv-text__target, .is-unmask .mask05 .mount-text__target {
    transition-delay: 3.2s
  }
  .is-unmask .mask06 .mv-text__target, .is-unmask .mask06 .mount-text__target {
    transition-delay: 4s
  }
  .is-unmask .mask07 .mv-text__target, .is-unmask .mask07 .mount-text__target {
    transition-delay: 4.800000000000001s
  }
  .is-unmask .mv-text__target, .is-unmask .mount-text__target {
    -webkit-transform: translateY(0) skewY(0);
    transform: translateY(0) skewY(0)
  }
  .btn a:hover {
    text-decoration: none
  }
  .btn-slide {
    position: relative;
    background-color: #bec3c3;
    color: #fff;
    font-size: 15px
  }
  .btn-slide:before {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-transform: scale(0, 1);
    transform: scale(0, 1);
    -webkit-transform-origin: right top;
    transform-origin: right top;
    background-color: #8e9595;
    content: '';
    transition: -webkit-transform .4s ease-in-out;
    transition: transform .4s ease-in-out;
    transition: transform .4s ease-in-out, -webkit-transform .4s ease-in-out;
    will-change: transform
  }
  .btn-slide__line {
    position: absolute;
    top: 50%;
    right: 0;
    width: 50px;
    height: 1px;
    overflow: hidden
  }
  .btn-slide__line:before {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    content: ''
  }
  .btn-slide a {
    box-sizing: border-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    padding: 0 30px
  }
  .btn-slide a:visited, .btn-slide a:link {
    color: #fff
  }
  .btn-slide:hover:before {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
    -webkit-transform-origin: left top;
    transform-origin: left top
  }
  .btn-slide:hover .btn-slide__line:before {
    -webkit-animation: lineMovetoLeft 1.2s ease infinite forwards;
    animation: lineMovetoLeft 1.2s ease infinite forwards
  }
  .page-title {
    z-index: 2;
    position: relative;
    padding: 75px 0 55px;
    font-size: 60px;
    line-height: 1
  }
  .page-title__en {
    padding-bottom: .1em;
    font-family: Lato;
    font-style: normal;
    font-weight: 700;
    letter-spacing: .08em
  }
  .page-title__jp {
    margin-top: 20px;
    font-family: Noto Sans JP;
    font-size: 22px;
    font-style: normal;
    font-weight: 600;
    letter-spacing: .18em
  }
  .line-text {
    display: inline-block;
    padding-bottom: 8px;
    background: linear-gradient(transparent 60%, #eff0f0 0);
    letter-spacing: .1em
  }
  .section-block {
    position: relative
  }
  .section-title {
    font-size: 46px;
    font-weight: 900;
    letter-spacing: .15em;
    line-height: 1;
    white-space: nowrap
  }
  .lede-title {
    font-size: 30px;
    letter-spacing: .15em;
    line-height: 1.3
  }
  .lede-text {
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
    font-size: 18px;
    letter-spacing: .1em;
    line-height: 2
  }
  .is-ja .lede-text p+p {
    margin-top: 2em
  }
  .move-line--b {
    display: block;
    position: absolute;
    bottom: 0;
    left: 50%;
    overflow: hidden
  }
  .move-line--b:before {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: ''
  }
  .move-line-trigger:hover .move-line--b:before {
    -webkit-animation: lineMovetoBottom 1.6s ease infinite forwards;
    animation: lineMovetoBottom 1.6s ease infinite forwards
  }
  .icon {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center
  }
  .icon:before {
    display: block;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    content: ''
  }
  .icon-fb:before {
    width: 11px;
    height: 19px;
    background-image: url(/assets/images/utils/icon_fb_gray.svg)
  }
  .icon-tw:before {
    width: 18px;
    height: 18px;
    background-image: url(/assets/images/utils/icon_tw_gray.svg)
  }
	 .icon-ut:before {
     width: 20px;
    height: 16px;
    background-image: url(/assets/images/utils/icon_youtube_gray.png)
  }
.icon-in:before {
     width: 20px;
    height: 16px;
    background-image: url(/assets/images/utils/icon_instagram_gray.png)
  }
  .icon-line:before {
    width: 25px;
    height: 8px;
    background-image: url(/assets/images/utils/icon_line_gray.svg)
  }
  .icon-weibo:before {
    width: 20px;
    height: 16px;
    background-image: url(/assets/images/utils/icon_weibo_gray.png)
  }
  .icon-pdf {
    display: inline-block;
    margin-left: 10px;
    vertical-align: text-top
  }
  .icon-pdf:before {
    width: 20px;
    height: 16px;
    background-image: url(/assets/images/utils/icon_pdf.png)
  }
  .icon-ir-material:before {
    width: 64px;
    height: 79px;
    background-image: url(/assets/images/utils/icon_ir_material.png)
  }
  .icon-ir-guide:before {
    width: 64px;
    height: 52px;
    background-image: url(/assets/images/utils/icon_ir_guide.png)
  }
  .icon-ir-management:before {
    width: 83px;
    height: 47px;
    background-image: url(/assets/images/utils/icon_ir_management.png)
  }
  .icon-ir-financial:before {
    width: 72px;
    height: 72px;
    background-image: url(/assets/images/utils/icon_ir_financial.png)
  }
  .icon-ir-stock:before {
    width: 58px;
    height: 67px;
    background-image: url(/assets/images/utils/icon_ir_stock.png)
  }
  .icon-ir-library:before {
    width: 63px;
    height: 64px;
    background-image: url(/assets/images/utils/icon_ir_library.png)
  }
  .icon-ir-calender:before {
    width: 64px;
    height: 70px;
    background-image: url(/assets/images/utils/icon_ir_calender.png)
  }
  .icon-ir-other:before {
    width: 57px;
    height: 72px;
    background-image: url(/assets/images/utils/icon_ir_other.png)
  }
  .icon-blank {
    display: inline-block;
    vertical-align: middle
  }
  .icon-blank:before {
    width: 13px;
    height: 11px
  }
  .icon-blank__white:before {
    background-image: url(/assets/images/utils/icon_blank_white.png)
  }
  .icon-blank__gray:before {
    background-image: url(/assets/images/utils/icon_blank_gray.png)
  }
  .news-tag {
    box-sizing: border-box;
    min-width: 43px;
    padding: 5px;
    background-color: #fab5a0;
    color: #fff;
    font-family: Lato;
    font-size: 10px;
    font-style: normal;
    font-weight: 900;
    line-height: 1;
    text-align: center
  }
  .modal {
    display: -ms-flexbox;
    display: flex;
    visibility: hidden;
    z-index: 99;
    position: fixed;
    top: 0;
    left: 0;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    opacity: 0
  }
  .modal__bg {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, .8)
  }
  .modal__close {
    position: absolute;
    top: -75px;
    right: 0;
    width: 57px;
    height: 57px;
    background: url(/assets/images/utils/icon_modal_close.png) center center no-repeat;
    background-size: contain;
    text-indent: -9999px
  }
  .modal__inner {
    position: relative;
    width: 915px;
    margin-top: 75px
  }
  .modal__content iframe {
    width: 100%;
    height: 515px
  }
}

