@charset "UTF-8";
body {
  margin: 0;
  padding: 0;
}

div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}

ol, ul {
  list-style: none;
}

fieldset, img {
  border: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th {
  text-align: left;
}

address, caption, cite, code, dfn, em, th, var {
  font-style: normal;
  font-weight: normal;
}

img {
  vertical-align: bottom;
}

html {
  margin: 0;
  padding: 0;
  width: 100%;
  -webkit-text-size-adjust: 100%;
}
@media screen and (min-width: 768px) and (max-width: 1479px) {
  html {
    font-size: 20px;
    font-size: 1.3888888889vw;
  }
}
@media screen and (min-width: 1480px) {
  html {
    font-size: 20px;
  }
}
@media screen and (max-width: 767px) {
  html {
    font-size: 2.6666666667vw;
  }
}

body {
  width: 100%;
  height: 100vh;
  min-height: 100vh;
  background-color: #fff;
  color: #1a1a1a;
  font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-size: 0.8rem;
  font-weight: 400;
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
          text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
@media screen and (min-width: 768px) and (max-width: 1479px) {
  body {
    font-size: 0.6rem;
  }
}
@media screen and (min-width: 1480px) {
  body {
    font-size: 0.6rem;
  }
}
@media screen and (max-width: 767px) {
  body {
    font-size: 1.2rem;
  }
}
@media print {
  body {
    width: 70rem;
  }
}

a {
  color: #1a1a1a;
  text-decoration: none;
  -webkit-tap-highlight-color: transparent;
}

a:hover {
  color: #1a1a1a;
  text-decoration: none;
}

strong, b {
  font-weight: 700;
}

.pc {
  display: block !important;
}
@media screen and (max-width: 767px) {
  .pc {
    display: none !important;
  }
}

.sp {
  display: none !important;
}
@media screen and (max-width: 767px) {
  .sp {
    display: block !important;
  }
}

.pc_ib {
  display: inline-block !important;
}
@media screen and (max-width: 767px) {
  .pc_ib {
    display: none !important;
  }
}

.sp_ib {
  display: none !important;
}
@media screen and (max-width: 767px) {
  .sp_ib {
    display: inline-block !important;
  }
}

svg {
  width: 100%;
  height: 100%;
  vertical-align: top;
  fill: currentColor;
}

img {
  width: 100%;
  height: auto;
  vertical-align: top;
  image-rendering: -webkit-optimize-contrast;
}

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  letter-spacing: 0.03em;
}

.bglazy {
  background-image: none !important;
}

.min {
  font-family: "FOT-筑紫Aオールド明朝 Pr6 R", serif;
}

.eng {
  font-family: "neue-haas-unica", sans-serif;
}

.vrl {
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
}

.vrlp {
  display: inline-block;
  padding: 0.2em 0 0;
  letter-spacing: -0.2em;
}

.vrlhan {
  display: inline-block;
  text-indent: -0.4em;
}

.vrlhanb {
  letter-spacing: -0.3em;
}

.upr {
  text-orientation: upright;
  font-family: "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", YuGothic, "Yu Gothic Medium", "Yu Gothic", Meiryo, sans-serif;
}

.palt {
  letter-spacing: -0.4em;
}

.ios .text3reader {
  display: inline-block;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}

.touch {
  position: relative;
}
.touch .df {
  position: relative;
  top: 0;
  left: 0;
}
.touch .ov {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  -webkit-transition: opacity 0.4s linear;
  transition: opacity 0.4s linear;
}
.touch.over .ov {
  opacity: 1;
}

#wrapper {
  position: relative;
  width: 100%;
}

#container {
  position: relative;
  width: 100%;
  overflow: hidden;
  min-height: 100vh;
  opacity: 0;
}
.end #container {
  -webkit-transition: opacity 0.5s linear;
  transition: opacity 0.5s linear;
  opacity: 1;
}

main {
  position: relative;
  width: 100%;
  margin: 0 auto 0;
  padding: 3.7rem 0 0;
  min-height: 100vh;
}
@media screen and (max-width: 767px) {
  main {
    padding: 5.95rem 0 0;
  }
}
.en main * {
  letter-spacing: 0;
}
@media print {
  main .pin-spacer {
    margin: 0 !important;
    padding: 0 !important;
    width: auto !important;
    height: auto !important;
  }
  main .aniTg {
    opacity: 1 !important;
  }
}
main #text_contents {
  width: 42.5rem;
  margin: 0 auto;
  padding: 9rem 0;
  position: relative;
}
@media screen and (max-width: 767px) {
  main #text_contents {
    width: 31rem;
    padding: 9.25rem 0 7rem;
  }
}
main #text_contents h2.title {
  font-size: 1.05rem;
  color: #0b59ac;
  font-weight: 500;
  line-height: 1;
  position: absolute;
  top: 5.5rem;
  left: 50%;
  margin: 0 0 0 -26.85rem;
}
@media screen and (max-width: 767px) {
  main #text_contents h2.title {
    font-size: 1.6rem;
    top: 4.4rem;
    left: 0;
    margin: auto;
  }
}
main #text_contents p.text {
  font-size: 0.8rem;
  line-height: 2.1;
  letter-spacing: 0.005em;
}
@media screen and (max-width: 767px) {
  main #text_contents p.text {
    font-size: 1.3rem;
    line-height: 2;
  }
}
main #other_chapter_area {
  position: relative;
  padding: 4.25rem 0 4.25rem;
  background-color: #fff;
  opacity: 0;
  -webkit-transition: opacity 1s linear;
  transition: opacity 1s linear;
}
@media screen and (max-width: 767px) {
  main #other_chapter_area {
    padding: 4.75rem 0 4.75rem;
  }
}
@media print {
  main #other_chapter_area {
    opacity: 1 !important;
  }
}
main #other_chapter_area.active {
  opacity: 1;
}
main #other_chapter_area .inner {
  position: relative;
  width: 51.8rem;
  margin: 0 auto;
  padding: 3rem 0 4rem;
  text-align: center;
  border: 2px solid #0b59ac;
}
@media screen and (max-width: 767px) {
  main #other_chapter_area .inner {
    padding: 4rem 0 4.75rem;
    width: 32.5rem;
  }
}
main #other_chapter_area h4.title {
  margin: 0 0 3.75rem;
  font-size: 1.05rem;
  font-weight: 500;
  color: #0b59ac;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  main #other_chapter_area h4.title {
    margin: 0 0 5.7rem;
    font-size: 1.95rem;
  }
}
main #other_chapter_area .line {
  width: 5.5rem;
  height: 1px;
  background-color: #1a1a1a;
  margin: 0 auto;
}
main #other_chapter_area .subTitle {
  margin: 1.25rem 0 3.15rem;
  font-size: 0.7rem;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  main #other_chapter_area .subTitle {
    margin: 2.75rem 0 4.25rem;
    font-size: 1.35rem;
  }
}
main #other_chapter_area div.cs {
  margin: 1.35rem 0 2.1rem;
  font-size: 2rem;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  main #other_chapter_area div.cs {
    margin: 2.75rem 0 3.5rem;
    font-size: 2.45rem;
  }
}
main #other_chapter_area ul.chapter_list_cs {
  margin: 3.15rem auto 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 767px) {
  main #other_chapter_area ul.chapter_list_cs {
    margin: 5.75rem auto 0;
  }
}
main #other_chapter_area ul.chapter_list_cs li {
  font-size: 0.75rem;
  color: #c5c5c5;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  main #other_chapter_area ul.chapter_list_cs li {
    font-size: 1.2rem;
  }
}
main #other_chapter_area ul.chapter_list_cs li + li {
  margin: 0 0 0 3.25rem;
}
@media screen and (max-width: 767px) {
  main #other_chapter_area ul.chapter_list_cs li + li {
    margin: 0 0 0 1.4rem;
  }
}

@keyframes blurAnime {
  from {
    -webkit-filter: blur(0.5rem);
            filter: blur(0.5rem);
  }
  to {
    -webkit-filter: blur(0);
            filter: blur(0);
  }
}
@-webkit-keyframes blurAnime {
  from {
    -webkit-filter: blur(0.5rem);
            filter: blur(0.5rem);
  }
  to {
    -webkit-filter: blur(0);
            filter: blur(0);
  }
}
header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 30;
  width: 100%;
  height: 3.7rem;
  background-color: #1a1a1a;
}
@media screen and (max-width: 767px) {
  header {
    height: 5.95rem;
  }
}
@media print {
  header {
    position: absolute;
  }
}
header h1.title {
  /*width: 4rem;*/
  width: 6rem;    
  position: absolute;
  top: 1.05rem;
  left: 1.6rem;
}
@media screen and (max-width: 767px) {
  header h1.title {
    top: 2.1rem;
    left: 50%;
    margin: 0 0 0 -3.8rem;
    width: 6.9rem;
  }
}
header h1.title span.viewText {
  display: none;
}
header h1.title a {
  display: block;
  width: 100%;
  height: 100%;
}
@media print, screen and (min-width: 768px) {
  header h1.title a {
    -webkit-transition: opacity 0.4s linear;
    transition: opacity 0.4s linear;
  }
  header h1.title a:hover {
    opacity: 0.6;
  }
}
header ul.lang {
  position: absolute;
  top: 1.55rem;
  right: 1.55rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 767px) {
  header ul.lang {
    top: 2.3rem;
    right: 1.4rem;
  }
}
header ul.lang li {
  font-size: 0.6rem;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  header ul.lang li {
    font-size: 1.15rem;
  }
}
header ul.lang li + li {
  margin: 0 0 0 0.65rem;
}
@media screen and (max-width: 767px) {
  header ul.lang li + li {
    margin: 0 0 0 0.4rem;
  }
}
header ul.lang li.text {
  display: inline-block;
  font-size: 0.6rem;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  header ul.lang li.text {
    font-size: 1.15rem;
  }
}
header ul.lang li.text.current {
  color: #979797;
  border-bottom: 1px solid #979797;
}
header ul.lang li.bar {
  font-size: 0.6rem;
  color: #fff;
}
@media screen and (max-width: 767px) {
  header ul.lang li.bar {
    font-size: 1.15rem;
  }
}
header ul.lang li a {
  color: #fff;
  -webkit-transition: color 0.4s linear;
  transition: color 0.4s linear;
}
header ul.lang li a.over {
  color: #979797;
}

#menu {
  position: absolute;
  top: 0;
  left: 0;
  width: 5.6rem;
  height: 5.95rem;
  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;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media print, screen and (min-width: 768px) {
  #menu {
    display: none;
  }
}
#menu span {
  width: 2.45rem;
  height: 0.1rem;
  background-color: #fff;
  -webkit-transition: all 0.4s linear;
  transition: all 0.4s linear;
}
#menu span.top {
  -webkit-transform-origin: left top;
          transform-origin: left top;
  position: relative;
}
#menu span.bottom {
  -webkit-transform-origin: left bottom;
          transform-origin: left bottom;
  margin: 0.35rem auto 0;
}
.menued #menu span {
  background-color: #fff;
}
.menued #menu span.top {
  -webkit-transform: rotate(30deg) translate(0, -0.2rem);
          transform: rotate(30deg) translate(0, -0.2rem);
}
@media screen and (max-width: 767px) {
  .menued #menu span.top {
    -webkit-transform: rotate(15deg) translate(0, -0.15rem);
            transform: rotate(15deg) translate(0, -0.15rem);
  }
}
.menued #menu span.bottom {
  -webkit-transform: rotate(-30deg) translate(0.05rem, 0.15rem);
          transform: rotate(-30deg) translate(0.05rem, 0.15rem);
}
@media screen and (max-width: 767px) {
  .menued #menu span.bottom {
    -webkit-transform: rotate(-15deg) translate(0.05rem, 0.05rem);
            transform: rotate(-15deg) translate(0.05rem, 0.05rem);
  }
}

.menuArea {
  position: absolute;
  top: 0.6rem;
  left: 0;
  width: 100%;
  height: 2.3rem;
}
@media screen and (max-width: 767px) {
  .menuArea {
    top: 5.95rem;
    left: 0;
    min-height: calc(100vh - 5.95rem);
    z-index: 30;
    background-color: #1a1a1a;
    overflow-y: auto;
    opacity: 0;
    pointer-events: none;
    -webkit-transition: opacity 0.4s linear;
    transition: opacity 0.4s linear;
  }
  .menued .menuArea {
    pointer-events: auto;
    opacity: 1;
  }
}
.menuArea ul.list {
  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;
}
.menuArea ul.list li + li {
  margin: 0 0 0 1.7rem;
}
.menuArea ul.list li a {
  padding: 0.5rem;
  font-size: 0.7rem;
  line-height: 1.4;
  color: #fff;
  -webkit-transition: color 0.4s linear;
  transition: color 0.4s linear;
}
.menuArea ul.list li a.current {
  color: #7bbbff;
}
.menuArea ul.list li a.over {
  color: #7bbbff;
}
.menuArea ul.list li .subMenu {
  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;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  font-size: 0.7rem;
  line-height: 1.4;
  color: #fff;
  -webkit-transition: color 0.4s linear;
  transition: color 0.4s linear;
  cursor: pointer;
}
.menuArea ul.list li .subMenu.current {
  color: #7bbbff;
}
.menuArea ul.list li .subMenu.over {
  color: #7bbbff;
}
.menuArea ul.list li .subMenu span.text {
  margin: 0.7rem 0 0;
}
.menuArea ul.list li .subMenu span.ico {
  margin: 0.4rem 0 0;
  width: 0.4rem;
  height: 0.25rem;
}
.menuArea .subMenuArea {
  position: absolute;
  top: 3.1rem;
  left: 0;
  z-index: 30;
  width: 100%;
  padding: 2.9rem 0 6.6rem;
  background-color: #1a1a1a;
  opacity: 0;
  pointer-events: none;
  -webkit-transition: opacity 0.4s linear;
  transition: opacity 0.4s linear;
}
.menuArea .subMenuArea .subMenuClose {
  position: absolute;
  cursor: pointer;
  -webkit-transition: opacity 0.4s linear;
  transition: opacity 0.4s linear;
}
.menuArea .subMenuArea .subMenuClose.over.top {
  opacity: 0.6;
}
.menuArea .subMenuArea .subMenuClose.over.bottom span.line {
  width: 1.65rem;
}
.menuArea .subMenuArea .subMenuClose.top {
  top: 3.9rem;
  right: 6.35rem;
  width: 0.95rem;
  height: 0.95rem;
}
.menuArea .subMenuArea .subMenuClose.bottom {
  bottom: 3.8rem;
  right: 6.25rem;
  width: 7rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.menuArea .subMenuArea .subMenuClose.bottom span.line {
  width: 4.4rem;
  height: 1px;
  background-color: #fff;
  -webkit-transition: width 0.4s linear;
  transition: width 0.4s linear;
}
.menuArea .subMenuArea .subMenuClose.bottom span.text {
  margin: 0 0 0 0.7rem;
  font-size: 0.65rem;
  color: #fff;
}
.menuArea .subMenuArea .box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 59.2rem;
  margin: 0 auto 0;
}
.menuArea .subMenuArea .box .logoArea {
  width: 19rem;
  padding: 0 0 0 4.65rem;
}
.menuArea .subMenuArea .box .logoArea span.image {
  display: block;
  width: 7.1rem;
}
.menuArea .subMenuArea .box .linkArea {
  width: 40.2rem;
}
.menuArea .subMenuArea .box .subNavArea {
  width: 100%;
}
.menuArea .subMenuArea .box .subNavArea li {
  width: 100%;
}
.menuArea .subMenuArea .box .subNavArea li + li {
  margin: 2.25rem 0 0;
}
.menuArea .subMenuArea .box .subNavArea li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: #fff;
  -webkit-transition: color 0.4s linear;
  transition: color 0.4s linear;
}
.menuArea .subMenuArea .box .subNavArea li a.over {
  color: #979797;
}
.menuArea .subMenuArea .box .subNavArea li a.current {
  color: #979797;
}
.menuArea .subMenuArea .box .subNavArea li .cs {
  color: #979797;
}
.menuArea .subMenuArea .box .subNavArea li span.chapter {
  display: inline-block;
  width: 4rem;
  font-size: 0.6rem;
  font-weight: 500;
  line-height: 1.5;
}
.menuArea .subMenuArea .box .subNavArea li span.text {
  font-size: 0.75rem;
  letter-spacing: 0.09em;
  line-height: 1.333;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  white-space: nowrap;
}
.menuArea .subMenuArea .box .sublist {
  margin: 2.5rem 0 0 4.2rem;
}
.menuArea .subMenuArea .box .sublist li + li {
  margin: 2.3rem 0 0;
}
.menuArea .subMenuArea .box .sublist li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: #fff;
  -webkit-transition: color 0.4s linear;
  transition: color 0.4s linear;
}
.menuArea .subMenuArea .box .sublist li a.over {
  color: #979797;
}
.menuArea .subMenuArea .box .sublist li a.current {
  color: #979797;
}
.menuArea .subMenuArea .box .sublist li span.chapter {
  font-size: 0.6rem;
  letter-spacing: 0.09em;
  line-height: 1.6666666667;
}
.menuArea .subMenuArea .box .sublist li span.text {
  margin: 0 0 0 1.05rem;
  font-size: 0.6rem;
  letter-spacing: 0.09em;
  line-height: 1.6666666667;
}
.menued .menuArea .subMenuArea {
  opacity: 1;
  pointer-events: auto;
}
.menuArea .menuInner {
  padding: 4rem 0.5rem 10.75rem 3.1rem;
}
.menuArea .menuInner .logoArea {
  width: 7.05rem;
}
.menuArea .menuInner .navArea {
  margin: 0 0 0;
}
.menuArea .menuInner .navArea li {
  width: 100%;
}
.menuArea .menuInner .navArea li + li {
  margin: 2.9rem 0 0;
}
.menuArea .menuInner .navArea li a {
  font-size: 1.85rem;
  font-weight: 500;
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 767px) {
  .menuArea .menuInner .navArea li a {
    color: #fff;
  }
}
.menuArea .menuInner .navArea li a span.line {
  display: block;
  margin: 0;
  width: 0;
  height: 0.1rem;
  background-color: #fff;
  -webkit-transition: all 0.4s linear;
  transition: all 0.4s linear;
}
.menuArea .menuInner .navArea li a.current span.line {
  width: 19.15rem;
  margin: 0 1.25rem 0 0;
}
@media screen and (max-width: 767px) {
  .menuArea .menuInner .navArea li a.current span.line {
    background-color: #7bbbff;
  }
}
.menuArea .menuInner .navArea li a.current span.text {
  color: #7bbbff;
}
.menuArea .menuInner .navArea li a.over span.line {
  width: 19.15rem;
  margin: 0 1.25rem 0 0;
}
.menuArea .menuInner .navArea li a.over span.text {
  color: #7bbbff;
}
.menuArea .menuInner .subNavArea {
  margin: 3.6rem 0 0;
}
.menuArea .menuInner .subNavArea li {
  font-size: 1.3rem;
}
.menuArea .menuInner .subNavArea li + li {
  margin: 3.1rem 0 0;
}
@media screen and (max-width: 767px) {
  .menuArea .menuInner .subNavArea li a {
    color: #fff;
  }
  .en .menuArea .menuInner .subNavArea li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.menuArea .menuInner .subNavArea li a.over {
  color: #7bbbff;
}
@media screen and (max-width: 767px) {
  .menuArea .menuInner .subNavArea li a.over {
    color: #979797;
  }
}
.menuArea .menuInner .subNavArea li a.current {
  color: #7bbbff;
}
@media screen and (max-width: 767px) {
  .menuArea .menuInner .subNavArea li a.current {
    color: #979797;
  }
}
.menuArea .menuInner .subNavArea li .cs {
  color: #979797;
}
.menuArea .menuInner .subNavArea li span.chapter {
  display: inline-block;
  margin: 0 0 0 1.45rem;
  width: 6.85rem;
  font-size: 1.05rem;
  font-weight: 500;
  line-height: 1.25;
}
.menuArea .menuInner .subNavArea li span.text {
  font-size: 1.3rem;
  letter-spacing: 0.09em;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  line-height: 1.25;
}
.menuArea .menuInner .sublist {
  margin: 3.9rem 0 0 6.7rem;
}
.menuArea .menuInner .sublist li + li {
  margin: 1.85rem 0 0;
}
.menuArea .menuInner .sublist li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: #fff;
  -webkit-transition: color 0.4s linear;
  transition: color 0.4s linear;
}
.menuArea .menuInner .sublist li a.over {
  color: #979797;
}
.menuArea .menuInner .sublist li a.current {
  color: #979797;
}
.menuArea .menuInner .sublist li span.chapter {
  font-size: 1rem;
  letter-spacing: 0.09em;
  line-height: 1.8;
}
.menuArea .menuInner .sublist li span.text {
  margin: 0 0 0 1.75rem;
  font-size: 1rem;
  letter-spacing: 0.09em;
  line-height: 1.8;
}

footer {
  position: relative;
  z-index: 2;
}
footer .totop {
  position: absolute;
  right: 6.3rem;
  top: 2.5rem;
  z-index: 99;
}
@media screen and (max-width: 767px) {
  footer .totop {
    right: 2.6rem;
    top: 0;
  }
}
footer .totop a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  color: #fff;
}
footer .totop a .text {
  font-size: 0.7rem;
  line-height: 1;
  margin: 1rem 0 0 0;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  footer .totop a .text {
    font-size: 1.2rem;
    width: 1.3rem;
    margin: 1rem 0 0 0;
  }
}
footer .totop a .line {
  display: block;
  height: 1.65rem;
  width: 0.1rem;
  background-color: #fff;
  -webkit-transition: background-color 0.4s linear;
  transition: background-color 0.4s linear;
}
@media screen and (max-width: 767px) {
  footer .totop a .line {
    height: 2.1rem;
    width: 0.15rem;
  }
}
@media print, screen and (min-width: 768px) {
  footer .totop a {
    -webkit-transition: color 0.4s linear;
    transition: color 0.4s linear;
  }
  footer .totop a.over {
    color: #7bbbff;
  }
  footer .totop a.over .line {
    background-color: #7bbbff;
  }
}
footer .box {
  position: relative;
  margin: 0 auto 0;
  padding: 0;
  width: 100%;
  height: 100%;
  background-color: #1a1a1a;
  color: #fff;
}
footer .box .logoArea {
  position: absolute;
  top: 5.7rem;
  left: 6.25rem;
}
@media screen and (max-width: 767px) {
  footer .box .logoArea {
    top: 4rem;
    left: 3rem;
  }
}
footer .box .logoArea .logo {
  width: 7.05rem;
}
@media screen and (max-width: 767px) {
  footer .box .logoArea .logo {
    width: 9.45rem;
  }
}
@media print, screen and (min-width: 768px) {
  footer .box .logoArea .logo a {
    -webkit-transition: opacity 0.4s linear;
    transition: opacity 0.4s linear;
  }
  footer .box .logoArea .logo a:hover {
    opacity: 0.6;
  }
}
footer .box .textArea {
  padding: 5.9rem 0 5rem 28rem;
}
@media screen and (max-width: 767px) {
  footer .box .textArea {
    padding: 4rem 0 5.25rem 3rem;
  }
}
footer .box .textArea a {
  color: #fff;
}
@media print, screen and (min-width: 768px) {
  footer .box .textArea a {
    -webkit-transition: color 0.4s linear;
    transition: color 0.4s linear;
  }
  footer .box .textArea a.over {
    color: #7bbbff;
  }
}
footer .box .textArea .navArea {
  font-size: 0.8rem;
  line-height: 1;
}
@media print, screen and (min-width: 768px) {
  footer .box .textArea .navArea {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
@media screen and (max-width: 767px) {
  footer .box .textArea .navArea {
    font-size: 1.85rem;
  }
}
footer .box .textArea .navArea > li a.current {
  color: #7bbbff;
}
footer .box .textArea .navArea > li + li {
  margin: 0 0 0 3.5rem;
}
@media screen and (max-width: 767px) {
  footer .box .textArea .navArea > li + li {
    margin: 3.4rem 0 0;
  }
}
footer .box .textArea .subNavAreaWrap {
  width: 100%;
  margin: 1.75rem 0 0;
  font-size: 0.7rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 767px) {
  footer .box .textArea .subNavAreaWrap {
    margin: 3.4rem 0 0;
    font-size: 1.4rem;
  }
}
footer .box .textArea .subNavAreaWrap .subNavTitle {
  width: 6.95rem;
  font-size: 0.8rem;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  footer .box .textArea .subNavAreaWrap .subNavTitle {
    width: 20rem;
    font-size: 1.85rem;
  }
}
footer .box .textArea .subNavArea {
  width: 100%;
  margin: 0.25rem 0 0;
  font-size: 0.7rem;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  footer .box .textArea .subNavArea {
    margin: 0.4rem 0 0;
    font-size: 1.4rem;
  }
}
footer .box .textArea .subNavArea > li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
footer .box .textArea .subNavArea > li + li {
  margin: 1.75rem 0 0;
}
@media screen and (max-width: 767px) {
  footer .box .textArea .subNavArea > li + li {
    margin: 3.4rem 0 0;
  }
}
footer .box .textArea .subNavArea > li a.current {
  color: #7bbbff;
}
footer .box .textArea .subNavArea > li .cs {
  color: #979797;
}
footer .box .textArea .subNavArea ul.sublist {
  margin: 0.1rem 0 0 1.55rem;
}
@media screen and (max-width: 767px) {
  footer .box .textArea .subNavArea ul.sublist {
    margin: 0.3rem 0 0 2.35rem;
  }
}
footer .box .textArea .subNavArea ul.sublist li {
  font-size: 0.6rem;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  footer .box .textArea .subNavArea ul.sublist li {
    font-size: 1.4rem;
  }
}
footer .box .textArea .subNavArea ul.sublist li + li {
  margin: 1.35rem 0 0;
}
@media screen and (max-width: 767px) {
  footer .box .textArea .subNavArea ul.sublist li + li {
    margin: 3.4rem 0 0;
  }
}
footer .box .textArea .otherArea {
  margin: 6.65rem 0 0;
  font-size: 0.6rem;
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.en footer .box .textArea .otherArea {
  width: 80%;
}
@media screen and (max-width: 767px) {
  footer .box .textArea .otherArea {
    margin: 8.85rem 0 0;
    font-size: 1.05rem;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .en footer .box .textArea .otherArea {
    width: 70%;
  }
}

footer .box .textArea .otherArea li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
footer .box .textArea .otherArea li a {
  display: inline-block;
  margin: 0 0.4rem 0 0;
  -webkit-transition: color 0.4s linear;
  transition: color 0.4s linear;
}
@media screen and (max-width: 767px) {
  footer .box .textArea .otherArea li a {
    margin: 0 0.7rem 0 0;
  }
}
footer .box .textArea .otherArea li a.current {
  color: #7bbbff;
}
footer .box .textArea .otherArea li a.over {
  color: #7bbbff;
}
footer .box .textArea .otherArea li a.other {
  margin: 0 0.2rem 0 0;
}
@media screen and (max-width: 767px) {
  footer .box .textArea .otherArea li a.other {
    margin: 0 0.4rem 0 0;
  }
}
footer .box .textArea .otherArea li + li {
  padding: 0 0 0 0.4rem;
}
@media screen and (max-width: 767px) {
  footer .box .textArea .otherArea li + li {
    padding: 0 0 0 0.7rem;
  }
}
@media screen and (max-width: 767px) {
  footer .box .textArea .otherArea li:nth-child(3) {
    padding: 0;
  }
  footer .box .textArea .otherArea li:nth-child(n+3) {
    margin: 2rem 0 0;
  }
}
footer .box .textArea .otherArea li .icoLink {
  display: inline-block;
  width: 0.75rem;
  height: 0.75rem;
  margin: 0 0.4rem 0 0;
  background: url(../img/common/ico_link.svg) no-repeat;
  background-size: cover;
}
@media screen and (max-width: 767px) {
  footer .box .textArea .otherArea li .icoLink {
    width: 1.2rem;
    height: 1.2rem;
    margin: 0 0.7rem 0 0;
  }
}
footer .box .copyright {
  margin: 1.3rem 0 0;
  font-size: 0.6rem;
  line-height: 1;
  font-weight: 300;
}
@media screen and (max-width: 767px) {
  footer .box .copyright {
    margin: 4.25rem 0 0;
    font-size: 1.15rem;
  }
}

/*
 * Container style
 */
.ps {
  overflow: hidden !important;
  overflow-anchor: none;
  -ms-overflow-style: none;
  touch-action: auto;
  -ms-touch-action: auto;
}

/*
 * Scrollbar rail styles
 */
.ps__rail-x {
  display: none;
  opacity: 0;
  transition: background-color 0.2s linear, opacity 0.2s linear;
  -webkit-transition: background-color 0.2s linear, opacity 0.2s linear;
  height: 15px;
  /* there must be 'bottom' or 'top' for ps__rail-x */
  bottom: 0px;
  /* please don't change 'position' */
  position: absolute;
}

.ps__rail-y {
  display: none;
  opacity: 0;
  transition: background-color 0.2s linear, opacity 0.2s linear;
  -webkit-transition: background-color 0.2s linear, opacity 0.2s linear;
  width: 15px;
  /* there must be 'right' or 'left' for ps__rail-y */
  right: 0;
  /* please don't change 'position' */
  position: absolute;
}

.ps--active-x > .ps__rail-x,
.ps--active-y > .ps__rail-y {
  display: block;
  background-color: transparent;
}

.ps:hover > .ps__rail-x,
.ps:hover > .ps__rail-y,
.ps--focus > .ps__rail-x,
.ps--focus > .ps__rail-y,
.ps--scrolling-x > .ps__rail-x,
.ps--scrolling-y > .ps__rail-y {
  opacity: 0.6;
}

.ps .ps__rail-x:hover,
.ps .ps__rail-y:hover,
.ps .ps__rail-x:focus,
.ps .ps__rail-y:focus,
.ps .ps__rail-x.ps--clicking,
.ps .ps__rail-y.ps--clicking {
  background-color: #eee;
  opacity: 0.9;
}

/*
 * Scrollbar thumb styles
 */
.ps__thumb-x {
  background-color: #aaa;
  border-radius: 6px;
  transition: background-color 0.2s linear, height 0.2s ease-in-out;
  -webkit-transition: background-color 0.2s linear, height 0.2s ease-in-out;
  height: 6px;
  /* there must be 'bottom' for ps__thumb-x */
  bottom: 2px;
  /* please don't change 'position' */
  position: absolute;
}

.ps__thumb-y {
  background-color: #aaa;
  border-radius: 6px;
  transition: background-color 0.2s linear, width 0.2s ease-in-out;
  -webkit-transition: background-color 0.2s linear, width 0.2s ease-in-out;
  width: 6px;
  /* there must be 'right' for ps__thumb-y */
  right: 2px;
  /* please don't change 'position' */
  position: absolute;
}

.ps__rail-x:hover > .ps__thumb-x,
.ps__rail-x:focus > .ps__thumb-x,
.ps__rail-x.ps--clicking .ps__thumb-x {
  background-color: #999;
  height: 11px;
}

.ps__rail-y:hover > .ps__thumb-y,
.ps__rail-y:focus > .ps__thumb-y,
.ps__rail-y.ps--clicking .ps__thumb-y {
  background-color: #999;
  width: 11px;
}

/* MS supports */
@supports (-ms-overflow-style: none) {
  .ps {
    overflow: auto !important;
  }
}
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .ps {
    overflow: auto !important;
  }
}
#loading {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  width: 100%;
  height: 100vh;
  background-color: #1a1a1a;
  -webkit-transition: opacity 0.8s ease-in;
  transition: opacity 0.8s ease-in;
  pointer-events: none;
  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;
}
#loading .content {
  width: 18.85rem;
  padding: 1px;
}
@media screen and (max-width: 767px) {
  #loading .content {
    width: 27rem;
  }
}
#loading .content .countArea {
  position: relative;
  width: 100%;
  height: 18.75rem;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}
@media screen and (max-width: 767px) {
  #loading .content .countArea {
    padding: 0;
    height: 26.9rem;
  }
}
#loading .content .countArea .num {
  position: absolute;
  bottom: 0.35rem;
  left: 0;
  width: 100%;
  height: 18.75rem;
  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;
}
@media screen and (max-width: 767px) {
  #loading .content .countArea .num {
    bottom: 1.1rem;
    height: 26.9rem;
  }
}
#loading .content .countArea .num .num1 {
  width: 4.2rem;
  height: 7.3rem;
}
@media screen and (max-width: 767px) {
  #loading .content .countArea .num .num1 {
    width: 5.95rem;
    height: 10.3rem;
  }
}
#loading .content .countArea .num .num1[data-no="0"] {
  display: none;
}
#loading .content .countArea .num .num1[data-no="1"] {
  background: url(../img/common/num/num_1.svg?2) no-repeat;
  background-size: cover;
}
#loading .content .countArea .num .num1[data-no="2"] {
  background: url(../img/common/num/num_2.svg?2) no-repeat;
  background-size: cover;
}
#loading .content .countArea .num .num1[data-no="3"] {
  background: url(../img/common/num/num_3.svg?2) no-repeat;
  background-size: cover;
}
#loading .content .countArea .num .num1[data-no="4"] {
  background: url(../img/common/num/num_4.svg?2) no-repeat;
  background-size: cover;
}
#loading .content .countArea .num .num1[data-no="5"] {
  background: url(../img/common/num/num_5.svg?2) no-repeat;
  background-size: cover;
}
#loading .content .countArea .num .num1[data-no="6"] {
  background: url(../img/common/num/num_6.svg?2) no-repeat;
  background-size: cover;
}
#loading .content .countArea .num .num1[data-no="7"] {
  background: url(../img/common/num/num_7.svg?2) no-repeat;
  background-size: cover;
}
#loading .content .countArea .num .num1[data-no="8"] {
  background: url(../img/common/num/num_8.svg?2) no-repeat;
  background-size: cover;
}
#loading .content .countArea .num .num1[data-no="9"] {
  background: url(../img/common/num/num_9.svg?2) no-repeat;
  background-size: cover;
}
#loading .content .countArea .num .num2 {
  margin: 0 0 0 0.5rem;
  width: 4.2rem;
  height: 7.3rem;
}
@media screen and (max-width: 767px) {
  #loading .content .countArea .num .num2 {
    width: 5.95rem;
    height: 10.3rem;
  }
}
#loading .content .countArea .num .num2[data-no="0"] {
  background: url(../img/common/num/num_0.svg?2) no-repeat;
  background-size: cover;
}
#loading .content .countArea .num .num2[data-no="1"] {
  background: url(../img/common/num/num_1.svg?2) no-repeat;
  background-size: cover;
}
#loading .content .countArea .num .num2[data-no="2"] {
  background: url(../img/common/num/num_2.svg?2) no-repeat;
  background-size: cover;
}
#loading .content .countArea .num .num2[data-no="3"] {
  background: url(../img/common/num/num_3.svg?2) no-repeat;
  background-size: cover;
}
#loading .content .countArea .num .num2[data-no="4"] {
  background: url(../img/common/num/num_4.svg?2) no-repeat;
  background-size: cover;
}
#loading .content .countArea .num .num2[data-no="5"] {
  background: url(../img/common/num/num_5.svg?2) no-repeat;
  background-size: cover;
}
#loading .content .countArea .num .num2[data-no="6"] {
  background: url(../img/common/num/num_6.svg?2) no-repeat;
  background-size: cover;
}
#loading .content .countArea .num .num2[data-no="7"] {
  background: url(../img/common/num/num_7.svg?2) no-repeat;
  background-size: cover;
}
#loading .content .countArea .num .num2[data-no="8"] {
  background: url(../img/common/num/num_8.svg?2) no-repeat;
  background-size: cover;
}
#loading .content .countArea .num .num2[data-no="9"] {
  background: url(../img/common/num/num_9.svg?2) no-repeat;
  background-size: cover;
}
#loading .content .countArea .num .num3 {
  margin: 0 0 0 0.5rem;
  width: 4.2rem;
  height: 7.3rem;
}
@media screen and (max-width: 767px) {
  #loading .content .countArea .num .num3 {
    width: 5.95rem;
    height: 10.3rem;
  }
}
#loading .content .countArea .num .num3[data-no="0"] {
  background: url(../img/common/num/num_0.svg?2) no-repeat;
  background-size: cover;
}
#loading .content .countArea .num .num3[data-no="1"] {
  background: url(../img/common/num/num_1.svg?2) no-repeat;
  background-size: cover;
}
#loading .content .countArea .num .num3[data-no="2"] {
  background: url(../img/common/num/num_2.svg?2) no-repeat;
  background-size: cover;
}
#loading .content .countArea .num .num3[data-no="3"] {
  background: url(../img/common/num/num_3.svg?2) no-repeat;
  background-size: cover;
}
#loading .content .countArea .num .num3[data-no="4"] {
  background: url(../img/common/num/num_4.svg?2) no-repeat;
  background-size: cover;
}
#loading .content .countArea .num .num3[data-no="5"] {
  background: url(../img/common/num/num_5.svg?2) no-repeat;
  background-size: cover;
}
#loading .content .countArea .num .num3[data-no="6"] {
  background: url(../img/common/num/num_6.svg?2) no-repeat;
  background-size: cover;
}
#loading .content .countArea .num .num3[data-no="7"] {
  background: url(../img/common/num/num_7.svg?2) no-repeat;
  background-size: cover;
}
#loading .content .countArea .num .num3[data-no="8"] {
  background: url(../img/common/num/num_8.svg?2) no-repeat;
  background-size: cover;
}
#loading .content .countArea .num .num3[data-no="9"] {
  background: url(../img/common/num/num_9.svg?2) no-repeat;
  background-size: cover;
}
@keyframes years-fade-in {
  0% { opacity: 0; }
  100% { opacity: 1; }
}
#loading .content .countArea .years {
  position: absolute;
  bottom: 3.75rem;
  left: 50%;
  width: 3.45rem;
  height: 1.85rem;
  margin: 0 0 0 -1.75rem;
  opacity: 0;
  animation: years-fade-in .4s ease-in-out .0s 1 normal forwards;
}

@media screen and (max-width: 767px) {
  #loading .content .countArea .years {
    bottom: 5.5rem;
    width: 5rem;
    height: 2.65rem;
    margin: 0 0 0 -2.5rem;
  }
}
#loading .content .text {
  margin: 2.4rem 0 0;
  font-size: 0.9rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  #loading .content .text {
    margin: 4.4rem 0 0;
    font-size: 1.15rem;
  }
}
#loading.end {
  opacity: 0;
}

#top #scroll_area {
  height: 100vh;
}
#top #scroll_area .mask {
  pointer-events: none;
  position: absolute;
  top: 3.7rem;
  left: 0;
  z-index: 28;
  width: 100%;
  height: calc(100vh - 3.7rem);
  background-color: #fff;
  -webkit-transition: top 0.6s ease-in 0.6s;
  transition: top 0.6s ease-in 0.6s;
}
@media screen and (max-width: 767px) {
  #top #scroll_area .mask {
    top: 5.95rem;
    height: calc(100vh - 5.95rem);
  }
}
.end #top #scroll_area .mask {
  top: -100vh;
}
#top .icoScroll {
  pointer-events: none;
  position: fixed;
  bottom: 0;
  right: 2.3rem;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  #top .icoScroll {
    right: 1.55rem;
  }
}
#top .icoScroll .ico {
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-animation: mouse_moving 1.6s ease-in-out infinite;
          animation: mouse_moving 1.6s ease-in-out infinite;
}
#top .icoScroll .ico span.text {
  display: block;
  font-size: 0.75rem;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  #top .icoScroll .ico span.text {
    font-size: 1.6rem;
  }
}
#top .icoScroll .ico span.line {
  margin: 0.25rem 0 0;
  display: block;
  width: 1px;
  height: 3.45rem;
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  #top .icoScroll .ico span.line {
    margin: 1.1rem 0 0;
    width: 0.1rem;
    height: 3.85rem;
  }
}
#top #visual {
  position: fixed;
  top: 0;
  width: 100%;
  height: calc(var(--vh, 1vh) * 100);
  height: 100vh;
  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;
  -webkit-transition: opacity 0.6s linear;
  transition: opacity 0.6s linear;
}
@media screen and (max-width: 767px) {
  #top #visual {
    min-height: 25rem;
  }
}
@media print {
  #top #visual {
    height: 100vh;
  }
}
#top #visual .logo {
  position: relative;
  z-index: 2;
  margin: 0.7rem auto 0;
  width: auto;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (max-width: 767px) {
  #top #visual .logo {
    margin: 0 auto 3.35rem;
    width: auto;
  }
}
#top #visual .logo span.num {
  margin: 0 auto 0;
  width: 24rem;
  opacity: 0;
  -webkit-transition: opacity 2s linear 0.8s;
  transition: opacity 2s linear 0.8s;
}
@media screen and (max-width: 767px) {
  #top #visual .logo span.num {
    width: 24rem;
  }
}
.end #top #visual .logo span.num {
  opacity: 1;
}
#top #visual .logo span.year {
  margin: 0.55rem auto 0;
  width: 3.5rem;
  opacity: 0;
  -webkit-transition: opacity 2s linear 1.8s;
  transition: opacity 2s linear 1.8s;
}
@media screen and (max-width: 767px) {
  #top #visual .logo span.year {
    margin: 0.75rem auto 0;
    width: 5.05rem;
  }
}
.end #top #visual .logo span.year {
  opacity: 1;
}
#top #visual .logo span.journey {
  margin: 0.75rem auto 0;
  width: 12.15rem;
  opacity: 0;
  -webkit-transition: opacity 2s linear 2.8s;
  transition: opacity 2s linear 2.8s;
}
@media screen and (max-width: 767px) {
  #top #visual .logo span.journey {
    margin: 1.2rem auto 0;
    width: 17.7rem;
  }
}
.end #top #visual .logo span.journey {
  opacity: 1;
}
#top #visual #movie_play {
  position: absolute;
  bottom: 3.15rem;
  left: 50%;
  margin: 0 0 0 -1.55rem;
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  #top #visual #movie_play {
    -webkit-transition: opacity 0.4s linear;
    transition: opacity 0.4s linear;
    cursor: pointer;
  }
  #top #visual #movie_play:hover {
    opacity: 0.6;
  }
}
@media screen and (max-width: 767px) {
  #top #visual #movie_play {
    top: 50%;
    margin: 11.7rem 0 0 -3.55rem;
  }
}
#top #visual #movie_play span.ico {
  margin: 0 auto 0;
  display: block;
  width: 3.1rem;
  height: 3.1rem;
}
@media screen and (max-width: 767px) {
  #top #visual #movie_play span.ico {
    width: 7.1rem;
    height: 7.1rem;
  }
}
#top #visual #movie_play span.text {
  margin: 1.1rem auto 0;
  display: block;
  font-size: 0.7rem;
  font-weight: 500;
  letter-spacing: 0.03em;
  color: #fff;
}
@media screen and (max-width: 767px) {
  #top #visual #movie_play span.text {
    margin: 1.95rem auto 0;
    font-size: 1.6rem;
  }
}
#top #visual #bg_movie_wrapper {
  pointer-events: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
#top #visual #bg_movie_wrapper video {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: auto;
  height: 100%;
}
#top #essay {
  position: relative;
  margin: 50rem auto 0;
  padding: 15rem 0 15rem 0;
  width: 100%;
  height: auto;
  color: #fff;
  overflow: visible !important;
  opacity: 0;
  -webkit-transition: opacity 0.6s linear;
  transition: opacity 0.6s linear;
}
@media screen and (max-width: 767px) {
  #top #essay {
    margin: 50rem auto 0;
    padding: 25rem 3.25rem 15rem 3.25rem;
    width: 100%;
    height: 110rem;
    background-color: rgba(0, 25, 52, 0.8);
    -webkit-transition: opacity 0s linear;
    transition: opacity 0s linear;
  }
}
@media print {
  #top #essay {
    opacity: 1 !important;
    height: 100vh !important;
    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;
  }
}
#top #essay.hide {
  -webkit-transition: opacity 0.6s linear 0.5s;
  transition: opacity 0.6s linear 0.5s;
  opacity: 0 !important;
}
@media screen and (max-width: 767px) {
  #top #essay.hide {
    -webkit-transition: opacity 0.6s linear;
    transition: opacity 0.6s linear;
  }
}
@media screen and (max-width: 767px) {
  #top #essay.fixed {
    position: fixed;
  }
}
#top #essay .essayBg {
  position: absolute;
  top: -5rem;
  left: 0;
  width: 100%;
  height: calc(100% + 5rem);
  background-color: rgba(0, 25, 52, 0.7);
}
@media screen and (max-width: 767px) {
  #top #essay .essayBg {
    display: none;
  }
}
@media print {
  #top #essay .essayBg {
    top: 0 !important;
    height: 100% !important;
  }
}
#top #essay .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
}
#top #essay h3.title {
  position: relative;
  margin: 0 0 0 3.1rem;
  font-size: 1.3rem;
  letter-spacing: 0.09em;
}
@media screen and (max-width: 767px) {
  #top #essay h3.title {
    margin: 0;
    font-size: 2.3rem;
    line-height: 1;
  }
}
#top #essay p.essay {
  position: relative;
  font-size: 0.7rem;
  letter-spacing: 0.09em;
  line-height: 2.2142857143;
  color: #c5c5c5;
  width: 27rem;
}
@media screen and (max-width: 767px) {
  #top #essay p.essay {
    font-size: 1.3rem;
    line-height: 1.9615384615;
    width: auto;
  }
}
#top #essay p.essay.en {
  width: 31rem;
}
@media screen and (max-width: 767px) {
  #top #essay p.essay.en {
    width: auto;
  }
}
#top #link {
  position: relative;
  margin: 0 auto 0;
  width: 100%;
  height: calc(100vh - 3.7rem);
  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;
}
@media screen and (max-width: 767px) {
  #top #link {
    top: -100rem;
    height: calc(100vh - 5.95rem);
    min-height: 25rem;
  }
}
#top #link ul.list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 767px) {
  #top #link ul.list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
#top #link ul.list li {
  margin: 0 1.2rem;
  width: 15rem;
  height: 6.5rem;
  opacity: 0;
  -webkit-transition: opacity 0.5s linear;
  transition: opacity 0.5s linear;
}
@media screen and (max-width: 767px) {
  #top #link ul.list li {
    margin: 0 auto 0;
    width: 30rem;
    height: 15rem;
  }
}
#top #link ul.list li + li {
  -webkit-transition: opacity 0.5s linear 0.2s;
  transition: opacity 0.5s linear 0.2s;
}
@media screen and (max-width: 767px) {
  #top #link ul.list li + li {
    margin: 3.05rem auto 0;
  }
}
#top #link ul.list li a {
  position: relative;
  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;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
  height: 100%;
  background-color: #fff;
  -webkit-transition: background-color 0.4s linear;
  transition: background-color 0.4s linear;
}
#top #link ul.list li a.over {
  background-color: #0b59ac;
}
#top #link ul.list li a.over span {
  color: #fff;
}
#top #link ul.list li span.eng {
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1;
  color: #0b59ac;
  text-align: center;
  -webkit-transition: color 0.4s linear;
  transition: color 0.4s linear;
}
@media screen and (max-width: 767px) {
  #top #link ul.list li span.eng {
    font-size: 1.6rem;
  }
}
#top #link ul.list li span.text {
  margin: 0.9rem 0 0;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.005em;
  line-height: 1;
  -webkit-transition: color 0.4s linear;
  transition: color 0.4s linear;
}
@media screen and (max-width: 767px) {
  #top #link ul.list li span.text {
    margin: 2rem 0 0;
    font-size: 1.55rem;
  }
}
#top #link ul.list li span.ico {
  position: absolute;
  top: 50%;
  right: 0.6rem;
  color: #0b59ac;
  width: 0.3rem;
  height: 0.5rem;
  -webkit-transition: color 0.4s linear;
  transition: color 0.4s linear;
}
@media screen and (max-width: 767px) {
  #top #link ul.list li span.ico {
    right: 0.8rem;
    width: 0.6rem;
    height: 1rem;
  }
}
#top #journey_area {
  position: relative;
  z-index: 2;
  background-color: #fff;
  padding: 6.5rem 0 7.5rem;
}
@media screen and (max-width: 767px) {
  #top #journey_area {
    padding: 7.25rem 0 11.25rem;
  }
}
#top #journey_area .mainTitleArea {
  margin: 0 auto 0;
  width: 100%;
}
#top #journey_area .mainTitleArea h2.title {
  font-size: 1.7rem;
  font-weight: 500;
  line-height: 1;
  color: #0b59ac;
  text-align: center;
}
@media screen and (max-width: 767px) {
  #top #journey_area .mainTitleArea h2.title {
    font-size: 2.7rem;
  }
}
#top #journey_area .mainTitleArea .subTitle {
  margin: 0.9rem 0 0;
  font-size: 0.7rem;
  font-weight: bold;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  #top #journey_area .mainTitleArea .subTitle {
    margin: 1.7rem 0 0;
    font-size: 1.35rem;
    text-align: center;
  }
}
#top #journey_area .chapterBox {
  position: relative;
  margin: 7rem auto 0;
  width: 67.2rem;
}
@media screen and (max-width: 767px) {
  #top #journey_area .chapterBox {
    margin: 5.5rem auto 0;
    width: 100%;
  }
}
#top #journey_area .chapterBox.active .titleBox {
  -webkit-filter: blur(0);
          filter: blur(0);
}
#top #journey_area .chapterBox.active .imageArea {
  -webkit-filter: blur(0);
          filter: blur(0);
}
#top #journey_area .chapterBox.chapter1 {
  margin: 3.55rem auto 0;
}
@media screen and (max-width: 767px) {
  #top #journey_area .chapterBox.chapter1 {
    margin: 6.25rem auto 0;
  }
}
#top #journey_area .chapterBox .titleBox {
  position: absolute;
  top: -3.55rem;
  right: 50%;
  z-index: 2;
  margin: 0 -24.1rem 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-filter: blur(0.5rem);
          filter: blur(0.5rem);
  -webkit-transition: -webkit-filter 0.6s linear;
  transition: -webkit-filter 0.6s linear;
  transition: filter 0.6s linear;
  transition: filter 0.6s linear, -webkit-filter 0.6s linear;
}
@media screen and (max-width: 767px) {
  #top #journey_area .chapterBox .titleBox {
    top: 0;
    margin: 0 -15.75rem 0 0;
  }
}
@media print {
  #top #journey_area .chapterBox .titleBox {
    -webkit-filter: none !important;
            filter: none !important;
  }
}
#top #journey_area .chapterBox .titleBox .chapterArea {
  font-size: 0.65rem;
  font-weight: 500;
  line-height: 1;
  color: #979797;
}
@media screen and (max-width: 767px) {
  #top #journey_area .chapterBox .titleBox .chapterArea {
    font-size: 1.05rem;
  }
}
#top #journey_area .chapterBox .titleBox .titleArea {
  margin: 0 1.6rem 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  #top #journey_area .chapterBox .titleBox .titleArea {
    margin: 0 1.5rem 0 0;
    font-size: 2.3rem;
  }
}
#top #journey_area .chapterBox .titleBox .titleArea span.text {
  margin: 0 0 0 0.8rem;
  padding: 0.2rem;
  background-color: #fff;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  #top #journey_area .chapterBox .titleBox .titleArea span.text {
    margin: 0 0 0 1.4rem;
  }
}
#top #journey_area .chapterBox .titleBox .titleArea span.text + span.text {
  margin: 0;
}
.en #top #journey_area .chapterBox .titleBox .titleArea span.text {
  padding: 0.2rem 0.2rem 0.2rem;
}
.en #top #journey_area .chapterBox .titleBox .titleArea {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin: 5.8rem 1.6rem 0 0;
  font-size: 1.5rem;
}
@media screen and (max-width: 767px) {
  .en #top #journey_area .chapterBox .titleBox .titleArea {
    margin: 3.2rem 2.6rem 0 0;
    font-size: 2.3rem;
  }
}
.en #top #journey_area .chapterBox .titleBox .titleArea span.text + span.text {
  margin: 0.7rem 0 0;
}
@media screen and (max-width: 767px) {
  .en #top #journey_area .chapterBox .titleBox .titleArea span.text + span.text {
    margin: 0.9rem 0 0;
  }
}
#top #journey_area .chapterBox .imageArea {
  position: relative;
  top: 0;
  left: 50%;
  margin: 0 0 0 -33.6rem;
  width: 48rem;
  height: 32rem;
  overflow: hidden;
  -webkit-filter: blur(0.5rem);
          filter: blur(0.5rem);
  -webkit-transition: -webkit-filter 0.6s linear 0.6s;
  transition: -webkit-filter 0.6s linear 0.6s;
  transition: filter 0.6s linear 0.6s;
  transition: filter 0.6s linear 0.6s, -webkit-filter 0.6s linear 0.6s;
}
@media screen and (max-width: 767px) {
  #top #journey_area .chapterBox .imageArea {
    left: 0;
    margin: 0;
    width: 23.5rem;
    height: 34.1rem;
  }
}
@media print {
  #top #journey_area .chapterBox .imageArea {
    -webkit-filter: none !important;
            filter: none !important;
    -webkit-transform: translate(0, 0) !important;
            transform: translate(0, 0) !important;
  }
}
#top #journey_area .chapterBox .imageArea span.image {
  position: absolute;
  top: 0rem;
  left: 0;
  width: 100%;
  height: 36rem;
  background: url(../img/top/chapter_1.jpg) top center no-repeat;
  background-size: cover;
  -webkit-transition: -webkit-transform 0.4s linear;
  transition: -webkit-transform 0.4s linear;
  transition: transform 0.4s linear;
  transition: transform 0.4s linear, -webkit-transform 0.4s linear;
}
@media screen and (max-width: 767px) {
  #top #journey_area .chapterBox .imageArea span.image {
    background: url(../img/top/chapter_1_sp.jpg) center center no-repeat;
    background-size: cover;
  }
}
#top #journey_area .chapterBox .imageArea span.image.chapter2 {
  background: url(../img/top/chapter_2.jpg) top center no-repeat;
  background-size: cover;
}
@media screen and (max-width: 767px) {
  #top #journey_area .chapterBox .imageArea span.image.chapter2 {
    background: url(../img/top/chapter_2_sp.jpg) center center no-repeat;
    background-size: cover;
  }
}
#top #journey_area .chapterBox .imageArea span.image.chapter3 {
  background: url(../img/top/chapter_3.jpg) top center no-repeat;
  background-size: cover;
}
@media screen and (max-width: 767px) {
  #top #journey_area .chapterBox .imageArea span.image.chapter3 {
    background: url(../img/top/chapter_3_sp.jpg) center center no-repeat;
    background-size: cover;
  }
}
#top #journey_area .chapterBox .imageArea span.image.chapter4 {
  background: url(../img/top/chapter_4.jpg) top center no-repeat;
  background-size: cover;
}
@media screen and (max-width: 767px) {
  #top #journey_area .chapterBox .imageArea span.image.chapter4 {
    background: url(../img/top/chapter_4_sp.jpg) center center no-repeat;
    background-size: cover;
  }
}
#top #journey_area .chapterBox .imageArea span.image.chapter5 {
  background: url(../img/top/chapter_5.jpg) top center no-repeat;
  background-size: cover;
}
@media screen and (max-width: 767px) {
  #top #journey_area .chapterBox .imageArea span.image.chapter5 {
    background: url(../img/top/chapter_5_sp.jpg) center center no-repeat;
    background-size: cover;
  }
}
#top #journey_area .chapterBox .imageArea a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 767px) {
  #top #journey_area .chapterBox .imageArea a {
    display: none;
  }
}
#top #journey_area .chapterBox .imageArea a.over span.viewAll {
  opacity: 1;
}
#top #journey_area .chapterBox .imageArea a span.viewAll {
  position: absolute;
  top: 50%;
  left: 4.1rem;
  width: 4.35rem;
  height: 2.9rem;
  color: #fff;
  opacity: 0;
  -webkit-transition: opacity 0.4s linear;
  transition: opacity 0.4s linear;
}
#top #journey_area .chapterBox .imageArea a span.viewAll span.text {
  margin: 0 0 0 0.1rem;
  font-size: 0.65rem;
  font-weight: 500;
  line-height: 1;
}
#top #journey_area .chapterBox .imageArea a span.viewAll span.arr {
  position: absolute;
  bottom: 0;
  left: 0;
}
#top #journey_area .chapterBox .btnMore {
  position: absolute;
  bottom: 0.3rem;
  right: 3.25rem;
  width: 9.3rem;
  height: 9.3rem;
  text-align: right;
  opacity: 0;
  -webkit-transform: translateX(5rem);
          transform: translateX(5rem);
  -webkit-transition: opacity 0.6s linear, width 0.4s linear, -webkit-transform 0.6s ease-in;
  transition: opacity 0.6s linear, width 0.4s linear, -webkit-transform 0.6s ease-in;
  transition: opacity 0.6s linear, transform 0.6s ease-in, width 0.4s linear;
  transition: opacity 0.6s linear, transform 0.6s ease-in, width 0.4s linear, -webkit-transform 0.6s ease-in;
}
@media screen and (max-width: 767px) {
  #top #journey_area .chapterBox .btnMore {
    position: relative;
    bottom: auto;
    right: auto;
    margin: 2.95rem auto 0;
    width: 30rem;
    height: auto;
    text-align: left;
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
#top #journey_area .chapterBox .btnMore.active {
  opacity: 1;
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
.en #top #journey_area .chapterBox .btnMore {
  height: 7.8rem;
}
#top #journey_area .chapterBox .btnMore a {
  display: block;
  width: 100%;
  height: 100%;
  padding: 2.5rem;
  color: #0b59ac;
}
@media screen and (max-width: 767px) {
  #top #journey_area .chapterBox .btnMore a {
    padding: 1.55rem 0 2.1rem;
  }
}
#top #journey_area .chapterBox .btnMore a.over span.ico {
  right: 1.5rem;
  width: 6.3rem;
}
@media screen and (max-width: 767px) {
  #top #journey_area .chapterBox .btnMore a.over span.ico {
    right: 0;
    width: 12.25rem;
  }
}
#top #journey_area .chapterBox .btnMore a.over span.ico span.bar:after {
  -webkit-animation: move_arr_after 1s linear infinite;
          animation: move_arr_after 1s linear infinite;
}
#top #journey_area .chapterBox .btnMore a.over span.ico span.bar:before {
  opacity: 1;
  -webkit-animation: move_arr_before 1s linear infinite;
          animation: move_arr_before 1s linear infinite;
}
#top #journey_area .chapterBox .btnMore span.text {
  display: block;
  font-size: 0.65rem;
  font-weight: 500;
  line-height: 1;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  #top #journey_area .chapterBox .btnMore span.text {
    font-size: 1.3rem;
  }
}
#top #journey_area .chapterBox .btnMore span.textEng {
  display: block;
  margin: 0.7rem 0 0;
  font-size: 0.5rem;
  font-weight: 500;
  line-height: 1;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  #top #journey_area .chapterBox .btnMore span.textEng {
    margin: 1rem 0 0;
    font-size: 1.05rem;
  }
}
.en #top #journey_area .chapterBox .btnMore span.textEng {
  margin: 0;
  font-size: 0.65rem;
}
@media screen and (max-width: 767px) {
  .en #top #journey_area .chapterBox .btnMore span.textEng {
    font-size: 1.5rem;
  }
}
#top #journey_area .chapterBox .btnMore span.ico {
  position: absolute;
  right: 2.5rem;
  bottom: 2.5rem;
  display: block;
  margin: 1.8rem 0 0;
  width: 100%;
  height: 0.55rem;
  -webkit-transition: width 0.4s linear, right 0.4s linear;
  transition: width 0.4s linear, right 0.4s linear;
}
@media screen and (max-width: 767px) {
  #top #journey_area .chapterBox .btnMore span.ico {
    right: 0;
    bottom: 3.8rem;
    margin: 0;
    height: 0.95rem;
  }
  .en #top #journey_area .chapterBox .btnMore span.ico {
    bottom: 4.8rem;
  }
}
#top #journey_area .chapterBox .btnMore span.ico span.bar {
  position: absolute;
  top: 0.25rem;
  left: 0;
  display: block;
  width: 100%;
  height: 1px;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  #top #journey_area .chapterBox .btnMore span.ico span.bar {
    top: 0.4rem;
    height: 0.15rem;
  }
}
#top #journey_area .chapterBox .btnMore span.ico span.bar:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 1px;
  background-color: #0b59ac;
  opacity: 0;
}
@media screen and (max-width: 767px) {
  #top #journey_area .chapterBox .btnMore span.ico span.bar:before {
    display: none;
  }
}
#top #journey_area .chapterBox .btnMore span.ico span.bar:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 4.15rem;
  height: 1px;
  background-color: #0b59ac;
}
@media screen and (max-width: 767px) {
  #top #journey_area .chapterBox .btnMore span.ico span.bar:after {
    width: 12.25rem;
    height: 0.15rem;
  }
}
.en #top #journey_area .chapterBox .btnMore span.ico span.bar:after {
  width: 3.45rem;
}
@media screen and (max-width: 767px) {
  .en #top #journey_area .chapterBox .btnMore span.ico span.bar:after {
    width: 12.2rem;
  }
}
#top #journey_area .chapterBox .btnMore span.ico span.arr {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 0.3rem;
  height: 0.55rem;
}
@media screen and (max-width: 767px) {
  #top #journey_area .chapterBox .btnMore span.ico span.arr {
    width: 0.6rem;
    height: 1.05rem;
  }
}
#top #journey_area .chapterLine {
  margin: 6.7rem auto 0;
  width: 50.15rem;
  height: 1px;
  background-color: #c5c5c5;
}
@media screen and (max-width: 767px) {
  #top #journey_area .chapterLine {
    margin: 2.6rem auto 0;
    width: 33rem;
  }
}
#top #journey_area #other_chapter_area {
  margin: 0.4rem auto 0;
}
@media screen and (max-width: 767px) {
  #top #journey_area #other_chapter_area {
    margin: 1.9rem auto 0;
  }
}

#popup {
  pointer-events: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  -webkit-transition: opacity 0.6s linear 0.3s;
  transition: opacity 0.6s linear 0.3s;
}
#popup.view {
  pointer-events: auto;
  z-index: 100;
  opacity: 1;
}
#popup .bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
}
#popup #popup_movie_area {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -11rem 0 0 -19.6rem;
  width: 39.2rem;
  height: 22.05rem;
}
@media screen and (max-width: 767px) {
  #popup #popup_movie_area {
    margin: -9rem 0 0 -16rem;
    width: 32rem;
    height: 18rem;
  }
}
@media screen and (min-width: 1440px) {
  #popup #popup_movie_area {
    margin: 0;
    width: 54.4444444444vw;
    height: 30.625vw;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
  }
}
#popup #popup_movie_area .closeBtn {
  position: absolute;
  top: 0rem;
  right: -3rem;
  width: 1.5rem;
  height: 1.5rem;
  color: #fff;
}
@media print, screen and (min-width: 768px) {
  #popup #popup_movie_area .closeBtn {
    cursor: pointer;
    -webkit-transition: opacity 0.4s linear;
    transition: opacity 0.4s linear;
  }
  #popup #popup_movie_area .closeBtn:hover {
    opacity: 0.6;
  }
}
@media screen and (max-width: 767px) {
  #popup #popup_movie_area .closeBtn {
    top: -6.7rem;
    right: 0;
    width: 3rem;
    height: 3rem;
  }
}
#popup #popup_movie_area #popup_movie_wrapper {
  width: 100%;
  height: 100%;
}
#popup #popup_movie_area #popup_movie_wrapper iframe {
  width: 100%;
  height: 100%;
}

@keyframes move_arr_after {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  40% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
  100% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
}
@-webkit-keyframes move_arr_after {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  40% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
  100% {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
  }
}
@keyframes move_arr_before {
  0% {
    width: 0;
  }
  40% {
    width: 100%;
  }
  100% {
    width: 100%;
  }
}
@-webkit-keyframes move_arr_before {
  0% {
    width: 0;
  }
  40% {
    width: 100%;
  }
  100% {
    width: 100%;
  }
}
@keyframes mouse_moving {
  0% {
    -webkit-transform: translateY(5px);
            transform: translateY(5px);
  }
  50% {
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
  }
  100% {
    -webkit-transform: translateY(5px);
            transform: translateY(5px);
  }
}
@-webkit-keyframes mouse_moving {
  0% {
    -webkit-transform: translateY(5px);
            transform: translateY(5px);
  }
  50% {
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
  }
  100% {
    -webkit-transform: translateY(5px);
            transform: translateY(5px);
  }
}
#about #about_fv {
  width: 100%;
  height: 22.05rem;
  background: url(../img/about/fv.jpg) center no-repeat;
  background-size: cover;
  position: relative;
}
@media screen and (max-width: 767px) {
  #about #about_fv {
    height: 38.45rem;
    background-image: url(../img/about/fv_sp.jpg);
  }
}
#about #about_fv .logo {
  width: 20rem;
  height: 3.9rem;
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  opacity: 0;
  -webkit-transition: opacity 2s linear 0.4s;
  transition: opacity 2s linear 0.4s;
}
@media screen and (max-width: 767px) {
  #about #about_fv .logo {
    width: 20rem;
    height: 3.9rem;
  }
}
.end #about #about_fv .logo {
  opacity: 1;
}

#message #message_image {
  width: 100%;
  margin: 0 auto;
  padding: 2.55rem 0 2.7rem;
  background-color: #eeeeee;
  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;
}
@media screen and (max-width: 767px) {
  #message #message_image {
    padding: 0;
    display: block;
  }
}
#message #message_image .profile_image {
  width: 32.7rem;
  opacity: 0;
  -webkit-transition: opacity 2s linear 1.5s;
  transition: opacity 2s linear 1.5s;
}
@media screen and (max-width: 767px) {
  #message #message_image .profile_image {
    width: 100%;
    -webkit-transition: opacity 2s linear 0s;
    transition: opacity 2s linear 0s;
  }
}
.end #message #message_image .profile_image {
  opacity: 1;
}
#message div.signature {
  opacity: 0;
  -webkit-transition: opacity 2s linear 0.4s;
  transition: opacity 2s linear 0.4s;
}
#message div.signature.pc {
  width: 11rem;
  margin-right: 3.8rem;
}
#message div.signature.sp {
  width: 100%;
  margin: 7rem auto 0;
}
.en #message div.signature.pc {
  width: 15rem;
  margin-right: 1.9rem;
}
.end #message div.signature {
  opacity: 1;
}
#message div.signature .text {
  display: block;
  width: 100%;
  font-size: 0.9rem;
  letter-spacing: 0.005em;
  line-height: 1.9;
  font-weight: 500;
  text-align: center;
}
@media screen and (max-width: 767px) {
  #message div.signature .text {
    font-size: 1.55rem;
    line-height: 1.6;
  }
}
#message div.signature span.signature {
  pointer-events: none;
  margin: 0.7rem auto 0;
  display: block;
  width: 9.65rem;
  height: 2.4rem;
}
@media screen and (max-width: 767px) {
  #message div.signature span.signature {
    margin: 1.75rem auto 0;
    width: 16.3rem;
    height: 4.05rem;
  }
}
.en #message div.signature span.signature {
  margin: 0.95rem auto 0;
  width: auto;
  height: auto;
  display: block;
  font-family: "FOT-筑紫Aオールド明朝 Pr6 M", serif;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .en #message div.signature span.signature {
    margin: 1.4rem auto 0;
    font-size: 3.4rem;
  }
}

#journey #journey_fv_bg {
  position: absolute;
  top: 3.7rem;
  z-index: -1;
  width: 100%;
  height: 33.3rem;
  background: url(../img/journey/chapter1/fv.jpg) center top no-repeat;
  background-size: cover;
}
@media screen and (max-width: 767px) {
  #journey #journey_fv_bg {
    top: 0;
    inset: 0 !important;
    height: 100vh;
    background-image: url(../img/journey/chapter1/fv_sp.jpg);
    -webkit-transition: border-width 0.7s linear;
    transition: border-width 0.7s linear;
    border-width: 0;
    border-style: solid;
    border-color: #fff;
  }
  #journey #journey_fv_bg.smalled {
    border-width: 1.25rem;
  }
}
@media print {
  #journey #journey_fv_bg {
    position: absolute !important;
    top: 0 !important;
  }
}
#journey .logo_sp {
  position: absolute;
  top: 7.95rem;
  left: 50%;
  margin: 0 0 0 -17.4rem;
  width: 7.05rem;
}
@media print, screen and (min-width: 768px) {
  #journey .logo_sp {
    display: none;
  }
}
#journey #chapter_title {
  position: absolute;
  top: 7.75rem;
  right: 2.25rem;
  z-index: 2;
  width: 5.45rem;
  padding: 2.1rem 0 0;
  -webkit-filter: blur(0.5rem);
          filter: blur(0.5rem);
  overflow: visible !important;
}
@media screen and (max-width: 767px) {
  #journey #chapter_title {
    position: relative;
    top: 0;
    right: auto;
    margin: 0 auto 0;
    padding: 6.35rem 0 0;
    height: calc(100vh - 9.9rem);
    height: calc(var(--vh, 1vh) * 100 - 9.9rem);
    min-height: 49.1rem;
    width: 34.5rem;
  }
}
@media print {
  #journey #chapter_title {
    -webkit-filter: none;
            filter: none;
    position: absolute !important;
    top: 5.25rem !important;
    left: auto !important;
    -webkit-animation-duration: 0s !important;
            animation-duration: 0s !important;
  }
}
.end #journey #chapter_title {
  -webkit-animation-name: blurAnime;
          animation-name: blurAnime;
  -webkit-animation-duration: 2s;
          animation-duration: 2s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}
.en #journey #chapter_title {
  width: auto;
  padding: 7.3rem 0 0;
}
@media screen and (max-width: 767px) {
  .en #journey #chapter_title {
    width: 34.7rem;
    padding: 6.3rem 0 0;
  }
}
#journey #chapter_title .chapterArea {
  position: absolute;
  top: 0;
  right: 0;
  width: 1.05rem;
  padding: 0.75rem 0 1rem;
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 767px) {
  #journey #chapter_title .chapterArea {
    position: relative;
    top: 0;
    margin: 0 0 0 auto;
    padding: 1.75rem 0 2.25rem;
    width: 2.1rem;
  }
}
#journey #chapter_title .chapterArea .line {
  display: block;
  height: 0.9rem;
  width: 0.1rem;
  background-color: #979797;
}
@media screen and (max-width: 767px) {
  #journey #chapter_title .chapterArea .line {
    height: 1.8rem;
    width: 0.1rem;
  }
}
#journey #chapter_title .chapterArea .text {
  margin: 1rem 0 0 0;
  font-size: 0.525rem;
  line-height: 1;
  color: #979797;
}
@media screen and (max-width: 767px) {
  #journey #chapter_title .chapterArea .text {
    margin: 1rem 0 0 0;
    font-size: 1.05rem;
  }
}
#journey #chapter_title .titleArea {
  position: relative;
  font-size: 2rem;
}
@media screen and (max-width: 767px) {
  #journey #chapter_title .titleArea {
    position: absolute;
    top: 10.6rem;
    right: 7.25rem;
    font-size: 4rem;
  }
}
.en #journey #chapter_title .titleArea {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin: 0 4rem 0 0;
}
@media screen and (max-width: 767px) {
  .en #journey #chapter_title .titleArea {
    margin: 0;
    top: 24.7rem;
    right: 0.75rem;
  }
}
#journey #chapter_title .titleArea .text {
  position: relative;
  display: block;
  white-space: nowrap;
  line-height: 1;
  padding: 0.4rem 0.1rem;
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  #journey #chapter_title .titleArea .text {
    position: absolute;
    top: 0;
    right: 0;
  }
}
.en #journey #chapter_title .titleArea .text {
  display: inline-block;
  text-align: right;
  padding: 0 0.4rem 0.1rem;
}
@media screen and (max-width: 767px) {
  .en #journey #chapter_title .titleArea .text {
    position: relative;
    letter-spacing: 0.01em;
  }
}
#journey #chapter_title .titleArea .text + .text {
  position: absolute;
  top: 0;
  right: 6.7rem;
}
@media screen and (max-width: 767px) {
  #journey #chapter_title .titleArea .text + .text {
    right: 6.2rem;
  }
}
.en #journey #chapter_title .titleArea .text + .text {
  position: relative;
  top: auto;
  right: auto;
  margin: 1.2rem 0 0;
}
#journey #journey_fv {
  position: relative;
  padding: 1.8rem 0 4.4rem;
}
@media screen and (max-width: 767px) {
  #journey #journey_fv {
    padding: 2.05rem 0 6rem;
  }
}
.en #journey #journey_fv {
  padding: 1.8rem 0 0;
}
@media screen and (max-width: 767px) {
  .en #journey #journey_fv {
    padding: 2.05rem 0 6rem;
  }
}
#journey #journey_fv .logo {
  position: relative;
  width: 3.4rem;
  margin: 0 auto;
}
#journey #journey_fv .essayArea {
  position: relative;
  top: 0;
  left: 50%;
  margin: 18.5rem 0 0 -31.6rem;
  width: 50.85rem;
  height: 32.85rem;
  background-color: #fff;
  opacity: 0;
  -webkit-transform: translateY(5rem);
          transform: translateY(5rem);
  -webkit-transition: opacity 1s ease-in 1s, -webkit-transform 1s ease-in 1s;
  transition: opacity 1s ease-in 1s, -webkit-transform 1s ease-in 1s;
  transition: opacity 1s ease-in 1s, transform 1s ease-in 1s;
  transition: opacity 1s ease-in 1s, transform 1s ease-in 1s, -webkit-transform 1s ease-in 1s;
}
.end #journey #journey_fv .essayArea {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.en #journey #journey_fv .essayArea {
  height: auto;
}
@media screen and (max-width: 767px) {
  #journey #journey_fv .essayArea {
    width: 31.6rem;
    height: auto;
    left: 3.05rem;
    margin: 0 0;
    background-color: rgba(255, 255, 255, 0.97);
  }
}
#journey #journey_fv .essayArea .inner {
  padding: 3rem 2.5rem 1.5rem 0;
}
@media screen and (max-width: 767px) {
  #journey #journey_fv .essayArea .inner {
    padding: 3.75rem 0 0 0;
  }
}
.en #journey #journey_fv .essayArea .inner {
  padding: 3rem 2.5rem 0 4.75rem;
}
@media screen and (max-width: 767px) {
  .en #journey #journey_fv .essayArea .inner {
    padding: 3.75rem 0 0 0;
  }
}
@media screen and (max-width: 767px) {
  #journey #journey_fv .essayArea .line {
    width: 5.2rem;
    height: 1px;
    margin: 3.5rem auto 3.25rem;
    background-color: #5d5d5d;
  }
}
#journey #journey_fv .essayArea h2.title {
  font-size: 1rem;
  text-align: right;
  font-weight: 500;
  line-height: 1;
  padding: 0 0 3rem 0;
}
@media screen and (max-width: 767px) {
  #journey #journey_fv .essayArea h2.title {
    font-size: 1.95rem;
    padding: 0;
    text-align: center;
    line-height: 1.8;
  }
  #journey #journey_fv .essayArea h2.title + .line {
    margin: 3.5rem auto 3.25rem;
  }
}
#journey #journey_fv .essayArea p.essay {
  font-size: 0.7rem;
  line-height: 2.2;
  letter-spacing: 0.09em;
  color: #5d5d5d;
  white-space: nowrap;
}
@media print, screen and (min-width: 768px) {
  #journey #journey_fv .essayArea p.essay {
    position: absolute;
    right: 3rem;
    top: 7.2rem;
  }
}
@media screen and (max-width: 767px) {
  #journey #journey_fv .essayArea p.essay {
    margin: 0 auto;
    font-size: 1.3rem;
    line-height: 1.96;
    padding: 0 0 5rem;
  }
}
.en #journey #journey_fv .essayArea p.essay {
  width: 29rem;
  letter-spacing: 0.03em;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  white-space: inherit;
}
@media print, screen and (min-width: 768px) {
  .en #journey #journey_fv .essayArea p.essay {
    position: relative;
    top: auto;
    right: auto;
  }
}
@media screen and (max-width: 767px) {
  .en #journey #journey_fv .essayArea p.essay {
    margin: 0 auto 0;
    padding: 0 0 3.5rem;
    width: 26rem;
    letter-spacing: 0.01em;
  }
}
#journey #journey_fv .essayArea .imageArea {
  margin: 0 auto 0;
  padding: 0;
}
#journey #journey_fv .essayArea .imageArea + .line {
  margin-top: 5rem;
}
#journey #journey_fv .essayArea .imageArea ul.list li {
  width: 100%;
}
#journey #image_area {
  margin: 0 auto 0;
  padding: 0 0 14rem;
}
#journey #image_area ul.list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#journey #image_area ul.list li {
  width: 25.6rem;
  margin: 0 1rem;
}
#journey #milestone_area {
  padding: 4.7rem 0 0;
  background-color: #1a1a1a;
  color: #fff;
  position: relative;
}
@media screen and (max-width: 767px) {
  #journey #milestone_area {
    padding: 6rem 0 0;
  }
}
#journey #milestone_area .titleArea {
  margin: 0 auto 0;
  padding: 0 0 2.7rem;
  width: 58.4rem;
}
@media screen and (max-width: 767px) {
  #journey #milestone_area .titleArea {
    padding: 0 0 7.5rem;
    width: 100%;
  }
}
#journey #milestone_area .titleArea h3.title {
  font-size: 1.05rem;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  #journey #milestone_area .titleArea h3.title {
    font-size: 2rem;
    text-align: center;
  }
}
#journey #milestone_area .bodyArea {
  border-top: 1px solid #fff;
  padding: 0 0 8.4rem;
}
@media screen and (max-width: 767px) {
  #journey #milestone_area .bodyArea {
    padding: 0 0 9.6rem;
  }
}
#journey #milestone_area .bodyArea .bodyAreaInner {
  margin: 0 0 0 calc(100vw/2 - 12.7rem);
}
@media screen and (max-width: 767px) {
  #journey #milestone_area .bodyArea .bodyAreaInner {
    margin: 0;
  }
}
#journey #milestone_area .bodyArea .box {
  width: 27.05rem;
}
@media screen and (max-width: 767px) {
  #journey #milestone_area .bodyArea .box {
    width: 31.25rem;
  }
}
#journey #milestone_area .bodyArea .box a {
  display: block;
  color: #c5c5c5;
}
@media print, screen and (min-width: 768px) {
  #journey #milestone_area .bodyArea .box a:hover .subTitleArea h4.title .text {
    text-decoration: underline;
  }
  #journey #milestone_area .bodyArea .box a:hover .imageArea {
    opacity: 0.6;
  }
}
#journey #milestone_area .bodyArea .box .subTitleArea h4.title {
  border-left: 1px solid #fff;
  padding: 1.1rem 0 1rem 1.2rem;
}
@media screen and (max-width: 767px) {
  #journey #milestone_area .bodyArea .box .subTitleArea h4.title {
    padding: 1.7rem 0 1rem 1.2rem;
  }
}
#journey #milestone_area .bodyArea .box .subTitleArea h4.title .year {
  display: block;
  font-size: 1.55rem;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  #journey #milestone_area .bodyArea .box .subTitleArea h4.title .year {
    font-size: 2.4rem;
  }
}
#journey #milestone_area .bodyArea .box .subTitleArea h4.title .text {
  display: block;
  margin: 0.85rem 0 0;
  font-size: 0.8rem;
  font-weight: 500;
  line-height: 1;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  letter-spacing: 0.03em;
  color: #c5c5c5;
}
@media screen and (max-width: 767px) {
  #journey #milestone_area .bodyArea .box .subTitleArea h4.title .text {
    margin: 1.3rem 0 0;
    font-size: 1.3rem;
    letter-spacing: 0;
  }
}
#journey #milestone_area .bodyArea .box .imageArea {
  width: 24.5rem;
  margin: 0.6rem 0 0;
  -webkit-transition: opacity 0.4s linear;
  transition: opacity 0.4s linear;
}
@media screen and (max-width: 767px) {
  #journey #milestone_area .bodyArea .box .imageArea {
    width: 27.6rem;
    margin: 0.6rem 0 0 1.5rem;
  }
}
#journey #milestone_area .bodyArea .slide_controller {
  position: absolute;
  bottom: 3.6rem;
  right: 50%;
  margin: 0 -29.7rem 0 0;
  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;
}
@media screen and (max-width: 767px) {
  #journey #milestone_area .bodyArea .slide_controller {
    display: none;
  }
}
#journey #milestone_area .bodyArea .slide_controller > div {
  width: 2.55rem;
  height: 2.55rem;
  border-radius: 50%;
  background-color: #5d5d5d;
  color: #fff;
  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;
  cursor: pointer;
  -webkit-transition: background-color 0.4s linear;
  transition: background-color 0.4s linear;
}
#journey #milestone_area .bodyArea .slide_controller > div.slideLeft {
  margin: 0 1.3rem 0 0;
}
#journey #milestone_area .bodyArea .slide_controller > div.over {
  background-color: #0b59ac;
}
#journey #milestone_area .bodyArea .slide_controller > div .icon {
  width: 0.5rem;
  height: 0.8rem;
}
#journey #next_chapter_area {
  position: relative;
  background-color: #fff;
  padding: 5.1rem 0 6.3rem;
  opacity: 0;
  -webkit-transition: opacity 1s linear;
  transition: opacity 1s linear;
}
@media screen and (max-width: 767px) {
  #journey #next_chapter_area {
    padding: 4.5rem 0 5.75rem;
  }
}
@media print {
  #journey #next_chapter_area {
    opacity: 1 !important;
  }
}
#journey #next_chapter_area.active {
  opacity: 1;
}
#journey #next_chapter_area .inner {
  width: 59.4rem;
  margin: 0 auto 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 767px) {
  #journey #next_chapter_area .inner {
    display: block;
    width: 31.5rem;
  }
}
#journey #next_chapter_area h4.title {
  width: 10.15rem;
  padding: 0 0 0 1.65rem;
  font-size: 0.9rem;
  font-weight: 500;
  color: #0b59ac;
  line-height: 1;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  #journey #next_chapter_area h4.title {
    width: 100%;
    padding: 0;
    font-size: 1.95rem;
    text-align: center;
  }
}
#journey #next_chapter_area .nextChapterList {
  margin: 0 0 0 2.75rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  #journey #next_chapter_area .nextChapterList {
    margin: 3.35rem auto 0;
  }
}
#journey #next_chapter_area .nextChapterList > li {
  margin: 0 0.9rem;
  width: 22.1rem;
  border-bottom: 1px solid #c5c5c5;
}
@media screen and (max-width: 767px) {
  #journey #next_chapter_area .nextChapterList > li {
    margin: 0;
    width: 100%;
  }
}
#journey #next_chapter_area .nextChapterList > li:first-child {
  border-top: 1px solid #c5c5c5;
}
@media print, screen and (min-width: 768px) {
  #journey #next_chapter_area .nextChapterList > li:nth-child(2) {
    border-top: 1px solid #c5c5c5;
  }
}
#journey #next_chapter_area .nextChapterList > li > a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  padding: 0.75rem 0.35rem 0.8rem 0.5rem;
  -webkit-transition: all 0.4s linear;
  transition: all 0.4s linear;
}
#journey #next_chapter_area .nextChapterList > li > a.over {
  opacity: 1;
  background-color: #1a1a1a;
  color: #fff;
}
#journey #next_chapter_area .nextChapterList > li > a.over span.link {
  color: #7bbbff;
}
#journey #next_chapter_area .nextChapterList > li .box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0.2rem auto 0.2rem;
  padding: 0.55rem 0.35rem 0.6rem 0.5rem;
  background-color: #1a1a1a;
  color: #fff;
}
#journey #next_chapter_area .nextChapterList > li .textArea {
  width: 15.45rem;
}
@media screen and (max-width: 767px) {
  #journey #next_chapter_area .nextChapterList > li .textArea {
    width: 22rem;
  }
}
#journey #next_chapter_area .nextChapterList > li .textArea span.chapter {
  font-size: 0.7rem;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  #journey #next_chapter_area .nextChapterList > li .textArea span.chapter {
    font-size: 1rem;
  }
}
#journey #next_chapter_area .nextChapterList > li .textArea span.text {
  display: block;
  margin: 1.2rem 0 0 0.6rem;
  font-size: 0.85rem;
  font-weight: 500;
  line-height: 1;
  white-space: nowrap;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
@media screen and (max-width: 767px) {
  #journey #next_chapter_area .nextChapterList > li .textArea span.text {
    margin: 1.8rem 0 0 1rem;
    font-size: 1.2rem;
  }
}
#journey #next_chapter_area .nextChapterList > li .textArea span.link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 1.2rem 0 0 0.9rem;
  color: #0b59ac;
  -webkit-transition: color 0.4s linear;
  transition: color 0.4s linear;
}
@media screen and (max-width: 767px) {
  #journey #next_chapter_area .nextChapterList > li .textArea span.link {
    margin: 1.8rem 0 0 1rem;
  }
}
#journey #next_chapter_area .nextChapterList > li .textArea span.link span.ico {
  margin: 0 0.45rem 0 0;
  width: 0.2rem;
  height: 0.35rem;
}
@media screen and (max-width: 767px) {
  #journey #next_chapter_area .nextChapterList > li .textArea span.link span.ico {
    margin: 0 0.45rem 0 0;
    width: 0.3rem;
    height: 0.55rem;
  }
}
#journey #next_chapter_area .nextChapterList > li .textArea span.link span.linkText {
  font-size: 0.65rem;
  font-weight: 500;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  #journey #next_chapter_area .nextChapterList > li .textArea span.link span.linkText {
    font-size: 1rem;
  }
}
#journey #next_chapter_area .nextChapterList > li ul.sublist {
  margin: 0.85rem 0 0;
}
@media screen and (max-width: 767px) {
  #journey #next_chapter_area .nextChapterList > li ul.sublist {
    margin: 2.5rem 0 0;
  }
}
#journey #next_chapter_area .nextChapterList > li ul.sublist li {
  margin: 0 0 0.2rem;
}
@media screen and (max-width: 767px) {
  #journey #next_chapter_area .nextChapterList > li ul.sublist li {
    margin: 0 0 0.4rem;
  }
}
#journey #next_chapter_area .nextChapterList > li ul.sublist li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0.2rem 1.3rem;
  width: 100%;
  -webkit-transition: all 0.4s linear;
  transition: all 0.4s linear;
}
@media screen and (max-width: 767px) {
  #journey #next_chapter_area .nextChapterList > li ul.sublist li a {
    padding: 0.4rem 0.9rem;
  }
}
#journey #next_chapter_area .nextChapterList > li ul.sublist li a.over {
  opacity: 1;
  background-color: #1a1a1a;
  color: #fff;
}
#journey #next_chapter_area .nextChapterList > li ul.sublist li a.over span.bar {
  background-color: #fff;
}
#journey #next_chapter_area .nextChapterList > li ul.sublist li span.chapter {
  font-size: 0.7rem;
  letter-spacing: 0.09em;
  line-height: 1.7142857143;
}
@media screen and (max-width: 767px) {
  #journey #next_chapter_area .nextChapterList > li ul.sublist li span.chapter {
    font-size: 1.1rem;
    line-height: 1.6363636364;
  }
}
#journey #next_chapter_area .nextChapterList > li ul.sublist li span.text {
  margin: 0 0 0 1.5rem;
  font-size: 0.7rem;
  letter-spacing: 0.09em;
  line-height: 1.7142857143;
}
@media screen and (max-width: 767px) {
  #journey #next_chapter_area .nextChapterList > li ul.sublist li span.text {
    margin: 0 0 0 1.9rem;
    font-size: 1.1rem;
    line-height: 1.6363636364;
  }
}
#journey #next_chapter_area .nextChapterList > li .imageArea {
  width: 5.75rem;
  height: 5.75rem;
}
@media screen and (max-width: 767px) {
  #journey #next_chapter_area .nextChapterList > li .imageArea {
    width: 8.3rem;
    height: 8.3rem;
  }
}

#journey #article_area, #technology #article_area {
  background-color: #f0f6e7;
  position: relative;
}
@media screen and (max-width: 767px) {
  #journey #article_area, #technology #article_area {
    padding: calc(8.75rem - 1.25rem) 0 0;
  }
}
#journey #article_area .articleHeader, #technology #article_area .articleHeader {
  position: relative;
}
@media screen and (max-width: 767px) {
  #journey #article_area .articleHeader, #technology #article_area .articleHeader {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
#journey #article_area .articleHeader .left, #technology #article_area .articleHeader .left {
  width: 27.8rem;
  height: 18.75rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media print, screen and (min-width: 768px) {
  #journey #article_area .articleHeader .left, #technology #article_area .articleHeader .left {
    position: absolute;
    top: 0;
    left: 50%;
    margin: auto 0 auto -27.8rem;
  }
}
@media screen and (max-width: 767px) {
  #journey #article_area .articleHeader .left, #technology #article_area .articleHeader .left {
    display: block;
    width: 35.15rem;
    height: auto;
    padding: 4.5rem 0 0;
    margin: 0 0 0 2.35rem;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}
#journey #article_area .articleHeader .left h3.title, #technology #article_area .articleHeader .left h3.title {
  font-size: 1.05rem;
  font-weight: 500;
  color: #1a1a1a;
}
@media screen and (max-width: 767px) {
  #journey #article_area .articleHeader .left h3.title, #technology #article_area .articleHeader .left h3.title {
    font-size: 1.6rem;
  }
}
#journey #article_area .articleHeader .left .text, #technology #article_area .articleHeader .left .text {
  margin: 1.95rem 0 0;
  font-size: 1.35rem;
  font-weight: 500;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
@media screen and (max-width: 767px) {
  #journey #article_area .articleHeader .left .text, #technology #article_area .articleHeader .left .text {
    margin: 1.8rem 0 0;
    font-size: 2.75rem;
    letter-spacing: -0.01em;
    white-space: nowrap;
  }
}
#journey #article_area .articleHeader .right, #technology #article_area .articleHeader .right {
  width: 35.9rem;
  height: 18.75rem;
  background: url(../img/journey/chapter1/article_header_image.jpg) center center no-repeat;
  background-size: 35.95rem 18.75rem;
  margin: 0 0 0 auto;
}
@media screen and (max-width: 767px) {
  #journey #article_area .articleHeader .right, #technology #article_area .articleHeader .right {
    width: 100%;
    height: 18.8rem;
    background-image: url(../img/journey/chapter1/article_header_image_sp.jpg);
    background-size: 37.5rem 18.8rem;
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
  }
}
#journey #article_area .articleWrapper, #technology #article_area .articleWrapper {
  margin: 3.65rem 0 0;
  position: relative;
}
@media screen and (max-width: 767px) {
  #journey #article_area .articleWrapper, #technology #article_area .articleWrapper {
    margin: 0;
  }
}
#journey #article_area .articleWrapper .articleBox, #technology #article_area .articleWrapper .articleBox {
  width: 56rem;
  margin: 0 auto 0;
  padding: 4.75rem 0 0;
  position: relative;
  left: 50%;
  margin: 0 0 0 -22.35rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 767px) {
  #journey #article_area .articleWrapper .articleBox, #technology #article_area .articleWrapper .articleBox {
    width: 100%;
    padding: 5.25rem 0 6.5rem;
    left: 0;
    margin: 0 auto;
  }
}
#journey #article_area .articleWrapper .articleBox .textArea, #technology #article_area .articleWrapper .articleBox .textArea {
  width: 23.65rem;
  margin: 0 3.35rem 0 0;
  padding: 0 0 5rem;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  #journey #article_area .articleWrapper .articleBox .textArea, #technology #article_area .articleWrapper .articleBox .textArea {
    width: 100%;
    margin: 0;
    padding: 0;
  }
}
@media print, screen and (min-width: 768px) {
  #journey #article_area .articleWrapper .articleBox .textArea .article:last-child, #technology #article_area .articleWrapper .articleBox .textArea .article:last-child {
    min-height: 30rem;
  }
}
#journey #article_area .articleWrapper .articleBox .textArea .article + .article, #technology #article_area .articleWrapper .articleBox .textArea .article + .article {
  margin: 6.5rem 0 0;
}
@media screen and (max-width: 767px) {
  #journey #article_area .articleWrapper .articleBox .textArea .article + .article, #technology #article_area .articleWrapper .articleBox .textArea .article + .article {
    margin: 4.5rem 0 0;
  }
}
#journey #article_area .articleWrapper .articleBox .textArea h4.title, #technology #article_area .articleWrapper .articleBox .textArea h4.title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 767px) {
  #journey #article_area .articleWrapper .articleBox .textArea h4.title, #technology #article_area .articleWrapper .articleBox .textArea h4.title {
    padding: 0 2.9rem;
  }
}
#journey #article_area .articleWrapper .articleBox .textArea h4.title.second, #technology #article_area .articleWrapper .articleBox .textArea h4.title.second {
  margin: 8rem 0 0;
}
@media screen and (max-width: 767px) {
  #journey #article_area .articleWrapper .articleBox .textArea h4.title.second, #technology #article_area .articleWrapper .articleBox .textArea h4.title.second {
    margin: 5.8rem 0 0;
  }
}
#journey #article_area .articleWrapper .articleBox .textArea h4.title .line, #technology #article_area .articleWrapper .articleBox .textArea h4.title .line {
  width: 3.6rem;
  height: 1px;
  background-color: #1a1a1a;
  display: block;
  margin: 0.75rem 1.35rem 0 0;
}
@media screen and (max-width: 767px) {
  #journey #article_area .articleWrapper .articleBox .textArea h4.title .line, #technology #article_area .articleWrapper .articleBox .textArea h4.title .line {
    width: 5.05rem;
    height: 0.1rem;
    margin: 1.35rem 1.5rem 0 0;
  }
}
#journey #article_area .articleWrapper .articleBox .textArea h4.title .text, #technology #article_area .articleWrapper .articleBox .textArea h4.title .text {
  font-size: 0.9rem;
  font-weight: 500;
  line-height: 1.7;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  #journey #article_area .articleWrapper .articleBox .textArea h4.title .text, #technology #article_area .articleWrapper .articleBox .textArea h4.title .text {
    font-size: 1.6rem;
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
  }
}
#journey #article_area .articleWrapper .articleBox .textArea h4.title + p.body, #technology #article_area .articleWrapper .articleBox .textArea h4.title + p.body {
  margin: 2.5rem 0 0;
}
@media screen and (max-width: 767px) {
  #journey #article_area .articleWrapper .articleBox .textArea h4.title + p.body, #technology #article_area .articleWrapper .articleBox .textArea h4.title + p.body {
    margin: 2.75rem 0 0;
  }
}
#journey #article_area .articleWrapper .articleBox .textArea p.body, #technology #article_area .articleWrapper .articleBox .textArea p.body {
  font-size: 0.8rem;
  color: #5d5d5d;
  line-height: 2.1;
  letter-spacing: 0.005em;
}
@media screen and (max-width: 767px) {
  #journey #article_area .articleWrapper .articleBox .textArea p.body, #technology #article_area .articleWrapper .articleBox .textArea p.body {
    padding: 0 2.9rem;
    font-size: 1.3rem;
    line-height: 1.96;
  }
}
#journey #article_area .articleWrapper .articleBox .textArea p.body span.note, #technology #article_area .articleWrapper .articleBox .textArea p.body span.note {
  font-size: 0.7rem;
}
@media screen and (max-width: 767px) {
  #journey #article_area .articleWrapper .articleBox .textArea p.body span.note, #technology #article_area .articleWrapper .articleBox .textArea p.body span.note {
    font-size: 1.1rem;
  }
}
#journey #article_area .articleWrapper .articleBox .textArea ul.note, #technology #article_area .articleWrapper .articleBox .textArea ul.note {
  margin: 2.15rem 0 0;
  width: 23.15rem;
}
@media screen and (max-width: 767px) {
  #journey #article_area .articleWrapper .articleBox .textArea ul.note, #technology #article_area .articleWrapper .articleBox .textArea ul.note {
    margin: 2.7rem 0 0 3rem;
    width: 31.45rem;
  }
}
#journey #article_area .articleWrapper .articleBox .textArea ul.note li, #technology #article_area .articleWrapper .articleBox .textArea ul.note li {
  text-indent: -3em;
  padding-left: 3em;
  color: #5d5d5d;
  font-size: 0.7rem;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  #journey #article_area .articleWrapper .articleBox .textArea ul.note li, #technology #article_area .articleWrapper .articleBox .textArea ul.note li {
    font-size: 1.2rem;
    line-height: 2.125;
  }
}
.en #journey #article_area .articleWrapper .articleBox .textArea ul.note li, .en #technology #article_area .articleWrapper .articleBox .textArea ul.note li {
  text-indent: 0;
  padding-left: 0;
  line-height: 2;
}
#journey #article_area .articleWrapper .articleBox .textArea ul.note li + li, #technology #article_area .articleWrapper .articleBox .textArea ul.note li + li {
  margin: 0.6rem 0 0;
}
@media screen and (max-width: 767px) {
  #journey #article_area .articleWrapper .articleBox .textArea ul.note li + li, #technology #article_area .articleWrapper .articleBox .textArea ul.note li + li {
    margin: 0.6rem 0 0;
  }
}
.en #journey #article_area .articleWrapper .articleBox .textArea ul.note li + li, .en #technology #article_area .articleWrapper .articleBox .textArea ul.note li + li {
  margin: 0;
}
#journey #article_area .articleWrapper .articleBox .textArea .technologyLink, #technology #article_area .articleWrapper .articleBox .textArea .technologyLink {
  margin: 1.75rem 0 0;
  width: 23.15rem;
  border: 1px solid #1a1a1a;
}
@media screen and (max-width: 767px) {
  #journey #article_area .articleWrapper .articleBox .textArea .technologyLink, #technology #article_area .articleWrapper .articleBox .textArea .technologyLink {
    margin: 2.7rem 0 0 3rem;
    width: 31.45rem;
  }
}
#journey #article_area .articleWrapper .articleBox .textArea .technologyLink a, #technology #article_area .articleWrapper .articleBox .textArea .technologyLink a {
  display: block;
  width: 100%;
  height: 100%;
}
#journey #article_area .articleWrapper .articleBox .textArea .technologyLink a.over .textArea, #technology #article_area .articleWrapper .articleBox .textArea .technologyLink a.over .textArea {
  background-color: #fff;
}
#journey #article_area .articleWrapper .articleBox .textArea .technologyLink span.logo, #technology #article_area .articleWrapper .articleBox .textArea .technologyLink span.logo {
  display: block;
  padding: 0.6rem 1.2rem;
  background-color: #1a1a1a;
  color: #fff;
  font-size: 1rem;
  letter-spacing: 0.03em;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  #journey #article_area .articleWrapper .articleBox .textArea .technologyLink span.logo, #technology #article_area .articleWrapper .articleBox .textArea .technologyLink span.logo {
    padding: 0.9rem 1.6rem;
    font-size: 1.35rem;
  }
}
#journey #article_area .articleWrapper .articleBox .textArea .technologyLink .textArea, #technology #article_area .articleWrapper .articleBox .textArea .technologyLink .textArea {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.8rem 1.2rem;
  -webkit-transition: background-color 0.4s linear;
  transition: background-color 0.4s linear;
}
@media screen and (max-width: 767px) {
  #journey #article_area .articleWrapper .articleBox .textArea .technologyLink .textArea, #technology #article_area .articleWrapper .articleBox .textArea .technologyLink .textArea {
    padding: 0.9rem 1.6rem;
  }
}
#journey #article_area .articleWrapper .articleBox .textArea .technologyLink span.text, #technology #article_area .articleWrapper .articleBox .textArea .technologyLink span.text {
  width: 19.85rem;
  font-size: 0.8rem;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  #journey #article_area .articleWrapper .articleBox .textArea .technologyLink span.text, #technology #article_area .articleWrapper .articleBox .textArea .technologyLink span.text {
    width: 26.95rem;
    font-size: 1.3rem;
    line-height: 1.2307692308;
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
  }
}
#journey #article_area .articleWrapper .articleBox .textArea .technologyLink span.ico, #technology #article_area .articleWrapper .articleBox .textArea .technologyLink span.ico {
  width: 1rem;
  height: 1rem;
}
@media screen and (max-width: 767px) {
  #journey #article_area .articleWrapper .articleBox .textArea .technologyLink span.ico, #technology #article_area .articleWrapper .articleBox .textArea .technologyLink span.ico {
    width: 1.45rem;
    height: 1.45rem;
  }
}
@media screen and (max-width: 767px) {
  #journey #article_area .articleWrapper .articleBox .textArea .image, #technology #article_area .articleWrapper .articleBox .textArea .image {
    margin: 5rem 0 0;
  }
}
#journey #article_area .articleWrapper .articleBox .imageArea, #technology #article_area .articleWrapper .articleBox .imageArea {
  width: 29rem;
}
#journey #article_area .articleWrapper .articleBox .imageArea #article_slider, #technology #article_area .articleWrapper .articleBox .imageArea #article_slider {
  position: relative;
}
#journey #article_area .articleWrapper .articleBox .imageArea #article_slider .slideNavArea, #technology #article_area .articleWrapper .articleBox .imageArea #article_slider .slideNavArea {
  position: relative;
  margin: 4rem 0 0;
  width: 100%;
  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;
}
#journey #article_area .articleWrapper .articleBox .imageArea #article_slider .swiper-button-prev, #technology #article_area .articleWrapper .articleBox .imageArea #article_slider .swiper-button-prev {
  position: relative;
  top: auto;
  margin: 0.1rem 1.4rem 0 0;
  width: 0.3rem;
  height: 0.5rem;
  display: block;
  color: #1a1a1a;
  -webkit-transition: color 0.4s linear;
  transition: color 0.4s linear;
}
#journey #article_area .articleWrapper .articleBox .imageArea #article_slider .swiper-button-prev:after, #technology #article_area .articleWrapper .articleBox .imageArea #article_slider .swiper-button-prev:after {
  display: none;
}
#journey #article_area .articleWrapper .articleBox .imageArea #article_slider .swiper-button-prev:hover, #technology #article_area .articleWrapper .articleBox .imageArea #article_slider .swiper-button-prev:hover {
  color: #0b59ac;
}
#journey #article_area .articleWrapper .articleBox .imageArea #article_slider .swiper-button-next, #technology #article_area .articleWrapper .articleBox .imageArea #article_slider .swiper-button-next {
  position: relative;
  top: auto;
  margin: 0.1rem 0 0 1.4rem;
  width: 0.3rem;
  height: 0.5rem;
  display: block;
  color: #1a1a1a;
  -webkit-transition: color 0.4s linear;
  transition: color 0.4s linear;
}
#journey #article_area .articleWrapper .articleBox .imageArea #article_slider .swiper-button-next:after, #technology #article_area .articleWrapper .articleBox .imageArea #article_slider .swiper-button-next:after {
  display: none;
}
#journey #article_area .articleWrapper .articleBox .imageArea #article_slider .swiper-button-next:hover, #technology #article_area .articleWrapper .articleBox .imageArea #article_slider .swiper-button-next:hover {
  color: #0b59ac;
}
#journey #article_area .articleWrapper .articleBox .imageArea #article_slider .swiper-custom-fraction, #technology #article_area .articleWrapper .articleBox .imageArea #article_slider .swiper-custom-fraction {
  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;
}
#journey #article_area .articleWrapper .articleBox .imageArea #article_slider .swiper-custom-fraction span, #technology #article_area .articleWrapper .articleBox .imageArea #article_slider .swiper-custom-fraction span {
  font-size: 0.8rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.005em;
  color: #979797;
}
#journey #article_area .articleWrapper .articleBox .imageArea #article_slider .swiper-custom-fraction span.bar, #technology #article_area .articleWrapper .articleBox .imageArea #article_slider .swiper-custom-fraction span.bar {
  margin: 0 0.45rem;
}
#journey #article_area .articleWrapper .articleBox .imageArea #article_slider .swiper-custom-fraction span.sliderMaxnum, #technology #article_area .articleWrapper .articleBox .imageArea #article_slider .swiper-custom-fraction span.sliderMaxnum {
  color: #1a1a1a;
}
#journey.chapter2 #article_area, #technology.chapter2 #article_area {
  background-color: #f5e8e9;
}
@media print, screen and (min-width: 768px) {
  .en #journey.chapter2 #chapter_title, .en #technology.chapter2 #chapter_title {
    padding: 4.25rem 0 0;
  }
}
@media screen and (max-width: 767px) {
  #journey.chapter2 #chapter_title .titleArea, #technology.chapter2 #chapter_title .titleArea {
    font-size: 2.45rem;
  }
}
#journey.chapter3 #article_area, #technology.chapter3 #article_area {
  background-color: #efefef;
}
#journey.chapter4 #journey_fv .essayArea, #technology.chapter4 #journey_fv .essayArea {
  margin: 18.5rem 0 0 -26.75rem;
  width: 46rem;
}
@media screen and (max-width: 767px) {
  #journey.chapter4 #journey_fv .essayArea, #technology.chapter4 #journey_fv .essayArea {
    margin: 0 0;
    width: 31.6rem;
  }
}
#journey.chapter4 #journey_fv .essayArea p.essay, #technology.chapter4 #journey_fv .essayArea p.essay {
  line-height: 2.5;
}
@media screen and (max-width: 767px) {
  #journey.chapter4 #journey_fv .essayArea p.essay, #technology.chapter4 #journey_fv .essayArea p.essay {
    line-height: 1.96;
  }
}
#journey.chapter4 #article_area, #technology.chapter4 #article_area {
  background-color: #efe9d7;
}
#journey.chapter5 #journey_fv .essayArea p.essay, #technology.chapter5 #journey_fv .essayArea p.essay {
  line-height: 2;
}
@media screen and (max-width: 767px) {
  #journey.chapter5 #journey_fv .essayArea p.essay, #technology.chapter5 #journey_fv .essayArea p.essay {
    line-height: 1.8;
  }
}
@media screen and (max-width: 767px) {
  #journey.chapter5 #chapter_title .titleArea, #technology.chapter5 #chapter_title .titleArea {
    font-size: 3.2rem;
  }
}
#journey.chapter5 #article_area, #technology.chapter5 #article_area {
  background-color: #e7e8f8;
}
#journey.chapter2 #journey_fv_bg, #technology.chapter2 #journey_fv_bg {
  background: url(../img/journey/chapter2/fv.jpg) center top no-repeat;
  background-size: cover;
}
@media screen and (max-width: 767px) {
  #journey.chapter2 #journey_fv_bg, #technology.chapter2 #journey_fv_bg {
    background-image: url(../img/journey/chapter2/fv_sp.jpg);
    background-size: cover;
  }
}
#journey.chapter2 #article_area .articleHeader .right, #technology.chapter2 #article_area .articleHeader .right {
  background: url(../img/journey/chapter2/article_header_image.jpg) center center no-repeat;
  background-size: 35.95rem 18.75rem;
}
@media screen and (max-width: 767px) {
  #journey.chapter2 #article_area .articleHeader .right, #technology.chapter2 #article_area .articleHeader .right {
    background-image: url(../img/journey/chapter2/article_header_image_sp.jpg);
    background-size: 37.5rem 18.8rem;
  }
}
#journey.chapter3 #journey_fv_bg, #technology.chapter3 #journey_fv_bg {
  background: url(../img/journey/chapter3/fv.jpg) center top no-repeat;
  background-size: cover;
}
@media screen and (max-width: 767px) {
  #journey.chapter3 #journey_fv_bg, #technology.chapter3 #journey_fv_bg {
    background-image: url(../img/journey/chapter3/fv_sp.jpg);
    background-size: cover;
  }
}
#journey.chapter3 #article_area .articleHeader .right, #technology.chapter3 #article_area .articleHeader .right {
  background: url(../img/journey/chapter3/article_header_image.jpg) center center no-repeat;
  background-size: 35.95rem 18.75rem;
}
@media screen and (max-width: 767px) {
  #journey.chapter3 #article_area .articleHeader .right, #technology.chapter3 #article_area .articleHeader .right {
    background-image: url(../img/journey/chapter3/article_header_image_sp.jpg);
    background-size: 37.5rem 18.8rem;
  }
}
#journey.chapter4 #journey_fv_bg, #technology.chapter4 #journey_fv_bg {
  background: url(../img/journey/chapter4/fv.jpg) center top no-repeat;
  background-size: cover;
}
@media screen and (max-width: 767px) {
  #journey.chapter4 #journey_fv_bg, #technology.chapter4 #journey_fv_bg {
    background-image: url(../img/journey/chapter4/fv_sp.jpg);
    background-size: cover;
  }
}
#journey.chapter4 #article_area .articleHeader .right, #technology.chapter4 #article_area .articleHeader .right {
  background: url(../img/journey/chapter4/article_header_image.jpg) center center no-repeat;
  background-size: 35.95rem 18.75rem;
}
@media screen and (max-width: 767px) {
  #journey.chapter4 #article_area .articleHeader .right, #technology.chapter4 #article_area .articleHeader .right {
    background-image: url(../img/journey/chapter4/article_header_image_sp.jpg);
    background-size: 37.5rem 18.8rem;
  }
}
#journey.chapter5 #journey_fv_bg, #technology.chapter5 #journey_fv_bg {
  background: url(../img/journey/chapter5/fv.jpg) center top no-repeat;
  background-size: cover;
}
@media screen and (max-width: 767px) {
  #journey.chapter5 #journey_fv_bg, #technology.chapter5 #journey_fv_bg {
    background-image: url(../img/journey/chapter5/fv_sp.jpg);
    background-size: cover;
  }
}
#journey.chapter5 #article_area .articleHeader .right, #technology.chapter5 #article_area .articleHeader .right {
  background: url(../img/journey/chapter5/article_header_image.jpg) center center no-repeat;
  background-size: 35.95rem 18.75rem;
}
@media screen and (max-width: 767px) {
  #journey.chapter5 #article_area .articleHeader .right, #technology.chapter5 #article_area .articleHeader .right {
    background-image: url(../img/journey/chapter5/article_header_image_sp.jpg);
    background-size: 37.5rem 18.8rem;
  }
}
#journey .swiper-progress, #technology .swiper-progress {
  position: absolute;
  bottom: 2.9rem;
  right: 0;
  width: 12.25rem;
  height: 0.1rem;
  background: #e2e2e2;
}
#journey .swiper-progress #progress_icon, #technology .swiper-progress #progress_icon {
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background-color: #1a1a1a;
  -webkit-transition: width 600ms linear;
  transition: width 600ms linear;
}
#journey .swiper-progress #progress_icon.speed, #technology .swiper-progress #progress_icon.speed {
  -webkit-transition: width 0ms linear;
  transition: width 0ms linear;
}

#technology #article_area {
  padding: 0;
  background-color: #e7e8f8;
}
#technology #article_area .articleHeader {
  background: url(../img/common/title_bg.png);
  background-size: 9.6rem 9.6rem;
}
@media screen and (max-width: 767px) {
  #technology #article_area .articleHeader .left {
    padding: 4.5rem 0 2.95rem;
  }
}
#technology #article_area .articleHeader .left h3.title {
  color: #fff;
}
#technology #article_area .articleHeader .left .text {
  margin: 0.8rem 0 0;
  color: #fff;
  font-size: 1.35rem;
  line-height: 1.7777777778;
}
@media screen and (max-width: 767px) {
  #technology #article_area .articleHeader .left .text {
    margin: 0.95rem 0 0;
    font-size: 2.75rem;
    line-height: 1.6;
  }
}
#technology.chapter5-1 #article_area .articleHeader .right {
  background: url(../img/journey/chapter5-1/article_header_image.jpg) center center no-repeat;
  background-size: 35.95rem 18.75rem;
}
@media screen and (max-width: 767px) {
  #technology.chapter5-1 #article_area .articleHeader .right {
    height: 23.4rem;
    background-image: url(../img/journey/chapter5-1/article_header_image_sp.jpg);
    background-size: 37.5rem 23.4rem;
  }
}
#technology.chapter5-2 #article_area .articleHeader .right {
  background: url(../img/journey/chapter5-2/article_header_image.jpg) center center no-repeat;
  background-size: 35.95rem 18.75rem;
}
@media screen and (max-width: 767px) {
  #technology.chapter5-2 #article_area .articleHeader .right {
    height: 23.4rem;
    background-image: url(../img/journey/chapter5-2/article_header_image_sp.jpg);
    background-size: 37.5rem 23.4rem;
  }
}
#technology.chapter5-3 #article_area .articleHeader .right {
  background: url(../img/journey/chapter5-3/article_header_image.jpg) center center no-repeat;
  background-size: 35.95rem 18.75rem;
}
@media screen and (max-width: 767px) {
  #technology.chapter5-3 #article_area .articleHeader .right {
    height: 23.4rem;
    background-image: url(../img/journey/chapter5-3/article_header_image_sp.jpg);
    background-size: 37.5rem 23.4rem;
  }
}
#technology .btnBackPage {
  margin: 0 auto 0;
  padding: 0 0 5.7rem;
  width: 71rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
@media screen and (max-width: 767px) {
  #technology .btnBackPage {
    width: 31.5rem;
  }
}
#technology .btnBackPage a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 7.8rem;
  height: 4.75rem;
  color: #0b59ac;
}
@media screen and (max-width: 767px) {
  #technology .btnBackPage a {
    width: 12.5rem;
    height: 3.75rem;
  }
}
#technology .btnBackPage a.over span.ico {
  width: 6.3rem;
}
@media screen and (max-width: 767px) {
  #technology .btnBackPage a.over span.ico {
    left: 0;
    width: 12.25rem;
  }
}
#technology .btnBackPage a.over span.ico span.bar:after {
  -webkit-animation: move_arr_back_after 1s linear infinite;
          animation: move_arr_back_after 1s linear infinite;
}
@media screen and (max-width: 767px) {
  #technology .btnBackPage a.over span.ico span.bar:after {
    -webkit-animation: move_arr_back_after_sp 1s linear infinite;
            animation: move_arr_back_after_sp 1s linear infinite;
  }
}
#technology .btnBackPage a.over span.ico span.bar:before {
  opacity: 1;
  -webkit-animation: move_arr_back_before 1s linear infinite 0.1s;
          animation: move_arr_back_before 1s linear infinite 0.1s;
}
#technology .btnBackPage span.text {
  padding: 1rem 2.5rem 0 0;
  display: block;
  font-size: 0.65rem;
  font-weight: 500;
  line-height: 1;
  text-align: right;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  #technology .btnBackPage span.text {
    padding: 1.4rem 0 0 0;
    font-size: 1.3rem;
  }
}
#technology .btnBackPage span.ico {
  position: relative;
  display: block;
  margin: 0.95rem auto 0;
  width: 4.3rem;
  height: 0.55rem;
  -webkit-transition: width 0.4s linear, left 0.4s linear;
  transition: width 0.4s linear, left 0.4s linear;
}
@media screen and (max-width: 767px) {
  #technology .btnBackPage span.ico {
    margin: 1.5rem 0 0;
    width: 12.25rem;
    height: 0.95rem;
  }
}
#technology .btnBackPage span.ico span.bar {
  position: absolute;
  top: 0.25rem;
  right: 0;
  display: block;
  width: 100%;
  height: 1px;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  #technology .btnBackPage span.ico span.bar {
    top: 0.5rem;
    height: 0.1rem;
  }
}
#technology .btnBackPage span.ico span.bar:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 4.15rem;
  height: 1px;
  background-color: #0b59ac;
}
@media screen and (max-width: 767px) {
  #technology .btnBackPage span.ico span.bar:after {
    width: 12.25rem;
    height: 0.15rem;
  }
}
#technology .btnBackPage span.ico span.bar:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 0;
  height: 1px;
  background-color: #0b59ac;
  opacity: 0;
}
@media screen and (max-width: 767px) {
  #technology .btnBackPage span.ico span.bar:before {
    display: none;
  }
}
#technology .btnBackPage span.ico span.arr {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 0.3rem;
  height: 0.55rem;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
@media screen and (max-width: 767px) {
  #technology .btnBackPage span.ico span.arr {
    width: 0.6rem;
    height: 1.05rem;
  }
}

@keyframes move_arr_back_after {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  40% {
    -webkit-transform: translateX(-6.3rem);
            transform: translateX(-6.3rem);
  }
  100% {
    -webkit-transform: translateX(-6.3rem);
            transform: translateX(-6.3rem);
  }
}
@-webkit-keyframes move_arr_back_after {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  40% {
    -webkit-transform: translateX(-6.3rem);
            transform: translateX(-6.3rem);
  }
  100% {
    -webkit-transform: translateX(-6.3rem);
            transform: translateX(-6.3rem);
  }
}
@keyframes move_arr_back_after_sp {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  40% {
    -webkit-transform: translateX(-12.25rem);
            transform: translateX(-12.25rem);
  }
  100% {
    -webkit-transform: translateX(-12.25rem);
            transform: translateX(-12.25rem);
  }
}
@-webkit-keyframes move_arr_back_after_sp {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  40% {
    -webkit-transform: translateX(-12.25rem);
            transform: translateX(-12.25rem);
  }
  100% {
    -webkit-transform: translateX(-12.25rem);
            transform: translateX(-12.25rem);
  }
}
@keyframes move_arr_back_before {
  0% {
    width: 0;
  }
  40% {
    width: 6.3rem;
  }
  100% {
    width: 6.3rem;
  }
}
@-webkit-keyframes move_arr_back_before {
  0% {
    width: 0;
  }
  40% {
    width: 6.3rem;
  }
  100% {
    width: 6.3rem;
  }
}
#other_contents .titleArea {
  width: 100%;
  height: 6.25rem;
  background-color: #eeeeee;
  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;
}
@media screen and (max-width: 767px) {
  #other_contents .titleArea {
    height: 10rem;
  }
}
#other_contents .titleArea h2.title {
  width: 47.8rem;
  font-family: "FOT-筑紫Aオールド明朝 Pr6 M", serif;
  font-size: 1.4rem;
  font-weight: 500;
  color: #0b59ac;
}
@media screen and (max-width: 767px) {
  #other_contents .titleArea h2.title {
    width: 31.5rem;
    font-size: 1.9rem;
  }
}
#other_contents .textArea {
  margin: 0 auto 0;
  padding: 3.25rem 0 10rem;
  width: 47.8rem;
}
@media screen and (max-width: 767px) {
  #other_contents .textArea {
    padding: 2.75rem 0 12.5rem;
    width: 31.5rem;
  }
}
#other_contents .textArea div.lead {
  margin: 0 0 5.5rem;
  font-size: 0.7rem;
  line-height: 2.1;
}
@media screen and (max-width: 767px) {
  #other_contents .textArea div.lead {
    margin: 0 0 6.5rem;
    font-size: 1.3rem;
  }
}
#other_contents .textArea div.text {
  margin: 0 0 3.5rem;
  font-size: 0.7rem;
  line-height: 2.1;
}
@media screen and (max-width: 767px) {
  #other_contents .textArea div.text {
    margin: 0 0 4.5rem;
    font-size: 1.3rem;
  }
}
.en #tac #other_contents .textArea div.text {
  margin: 0 0 5.5rem;
}
@media screen and (max-width: 767px) {
  .en #tac #other_contents .textArea div.text {
    margin: 0 0 6.5rem;
  }
}
#other_contents .textArea h3.title {
  margin: 0 0 3.5rem;
  font-family: "FOT-筑紫Aオールド明朝 Pr6 M", serif;
  font-size: 1.2rem;
  font-weight: 500;
  letter-spacing: 0.03em;
  color: #0b59ac;
}
@media screen and (max-width: 767px) {
  #other_contents .textArea h3.title {
    margin: 0 0 4.5rem;
    font-size: 1.7rem;
  }
}
.en #other_contents .textArea h3.title {
  margin: 0 0 1.7rem;
}
@media screen and (max-width: 767px) {
  .en #other_contents .textArea h3.title {
    margin: 0 0 1.7rem;
  }
}
#other_contents .textArea h4.title {
  margin: 0 0 0.5rem;
  padding: 0 0 0.4rem;
  font-family: "FOT-筑紫Aオールド明朝 Pr6 M", serif;
  font-size: 0.9rem;
  font-weight: 500;
  letter-spacing: 0.03em;
  color: #5d5d5d;
  border-bottom: #c5c5c5 1px solid;
}
@media screen and (max-width: 767px) {
  #other_contents .textArea h4.title {
    margin: 0 0 0.8rem;
    padding: 0 0 0.8rem;
    font-size: 1.6rem;
  }
}
#other_contents .textArea ul.list li {
  font-size: 0.7rem;
  line-height: 2.1;
  text-indent: -0.5em;
  padding-left: 0.5em;
}
@media screen and (max-width: 767px) {
  #other_contents .textArea ul.list li {
    font-size: 1.3rem;
  }
}
#other_contents .textArea ul.list li.link {
  color: #0b59ac;
}
#other_contents .textArea a {
  color: #0b59ac;
  text-decoration: underline;
}
@media print, screen and (min-width: 768px) {
  #other_contents .textArea a:hover {
    text-decoration: none;
  }
}