@charset "UTF-8";
/* -----------------------------------------------------------
reset
----------------------------------------------------------- */
* {
  margin: 0;
  padding: 0; }

/* scroll fix */
html {
  overflow-y: scroll;
  font-size: 62.5%;
  /* 10px */ }

div, h1, h2, h3, h4, h5, h6, p, dl, dt, dd, ol, ul, li, form, input, textarea, button, table, tr, th, td, article, aside, footer, header, hgroup, nav, section, a, span {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }

body, 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; }

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

table {
  border-collapse: collapse;
  border-spacing: 0; }

q:before, q:after {
  content: ''; }

object,
embed {
  vertical-align: top; }

hr, legend {
  display: none;
  border: none; }

abbr, acronym, fieldset {
  border: 0; }

tr, th, td, caption {
  vertical-align: top;
  font-style: normal;
  font-weight: normal;
  text-align: left; }

ol, ul {
  list-style: none; }

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

/* clearfix
 * ------------------------- */
.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden; }

img {
  border: 0;
  font-size: 0;
  line-height: 0;
  vertical-align: middle;
  max-width: 100%; }

body {
  font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo","Osaka", "MS P Gothic",Verdana,Arial, Helvetica, sans-serif;
  line-height: 1.6;
  background: #fff;
  -webkit-text-size-adjust: 100%;
  color: #000; }

body {
  position: static;
  overflow: visible; }

@media screen and (max-width: 768px) {
  body {
    min-width: 320px;
    font-size: 12px; } }
a {
  text-decoration: none; }

.lt {
  float: left; }

.rt {
  float: right; }

.center {
  text-align: center; }

.container-fluid {
  width: 100%;
  margin: 0 auto;
  padding: 0; }
  @media screen and (min-width: 992px) {
    .container-fluid {
      width: 980px; } }

.hidden-sm {
  display: none !important; }

@media screen and (min-width: 992px) {
  .hidden-sm {
    display: block !important; } }
.visible-sm-block {
  display: block !important; }

@media screen and (min-width: 992px) {
  .visible-sm-block {
    display: none !important; } }
/* [ utility ]
-----------------------------*/
.only-pc {
  display: none !important; }

.only-pci {
  display: none !important; }

.only-sp {
  display: block !important; }

.only-spi {
  display: inline-block !important; }

@media screen and (min-width: 992px) {
  .only-pc {
    display: block !important; }

  .only-pci {
    display: inline-block !important; }

  .only-sp {
    display: none !important; }

  .only-spi {
    display: none !important; } }
main {
  width: 100%; }
  @media screen and (min-width: 992px) {
    main {
      overflow: hidden; } }

/* header
-----------------------------*/
header {
  padding: 0 2%;
  height: 60px;
  line-height: 60px;
  background: #fff;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  border-bottom: 4px solid #eb5505; }
  @media screen and (min-width: 992px) {
    header {
      height: 75px;
      background: #fff;
      line-height: 75px;
      padding: 0; } }
  header .logo img {
    width: 80px; }
    @media screen and (min-width: 992px) {
      header .logo img {
        width: 104px; } }
  header .icon-wrap a {
    float: left;
    margin: 0 5px;
    width: 43px;
    display: inline-block; }
    @media screen and (min-width: 992px) {
      header .icon-wrap a {
        margin: 0 10px;
        float: none; } }
    header .icon-wrap a img {
      width: 80%; }
      @media screen and (min-width: 992px) {
        header .icon-wrap a img {
          width: 100%; } }

/* banner
-----------------------------*/
.banner-wrap {
  margin-top: 60px;
  text-align: center; }
  @media screen and (min-width: 992px) {
    .banner-wrap {
      margin-top: 70px; } }
  .banner-wrap .pc {
    background: url("../img/banner.jpg") center top no-repeat;
    background-size: cover;
    overflow: hidden;
    height: 550px; }
    .banner-wrap .pc .container-fluid {
      width: 985px; }
    .banner-wrap .pc .img {
      padding-top: 2.5%;
      text-align: center; }
  .banner-wrap .sp {
    background: url("../img/sp/banner.jpg") center top no-repeat;
    background-size: cover;
    overflow: hidden; }
    .banner-wrap .sp .img {
      text-align: center;
      position: relative;
      z-index: 1; }
  .banner-wrap .text-wrap {
    height: auto;
    line-height: normal;
    padding: 3% 0;
    background: url("../img/sp/banner-bg2.png") repeat-x;
    background-size: cover;
    position: relative;
    margin-top: -7.5%; }
    @media screen and (min-width: 992px) {
      .banner-wrap .text-wrap {
        background: url("../img/banner-bg2.png") repeat-x;
        height: 80px;
        line-height: 80px;
        text-align: center;
        padding: 0;
        margin-top: 0; } }
    .banner-wrap .text-wrap p {
      font-size: 1.5rem;
      color: #fff;
      font-weight: bold; }
      @media screen and (min-width: 992px) {
        .banner-wrap .text-wrap p {
          font-size: 2.4rem; } }
      @media screen and (max-width: 375px) {
        .banner-wrap .text-wrap p {
          font-size: 1.4rem; } }
      @media screen and (max-width: 320px) {
        .banner-wrap .text-wrap p {
          font-size: 1.2rem; } }
      .banner-wrap .text-wrap p b {
        font-size: 1.9rem; }
        @media screen and (min-width: 992px) {
          .banner-wrap .text-wrap p b {
            font-size: 3.2rem; } }
        @media screen and (max-width: 375px) {
          .banner-wrap .text-wrap p b {
            font-size: 1.6rem; } }
        @media screen and (max-width: 320px) {
          .banner-wrap .text-wrap p b {
            font-size: 1.4rem; } }
      .banner-wrap .text-wrap p span {
        font-size: 1.2rem;
        padding: 1% 3%;
        margin-right: 0;
        margin-bottom: 1.5%;
        position: static;
        display: inline-block;
        color: #ffcc00;
        border: 2px solid #ffcc00;
        font-weight: bold;
        border-radius: 30px; }
        @media screen and (min-width: 992px) {
          .banner-wrap .text-wrap p span {
            font-size: 2rem;
            padding: 5px 15px;
            margin-right: 20px;
            position: relative;
            top: -4px;
            display: inline; } }

/* sec02
-----------------------------*/
.sec02 {
  background: url("../img/sec02-bg.png") repeat;
  padding-bottom: 0%; }
  @media screen and (min-width: 992px) {
    .sec02 {
      padding-bottom: 55px; } }
  .sec02 .sec02-wrap {
    padding: 0 2%; }
    @media screen and (min-width: 992px) {
      .sec02 .sec02-wrap {
        padding: 0; } }
    .sec02 .sec02-wrap .hd h3 {
      padding-top: 10%;
      padding-bottom: 3%;
      width: 55%;
      margin: 0 auto;
      text-align: center; }
      @media screen and (min-width: 992px) {
        .sec02 .sec02-wrap .hd h3 {
          padding-top: 58px;
          width: 294px; } }
      .sec02 .sec02-wrap .hd h3 img {
        margin: auto; }
    .sec02 .sec02-wrap .hd p {
      margin-top: 2%;
      padding: 2% 0;
      background: #efb61e;
      width: 100%;
      font-size: 29px;
      line-height: 1;
      color: #7e1111;
      text-align: center;
      border-radius: 10px; }
      @media screen and (min-width: 992px) {
        .sec02 .sec02-wrap .hd p {
          padding: 10px 0;
          margin-top: 20px; } }
      .sec02 .sec02-wrap .hd p i {
        display: inline-block;
        width: 10%;
        margin-right: 5px; }
        @media screen and (min-width: 992px) {
          .sec02 .sec02-wrap .hd p i {
            width: 25px;
            margin-right: 10px; } }
        .sec02 .sec02-wrap .hd p i img {
          width: 100%; }
      @media screen and (max-width: 768px) {
        .sec02 .sec02-wrap .hd p img {
          width: 60%; } }
    .sec02 .sec02-wrap .bd {
      margin-top: 5%; }
      @media screen and (min-width: 992px) {
        .sec02 .sec02-wrap .bd {
          margin-top: 30px; } }
      .sec02 .sec02-wrap .bd ul {
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -moz-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center; }
        .sec02 .sec02-wrap .bd ul li {
          width: 80%;
          margin: 0 0 8% 0;
          padding: 0 2%;
          float: left; }
          @media screen and (min-width: 992px) {
            .sec02 .sec02-wrap .bd ul li {
              width: 300px;
              margin: 0 0 0 0;
              padding: 0;
              float: left; } }
          .sec02 .sec02-wrap .bd ul li .img {
            width: 100%;
            height: auto;
            background: url("../img/sec02-img-bg.png") repeat;
            display: -webkit-box;
            display: -ms-flexbox;
            display: -webkit-flex;
            display: flex;
            flex-wrap: wrap;
            -ms-flex-wrap: wrap;
            -webkit-box-pack: justify;
            -ms-flex-pack: center;
            -webkit-justify-content: center;
            justify-content: center;
            -webkit-align-items: center;
            -ms-flex-align: center;
            align-items: center; }
            @media screen and (min-width: 992px) {
              .sec02 .sec02-wrap .bd ul li .img {
                width: 300px;
                height: 300px;
                float: none; } }
            .sec02 .sec02-wrap .bd ul li .img img {
              width: 85%;
              margin: 8% 0; }
              @media screen and (min-width: 992px) {
                .sec02 .sec02-wrap .bd ul li .img img {
                  width: 87%;
                  margin: 0; } }
          .sec02 .sec02-wrap .bd ul li .con {
            width: 100%;
            margin: 0; }
            @media screen and (min-width: 992px) {
              .sec02 .sec02-wrap .bd ul li .con {
                margin: -16px 0 10px;
                float: none;
                width: auto; } }
            .sec02 .sec02-wrap .bd ul li .con h4 {
              font-size: 1.5rem;
              margin: -5px 0 2% 0;
              text-align: center;
              color: #7e1111;
              line-height: 1;
              font-weight: 500; }
              @media screen and (min-width: 992px) {
                .sec02 .sec02-wrap .bd ul li .con h4 {
                  font-size: 2rem;
                  margin: 0;
                  margin-top: 1%; } }
              .sec02 .sec02-wrap .bd ul li .con h4 img.img1 {
                max-width: 90%; }
                @media screen and (min-width: 992px) {
                  .sec02 .sec02-wrap .bd ul li .con h4 img.img1 {
                    width: 180px;
                    max-width: 100%; } }
              .sec02 .sec02-wrap .bd ul li .con h4 img.img2 {
                max-width: 68%;
                padding-bottom: 1%; }
                @media screen and (min-width: 992px) {
                  .sec02 .sec02-wrap .bd ul li .con h4 img.img2 {
                    width: 129px;
                    max-width: 100%; } }
              .sec02 .sec02-wrap .bd ul li .con h4 img.img3 {
                max-width: 79%; }
                @media screen and (min-width: 992px) {
                  .sec02 .sec02-wrap .bd ul li .con h4 img.img3 {
                    width: 169px;
                    max-width: 100%; } }
            .sec02 .sec02-wrap .bd ul li .con p {
              color: #362828;
              font-weight: bold;
              font-size: 1.4rem;
              line-height: 1;
              text-align: center;
              margin-top: 10%; }
              @media screen and (min-width: 992px) {
                .sec02 .sec02-wrap .bd ul li .con p {
                  font-size: 1.6rem;
                  line-height: 1.38;
                  text-align: center; } }
              @media screen and (max-width: 992px) {
                .sec02 .sec02-wrap .bd ul li .con p {
                  line-height: 1.8;
                  font-size: 4vw;
                  height: 10vw;
                  display: flex;
                  justify-content: center;
                  align-items: center; } }
            @media screen and (max-width: 320px) {
              .sec02 .sec02-wrap .bd ul li .con p.prize03 {
                width: 202px;
                margin-left: -36px; } }

/* sec04
-----------------------------*/
.sec04 {
  margin-top: 8%;
  padding: 0 4%; }
  @media screen and (min-width: 992px) {
    .sec04 {
      margin-top: 100px;
      padding: 0; } }
  .sec04 .sec04-wrap .con .hd h3 {
    text-align: center; }
    .sec04 .sec04-wrap .con .hd h3 span {
      font-size: 1rem;
      margin-top: 9px;
      text-transform: uppercase;
      line-height: 1;
      color: #333;
      display: block; }
      @media screen and (min-width: 992px) {
        .sec04 .sec04-wrap .con .hd h3 span {
          font-size: 1.6rem;
          margin-top: 32px; } }
      @media screen and (max-width: 991px) {
        .sec04 .sec04-wrap .con .hd h3 span {
          font-size: 3vw;
          margin-top: 3vw; } }
    .sec04 .sec04-wrap .con .hd h3 strong {
      width: 49%;
      margin: 0 auto;
      display: block; }
      @media screen and (min-width: 992px) {
        .sec04 .sec04-wrap .con .hd h3 strong {
          margin: 15px auto 0;
          width: 294px; } }
      .sec04 .sec04-wrap .con .hd h3 strong img {
        margin: auto;
        max-width: 90%;
        padding-bottom: 6%; }
  .sec04 .sec04-wrap .con .bd {
    margin-top: 4%; }
    @media screen and (min-width: 992px) {
      .sec04 .sec04-wrap .con .bd {
        margin-top: 30px; } }
    .sec04 .sec04-wrap .con .bd .table {
      display: table;
      border-collapse: collapse; }
      .sec04 .sec04-wrap .con .bd .table .table-tr {
        display: table-row;
        background: url("../img/sec04-li-bg.png") repeat-x bottom left;
        background-size: 5%; }
        @media screen and (min-width: 992px) {
          .sec04 .sec04-wrap .con .bd .table .table-tr {
            background: url("../img/sec04-li-bg.png") repeat-x bottom left;
            background-size: 2%; } }
        .sec04 .sec04-wrap .con .bd .table .table-tr:last-child {
          border-bottom: none;
          background: none; }
        .sec04 .sec04-wrap .con .bd .table .table-tr .table-td {
          display: block;
          height: 100%;
          color: #4a331f;
          font-size: 1.2rem;
          padding: 2% 0;
          max-width: 980px; }
          @media screen and (min-width: 992px) {
            .sec04 .sec04-wrap .con .bd .table .table-tr .table-td {
              font-size: 1.6rem;
              padding: 6px 0; } }
          @media screen and (max-width: 320px) {
            .sec04 .sec04-wrap .con .bd .table .table-tr .table-td {
              font-size: 1rem; } }
          .sec04 .sec04-wrap .con .bd .table .table-tr .table-td:last-child {
            padding-left: 0;
            padding-bottom: 5%; }
            @media screen and (min-width: 992px) {
              .sec04 .sec04-wrap .con .bd .table .table-tr .table-td:last-child {
                padding-left: 50px;
                padding-bottom: 33px; } }
          .sec04 .sec04-wrap .con .bd .table .table-tr .table-td:first-child {
            font-weight: bold;
            color: #4a331f;
            width: 100%;
            font-size: 2rem;
            padding: 5% 0 0;
            margin-right: 6px;
            display: -webkit-box;
            display: -ms-flexbox;
            display: -webkit-flex;
            display: flex;
            flex-wrap: wrap;
            -ms-flex-wrap: wrap;
            -webkit-box-pack: justify;
            -ms-flex-pack: start;
            -webkit-justify-content: flex-start;
            justify-content: flex-start;
            -webkit-align-items: center;
            -ms-flex-align: center;
            align-items: center; }
            @media screen and (min-width: 992px) {
              .sec04 .sec04-wrap .con .bd .table .table-tr .table-td:first-child {
                font-size: 2.6rem;
                padding: 35px 0 0;
                margin-right: 12px;
                width: auto; } }
          .sec04 .sec04-wrap .con .bd .table .table-tr .table-td span.red {
            color: #c51f2c;
            font-size: 1.6rem; }
            @media screen and (min-width: 992px) {
              .sec04 .sec04-wrap .con .bd .table .table-tr .table-td span.red {
                font-size: 2rem; } }
            @media screen and (min-width: 320px) {
              .sec04 .sec04-wrap .con .bd .table .table-tr .table-td span.red {
                font-size: 1.4rem; } }
          .sec04 .sec04-wrap .con .bd .table .table-tr .table-td i {
            background: url("../img/sec04-i.png") no-repeat;
            background-size: contain;
            display: inline-block;
            width: 29px;
            height: 18px;
            margin-right: 6px; }
            @media screen and (min-width: 992px) {
              .sec04 .sec04-wrap .con .bd .table .table-tr .table-td i {
                width: 39px;
                height: 23px;
                margin-right: 8px; } }
          .sec04 .sec04-wrap .con .bd .table .table-tr .table-td ul.table {
            width: 100%;
            margin-bottom: 10px;
            margin-top: 10px; }
            .sec04 .sec04-wrap .con .bd .table .table-tr .table-td ul.table li {
              height: auto;
              line-height: normal;
              position: relative;
              border-top: 2px solid #dcaf16;
              overflow: hidden; }
              @media screen and (min-width: 992px) {
                .sec04 .sec04-wrap .con .bd .table .table-tr .table-td ul.table li {
                  position: static; } }
              .sec04 .sec04-wrap .con .bd .table .table-tr .table-td ul.table li:last-child {
                border-bottom: 2px solid #dcaf16; }
              .sec04 .sec04-wrap .con .bd .table .table-tr .table-td ul.table li strong {
                width: 30%;
                font-size: 1.4rem;
                padding-left: 8px;
                position: absolute;
                height: 100%;
                display: -webkit-box;
                display: -ms-flexbox;
                display: -webkit-flex;
                display: flex;
                flex-wrap: wrap;
                -ms-flex-wrap: wrap;
                -webkit-box-pack: justify;
                -ms-flex-pack: justify;
                -webkit-justify-content: space-between;
                justify-content: space-between;
                -webkit-align-items: center;
                -ms-flex-align: center;
                align-items: center;
                float: left;
                background: #fbf4d7;
                color: #333;
                box-sizing: border-box;
                font-weight: normal; }
                @media screen and (min-width: 992px) {
                  .sec04 .sec04-wrap .con .bd .table .table-tr .table-td ul.table li strong {
                    width: 200px;
                    display: block;
                    font-size: 1.6rem;
                    padding: 10px 10px 10px 15px;
                    height: auto;
                    position: static; } }
                @media screen and (max-width: 320px) {
                  .sec04 .sec04-wrap .con .bd .table .table-tr .table-td ul.table li strong {
                    font-size: 1.2rem; } }
                .sec04 .sec04-wrap .con .bd .table .table-tr .table-td ul.table li strong.ht {
                  position: absolute;
                  height: 100%;
                  display: -webkit-box;
                  display: -ms-flexbox;
                  display: -webkit-flex;
                  display: flex;
                  flex-wrap: wrap;
                  -ms-flex-wrap: wrap;
                  -webkit-box-pack: justify;
                  -ms-flex-pack: justify;
                  -webkit-justify-content: space-between;
                  justify-content: space-between;
                  -webkit-align-items: center;
                  -ms-flex-align: center;
                  align-items: center; }
                  @media screen and (min-width: 992px) {
                    .sec04 .sec04-wrap .con .bd .table .table-tr .table-td ul.table li strong.ht {
                      height: 68px;
                      position: static; } }
              .sec04 .sec04-wrap .con .bd .table .table-tr .table-td ul.table li span {
                width: 70%;
                display: inline-block;
                font-size: 1.4rem;
                padding: 2%;
                float: right;
                line-height: 1.5;
                color: #333;
                box-sizing: border-box; }
                @media screen and (min-width: 992px) {
                  .sec04 .sec04-wrap .con .bd .table .table-tr .table-td ul.table li span {
                    float: left;
                    width: calc(100% - 200px);
                    display: block;
                    font-size: 1.6rem;
                    padding: 10px 10px 10px 15px; } }
                @media screen and (min-width: 992px) {
                  .sec04 .sec04-wrap .con .bd .table .table-tr .table-td ul.table li span {
                    float: left;
                    width: calc(100% - 200px);
                    display: block;
                    font-size: 1.6rem;
                    padding: 10px 10px 10px 15px; } }
                @media screen and (max-width: 991px) {
                  .sec04 .sec04-wrap .con .bd .table .table-tr .table-td ul.table li span {
                    height: 100%;
                    display: flex;
                    align-items: center; } }
                @media screen and (max-width: 320px) {
                  .sec04 .sec04-wrap .con .bd .table .table-tr .table-td ul.table li span {
                    font-size: 1.2rem; } }
          .sec04 .sec04-wrap .con .bd .table .table-tr .table-td dl.liststyle-a dd:before {
            content: "•";
            color: #C51F2C;
            padding-right: 6px; }
          .sec04 .sec04-wrap .con .bd .table .table-tr .table-td dl dd {
            text-indent: -10px;
            margin-left: 10px;
            margin-bottom: 5px; }
            @media screen and (min-width: 992px) {
              .sec04 .sec04-wrap .con .bd .table .table-tr .table-td dl dd {
                text-indent: -15px;
                margin-left: 15px; } }
            @media screen and (max-width: 768px) {
              .sec04 .sec04-wrap .con .bd .table .table-tr .table-td dl dd.dd01 {
                text-indent: 0;
                margin-left: 0; } }
          .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap p {
            font-size: 1.4rem;
            line-height: 1.29;
            text-align: left;
            color: #333; }
            @media screen and (min-width: 992px) {
              .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap p {
                text-align: left;
                font-size: 1.6rem;
                line-height: 1.5; } }
            @media screen and (max-width: 768px) {
              .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap p.p1 {
                font-size: 1rem;
                line-height: 1.5;
                text-align: left; } }
          .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap .bd-tit {
            margin-top: 3%; }
            @media screen and (min-width: 992px) {
              .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap .bd-tit {
                margin-top: 20px; } }
            .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap .bd-tit.bd-tit2 {
              margin-bottom: 20px; }
              @media screen and (min-width: 992px) {
                .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap .bd-tit.bd-tit2 {
                  margin-bottom: 20px; } }
              .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap .bd-tit.bd-tit2 strong {
                height: auto; }
                @media screen and (min-width: 992px) {
                  .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap .bd-tit.bd-tit2 strong {
                    height: 60px; } }
              .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap .bd-tit.bd-tit2 span {
                height: auto; }
                @media screen and (min-width: 992px) {
                  .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap .bd-tit.bd-tit2 span {
                    height: 60px;
                    line-height: 0.56; } }
            .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap .bd-tit strong {
              float: none;
              width: 100%;
              font-size: 1.6rem;
              height: auto;
              display: block;
              text-align: center;
              padding: .5% 0;
              background: #e5b719;
              color: #fff;
              display: -webkit-box;
              display: -ms-flexbox;
              display: -webkit-flex;
              display: flex;
              flex-wrap: wrap;
              -ms-flex-wrap: wrap;
              -webkit-box-pack: justify;
              -ms-flex-pack: center;
              -webkit-justify-content: center;
              justify-content: center;
              -webkit-align-items: center;
              -ms-flex-align: center;
              align-items: center; }
              @media screen and (min-width: 992px) {
                .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap .bd-tit strong {
                  float: left;
                  width: 11.4%;
                  font-size: 1.8rem;
                  height: 100px;
                  padding: 0; } }
            .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap .bd-tit span {
              float: none;
              width: 100%;
              font-size: 1.6rem;
              line-height: 1.44;
              height: auto;
              display: block;
              padding: 3%;
              box-sizing: border-box;
              background: #fbf4d7;
              color: #333;
              display: -webkit-box;
              display: -ms-flexbox;
              display: -webkit-flex;
              display: flex;
              flex-wrap: wrap;
              -ms-flex-wrap: wrap;
              -webkit-box-pack: justify;
              -ms-flex-pack: justify;
              -webkit-justify-content: space-between;
              justify-content: space-between;
              -webkit-align-items: center;
              -ms-flex-align: center;
              align-items: center; }
              @media screen and (min-width: 992px) {
                .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap .bd-tit span {
                  float: left;
                  width: 88.6%;
                  font-size: 1.8rem;
                  line-height: 1.56;
                  height: 100px;
                  padding-left: 3%;
                  box-sizing: border-box; } }
          .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap h4 {
            font-size: 1.4rem;
            line-height: 1.64;
            margin-top: 15px;
            color: #000;
            font-weight: bold;
            text-indent: -12px;
            margin-left: 12px; }
            @media screen and (min-width: 992px) {
              .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap h4 {
                font-size: 1.6rem;
                line-height: 1.25; } }
            .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap h4:before {
              content: '';
              background: url("../img/con-3-i.png") no-repeat;
              width: 8px;
              height: 8px;
              display: inline-block;
              margin-right: 5px;
              position: relative;
              top: -3px; }
            .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap h4.fwn {
              font-weight: normal; }
            .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap h4.mb10 {
              margin-bottom: 10px; }
          .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap .ml10 {
            margin-left: 0; }
            @media screen and (min-width: 992px) {
              .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap .ml10 {
                margin-left: 12px; } }
          .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap small {
            display: block;
            font-size: 1rem;
            line-height: 1.5;
            text-indent: -10px;
            margin-left: 10px !important; }
            @media screen and (min-width: 992px) {
              .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap small {
                font-size: 1.2rem;
                line-height: 1.67;
                text-indent: -12px;
                margin-left: 20px !important; } }
            .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap small.mt {
              margin-top: 5px; }
              @media screen and (min-width: 992px) {
                .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap small.mt {
                  margin-top: 5px; } }
          .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap .ts {
            font-weight: bold;
            font-size: 1.4rem;
            margin-top: 0.5rem;
            text-indent: -7px;
            margin-left: 14px;
            color: #333; }
            @media screen and (min-width: 992px) {
              .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap .ts {
                font-size: 1.6rem; }
                .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap .ts:first-child {
                  margin-top: 1rem; } }
            .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap .ts b {
              color: #e60012; }
            .sec04 .sec04-wrap .con .bd .table .table-tr .table-td.td-wrap .ts i {
              font-style: normal;
              color: #c51f2c;
              background: none;
              width: auto;
              height: auto;
              margin-right: auto; }

/* sec05
-----------------------------*/
.sec05 {
  margin-top: 2%;
  padding: 0 2% 12%;
  background: #f3f2e8 url("../img/sec05-bg.png") repeat-x top; }
  @media screen and (min-width: 992px) {
    .sec05 {
      margin-top: 60px;
      padding: 0 0 55px; } }
  .sec05.application {
    background: #fbf4d7;
    padding-top: 7%; }
    @media screen and (min-width: 992px) {
      .sec05.application {
        padding-top: 45px; } }
    @media screen and (max-width: 991px) {
      .sec05.application {
        padding-top: 12%; } }
  .sec05 .sec05-wrap {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center; }
    .sec05 .sec05-wrap .con .hd h3 {
      text-align: center; }
      .sec05 .sec05-wrap .con .hd h3 img {
        display: block;
        margin: 0 auto;
        width: 80%; }
        @media screen and (min-width: 992px) {
          .sec05 .sec05-wrap .con .hd h3 img {
            width: auto;
            display: inline-block; } }
    .sec05 .sec05-wrap .con .bd {
      margin-top: 3%; }
      @media screen and (min-width: 992px) {
        .sec05 .sec05-wrap .con .bd {
          margin-top: 20px; } }
      .sec05 .sec05-wrap .con .bd a:hover .btn {
        opacity: .7; }
      .sec05 .sec05-wrap .con .bd .inf {
        background: url("../img/sec05-img.jpg") no-repeat;
        box-sizing: border-box;
        background-size: 100%;
        height: auto;
        padding: 0;
        border: 3px solid #ffe87e; }
        @media screen and (min-width: 992px) {
          .sec05 .sec05-wrap .con .bd .inf {
            width: 100%;
            height: 400px;
            padding: 25px;
            border: 5px solid #ffe87e; } }
        .sec05 .sec05-wrap .con .bd .inf .rt {
          width: 100%; }
          @media screen and (min-width: 992px) {
            .sec05 .sec05-wrap .con .bd .inf .rt {
              width: 425px; } }
          .sec05 .sec05-wrap .con .bd .inf .rt .img1 {
            margin: 5% 5% 5% 0;
            text-align: right; }
            @media screen and (min-width: 992px) {
              .sec05 .sec05-wrap .con .bd .inf .rt .img1 {
                margin: 15px 0 0;
                text-align: center; } }
            .sec05 .sec05-wrap .con .bd .inf .rt .img1 img {
              width: 50%; }
              @media screen and (min-width: 992px) {
                .sec05 .sec05-wrap .con .bd .inf .rt .img1 img {
                  width: auto; } }
          .sec05 .sec05-wrap .con .bd .inf .rt .inf-con {
            margin-top: 2%;
            background: #fff;
            padding: 3%; }
            @media screen and (min-width: 992px) {
              .sec05 .sec05-wrap .con .bd .inf .rt .inf-con {
                margin-top: 10px;
                padding: 0;
                background: none; } }
            @media screen and (max-width: 320px) {
              .sec05 .sec05-wrap .con .bd .inf .rt .inf-con {
                padding: 2%; } }
            .sec05 .sec05-wrap .con .bd .inf .rt .inf-con .inf-con-wrap .lt {
              box-sizing: border-box;
              background: #fff;
              width: 60%;
              padding: 0 2% 0 0;
              background: url("../img/sp/sec05-img-i.png") no-repeat right top;
              background-size: contain; }
              @media screen and (min-width: 992px) {
                .sec05 .sec05-wrap .con .bd .inf .rt .inf-con .inf-con-wrap .lt {
                  background: rgba(255, 255, 255, 0.7);
                  width: 49.5%;
                  padding: 15px 17px; } }
              .sec05 .sec05-wrap .con .bd .inf .rt .inf-con .inf-con-wrap .lt span {
                font-size: 1rem;
                line-height: 1.29;
                display: inline-block;
                margin-bottom: 0;
                width: 44%;
                color: #eb5505;
                font-weight: bold; }
                @media screen and (min-width: 992px) {
                  .sec05 .sec05-wrap .con .bd .inf .rt .inf-con .inf-con-wrap .lt span {
                    font-size: 2rem;
                    line-height: 1.15;
                    display: block;
                    margin-bottom: 5px;
                    width: auto; } }
                @media screen and (max-width: 320px) {
                  .sec05 .sec05-wrap .con .bd .inf .rt .inf-con .inf-con-wrap .lt span {
                    width: 50%; } }
              .sec05 .sec05-wrap .con .bd .inf .rt .inf-con .inf-con-wrap .lt strong {
                font-size: 2.1rem;
                color: #eb5505;
                line-height: 1; }
                @media screen and (min-width: 992px) {
                  .sec05 .sec05-wrap .con .bd .inf .rt .inf-con .inf-con-wrap .lt strong {
                    font-size: 4.2rem; } }
                @media screen and (max-width: 320px) {
                  .sec05 .sec05-wrap .con .bd .inf .rt .inf-con .inf-con-wrap .lt strong {
                    font-size: 1.8rem; } }
                .sec05 .sec05-wrap .con .bd .inf .rt .inf-con .inf-con-wrap .lt strong small {
                  font-size: 1.5rem; }
                  @media screen and (min-width: 992px) {
                    .sec05 .sec05-wrap .con .bd .inf .rt .inf-con .inf-con-wrap .lt strong small {
                      font-size: 2.8rem; } }
            .sec05 .sec05-wrap .con .bd .inf .rt .inf-con .inf-con-wrap .rt {
              background: #fff;
              width: 40%;
              padding: 0 0 0 3%;
              box-sizing: border-box; }
              @media screen and (min-width: 992px) {
                .sec05 .sec05-wrap .con .bd .inf .rt .inf-con .inf-con-wrap .rt {
                  background: rgba(255, 255, 255, 0.7);
                  width: 49.5%;
                  padding: 15px 20px; } }
              @media screen and (max-width: 320px) {
                .sec05 .sec05-wrap .con .bd .inf .rt .inf-con .inf-con-wrap .rt {
                  padding: 2% 0 0 2%; } }
              .sec05 .sec05-wrap .con .bd .inf .rt .inf-con .inf-con-wrap .rt span {
                font-size: 1.3rem;
                line-height: 1;
                display: inline-block;
                margin-bottom: 0;
                letter-spacing: -2px;
                color: #eb5505;
                font-weight: bold;
                text-align: center; }
                @media screen and (min-width: 992px) {
                  .sec05 .sec05-wrap .con .bd .inf .rt .inf-con .inf-con-wrap .rt span {
                    font-size: 4.1rem;
                    line-height: 1.15;
                    display: block;
                    margin-bottom: 5px;
                    letter-spacing: normal; } }
              .sec05 .sec05-wrap .con .bd .inf .rt .inf-con .inf-con-wrap .rt strong {
                font-size: 2.4rem;
                letter-spacing: -1px;
                color: #eb5505;
                line-height: 1; }
                @media screen and (min-width: 992px) {
                  .sec05 .sec05-wrap .con .bd .inf .rt .inf-con .inf-con-wrap .rt strong {
                    font-size: 4.1rem;
                    letter-spacing: normal; } }
                @media screen and (max-width: 320px) {
                  .sec05 .sec05-wrap .con .bd .inf .rt .inf-con .inf-con-wrap .rt strong {
                    font-size: 1.8rem; } }
      .sec05 .sec05-wrap .con .bd .p1 {
        font-size: 1.2rem;
        line-height: 1.33;
        text-align: center;
        margin-top: 5%;
        color: #362828; }
        @media screen and (min-width: 992px) {
          .sec05 .sec05-wrap .con .bd .p1 {
            font-size: 1.6rem;
            line-height: 1.5;
            text-align: center;
            margin-top: 20px; } }
        @media screen and (max-width: 320px) {
          .sec05 .sec05-wrap .con .bd .p1 {
            font-size: 1.1rem;
            text-align: left; } }
        .sec05 .sec05-wrap .con .bd .p1 a {
          color: #c71d37;
          text-decoration: underline; }
      .sec05 .sec05-wrap .con .bd .p2 {
        font-size: 1.2rem;
        text-align: center;
        line-height: 1.33;
        height: auto;
        margin-top: 8%;
        background: url("../img/sp/sec05-p2.png") no-repeat center;
        background-size: 88%;
        color: #eb5505;
        font-weight: 500; }
        @media screen and (min-width: 992px) {
          .sec05 .sec05-wrap .con .bd .p2 {
            font-size: 1.6rem;
            text-align: center;
            line-height: 65px;
            height: 65px;
            margin-top: 40px;
            background: url("../img/sec05-p2.png") no-repeat center;
            background-size: 100%; } }
        @media screen and (max-width: 320px) {
          .sec05 .sec05-wrap .con .bd .p2 {
            background-size: 95%; } }
      .sec05 .sec05-wrap .con .bd .btn {
        margin-top: 2%;
        width: 100%;
        border-radius: 3px;
        font-size: 1.8rem;
        height: auto;
        line-height: 1;
        padding: 3% 0 2%;
        background: #eb5505;
        color: #fff;
        font-weight: bold;
        text-align: center;
        display: block; }
        @media screen and (min-width: 992px) {
          .sec05 .sec05-wrap .con .bd .btn {
            margin-top: 15px;
            width: 100%;
            border-radius: 5px;
            font-size: 3rem;
            height: 80px;
            line-height: 80px;
            padding: 0; } }
        .sec05 .sec05-wrap .con .bd .btn i {
          display: inline-block;
          width: 0;
          height: 0;
          position: relative;
          border-top: 4px solid transparent;
          border-left: 4px solid #fff;
          border-bottom: 4px solid transparent;
          margin-left: 8px;
          top: -3px; }
          @media screen and (min-width: 992px) {
            .sec05 .sec05-wrap .con .bd .btn i {
              top: -5px;
              margin-left: 12px;
              border-top: 6px solid transparent;
              border-left: 6px solid #fff;
              border-bottom: 6px solid transparent; } }
        .sec05 .sec05-wrap .con .bd .btn.btn-small {
          width: 65%;
          margin: 2% auto 0;
          font-size: 1.2rem;
          line-height: 1;
          height: auto;
          padding: 3% 0 2%; }
          @media screen and (min-width: 992px) {
            .sec05 .sec05-wrap .con .bd .btn.btn-small {
              width: 315px;
              margin: 20px auto 0;
              font-size: 1.6rem;
              line-height: 55px;
              height: 55px;
              padding: 0; } }
          .sec05 .sec05-wrap .con .bd .btn.btn-small i {
            border-top: 3px solid transparent;
            border-left: 3px solid #fff;
            border-bottom: 3px solid transparent;
            margin-left: 3px;
            top: -1px; }
            @media screen and (min-width: 992px) {
              .sec05 .sec05-wrap .con .bd .btn.btn-small i {
                top: -2px;
                margin-left: 5px;
                border-top: 4px solid transparent;
                border-left: 4px solid #fff;
                border-bottom: 4px solid transparent; } }
  .sec05 .cv-btn {
    display: flex;
    justify-content: center;
    position: relative; }
    .sec05 .cv-btn:hover {
      opacity: 0.8; }
    @media screen and (max-width: 768px) {
      .sec05 .cv-btn .cv-btn-bg img {
        width: 85vw; } }
    .sec05 .cv-btn .cv-btn-txt {
      position: absolute;
      top: 0;
      color: #fff;
      font-weight: bold;
      font-size: 30px;
      padding-top: 17px;
      padding-right: 25px; }
      @media screen and (max-width: 768px) {
        .sec05 .cv-btn .cv-btn-txt {
          font-size: 4.2vw;
          padding-top: 3.5vw;
          padding-right: 25px; } }

/* footer
-----------------------------*/
footer {
  background: #fff;
  height: 70px;
  line-height: 70px;
  text-align: center; }
  @media screen and (max-width: 768px) {
    footer .ft-logo {
      height: 70px;
      line-height: 70px;
      text-align: center; }
      footer .ft-logo img {
        width: 50%; } }
  footer .ft-wrap {
    position: relative; }
    footer .ft-wrap .ft-top {
      position: absolute;
      display: inline-block;
      top: -82px;
      left: 50%;
      margin-left: -129px;
      width: 258px;
      height: 82px; }
      @media screen and (max-width: 768px) {
        footer .ft-wrap .ft-top {
          top: -68px;
          left: 50%;
          margin-left: -25%;
          width: 50%;
          height: auto; } }
      @media screen and (max-width: 320px) {
        footer .ft-wrap .ft-top {
          top: -65px; } }

/* close
-----------------------------*/
.close {
  width: 80%;
  margin: 2% auto 8%;
  text-align: center; }
  @media screen and (max-width: 768px) {
    .close {
      margin: 2% auto 20%; } }

.is-hidden {
  display: none; }

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