.topPage .container {
  padding: 4%;
  max-width: 1920px;
  width: 100%;
  margin: 0 auto; }
  @media screen and (max-width: 768px) {
    .topPage .container {
      padding: 4% 2%; } }
.topPage .iframeWidth {
  max-width: 1000px;
  width: 100%;
  margin-left: auto;
  margin-right: auto; }
  .topPage .iframeWidth .iframeWrap {
    position: relative;
    width: 100%;
    padding-top: 56.25%; }
    .topPage .iframeWidth .iframeWrap iframe {
      position: absolute;
      top: 0;
      right: 0;
      width: 100%;
      height: 100%; }
.topPage .sec01 .btnList {
  font-size: 0;
  width: 98%;
  margin: 0 auto; }
  .topPage .sec01 .btnList.one-coupon {
    text-align: center;
  }
  .topPage .sec01 .btnList > li {
    display: inline-block;
    vertical-align: top;
    width: 49.5%; }
    .topPage .sec01 .btnList > li:nth-child(1) {
      margin-right: 1%; }
.topPage .sec01 .img01 {
  margin-bottom: 1.3%; }
.topPage .sec03 .wrap, .topPage .sec04 .wrap {
  background: #e9e8f2;
  padding: 3% 3% 6%; }
  @media screen and (max-width: 768px) {
    .topPage .sec03 .wrap, .topPage .sec04 .wrap {
      padding: 3% 2% 6%; } }
  .topPage .sec03 .wrap .nav, .topPage .sec04 .wrap .nav {
    text-align: center;
    font-size: 0;
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    left: 0;
    padding: 10px;
    background: #e9e8f2; }
    @media screen and (max-width: 768px) {
      .topPage .sec03 .wrap .nav, .topPage .sec04 .wrap .nav {
        padding: 5px 0; } }
    .topPage .sec03 .wrap .nav > li, .topPage .sec04 .wrap .nav > li {
      width: 19.2%;
      display: inline-block;
      vertical-align: top;
      margin-right: 1%;
      margin-bottom: 0; }
      .topPage .sec03 .wrap .nav > li.last, .topPage .sec04 .wrap .nav > li.last {
        margin-right: 0; }
      .topPage .sec03 .wrap .nav > li a, .topPage .sec04 .wrap .nav > li a {
        display: block;
        background: #111;
        color: #fff;
        padding: 15px 10px;
        text-align: center;
        font-size: 1.8rem;
        text-align: center;
        font-weight: bold; }
        @media screen and (max-width: 768px) {
          .topPage .sec03 .wrap .nav > li a, .topPage .sec04 .wrap .nav > li a {
            font-size: 1.0rem;
            padding: 5px 0;
            line-height: 1.6; } }
        .topPage .sec03 .wrap .nav > li a > p, .topPage .sec04 .wrap .nav > li a > p {
          display: table;
          width: 100%;
          height: 100%; }
          .topPage .sec03 .wrap .nav > li a > p > span, .topPage .sec04 .wrap .nav > li a > p > span {
            display: table-cell;
            vertical-align: middle;
            width: 100%; }
            @media screen and (max-width: 768px) {
              .topPage .sec03 .wrap .nav > li a > p > span, .topPage .sec04 .wrap .nav > li a > p > span {
                transform: scale(0.85); } }
.topPage .sec03 .btn, .topPage .sec04 .btn {
  width: 50%;
  margin: 3% auto 0; }
.topPage .sec03 .btn_bottom{
	font-size: 1.8rem;
	text-align: center;
  text-decoration: underline;
  margin-top: 3rem;
}
@media screen and (max-width: 768px) {
  .topPage .sec03 .btn_bottom{
    font-size: 1.2rem;
    margin-top: 2rem;
  }
}
  @media screen and (max-width: 768px) {
    .topPage .sec03 .btn, .topPage .sec04 .btn {
      width: 80%;
      margin-top: 4%; } }
.topPage .sec03 .tab .ttl, .topPage .sec04 .tab .ttl {
  text-align: center;
  margin-bottom: 25px; }
  @media screen and (max-width: 768px) {
    .topPage .sec03 .tab .ttl, .topPage .sec04 .tab .ttl {
      margin-bottom: 15px; } }
  .topPage .sec03 .tab .ttl span, .topPage .sec04 .tab .ttl span {
    background: #fff;
    color: #003e8d;
    border: 2px solid #003e8d;
    font-weight: bold;
    font-size: 2.8rem;
    text-align: center;
    padding: 12px 35px;
    display: inline-block;
    line-height: 1; }
    @media screen and (max-width: 768px) {
      .topPage .sec03 .tab .ttl span, .topPage .sec04 .tab .ttl span {
        font-size: 1.8rem;
        padding: 6px 20px; } }
.topPage .sec04 .map {
  max-width: 700px;
  width: 100%;
  margin: -80px auto 0; }
.topPage .sec04 .nav02 {
  font-size: 0; }
  .topPage .sec04 .nav02 > li {
    display: block;
    color: rgba(255, 255, 255, 0.5);
    padding: 15px 10px;
    text-align: center;
    font-size: 1.8rem;
    text-align: center;
    font-weight: bold;
    width: 19.2%;/*タブが5つの時*/
    width: 24.25%;
    display: inline-block;
    vertical-align: top;
    margin-right: 1%;
    margin-bottom: 0;
    position: relative; }
    @media screen and (max-width: 768px) {
      .topPage .sec04 .nav02 > li {
        font-size: 1.1rem;
        padding: 5px 0;
        line-height: 1.6; } }
    .topPage .sec04 .nav02 > li > p {
      display: table;
      width: 100%;
      height: 100%; }
      .topPage .sec04 .nav02 > li > p > span {
        display: table-cell;
        vertical-align: middle; }
        @media screen and (max-width: 768px) {
          .topPage .sec04 .nav02 > li > p > span {
            transform: scale(0.8); } }
    .topPage .sec04 .nav02 > li::before {
      content: "";
      position: absolute;
      bottom: -9px;
      left: 50%;
      margin-left: -12px;
      width: 0;
      height: 0;
      border-style: solid;
      border-color: #00bfb2 transparent transparent transparent;
      border-width: 10px 12.5px 0px 12.5px;
      display: none; }
    .topPage .sec04 .nav02 > li.hokkaido {
      background: #5994c9; }
      .topPage .sec04 .nav02 > li.hokkaido::before {
        border-color: #5994c9 transparent transparent transparent; }
    .topPage .sec04 .nav02 > li.kanto {
      background: #1d7f3b; }
      .topPage .sec04 .nav02 > li.kanto::before {
        border-color: #1d7f3b transparent transparent transparent; }
    .topPage .sec04 .nav02 > li.chubu {
      background: #6dad44; }
      .topPage .sec04 .nav02 > li.chubu::before {
        border-color: #6dad44 transparent transparent transparent; }
    .topPage .sec04 .nav02 > li.kinki {
      background: #e0b62d; }
      .topPage .sec04 .nav02 > li.kinki::before {
        border-color: #e0b62d transparent transparent transparent; }
    .topPage .sec04 .nav02 > li.shikoku {
      background: #d25b53; }
      .topPage .sec04 .nav02 > li.shikoku::before {
        border-color: #d25b53 transparent transparent transparent; }
    .topPage .sec04 .nav02 > li.current {
      color: #fff; }
      .topPage .sec04 .nav02 > li.current::before {
        display: block; }
    .topPage .sec04 .nav02 > li.last {
      margin-right: 0; }
.topPage .sec04 .tab {
  margin-top: 30px; }
  @media screen and (max-width: 768px) {
    .topPage .sec04 .tab {
      margin-top: 20px; } }
.topPage area {
  cursor: pointer; }

.couponPage .container {
  padding-top: 0 !important; }
  @media screen and (max-width: 768px) {
    .couponPage .container {
      padding-left: 0;
      padding-right: 0; } }
