@font-face {
  font-family: 'noto sans';
  src: url("../fonts/NotoSansCJKjp-Regular.woff") format("truetype");
  font-display: swap; }
/* reset
------------------------------------------------- */
body, div,
dl, dt, dd, ul, ol, li,
h1, h2, h3, h4, h5, h6,
pre, form, fieldset, input, textarea,
p, blockquote, th, td, figure {
  margin: 0;
  padding: 0; }

img {
  border: 0;
  vertical-align: bottom; }

p.btm img {
  border: 0;
  vertical-align: top; }

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
  font-weight: normal; }

ul {
  list-style: none; }

caption, th {
  text-align: left; }

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal; }

/* html
------------------------------------------------- */
html {
  overflow-y: scroll;
  height: 100%; }

/* body
------------------------------------------------- */
body {
  width: 100%;
  height: 100%;
  margin: 0;
  color: #333;
  font-size: 16px;
  line-height: 1.6;
  font-family: 'noto sans';
  _display: inline;
  _zoom: 1; }
  body .pc {
    display: block; }
  body .sp {
    display: none; }

@media (max-width: 640px) {
  body {
    min-width: 320px;
    max-width: 900px;
    font-size: 12px; }
    body img {
      width: 100%;
      height: auto; }
    body .pc {
      display: none; }
    body .sp {
      display: block; } }
/* wrapper
------------------------------------------------- */
#wrapper {
  width: 100%;
  height: 100%;
  margin: 0 auto;
  padding: 0;
  text-align: left;
  position: relative; }

/* header
------------------------------------------------- */
header {
  background: #fff;
  max-width: 1800px;
  margin: 0 auto; }
  header .inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 26px 20px 14px; }
    header .inner h1 {
      width: 215px;
      float: left; }
      header .inner h1 img {
        width: 100%;
        height: auto; }
    header .inner nav {
      width: 530px;
      float: right; }
      header .inner nav ul {
        overflow: hidden; }
        header .inner nav ul li {
          width: 170px;
          float: left;
          margin-right: 10px; }
          header .inner nav ul li:last-child {
            margin-right: 0; }
          header .inner nav ul li a {
            display: block;
            border-radius: 10px;
            padding: 10px 0;
            text-align: center;
            color: #fff;
            font-size: 15px; }
          header .inner nav ul li:first-child a {
            background: #de6c00;
            -webkit-transition: 0.3s ease-in-out;
            -moz-transition: 0.3s ease-in-out;
            -o-transition: 0.3s ease-in-out;
            transition: 0.3s ease-in-out; }
            header .inner nav ul li:first-child a:hover {
              background: #f28926;
              text-decoration: none;
              -moz-transition: .5s;
              -webkit-transition: .5s;
              -o-transition: .5s;
              -ms-transition: .5s;
              transition: .5s; }
          header .inner nav ul li:nth-child(2) a {
            background: #0068a8;
            -webkit-transition: 0.3s ease-in-out;
            -moz-transition: 0.3s ease-in-out;
            -o-transition: 0.3s ease-in-out;
            transition: 0.3s ease-in-out; }
            header .inner nav ul li:nth-child(2) a:hover {
              background: #218acb;
              text-decoration: none;
              -webkit-transition: 0.3s ease-in-out;
              -moz-transition: 0.3s ease-in-out;
              -o-transition: 0.3s ease-in-out;
              transition: 0.3s ease-in-out; }
          header .inner nav ul li:last-child a {
            background: #00a0dd;
            -webkit-transition: 0.3s ease-in-out;
            -moz-transition: 0.3s ease-in-out;
            -o-transition: 0.3s ease-in-out;
            transition: 0.3s ease-in-out; }
            header .inner nav ul li:last-child a:hover {
              background: #25baf3;
              text-decoration: none;
              -webkit-transition: 0.3s ease-in-out;
              -moz-transition: 0.3s ease-in-out;
              -o-transition: 0.3s ease-in-out;
              transition: 0.3s ease-in-out; }

@media (max-width: 640px) {
  header {
    max-width: 100%; }
    header .inner {
      max-width: 96%;
      padding: 3% 0 2%; }
      header .inner h1 {
        width: 42%;
        padding-top: 1%; }
      header .inner nav {
        width: 50%; }
        header .inner nav ul li {
          width: 32%;
          float: left;
          margin-right: 2%; }
          header .inner nav ul li a {
            border-radius: 5px;
            padding: 15% 0;
            font-size: 12px;
            line-height: 1.2; }
          header .inner nav ul li:first-child a:hover {
            background: #de6c00; }
          header .inner nav ul li:nth-child(2) a:hover {
            background: #0068a8; }
          header .inner nav ul li:last-child a:hover {
            background: #00a0dd; } }
/* mv
------------------------------------------------- */
.mv {
  max-width: 1800px;
  margin: 0 auto 2px; }
  .mv img {
    width: 100%;
    height: auto; }

/* article
------------------------------------------------- */
.sec01 {
  background: url("../img/bg_rally.png") repeat-x center bottom;
  max-width: 1800px;
  margin: 0 auto;
  padding: 8px 0 50px; }
  .sec01 .inner {
    max-width: 1220px;
    margin: 0 auto;
    text-align: center; }

@media (min-width: 641px) and (max-width: 1290px) {
  .sec01 .inner {
    max-width: 96%; }
    .sec01 .inner img {
      width: 100%;
      height: auto; } }
@media (max-width: 640px) {
  .sec01 {
    padding: 2% 0 5%; }
    .sec01 .inner {
      max-width: 96%; } }
.sec02 {
  background: url("../img/bg_freemarket.png") repeat-x center bottom #fcc800;
  max-width: 1800px;
  margin: 0 auto;
  padding: 54px 0 65px; }
  .sec02 .inner {
    max-width: 1200px;
    margin: 0 auto; }

@media (min-width: 641px) and (max-width: 1290px) {
  .sec02 {
    background-size: auto 400px; }
    .sec02 .inner {
      max-width: 96%;
      padding: 0; }
      .sec02 .inner img {
        width: 100%;
        height: auto; } }
@media (max-width: 640px) {
  .sec02 {
    background-size: auto 160px;
    padding: 5% 0 7%; }
    .sec02 .inner {
      max-width: 96%;
      padding: 0; } }
.sec03 {
  background: #eee;
  max-width: 1800px;
  margin: 0 auto;
  padding: 60px 0 80px; }
  .sec03 .inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px; }
    .sec03 .inner h3 {
      margin-bottom: 30px;
      text-align: center;
      color: #e4007f;
      font-size: 40px;
      font-weight: bold; }
    .sec03 .inner .txt01 {
      margin-bottom: 30px;
      text-align: center; }
    .sec03 .inner ul {
      overflow: hidden; }
      .sec03 .inner ul li {
        width: 33%;
        float: left;
        margin-right: 0.5%; }
        .sec03 .inner ul li:nth-child(3n) {
          margin-right: 0; }
        .sec03 .inner ul li:nth-child(-n+3) {
          margin-bottom: 5px; }
        .sec03 .inner ul li img {
          width: 100%;
          height: auto; }

@media (min-width: 641px) and (max-width: 1290px) {
  .sec03 .inner {
    max-width: 96%;
    padding: 0; } }
@media (max-width: 640px) {
  .sec03 {
    padding: 8% 0 6%; }
    .sec03 .inner {
      max-width: 96%;
      padding: 0; }
      .sec03 .inner h3 {
        margin-bottom: 3%;
        font-size: 20px; }
      .sec03 .inner .txt01 {
        margin-bottom: 5%; }
      .sec03 .inner ul {
        overflow: hidden; }
        .sec03 .inner ul li {
          width: 49%;
          float: left;
          margin: 0 0 2%; }
          .sec03 .inner ul li:nth-child(even) {
            float: right; }
          .sec03 .inner ul li:nth-child(-n+3) {
            margin-bottom: 2%; } }
.sec04 {
  background: #00b7ee;
  max-width: 1800px;
  margin: 0 auto;
  padding: 30px 0; }
  .sec04 .inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    .sec04 .inner dl {
      display: flex; }
      .sec04 .inner dl dt {
        width: 50%;
        text-align: center; }
      .sec04 .inner dl dd {
        width: 50%;
        text-align: center; }

@media (min-width: 641px) and (max-width: 1290px) {
  .sec04 {
    padding: 30px 0; }
    .sec04 .inner {
      max-width: 96%; }
      .sec04 .inner dl {
        display: flex; }
        .sec04 .inner dl dt {
          width: 42%;
          padding: 0 6% 0 2%; }
        .sec04 .inner dl dd {
          width: 50%; }
        .sec04 .inner dl img {
          width: 100%;
          height: auto; } }
@media (max-width: 640px) {
  .sec04 {
    margin: 0 auto;
    padding: 4% 0; }
    .sec04 .inner {
      max-width: 96%;
      padding: 0; }
      .sec04 .inner dl {
        display: block; }
        .sec04 .inner dl dt {
          width: 90%;
          margin: 0 auto 6%; }
        .sec04 .inner dl dd {
          width: 100%; } }
.sec05 {
  background: url("../img/bg_place.jpg") no-repeat center top;
  height: 564px;
  padding: 60px 0 0; }
  .sec05 h3 {
    margin-bottom: 30px;
    text-align: center;
    font-size: 30px;
    font-weight: bold; }
  .sec05 p {
    text-align: center; }

@media (max-width: 640px) {
  .sec05 {
    background: url("../img/bg_place.jpg") no-repeat center top;
    height: auto;
    padding: 6% 3%; }
    .sec05 h3 {
      margin-bottom: 5%;
      font-size: 16px; }
    .sec05 p {
      text-align: center; } }
.cta {
  padding: 60px 0; }
  .cta .btn {
    width: 500px;
    margin: 0 auto; }
    .cta .btn a {
      display: block;
      border-radius: 50px;
      background: #de6c00;
      padding: 15px 0;
      text-align: center;
      color: #fff;
      font-size: 30px;
      font-weight: bold;
      -webkit-transition: 0.3s ease-in-out;
      -moz-transition: 0.3s ease-in-out;
      -o-transition: 0.3s ease-in-out;
      transition: 0.3s ease-in-out; }
      .cta .btn a:hover {
        background: #f29339;
        text-decoration: none;
        -moz-transition: .5s;
        -webkit-transition: .5s;
        -o-transition: .5s;
        -ms-transition: .5s;
        transition: .5s; }

@media (min-width: 641px) and (max-width: 1290px) {
  .cta .btn {
    width: 480px; }
    .cta .btn a {
      font-size: 26px; }
      .cta .btn a:hover {
        background: #de6c00; } }
@media (max-width: 640px) {
  .cta {
    padding: 8% 0; }
    .cta .btn {
      width: 90%; }
      .cta .btn a {
        padding: 12px 0;
        font-size: 16px; }
        .cta .btn a:hover {
          background: #de6c00; } }
/* footer
------------------------------------------------- */
footer {
  border-top: 2px solid #a2a2a2;
  max-width: 1800px;
  margin: 0 auto; }
  footer .inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 55px 20px 20px; }
    footer .inner dl {
      overflow: hidden; }
      footer .inner dl dt {
        width: 540px;
        float: left; }
        footer .inner dl dt h1 {
          margin-bottom: 10px; }
        footer .inner dl dt .catch {
          margin-bottom: 10px;
          font-size: 18px;
          font-weight: bold; }
      footer .inner dl dd {
        width: 530px;
        float: right;
        padding-top: 25px; }
        footer .inner dl dd ul {
          overflow: hidden; }
          footer .inner dl dd ul li {
            width: 170px;
            float: left;
            margin-right: 10px; }
            footer .inner dl dd ul li:last-child {
              margin-right: 0; }
            footer .inner dl dd ul li a {
              display: block;
              border-radius: 10px;
              padding: 10px 0;
              text-align: center;
              color: #fff;
              font-size: 15px; }
            footer .inner dl dd ul li:first-child a {
              background: #de6c00;
              -webkit-transition: 0.3s ease-in-out;
              -moz-transition: 0.3s ease-in-out;
              -o-transition: 0.3s ease-in-out;
              transition: 0.3s ease-in-out; }
              footer .inner dl dd ul li:first-child a:hover {
                background: #f28926;
                text-decoration: none;
                -moz-transition: .5s;
                -webkit-transition: .5s;
                -o-transition: .5s;
                -ms-transition: .5s;
                transition: .5s; }
            footer .inner dl dd ul li:nth-child(2) a {
              background: #0068a8;
              -webkit-transition: 0.3s ease-in-out;
              -moz-transition: 0.3s ease-in-out;
              -o-transition: 0.3s ease-in-out;
              transition: 0.3s ease-in-out; }
              footer .inner dl dd ul li:nth-child(2) a:hover {
                background: #218acb;
                text-decoration: none;
                -webkit-transition: 0.3s ease-in-out;
                -moz-transition: 0.3s ease-in-out;
                -o-transition: 0.3s ease-in-out;
                transition: 0.3s ease-in-out; }
            footer .inner dl dd ul li:last-child a {
              background: #00a0dd;
              -webkit-transition: 0.3s ease-in-out;
              -moz-transition: 0.3s ease-in-out;
              -o-transition: 0.3s ease-in-out;
              transition: 0.3s ease-in-out; }
              footer .inner dl dd ul li:last-child a:hover {
                background: #25baf3;
                text-decoration: none;
                -webkit-transition: 0.3s ease-in-out;
                -moz-transition: 0.3s ease-in-out;
                -o-transition: 0.3s ease-in-out;
                transition: 0.3s ease-in-out; }

@media (min-width: 641px) and (max-width: 1290px) {
  footer .inner dl {
    overflow: hidden; }
    footer .inner dl dt {
      width: 48%;
      float: left; }
      footer .inner dl dt h1 {
        margin-bottom: 10px; }
      footer .inner dl dt .catch {
        margin-bottom: 10px;
        font-size: 18px;
        font-weight: bold; }
    footer .inner dl dd {
      width: 50%;
      float: right;
      padding-top: 25px; }
      footer .inner dl dd ul {
        overflow: hidden; }
        footer .inner dl dd ul li {
          width: 32%;
          float: left;
          margin-right: 2%; }
          footer .inner dl dd ul li:last-child {
            margin-right: 0; }
          footer .inner dl dd ul li a {
            display: block;
            border-radius: 10px;
            padding: 10px 0;
            text-align: center;
            color: #fff;
            font-size: 15px; }
          footer .inner dl dd ul li:first-child a {
            background: #de6c00;
            -webkit-transition: 0.3s ease-in-out;
            -moz-transition: 0.3s ease-in-out;
            -o-transition: 0.3s ease-in-out;
            transition: 0.3s ease-in-out; }
            footer .inner dl dd ul li:first-child a:hover {
              background: #f28926;
              text-decoration: none;
              -moz-transition: .5s;
              -webkit-transition: .5s;
              -o-transition: .5s;
              -ms-transition: .5s;
              transition: .5s; }
          footer .inner dl dd ul li:nth-child(2) a {
            background: #0068a8;
            -webkit-transition: 0.3s ease-in-out;
            -moz-transition: 0.3s ease-in-out;
            -o-transition: 0.3s ease-in-out;
            transition: 0.3s ease-in-out; }
            footer .inner dl dd ul li:nth-child(2) a:hover {
              background: #218acb;
              text-decoration: none;
              -webkit-transition: 0.3s ease-in-out;
              -moz-transition: 0.3s ease-in-out;
              -o-transition: 0.3s ease-in-out;
              transition: 0.3s ease-in-out; }
          footer .inner dl dd ul li:last-child a {
            background: #00a0dd;
            -webkit-transition: 0.3s ease-in-out;
            -moz-transition: 0.3s ease-in-out;
            -o-transition: 0.3s ease-in-out;
            transition: 0.3s ease-in-out; }
            footer .inner dl dd ul li:last-child a:hover {
              background: #25baf3;
              text-decoration: none;
              -webkit-transition: 0.3s ease-in-out;
              -moz-transition: 0.3s ease-in-out;
              -o-transition: 0.3s ease-in-out;
              transition: 0.3s ease-in-out; } }
@media (max-width: 640px) {
  footer .inner {
    max-width: 96%;
    padding: 6% 0 3%; }
    footer .inner dl dt {
      width: 100%;
      float: none; }
      footer .inner dl dt h1 {
        width: 50%;
        margin: 0 auto 3%; }
      footer .inner dl dt .catch {
        margin-bottom: 3%;
        text-align: center;
        font-size: 14px; }
    footer .inner dl dd {
      width: 100%;
      float: none;
      padding-top: 5%; }
      footer .inner dl dd ul li {
        width: 32%;
        margin-right: 2%; }
        footer .inner dl dd ul li a {
          border-radius: 5px;
          padding: 12% 0;
          font-size: 12px;
          line-height: 1.2; }
        footer .inner dl dd ul li:first-child a:hover {
          background: #de6c00; }
        footer .inner dl dd ul li:nth-child(2) a:hover {
          background: #0068a8; }
        footer .inner dl dd ul li:last-child a:hover {
          background: #00a0dd; } }
/* *******************************************
     common
******************************************* */
/* link
------------------------------------------------- */
a:link,
a:visited {
  color: #000;
  text-decoration: none; }

a:hover,
a:active {
  color: #000;
  text-decoration: underline; }

/* alpha
------------------------------------------------- */
a img {
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out; }

a.alpha:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -moz-transition: .5s;
  -webkit-transition: .5s;
  -o-transition: .5s;
  -ms-transition: .5s;
  transition: .5s; }

@media (max-width: 900px) {
  a img {
    -webkit-transition: 0s ease-in-out;
    -moz-transition: 0s ease-in-out;
    -o-transition: 0s ease-in-out;
    transition: 0s ease-in-out; }

  a.alpha:hover img {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -moz-transition: 0s;
    -webkit-transition: 0s;
    -o-transition: 0s;
    -ms-transition: 0s;
    transition: 0s; } }
/* clearfix
------------------------------------------------- */
.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden; }
