@charset "utf-8";

img {
  width: 100%;
  margin: 0;
  padding: 0;
  vertical-align: top;
}

a:hover {
  opacity: .6;
}

body {
  background: linear-gradient(#fff, #eee, #0c0f8b);
}

@media screen and (min-width:1024px) {

  #pc-inner {
    display: block;
    width: 100%;
    margin-top: 93px;
  }

  #sp-inner {
    display: none;
  }

  #container {
    width: 100%;
    margin: 0 auto;
  }

  #main-item {
    position: relative;
  }

  #pc-inner header {
    display: flex;
    position: fixed;
    width: 100%;
    top: 0;
    background: #FFF;
  }

  #pc-inner h1 {
    width: 197px;
    margin-left: 95px;
    padding-right: 28px;
  }

  #pc-inner #right-box {
    width: 396px;
    margin-top: 21px;
    margin-right: 45px;
    margin-left: auto;
  }

  #pc-inner #right-box a {
    display: inline-block;
    max-width: 70%;
  }

  #pc-inner #right-box a+a {
    display: inline-block;
    max-width: 14%;
    margin-left: 3%;
  }

  #contact {
    position: fixed;
    bottom: 0;
    max-width: 730px;
    background: #000;
    display: flex;
    padding: 20px 35px;
  }

  #pc-inner footer {
    text-align: center;
    padding: 8% 0;
    margin: 0 auto;
    background: #f7f7f7;
  }

  #pc-inner footer div {
    width: 657px;
    margin: 0 auto 19px;
    display: flex;
  }

  #pc-inner footer h1 {
    border: none;
    width: 77%;
    margin-left: 28px;
  }

  #pc-inner footer h1+a {
    width: 10%;
    display: inline-block;
    margin-top: 15px;
  }

  #pc-inner footer div+a {
    display: block;
    width: 604px;
    margin: 0 auto;
  }
}

@media screen and (min-width:376px) and (max-width:1024px) {

  #pc-inner {
    display: block;
    margin-top: 79px;
  }

  #sp-inner {
    display: none;
  }

  #main-item {
    position: relative;
  }

  header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 82px;
    background: #fff;
    display: flex;
  }

  h1 {
    width: 19%;
    height: 39px;
    padding: 0 10px 0 18px;
    border-right: 1px solid #000;
  }

  #right-box {
    width: 35%;
    margin-top: 21px;
  }

  #right-box a {
    display: inline-block;
    max-width: 73%;
    margin-left: 13px;
  }

  #right-box a+a {
    display: inline-block;
    max-width: 14%;
    margin-left: 2%;
  }

  #contact {
    position: fixed;
    bottom: 0;
    background: #000;
    display: flex;
    padding: 10px;
  }

  #contact a {
    width: 90%;
    margin-right: 10px;
  }

  #contact a:last-child {
    margin-right: 0;
  }

  footer {
    text-align: center;
    padding: 85px 0;
    height: 190px;
    margin: -1px auto 0;
    background: #f7f7f7;
  }

  footer div {
    width: 60%;
    margin: 0 auto;
    display: flex;
  }

  footer h1 {
    border: none;
    width: 90%;
    padding: 0 16px 0 0px;
    display: inline-table;
  }

  footer h1+a {
    width: 11%;
    display: inline-block;
    margin-top: 15px;
  }

  #pc-inner footer div+a {
    display: block;
    width: 604px;
    margin: 0 auto;
  }

  #contact a {
    display: none;
  }

  #contact a.tb {
    display: block;
  }
}

@media screen and (max-width:540px) {
  #right-box {
    width: 45%;
  }

  #pc-inner footer div+a {
    width: 80%;
  }
}

@media screen and (max-width:500px) {
  header {
    height: 70px;
  }

  h1 {
    height: 29px;
  }

  #pc-inner footer div+a {
    width: 80%;
  }
}

@media screen and (max-width:445px) {
  #pc-inner {
    display: none;
  }

  #sp-inner {
    display: block;
  }

  #main-item {
    position: relative;
  }

  header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 73px;
    background: #fff;
    display: flex;
  }

  h1 {
    width: 31%;
    height: 31px;
    padding: 0 10px 0 18px;
    border-right: 1px solid #000;
  }

  #right-box {
    width: 59%;
    margin-top: 21px;
  }

  #right-box a {
    display: inline-block;
    max-width: 70%;
    margin-left: 13px;
  }

  #right-box a+a {
    display: inline-block;
    max-width: 14%;
    margin-left: 2%;
  }

  #contact {
    position: fixed;
    bottom: 0;
    max-width: 100%;
    background: #000;
    display: flex;
    padding: 10px;
  }

  #contact a {
    width: 90%;
    margin-right: 10px;
  }

  #contact a.mr0 {
    margin-right: 0;
  }

  #pc-inner footer div+a {
    width: 80%;
  }

  footer {
    text-align: center;
    padding: 85px 0;
    height: 190px;
    margin: -1px auto 0;
    background: #f7f7f7;
  }

  footer div {
    width: 80%;
    margin: 0 auto;
    display: flex;
  }

  footer h1 {
    border: none;
    width: 90%;
    padding: 0 16px 0 0px;
  }

  footer h1+a {
    width: 15%;
    display: inline-block;
    margin-top: 15px;
  }

  .tb {
    display: none;
  }
}