@charset "UTF-8";
/* sans-serif */
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100; }
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200; }
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300; }
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400; }
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold; }
@font-face {
  font-family: "Helvetica Neue";
  src: local("Helvetica Neue Regular");
  font-weight: 100; }
@font-face {
  font-family: "Helvetica Neue";
  src: local("Helvetica Neue Regular");
  font-weight: 200; }
/* monospace */
@font-face {
  font-family: "SourceHanCodeJP-Regular";
  src: local("SourceHanCodeJP-Regular"); }
@font-face {
  font-family: "Myrica M";
  src: local("Myrica M"); }
@font-face {
  font-family: "MyricaM M";
  src: local("MyricaM M"); }
@font-face {
  font-family: "Ricty Diminished Discord";
  src: local("Ricty Diminished Discord"); }
@font-face {
  font-family: "Migu 1M";
  src: local("Migu 1M"); }
@font-face {
  font-family: "Rounded M+ 1m regular";
  src: local("Rounded M+ 1m regular"); }
@font-face {
  font-family: "Rounded Mgen+ 1m regular";
  src: local("Rounded Mgen+ 1m regular"); }
@font-face {
  font-family: "VL ゴシック";
  src: local("VL ゴシック"); }
html {
  font-size: 62.5%; }

body {
  color: #000000;
  font-size: 1.4rem;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
  background-color: #ffffff; }
  @media all and (-ms-high-contrast: none) {
    body {
      font-family: Verdana, Meiryo, sans-serif; } }

::-moz-selection {
  color: #ffffff;
  background-color: #9eb4db; }

::selection {
  color: #ffffff;
  background-color: #9eb4db; }

li {
  list-style: none; }

a {
  color: #000000;
  text-decoration: none;
  opacity: 1;
  -webkit-transition: all .1s ease-in;
  transition: all .1s ease-in; }
  a:hover {
    color: #1a1a1a;
    opacity: 0.8; }
  a:active {
    color: #333333; }
  a:focus {
    color: black; }

@media screen and (max-width: 768px) {
  .sp-none {
    display: none; } }
@media all and (min-width: 768px) {
  .pc-none {
    display: none; } }
.home .main_image,
.main_container {
  margin-top: 62px; }
  @media all and (min-width: 768px) {
    .home .main_image,
    .main_container {
      margin-top: 170px; } }

header {
  height: 90px; }
  header h1 {
    position: absolute;
    top: 12px;
    left: 0px; }
  header p {
    position: absolute;
    top: 25px;
    right: 0px; }

.contents_width {
  position: relative;
  width: 1280px;
  margin: 0 auto; }

.slogan {
  height: 575px;
  background: #5279C2 url(../images/special_logo.png) center center repeat-x; }
  .slogan h2 {
    position: absolute;
    top: 158px;
    left: 110px; }
  .slogan p {
    position: absolute;
    top: 350px;
    left: 100px;
    color: #FFF;
    font-size: 1.8rem; }
  .slogan .scroll {
    position: absolute;
    top: 485px;
    left: 50%;
    margin-left: -25px; }

.greeting {
  display: table-cell;
  text-align: center;
  vertical-align: middle;
  width: 100vw;
  height: 500px;
  background: url(../images/greeting_bg_image.jpg) center bottom no-repeat;
  background-attachment: fixed;
  background-size: cover; }
  .greeting h3 {
    position: relative;
    font-size: 4.5rem;
    font-weight: normal;
    margin-bottom: 40px; }
    .greeting h3:before {
      content: "";
      display: block;
      position: absolute;
      top: -20px;
      left: 50%;
      width: 100px;
      height: 1px;
      margin-left: -50px;
      background-color: #5279C2; }
  .greeting p {
    font-size: 1.6rem;
    width: 775px;
    text-align: left;
    margin: 0 auto; }
 
  .greeting p.sign {
    text-align: right;
     }

.sec_area h2 {
  position: relative;
  font-size: 4.4rem;
  font-weight: normal;
  line-height: 250px;
  height: 250px;
  background-color: #fff; }
  .sec_area h2:before {
    content: "";
    display: block;
    position: absolute;
    top: 60px;
    left: 50%;
    width: 100px;
    height: 1px;
    margin-left: -50px;
    background-color: #5279C2; }
  .sec_area h2 span {
    position: absolute;
    bottom: -51px;
    left: 50%;
    color: #c3d1ea;
    font-size: 2.3rem;
    font-weight: normal;
    margin-left: -2em; }

.history {
  text-align: center;
  background: #E9EEF8; }
  .history .contents_width {
    background: url(../images/bg.png) center top 49px no-repeat; }
  .history .story_block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .history .story_block.pattern1 {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row; }
    .history .story_block.pattern2 {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
          -ms-flex-direction: row-reverse;
              flex-direction: row-reverse; }
    .history .story_block__img, .history .story_block__event {
      width: 640px; }
    .history .story_block__img {
      overflow: hidden; }
      .history .story_block__img img {
        vertical-align: bottom; }
      .history .story_block__img .left {
        float: left;
        width: 320px; }
      .history .story_block__img .right {
        float: right;
        width: 320px; }
    .history .story_block__event {
      text-align: left; }
      .history .story_block__event ol {
        position: relative; }
        .history .story_block__event ol li {
          position: absolute;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-align: center;
              -ms-flex-align: center;
                  align-items: center; }
          .history .story_block__event ol li div {
            margin-right: 0; }
            .history .story_block__event ol li div.month {
              color: #FFF;
              text-align: center;
              font-size: 1.6rem;
              width: 40px;
              height: 40px;
              padding-top: 7px;
              padding-left: 2px;
              white-space: nowrap;
              background-color: #284877; }
            .history .story_block__event ol li div.event {
              font-size: 1.45rem;
              line-height: 1.2;
              max-width: 420px; }
      .history .story_block__event.right li {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
            -ms-flex-direction: row;
                flex-direction: row;
        left: 158px; }
        .history .story_block__event.right li .month {
          margin-right: 20px; }
      .history .story_block__event.left li {
        right: 154px;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
            -ms-flex-direction: row-reverse;
                flex-direction: row-reverse; }
        .history .story_block__event.left li .month {
          margin-left: 20px; }
      .history .story_block__event .story01 {
        top: 120px; }
      .history .story_block__event .story02 {
        top: 230px; }
      .history .story_block__event .story03 {
        top: 280px; }
      .history .story_block__event .story04 {
        top: 389px; }
      .history .story_block__event .story05 {
        top: 502px; }
      .history .story_block__event .story06 {
        top: 135px; }
      .history .story_block__event .story07 {
        top: 247px; }
      .history .story_block__event .story08 {
        top: 295px; }
      .history .story_block__event .story09 {
        top: 406px; }
      .history .story_block__event .story10 {
        top: 517px; }
      .history .story_block__event .story11 {
        top: 145px; }
      .history .story_block__event .story12 {
        top: 253px; }
      .history .story_block__event .story13 {
        top: 368px; }
      .history .story_block__event .story14 {
        top: 413px; }
      .history .story_block__event .story15 {
        top: 459px; }
      .history .story_block__event .story16 {
        top: 506px; }
      .history .story_block__event .story17 {
        top: 112px; }
      .history .story_block__event .story18 {
        top: 223px; }
      .history .story_block__event .story19 {
        top: 334px; }
      .history .story_block__event .story20 {
        top: 446px; }
      .history .story_block__event .story21 {
        top: 558px; }

.in_future {
  text-align: center;
  background: url(../images/bg2.png) center top no-repeat; }
  .in_future .year {
    color: #284877;
    font-size: 6rem;
    padding-top: 124px;
    letter-spacing: 4px; }
  .in_future p {
    font-size: 1.6rem; }
  .in_future h3 {
    color: #5279C2;
    font-style: italic;
    font-size: 4rem;
    margin: 60px 0 0; }
  .in_future img {
    display: block;
    vertical-align: bottom;
    margin: 0 auto 80px; }

footer {
  text-align: center;
  line-height: 2.3;
  padding: 14px;
  background-color: #DBE3F1;
  border-top: 1px solid #5279C2; }
  footer li {
    display: inline-block;
    margin-right: 20px; }
    footer li:last-child {
      margin-right: 0; }
    footer li a {
      color: #5279C2;
      text-decoration: underline; }
  footer .copyright {
    color: #777777;
    font-size: 1.2rem; }

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