body, button, input, optgroup, select, textarea {
  font-size: 12px;
  color: #000;
  font-family: 'Noto Sans JP', sans-serif; }

p, h1, h2, h3, h4, h5, ul, li {
  padding: 0;
  margin: 0; }

ul {
  list-style-type: none; }

img {
  vertical-align: top;
  width: 100%;
  height: auto;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

dl, dt, dd {
  margin: 0; }

a:focus, *:focus {
  outline: none; }

a {
  color: #000; }
  @media all and (min-width: 768px) {
    a {
      -webkit-transition: opacity 0.3s;
      transition: opacity 0.3s; }
      a:hover {
        opacity: 0.85; }
      a img {
        -webkit-backface-visibility: hidden;
                backface-visibility: hidden; } }

figure {
  margin: 0; }

@media all and (max-width: 767px) {
  ._sp_hide {
    display: none !important; } }

@media all and (min-width: 768px) {
  ._pc_hide {
    display: none !important; } }

#cookieAlert {
  position: relative;
  z-index: 1;
  background: #f1f4f4; }
  @media all and (min-width: 768px) {
    #cookieAlert {
      padding: 1.73913vw 0; } }
  @media all and (min-width: 1151px) {
    #cookieAlert {
      padding: 20px 0; } }
  @media all and (max-width: 767px) {
    #cookieAlert {
      padding: 2.66667vw 0; } }
  #cookieAlert .inner {
    position: relative; }
    @media all and (min-width: 768px) {
      #cookieAlert .inner {
        margin: 0 1.73913vw; } }
    @media all and (min-width: 1151px) {
      #cookieAlert .inner {
        margin: 0 auto;
        width: 1110px; } }
    @media all and (max-width: 767px) {
      #cookieAlert .inner {
        margin: 0 6.66667vw; } }
  @media all and (min-width: 768px) {
    #cookieAlert .tx {
      line-height: 1.66667; } }
  @media all and (min-width: 768px) and (min-width: 768px) {
    #cookieAlert .tx {
      font-size: 1.30435vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #cookieAlert .tx {
      font-size: 15px; } }
  @media all and (max-width: 767px) {
    #cookieAlert .tx {
      margin-right: 10vw;
      font-size: 3.2vw;
      line-height: 1.875; } }
  #cookieAlert .tx a {
    color: #2994e7;
    text-decoration: underline; }
  @media all and (max-width: 767px) {
    #cookieAlert .tx br {
      display: none; } }
  #cookieAlert .bt {
    position: absolute;
    right: 0;
    cursor: pointer; }
    @media all and (min-width: 768px) {
      #cookieAlert .bt {
        top: 0.52174vw;
        width: 1.21739vw;
        height: 1.21739vw;
        -webkit-transition: opacity 0.3s;
        transition: opacity 0.3s; } }
    @media all and (min-width: 1151px) {
      #cookieAlert .bt {
        top: 6px;
        width: 14px;
        height: 14px; } }
    @media all and (max-width: 767px) {
      #cookieAlert .bt {
        top: 1.6vw;
        width: 4vw;
        height: 4vw; } }
    #cookieAlert .bt:before, #cookieAlert .bt:after {
      content: '';
      position: absolute;
      left: 0;
      background: #333;
      -webkit-transform-origin: left center;
          -ms-transform-origin: left center;
              transform-origin: left center; }
      @media all and (min-width: 768px) {
        #cookieAlert .bt:before, #cookieAlert .bt:after {
          width: 1.70435vw;
          height: 0.17391vw; } }
      @media all and (min-width: 1151px) {
        #cookieAlert .bt:before, #cookieAlert .bt:after {
          width: 19.6px;
          height: 2px; } }
      @media all and (max-width: 767px) {
        #cookieAlert .bt:before, #cookieAlert .bt:after {
          width: 5.6vw;
          height: 0.53333vw; } }
    #cookieAlert .bt:before {
      top: 0;
      -webkit-transform: translateY(-50%) rotate(45deg);
          -ms-transform: translateY(-50%) rotate(45deg);
              transform: translateY(-50%) rotate(45deg); }
    #cookieAlert .bt:after {
      bottom: 0;
      -webkit-transform: translateY(50%) rotate(-45deg);
          -ms-transform: translateY(50%) rotate(-45deg);
              transform: translateY(50%) rotate(-45deg); }
    @media all and (min-width: 768px) {
      #cookieAlert .bt:hover {
        opacity: 0.85; } }

#container {
  overflow: hidden;
  position: relative; }
  #container img {
    pointer-events: auto;
    max-width: unset; }

#header {
  position: absolute;
  z-index: 100;
  top: 0;
  left: 0; }
  @media all and (min-width: 768px) {
    #header .logo {
      margin-top: 2vw;
      margin-left: 4.34783vw;
      width: 21.13043vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #header .logo {
      margin-top: 23px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #header .logo {
      margin-left: 50px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #header .logo {
      width: 243px; } }
  @media all and (max-width: 767px) {
    #header .logo {
      margin-top: 4vw;
      margin-left: 6.66667vw;
      width: 42.66667vw; } }

#headerNav {
  position: fixed;
  z-index: 110;
  top: 0;
  right: 0; }
  #headerNav .btOpen {
    position: absolute;
    top: 0;
    right: 0;
    border-radius: 50%;
    background: #fff;
    cursor: pointer;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s; }
    @media all and (min-width: 768px) {
      #headerNav .btOpen {
        margin-top: 1.73913vw;
        margin-right: 4.34783vw;
        width: 6.08696vw;
        height: 6.08696vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .btOpen {
      margin-top: 20px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .btOpen {
      margin-right: 50px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .btOpen {
      width: 70px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .btOpen {
      height: 70px; } }
    @media all and (max-width: 767px) {
      #headerNav .btOpen {
        margin-top: 2.66667vw;
        margin-right: 6.66667vw;
        width: 9.33333vw;
        height: 9.33333vw; } }
    #headerNav .btOpen:hover {
      opacity: 0.85; }
    #headerNav .btOpen:before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      border-radius: 50%;
      mix-blend-mode: multiply; }
      @media all and (min-width: 768px) {
        #headerNav .btOpen:before {
          -webkit-box-shadow: 0.08696vw 0.08696vw 1.73913vw 0.26087vw rgba(16, 55, 114, 0.1);
                  box-shadow: 0.08696vw 0.08696vw 1.73913vw 0.26087vw rgba(16, 55, 114, 0.1); } }
      @media all and (min-width: 1151px) {
        #headerNav .btOpen:before {
          -webkit-box-shadow: 1px 1px 20px 3px rgba(16, 55, 114, 0.1);
                  box-shadow: 1px 1px 20px 3px rgba(16, 55, 114, 0.1); } }
      @media all and (max-width: 767px) {
        #headerNav .btOpen:before {
          -webkit-box-shadow: 0.4vw 0.4vw 5.06667vw 0.66667vw rgba(16, 55, 114, 0.1);
                  box-shadow: 0.4vw 0.4vw 5.06667vw 0.66667vw rgba(16, 55, 114, 0.1); } }
    #headerNav .btOpen span {
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
      background: #1f1f1f; }
      @media all and (min-width: 768px) {
        #headerNav .btOpen span {
          width: 1.91304vw;
          height: 0.17391vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .btOpen span {
      width: 22px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .btOpen span {
      height: 2px; } }
      @media all and (max-width: 767px) {
        #headerNav .btOpen span {
          width: 2.93333vw;
          height: 0.26667vw; } }
      #headerNav .btOpen span:before, #headerNav .btOpen span:after {
        content: '';
        position: absolute;
        left: 0;
        background: #1f1f1f; }
        @media all and (min-width: 768px) {
          #headerNav .btOpen span:before, #headerNav .btOpen span:after {
            width: 1.91304vw;
            height: 0.17391vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .btOpen span:before, #headerNav .btOpen span:after {
      width: 22px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .btOpen span:before, #headerNav .btOpen span:after {
      height: 2px; } }
        @media all and (max-width: 767px) {
          #headerNav .btOpen span:before, #headerNav .btOpen span:after {
            width: 2.93333vw;
            height: 0.26667vw; } }
      @media all and (min-width: 768px) {
        #headerNav .btOpen span:before {
          top: -0.69565vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .btOpen span:before {
      top: -8px; } }
      @media all and (max-width: 767px) {
        #headerNav .btOpen span:before {
          top: -1.06667vw; } }
      @media all and (min-width: 768px) {
        #headerNav .btOpen span:after {
          bottom: -0.69565vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .btOpen span:after {
      bottom: -8px; } }
      @media all and (max-width: 767px) {
        #headerNav .btOpen span:after {
          bottom: -1.06667vw; } }
  #headerNav .menu {
    display: none;
    position: absolute;
    top: 0;
    right: 0;
    background: #fff;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
    @media all and (min-width: 768px) {
      #headerNav .menu {
        width: 43.47826vw;
        padding-top: 5.21739vw;
        padding-right: 4.34783vw;
        padding-bottom: 4.34783vw;
        padding-left: 8.26087vw;
        border-radius: 0 0 0 6.95652vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .menu {
      width: 500px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .menu {
      padding-top: 60px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .menu {
      padding-right: 50px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .menu {
      padding-bottom: 50px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .menu {
      padding-left: 95px; } }
    @media all and (min-width: 1151px) {
      #headerNav .menu {
        border-radius: 0 0 0 80px; } }
    @media all and (max-width: 767px) {
      #headerNav .menu {
        width: 62.66667vw;
        padding: 7.33333vw 6.66667vw 5.33333vw 6.66667vw;
        border-radius: 0 0 0 11.73333vw; } }
    #headerNav .menu:before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      mix-blend-mode: multiply; }
      @media all and (min-width: 768px) {
        #headerNav .menu:before {
          border-radius: 0 0 0 6.95652vw;
          -webkit-box-shadow: 0.26087vw 0.26087vw 3.30435vw 0.52174vw rgba(16, 55, 114, 0.1);
                  box-shadow: 0.26087vw 0.26087vw 3.30435vw 0.52174vw rgba(16, 55, 114, 0.1); } }
      @media all and (min-width: 1151px) {
        #headerNav .menu:before {
          border-radius: 0 0 0 80px;
          -webkit-box-shadow: 3px 3px 38px 6px rgba(16, 55, 114, 0.1);
                  box-shadow: 3px 3px 38px 6px rgba(16, 55, 114, 0.1); } }
      @media all and (max-width: 767px) {
        #headerNav .menu:before {
          border-radius: 0 0 0 11.73333vw;
          -webkit-box-shadow: 0.4vw 0.4vw 5.06667vw 0.66667vw rgba(16, 55, 114, 0.1);
                  box-shadow: 0.4vw 0.4vw 5.06667vw 0.66667vw rgba(16, 55, 114, 0.1); } }
    #headerNav .menu .inner {
      position: relative; }
    #headerNav .menu .btClose {
      position: absolute;
      z-index: 1;
      top: 0;
      right: 0;
      border-radius: 50%;
      background: -webkit-linear-gradient(342deg, #0d43a7, #199357);
      background: linear-gradient(108deg, #0d43a7, #199357);
      cursor: pointer;
      -webkit-transition: opacity 0.3s;
      transition: opacity 0.3s; }
      @media all and (min-width: 768px) {
        #headerNav .menu .btClose {
          margin-top: 1.73913vw;
          margin-right: 4.34783vw;
          width: 6.08696vw;
          height: 6.08696vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .menu .btClose {
      margin-top: 20px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .menu .btClose {
      margin-right: 50px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .menu .btClose {
      width: 70px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .menu .btClose {
      height: 70px; } }
      @media all and (max-width: 767px) {
        #headerNav .menu .btClose {
          margin-top: 2.66667vw;
          margin-right: 6.66667vw;
          width: 9.33333vw;
          height: 9.33333vw; } }
      #headerNav .menu .btClose:hover {
        opacity: 0.85; }
      #headerNav .menu .btClose span {
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
            -ms-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%);
        background: #fff;
        border-radius: 50%; }
        @media all and (min-width: 768px) {
          #headerNav .menu .btClose span {
            width: 5.21739vw;
            height: 5.21739vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .menu .btClose span {
      width: 60px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .menu .btClose span {
      height: 60px; } }
        @media all and (max-width: 767px) {
          #headerNav .menu .btClose span {
            width: 8vw;
            height: 8vw; } }
        #headerNav .menu .btClose span:before, #headerNav .menu .btClose span:after {
          content: '';
          position: absolute;
          top: 50%;
          left: 50%;
          background: #1f1f1f; }
          @media all and (min-width: 768px) {
            #headerNav .menu .btClose span:before, #headerNav .menu .btClose span:after {
              width: 1.91304vw;
              height: 0.17391vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .menu .btClose span:before, #headerNav .menu .btClose span:after {
      width: 22px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .menu .btClose span:before, #headerNav .menu .btClose span:after {
      height: 2px; } }
          @media all and (max-width: 767px) {
            #headerNav .menu .btClose span:before, #headerNav .menu .btClose span:after {
              width: 2.93333vw;
              height: 0.26667vw; } }
        #headerNav .menu .btClose span:before {
          -webkit-transform: translate(-50%, -50%) rotate(45deg);
              -ms-transform: translate(-50%, -50%) rotate(45deg);
                  transform: translate(-50%, -50%) rotate(45deg); }
        #headerNav .menu .btClose span:after {
          -webkit-transform: translate(-50%, -50%) rotate(-45deg);
              -ms-transform: translate(-50%, -50%) rotate(-45deg);
                  transform: translate(-50%, -50%) rotate(-45deg); }
    #headerNav .menu ul li {
      font-family: 'Roboto', sans-serif;
      font-weight: 900;
      color: #042b64;
      line-height: 1; }

@media all and (min-width: 768px) and (min-width: 768px) {
  #headerNav .menu ul li {
    font-size: 2.08696vw; } }

@media all and (min-width: 768px) and (min-width: 1151px) {
  #headerNav .menu ul li {
    font-size: 24px; } }
      @media all and (max-width: 767px) {
        #headerNav .menu ul li {
          font-size: 4vw; } }
      @media all and (min-width: 768px) {
        #headerNav .menu ul li + li {
          margin-top: 2.6087vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .menu ul li + li {
      margin-top: 30px; } }
      @media all and (max-width: 767px) {
        #headerNav .menu ul li + li {
          margin-top: 4vw; } }
      #headerNav .menu ul li a {
        text-decoration: none;
        color: inherit; }
    #headerNav .menu .tx {
      border-top: solid #e5e5e5; }
      @media all and (min-width: 768px) {
        #headerNav .menu .tx {
          margin-top: 2.6087vw;
          border-top-width: 0.17391vw;
          padding-top: 1.21739vw;
          line-height: 1.71429; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .menu .tx {
      margin-top: 30px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .menu .tx {
      border-top-width: 2px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .menu .tx {
      padding-top: 14px; } }
  @media all and (min-width: 768px) and (min-width: 768px) {
    #headerNav .menu .tx {
      font-size: 1.21739vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .menu .tx {
      font-size: 14px; } }
      @media all and (max-width: 767px) {
        #headerNav .menu .tx {
          margin-top: 4vw;
          border-top-width: 0.53333vw;
          padding-top: 4vw;
          font-size: 2.66667vw;
          line-height: 2; } }
    #headerNav .menu .btContact {
      margin-top: 15px; }
      #headerNav .menu .btContact a {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        letter-spacing: 0.04em;
        background: -webkit-linear-gradient(342deg, #0d43a7, #199357);
        background: linear-gradient(108deg, #0d43a7, #199357);
        -webkit-box-pack: center;
        -webkit-justify-content: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-box-align: center;
        -webkit-align-items: center;
            -ms-flex-align: center;
                align-items: center;
        font-family: 'Roboto', sans-serif;
        font-weight: 900;
        color: #fff;
        text-decoration: none; }
        @media all and (min-width: 768px) {
          #headerNav .menu .btContact a {
            height: 6.95652vw;
            border-radius: 3.47826vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .menu .btContact a {
      height: 80px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .menu .btContact a {
      border-radius: 40px; } }
  @media all and (min-width: 768px) and (min-width: 768px) {
    #headerNav .menu .btContact a {
      font-size: 2.26087vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .menu .btContact a {
      font-size: 26px; } }
        @media all and (max-width: 767px) {
          #headerNav .menu .btContact a {
            height: 12vw;
            border-radius: 6vw;
            font-size: 4.26667vw; } }
        #headerNav .menu .btContact a:after {
          content: '';
          display: inline-block;
          -webkit-box-sizing: border-box;
                  box-sizing: border-box;
          border: solid 0px #fff;
          -webkit-transform-origin: bottom left;
              -ms-transform-origin: bottom left;
                  transform-origin: bottom left;
          -webkit-transform: skew(45deg);
              -ms-transform: skew(45deg);
                  transform: skew(45deg); }
          @media all and (min-width: 768px) {
            #headerNav .menu .btContact a:after {
              width: 2.43478vw;
              height: 1.21739vw;
              border-right-width: 0.13043vw;
              border-bottom-width: 0.08696vw;
              margin-left: 0.86957vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .menu .btContact a:after {
      width: 28px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .menu .btContact a:after {
      height: 14px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .menu .btContact a:after {
      border-right-width: 1.5px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .menu .btContact a:after {
      border-bottom-width: 1px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #headerNav .menu .btContact a:after {
      margin-left: 10px; } }
          @media all and (max-width: 767px) {
            #headerNav .menu .btContact a:after {
              width: 4.4vw;
              height: 2vw;
              border-width: 0 0.33333vw 0.26667vw 0;
              margin-left: 1.33333vw; } }
        @media all and (min-width: 768px) {
          #headerNav .menu .btContact a:hover {
            opacity: 0.9; } }
  body.hideHeaderNav #headerNav {
    display: none; }

#content {
  opacity: 0;
  position: relative;
  background: none center top no-repeat #f4f7f8; }
  @media all and (min-width: 768px) {
    #content {
      background-image: url(/common/assets/img/content_bg01.jpg);
      background-size: 284.17391vw; } }
  @media all and (min-width: 1151px) {
    #content {
      background-size: auto; } }
  @media all and (max-width: 767px) {
    #content {
      background-image: url(/common/assets/img/content_bg01-sp.jpg);
      background-size: 100%; } }
  #content .inner {
    position: relative; }
    @media all and (min-width: 768px) {
      #content .inner {
        margin: 0 1.73913vw; } }
    @media all and (min-width: 1151px) {
      #content .inner {
        margin: 0 auto;
        width: 1110px; } }
    @media all and (max-width: 767px) {
      #content .inner {
        margin: 0 6.66667vw; } }
  #content #content_header .bg li:before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform-origin: bottom left;
        -ms-transform-origin: bottom left;
            transform-origin: bottom left;
    -webkit-transform: skew(-30deg);
        -ms-transform: skew(-30deg);
            transform: skew(-30deg); }
  #content #content_header .bg li.i1:before {
    background: -webkit-linear-gradient(241deg, #30b0f9, #0fc54b);
    background: linear-gradient(209deg, #30b0f9, #0fc54b);
    opacity: 0.1; }
    @media all and (min-width: 768px) {
      #content #content_header .bg li.i1:before {
        margin-top: -1.13043vw;
        margin-left: -73.47826vw;
        width: 21.91304vw;
        height: 45.56522vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #content #content_header .bg li.i1:before {
      margin-top: -13px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #content #content_header .bg li.i1:before {
      margin-left: -845px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #content #content_header .bg li.i1:before {
      width: 252px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #content #content_header .bg li.i1:before {
      height: 524px; } }
    @media all and (max-width: 767px) {
      #content #content_header .bg li.i1:before {
        margin-top: 36vw;
        margin-left: -87.2vw;
        width: 33.6vw;
        height: 69.73333vw; } }
  #content #content_header .bg li.i2:before {
    background: -webkit-linear-gradient(241deg, #0abba0, #ad54f1);
    background: linear-gradient(209deg, #0abba0, #ad54f1);
    opacity: 0.08; }
    @media all and (min-width: 768px) {
      #content #content_header .bg li.i2:before {
        margin-top: 11.56522vw;
        margin-left: -76.69565vw;
        width: 28.95652vw;
        height: 60.08696vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #content #content_header .bg li.i2:before {
      margin-top: 133px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #content #content_header .bg li.i2:before {
      margin-left: -882px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #content #content_header .bg li.i2:before {
      width: 333px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #content #content_header .bg li.i2:before {
      height: 691px; } }
    @media all and (max-width: 767px) {
      #content #content_header .bg li.i2:before {
        margin-top: 55.46667vw;
        margin-left: -92vw;
        width: 44.4vw;
        height: 92.13333vw; } }
  #content #content_header .bg li.i3:before {
    background: -webkit-linear-gradient(241deg, #f9e430, #fd9d68);
    background: linear-gradient(209deg, #f9e430, #fd9d68);
    opacity: 0.1; }
    @media all and (min-width: 768px) {
      #content #content_header .bg li.i3:before {
        margin-top: 33.21739vw;
        margin-left: 47.13043vw;
        width: 20vw;
        height: 41.65217vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #content #content_header .bg li.i3:before {
      margin-top: 382px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #content #content_header .bg li.i3:before {
      margin-left: 542px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #content #content_header .bg li.i3:before {
      width: 230px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #content #content_header .bg li.i3:before {
      height: 479px; } }
    @media all and (max-width: 767px) {
      #content #content_header .bg li.i3:before {
        margin-top: 114.8vw;
        margin-left: 5.33333vw;
        width: 30.8vw;
        height: 63.86667vw; } }
  #content #content_header .bg li.i4:before {
    background: -webkit-linear-gradient(241deg, #ad54f1, #0abba0);
    background: linear-gradient(209deg, #ad54f1, #0abba0);
    opacity: 0.1; }
    @media all and (min-width: 768px) {
      #content #content_header .bg li.i4:before {
        margin-top: 64.08696vw;
        margin-left: 47.65217vw;
        width: 18.6087vw;
        height: 38.69565vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #content #content_header .bg li.i4:before {
      margin-top: 737px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #content #content_header .bg li.i4:before {
      margin-left: 548px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #content #content_header .bg li.i4:before {
      width: 214px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #content #content_header .bg li.i4:before {
      height: 445px; } }
    @media all and (max-width: 767px) {
      #content #content_header .bg li.i4:before {
        margin-top: 162.13333vw;
        margin-left: 6.26667vw;
        width: 28.53333vw;
        height: 59.33333vw; } }

#footer {
  position: relative;
  background: #7f7f80; }
  @media all and (min-width: 768px) {
    #footer {
      padding-top: 1.73913vw;
      padding-bottom: 10.43478vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footer {
      padding-top: 20px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footer {
      padding-bottom: 120px; } }
  @media all and (max-width: 767px) {
    #footer {
      padding: 4vw 0 26.66667vw; } }
  @media all and (min-width: 768px) {
    body.hideFooterNav #footer {
      padding-bottom: 1.73913vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    body.hideFooterNav #footer {
      padding-bottom: 20px; } }
  @media all and (max-width: 767px) {
    body.hideFooterNav #footer {
      padding-bottom: 4vw; } }
  #footer .pagetop {
    position: absolute;
    top: 0;
    right: 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border-radius: 50%;
    border: solid #000;
    cursor: pointer;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s; }
    @media all and (min-width: 768px) {
      #footer .pagetop {
        margin-top: -7.82609vw;
        margin-right: 4.34783vw;
        width: 4.34783vw;
        height: 4.34783vw;
        border-width: 0.08696vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footer .pagetop {
      margin-top: -90px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footer .pagetop {
      margin-right: 50px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footer .pagetop {
      width: 50px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footer .pagetop {
      height: 50px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footer .pagetop {
      border-width: 1px; } }
    @media all and (max-width: 767px) {
      #footer .pagetop {
        margin: -9.33333vw 6.66667vw 0 0;
        width: 6.66667vw;
        height: 6.66667vw;
        border-width: 0.26667vw; } }
    #footer .pagetop:hover {
      opacity: 0.8; }
    #footer .pagetop:after {
      content: '';
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      border: solid 0px #000;
      -webkit-transform: translate(-50%, -25%) rotate(-45deg);
          -ms-transform: translate(-50%, -25%) rotate(-45deg);
              transform: translate(-50%, -25%) rotate(-45deg); }
      @media all and (min-width: 768px) {
        #footer .pagetop:after {
          width: 1.13043vw;
          height: 1.13043vw;
          border-top-width: 0.17391vw;
          border-right-width: 0.17391vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footer .pagetop:after {
      width: 13px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footer .pagetop:after {
      height: 13px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footer .pagetop:after {
      border-top-width: 2px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footer .pagetop:after {
      border-right-width: 2px; } }
      @media all and (max-width: 767px) {
        #footer .pagetop:after {
          width: 1.73333vw;
          height: 1.73333vw;
          border-width: 0.33333vw 0.33333vw 0 0; } }
  #footer .inner {
    position: relative; }
    @media all and (min-width: 768px) {
      #footer .inner {
        margin: 0 1.73913vw;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
            -ms-flex-pack: justify;
                justify-content: space-between; } }
    @media all and (min-width: 1151px) {
      #footer .inner {
        margin: 0 auto;
        width: 1110px; } }
    @media all and (max-width: 767px) {
      #footer .inner {
        margin: 0 6.66667vw; } }
  @media all and (min-width: 768px) {
    #footer ul.menu1 {
      width: 52.17391vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footer ul.menu1 {
      width: 600px; } }
  #footer ul li {
    line-height: 1.6; }
    @media all and (min-width: 768px) {
      #footer ul li {
        padding-top: 1.04348vw;
        padding-bottom: 1.04348vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footer ul li {
      padding-top: 12px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footer ul li {
      padding-bottom: 12px; } }
  @media all and (min-width: 768px) and (min-width: 768px) {
    #footer ul li {
      font-size: 1.21739vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footer ul li {
      font-size: 14px; } }
    @media all and (max-width: 767px) {
      #footer ul li {
        padding: 2.66667vw 0;
        font-size: 2.93333vw; } }
    #footer ul li a {
      color: #fff;
      text-decoration: none; }
  @media all and (min-width: 768px) {
    #footer .copy {
      width: 34.78261vw;
      padding-top: 2.6087vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footer .copy {
      width: 400px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footer .copy {
      padding-top: 30px; } }
  @media all and (max-width: 767px) {
    #footer .copy {
      margin-top: 9.33333vw; } }
  @media all and (min-width: 768px) {
    #footer .copy .logo {
      margin: 0 0 0 auto;
      width: 15.91304vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footer .copy .logo {
      width: 183px; } }
  @media all and (max-width: 767px) {
    #footer .copy .logo {
      margin: 0 auto;
      width: 26.66667vw; } }
  #footer .copy .copyright {
    display: block;
    line-height: 1;
    color: #fff;
    font-weight: 500;
    white-space: nowrap; }
    @media all and (min-width: 768px) {
      #footer .copy .copyright {
        text-align: right;
        margin-top: 1.21739vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footer .copy .copyright {
      margin-top: 14px; } }
  @media all and (min-width: 768px) and (min-width: 768px) {
    #footer .copy .copyright {
      font-size: 0.95652vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footer .copy .copyright {
      font-size: 11px; } }
    @media all and (max-width: 767px) {
      #footer .copy .copyright {
        margin-top: 4vw;
        text-align: center;
        font-size: 2.4vw; } }

#footerNav {
  position: fixed;
  z-index: 120;
  bottom: 0;
  right: 0;
  background: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s; }
  @media all and (min-width: 768px) {
    #footerNav {
      margin-right: 4.34783vw;
      margin-bottom: 1.73913vw;
      width: 55.65217vw;
      height: 8vw;
      border-radius: 4vw;
      -webkit-transform: translateY(130px);
          -ms-transform: translateY(130px);
              transform: translateY(130px); } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footerNav {
      margin-right: 50px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footerNav {
      margin-bottom: 20px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footerNav {
      width: 640px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footerNav {
      height: 92px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footerNav {
      border-radius: 46px; } }
  @media all and (max-width: 767px) {
    #footerNav {
      margin-right: 4vw;
      margin-bottom: 2vw;
      width: 92vw;
      height: 14.93333vw;
      border-radius: 7.46667vw;
      -webkit-transform: translateY(20vw);
          -ms-transform: translateY(20vw);
              transform: translateY(20vw); } }
  #footerNav.show {
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0); }
  #footerNav:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    mix-blend-mode: multiply; }
    @media all and (min-width: 768px) {
      #footerNav:before {
        border-radius: 4vw;
        -webkit-box-shadow: 0.34783vw 0.34783vw 3.30435vw 0.43478vw rgba(16, 55, 114, 0.1);
                box-shadow: 0.34783vw 0.34783vw 3.30435vw 0.43478vw rgba(16, 55, 114, 0.1); } }
    @media all and (min-width: 1151px) {
      #footerNav:before {
        border-radius: 46px;
        -webkit-box-shadow: 4px 4px 38px 5px rgba(16, 55, 114, 0.1);
                box-shadow: 4px 4px 38px 5px rgba(16, 55, 114, 0.1); } }
    @media all and (max-width: 767px) {
      #footerNav:before {
        border-radius: 7.46667vw;
        -webkit-box-shadow: 0.53333vw 0.53333vw 5.06667vw 0.66667vw rgba(16, 55, 114, 0.1);
                box-shadow: 0.53333vw 0.53333vw 5.06667vw 0.66667vw rgba(16, 55, 114, 0.1); } }
  #footerNav .tx {
    position: relative;
    font-weight: 500; }
    @media all and (min-width: 768px) {
      #footerNav .tx {
        margin-left: 5.21739vw;
        line-height: 1.5625; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footerNav .tx {
      margin-left: 60px; } }
  @media all and (min-width: 768px) and (min-width: 768px) {
    #footerNav .tx {
      font-size: 1.3913vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footerNav .tx {
      font-size: 16px; } }
    @media all and (max-width: 767px) {
      #footerNav .tx {
        margin-left: 6.66667vw;
        font-size: 2.66667vw;
        line-height: 2; } }
  #footerNav .bt {
    position: relative; }
    @media all and (min-width: 768px) {
      #footerNav .bt {
        margin-right: 1.73913vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footerNav .bt {
      margin-right: 20px; } }
    @media all and (max-width: 767px) {
      #footerNav .bt {
        margin-right: 2.66667vw; } }
    #footerNav .bt a {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      letter-spacing: 0.04em;
      background: -webkit-linear-gradient(342deg, #0d43a7, #199357);
      background: linear-gradient(108deg, #0d43a7, #199357);
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      font-family: 'Roboto', sans-serif;
      font-weight: 900;
      color: #fff;
      text-decoration: none; }
      @media all and (min-width: 768px) {
        #footerNav .bt a {
          width: 17.73913vw;
          height: 5.21739vw;
          border-radius: 2.6087vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footerNav .bt a {
      width: 204px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footerNav .bt a {
      height: 60px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footerNav .bt a {
      border-radius: 30px; } }
  @media all and (min-width: 768px) and (min-width: 768px) {
    #footerNav .bt a {
      font-size: 2.26087vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footerNav .bt a {
      font-size: 26px; } }
      @media all and (max-width: 767px) {
        #footerNav .bt a {
          width: 27.33333vw;
          height: 9.33333vw;
          border-radius: 4.66667vw;
          font-size: 3.46667vw; } }
      #footerNav .bt a:after {
        content: '';
        display: inline-block;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        border: solid 0px #fff;
        -webkit-transform-origin: bottom left;
            -ms-transform-origin: bottom left;
                transform-origin: bottom left;
        -webkit-transform: skew(45deg);
            -ms-transform: skew(45deg);
                transform: skew(45deg); }
        @media all and (min-width: 768px) {
          #footerNav .bt a:after {
            width: 1.91304vw;
            height: 0.86957vw;
            border-right-width: 0.17391vw;
            border-bottom-width: 0.08696vw;
            margin-left: 0.69565vw; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footerNav .bt a:after {
      width: 22px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footerNav .bt a:after {
      height: 10px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footerNav .bt a:after {
      border-right-width: 2px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footerNav .bt a:after {
      border-bottom-width: 1px; } }
  @media all and (min-width: 768px) and (min-width: 1151px) {
    #footerNav .bt a:after {
      margin-left: 8px; } }
        @media all and (max-width: 767px) {
          #footerNav .bt a:after {
            width: 3.06667vw;
            height: 1.2vw;
            border-width: 0 0.33333vw 0.26667vw 0;
            margin-left: 1.2vw; } }
      @media all and (min-width: 768px) {
        #footerNav .bt a:hover {
          opacity: 0.9; } }

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