﻿@charset "UTF-8";
@media screen and (min-width: 751px), print {
  #wrapper {
    min-width: inherit;
  }
  nav.submenu.open {
    left: -webkit-calc(50% - 500px) !important;
    left: -moz-calc(50% - 500px) !important;
    left: calc(50% - 500px) !important;
  }
  #wrapper2 {
    width: 100%;
    max-width: 100%;
  }
  .fadein {
    opacity: 0;
    -webkit-transform: translateY(30px);
       -moz-transform: translateY(30px);
        -ms-transform: translateY(30px);
            transform: translateY(30px);
    -webkit-transition: opacity 1.5s,-webkit-transform 1.5s;
    transition: opacity 1.5s,-webkit-transform 1.5s;
    -moz-transition: opacity 1.5s,transform 1.5s,-moz-transform 1.5s;
    transition: opacity 1.5s,transform 1.5s;
    transition: opacity 1.5s,transform 1.5s,-webkit-transform 1.5s,-moz-transform 1.5s;
  }
  .fadein.show {
    opacity: 1;
    -webkit-transform: translateY(0);
       -moz-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
  }
  .fadein-delay--1 {
    -webkit-transition-delay: 0.2s;
       -moz-transition-delay: 0.2s;
            transition-delay: 0.2s;
  }
  .fadein-delay--2 {
    -webkit-transition-delay: 0.4s;
       -moz-transition-delay: 0.4s;
            transition-delay: 0.4s;
  }
  .fadein-delay--3 {
    -webkit-transition-delay: 0.6s;
       -moz-transition-delay: 0.6s;
            transition-delay: 0.6s;
  }
  .show-sp {
    display: none;
  }
  main a {
    color: inherit;
    display: block;
  }
  main a.hov {
    display: block;
    line-height: 0;
    height: 100%;
    overflow: hidden;
    background: #000;
  }
  main a.hov-w {
    background: #fff;
  }
  main a.hov:hover {
    opacity: 1;
  }
  main .swiper-container button:focus {
    border: 1px solid #00f;
  }
  main a.hov:hover .link-inn,main a.hov:focus .link-inn {
    opacity: 0.7;
  }
  main a.hov .link-inn {
    -webkit-transition: opacity 0.35s ease;
    -moz-transition: opacity 0.35s ease;
    transition: opacity 0.35s ease;
  }
  main img {
    max-width: 100%;
    vertical-align: top;
  }
  main .inner {
    max-width: 1200px;
    margin: 0 auto;
  }
  main .sec-ttl {
    text-align: center;
  }
  main .nav-area {
    background: url(/lab/machikado/img/bg_ptn.png) repeat left top;
    -moz-background-size: 100% 100%;
         background-size: 100% 100%;
  }
  main .nav-area .inner {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 19px 6px 16px;
    max-width: 1200px;
    -moz-box-sizing: border-box;
         box-sizing: border-box;
    margin: 0 auto;
  }
  main .nav-area_logo {
    width: 218px;
    -webkit-transition-timing-function: ease;
       -moz-transition-timing-function: ease;
            transition-timing-function: ease;
  }
  main .nav-area_menu {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    padding: 14px 0;
  }
  main .nav-area_menu li {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0 40px;
  }
  main .nav-area_menu li:last-of-type {
    padding-right: 0;
  }
  main .nav-area_menu li a {
    font-size: 1.28571rem;
    line-height: 1;
    font-weight: 500;
    letter-spacing: 1px;
    font-family: YakuhanJP,"Noto Sans Japanese", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Verdana", sans-serif;
  }
  main .nav-area_menu li + li {
    border-left: 1px solid #000;
  }
  .snsList {
    margin-bottom: 72px;
  }
  .back-to-top {
    width: 40px;
    height: 40px;
    background-color: #000;
    -moz-border-radius: 50%;
         border-radius: 50%;
    position: fixed;
    bottom: 50px;
    right: 50px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    overflow: hidden;
    border: 1px solid #5a5959;
    z-index: 100;
    -webkit-transition: background-color 0.3s;
    -moz-transition: background-color 0.3s;
    transition: background-color 0.3s;
  }
  .back-to-top.hidden {
    opacity: 0;
    pointer-events: none;
  }
  .back-to-top:before {
    content: "↑";
    color: #fff;
    font-size: 1.71429rem;
    -webkit-transition: color 0.3s;
    -moz-transition: color 0.3s;
    transition: color 0.3s;
  }
  .back-to-top:hover {
    opacity: 1;
    background-color: #fff;
  }
  .back-to-top:hover:before {
    color: #000;
  }
  main {
    background: url(/lab/machikado/img/bg_ptn.png) repeat left top;
    -moz-background-size: 100% 100%;
         background-size: 100% 100%;
  }
  .mv .swiper-slide {
    width: 1200px !important;
    max-width: 90%;
    margin: 0 auto;
  }
  .mv .swiper-slide img {
    width: 100%;
  }
  .mv .swiper-pagination {
    width: 100px;
    height: 1px;
    position: static;
    margin: 0 10px;
  }
  .mv .swiper-pagination_wrap {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: end;
       -moz-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    line-height: 1;
  }
  .mv .swiper-pagination_wrap p {
    letter-spacing: 1px;
    font-size: 1rem;
  }
  .mv .swiper-pagination .swiper-pagination-progressbar-fill {
    background-color: #000;
  }
  .pickup {
    max-width: 96%;
    margin: 56px auto 0;
  }
  .pickup .sec-ttl img {
    width: 282px;
  }
  .pickup ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 40px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .pickup ul li {
    width: 48.3%;
  }
  .pickup ul li:nth-child(2n) {
    margin-left: 3.4%;
  }
  .pickup ul li:nth-child(n+3) {
    margin-top: 40px;
  }
  .pickup ul li .movie_wrap {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 56.25%;
  }
  .pickup ul li .movie_wrap iframe {
    position: absolute;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
  }
  .menu {
    padding: 190px 0 0;
    position: relative;
    z-index: 0;
  }
  .menu:before {
    content: "";
    display: block;
    background: url(/lab/machikado/img/bg_yellow.png) repeat left top;
    -moz-background-size: cover;
         background-size: cover;
    width: 100%;
    height: 348px;
    position: absolute;
    top: 182px;
    left: 0;
    z-index: 0;
  }
  .menu_wrap {
    background-color: #fff;
    padding-bottom: 80px;
  }
  .menu .sec-ttl img {
    width: 510px;
    margin-top: -42px;
  }
  .menu ul,.menu ol {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
       -moz-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    max-width: 98%;
    margin: 110px auto 0;
  }
  .menu ul li,
  .menu ol li {
    width: 32.3%;
    margin-left: 1.55%;
  }
  .menu ul li a,
  .menu ol li a {
    overflow: visible;
  }
  .menu ul li a:hover,
  .menu ol li a:hover {
    opacity: 1;
  }
  .menu ul li a:hover figure,
  .menu ol li a:hover figure {
    -webkit-transform: scale(1.1);
       -moz-transform: scale(1.1);
        -ms-transform: scale(1.1);
            transform: scale(1.1);
  }
  .menu ul li a:hover .menu_name span:before,
  .menu ol li a:hover .menu_name span:before {
    background-color: #fff;
  }
  .menu ul li a:hover .menu_name span:after,
  .menu ol li a:hover .menu_name span:after {
    border-color: #000;
  }
  .menu ul li .figure-area,
  .menu ol li .figure-area {
    background-color: #fff;
    position: relative;
    padding-top: 202px;
  }
  .menu ul li figure,
  .menu ol li figure {
    height: 265px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: end;
       -moz-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    position: absolute;
    top: -63px;
    left: 0;
    right: 0;
    margin: auto;
    -webkit-transition: -webkit-transform 0.35s ease;
    transition: -webkit-transform 0.35s ease;
    -moz-transition: transform 0.35s ease, -moz-transform 0.35s ease;
    transition: transform 0.35s ease;
    transition: transform 0.35s ease, -webkit-transform 0.35s ease, -moz-transform 0.35s ease;
  }
  .menu ul li .menu_num,
  .menu ol li .menu_num {
    margin-top: 22px;
    text-align: center;
  }
  .menu ul li .menu_num img,
  .menu ol li .menu_num img {
    height: 28px;
    width: auto;
  }
  .menu ul li .menu_name,
  .menu ol li .menu_name {
    margin-top: 22px;
    text-align: center;
  }
  .menu ul li .menu_name span,
  .menu ol li .menu_name span {
    position: relative;
    display: inline-block;
  }
  .menu ul li .menu_name span:before, .menu ul li .menu_name span:after,
  .menu ol li .menu_name span:before, .menu ol li .menu_name span:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: -46px;
  }
  .menu ul li .menu_name span:before,
  .menu ol li .menu_name span:before {
    width: 32px;
    height: 32px;
    background-color: #000;
    -moz-border-radius: 50%;
         border-radius: 50%;
    border: 1px solid #777777;
    -webkit-transition: background-color 0.3s;
    -moz-transition: background-color 0.3s;
    transition: background-color 0.3s;
  }
  .menu ul li .menu_name span:after,
  .menu ol li .menu_name span:after {
    width: 6px;
    height: 6px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    -webkit-transform: rotate(45deg);
       -moz-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    right: -32px;
    -webkit-transition: border-color 0.3s;
    -moz-transition: border-color 0.3s;
    transition: border-color 0.3s;
  }
  .menu ul li .menu_name img,
  .menu ol li .menu_name img {
    height: 38px;
    width: auto;
  }
  .menu ul li:nth-of-type(1),
  .menu ol li:nth-of-type(1) {
    margin-left: 0;
  }
  .menu ul li:nth-of-type(1) figure img,
  .menu ol li:nth-of-type(1) figure img {
    width: 333px;
  }
  .menu ul li:nth-of-type(2) figure img,
  .menu ol li:nth-of-type(2) figure img {
    width: 325px;
  }
  .menu ul li:nth-of-type(3) figure img,
  .menu ol li:nth-of-type(3) figure img {
    width: 349px;
  }
  .menu ul li:nth-of-type(4) figure img,
  .menu ol li:nth-of-type(4) figure img {
    width: 326px;
  }
  .search {
    padding: 80px 0;
    max-width: 98%;
    margin: 0 auto;
  }
  .search .sec-ttl img {
    width: 246px;
  }
  .search_lead {
    margin-top: 36px;
    text-align: center;
    font-size: 1.14286rem;
  }
  .search .map-area {
    margin-top: 34px;
    position: relative;
  }
  .search .map-area_map {
    text-align: center;
    padding-left: 70px;
  }
  .search .map-area_region {
    position: absolute;
    width: 300px;
  }
  .search .map-area_region_name {
    text-align: center;
    font-size: 1.14286rem;
    padding: 5px;
  }
  .search .map-area_region .prefecture-list {
    height: auto !important;
  }
  .search .map-area_region .prefecture-list ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 100%;
  }
  .search .map-area_region .prefecture-list li {
    background-color: #fff;
    margin-left: 2px;
    margin-top: 2px;
  }
  .search .map-area_region .prefecture-list li:nth-child(4n+1) {
    margin-left: 0;
  }
  .search .map-area_region .prefecture-list li a, .search .map-area_region .prefecture-list li span {
    width: 73.5px;
    height: 33px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #777777;
    font-size: 1.14286rem;
    background-color: #fff;
    -webkit-transition: background-color 0.3s, color 0.3s;
    -moz-transition: background-color 0.3s, color 0.3s;
    transition: background-color 0.3s, color 0.3s;
  }
  .search .map-area_region .prefecture-list li a:hover {
    opacity: 1;
    background-color: #000;
    color: #fff;
  }
  .search .map-area_region .prefecture-list li span {
    color: #ddd;
  }
  .search .map-area_region.region--1 {
    right: 0;
    top: 184px;
  }
  .search .map-area_region.region--1 .map-area_region_name {
    background-color: #cbc7b6;
  }
  .search .map-area_region.region--2 {
    right: 0;
    top: 330px;
  }
  .search .map-area_region.region--2 .map-area_region_name {
    background-color: #cfcab5;
  }
  .search .map-area_region.region--3 {
    top: 4px;
    left: 50%;
    margin-left: -258px;
  }
  .search .map-area_region.region--3 .map-area_region_name {
    background-color: #d4ceb4;
  }
  .search .map-area_region.region--4 {
    top: 186px;
    left: 50%;
    margin-left: -258px;
  }
  .search .map-area_region.region--4 .map-area_region_name {
    background-color: #d9d2b3;
  }
  .search .map-area_region.region--5 {
    top: 330px;
    left: 0;
  }
  .search .map-area_region.region--5 .map-area_region_name {
    background-color: #ded6b2;
  }
  .search .map-area_region.region--6 {
    top: 478px;
    right: 74px;
  }
  .search .map-area_region.region--6 .map-area_region_name {
    background-color: #e3dab1;
  }
  .search .map-area_region.region--7 {
    top: 488px;
    left: 0;
  }
  .search .map-area_region.region--7 .map-area_region_name {
    background-color: #e7ddae;
  }
  .search .search_btn {
    margin-top: 36px;
  }
  .search .search_btn a {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    background-color: #f8d219;
    width: 500px;
    height: 68px;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 0 auto;
    position: relative;
  }
  .search .search_btn a:hover {
    opacity: 1;
  }
  .search .search_btn a:hover img {
    opacity: 0;
  }
  .search .search_btn a:hover:before {
    width: 0%;
  }
  .search .search_btn a:hover:after {
    border-color: #000;
  }
  .search .search_btn a:before {
    content: "";
    background-color: #000;
    width: 100%;
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    display: block;
    z-index: 0;
    -webkit-transition: width 0.3s;
    -moz-transition: width 0.3s;
    transition: width 0.3s;
  }
  .search .search_btn a:after {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    -webkit-transform: rotate(45deg);
       -moz-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 22px;
    z-index: 1;
  }
  .search .search_btn a span:before {
    content: "";
    display: block;
    width: 310px;
    height: 18.7px;
    background: url(/lab/machikado/img/search_btn_text_bk.png) no-repeat center center;
    -moz-background-size: cover;
         background-size: cover;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
  }
  .search .search_btn a img {
    position: relative;
    width: 310px;
    z-index: 1;
  }
  .recommend {
    padding: 78px 0 120px;
    background-color: #fff;
    max-width: 98%;
    margin: 0 auto;
  }
  .recommend .sec-ttl img {
    width: 322px;
  }
  .recommend ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .recommend ul li {
    width: 32.3%;
    margin-left: 1.55%;
    margin-top: 60px;
  }
  .recommend ul li a:hover {
    opacity: 1;
  }
  .recommend ul li a:hover .img-area img {
    opacity: 0.7;
  }
  .recommend ul li a:hover .text-area {
    opacity: 0.7;
  }
  .recommend ul li:nth-child(3n+1) {
    margin-left: 0;
  }
  .recommend ul li .img-area {
    background-color: #000;
    overflow: hidden;
  }
  .recommend ul li .img-area img {
    -webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
    transition: opacity 0.35s, -webkit-transform 0.35s;
    -moz-transition: opacity 0.35s, transform 0.35s, -moz-transform 0.35s;
    transition: opacity 0.35s, transform 0.35s;
    transition: opacity 0.35s, transform 0.35s, -webkit-transform 0.35s, -moz-transform 0.35s;
  }
  .recommend ul li .text-area {
    margin-top: 15px;
    -webkit-transition: opacity 0.35s;
    -moz-transition: opacity 0.35s;
    transition: opacity 0.35s;
  }
  .recommend ul li .text-area p {
    font-size: 1.14286rem;
  }
  .recommend ul li .text-area p.date {
    color: #777777;
    font-size: 1.07143rem;
  }
  .recommend ul li .text-area p.text {
    margin-top: 7px;
  }
  .recommend .recommend_btn {
    margin-top: 36px;
  }
  .recommend .recommend_btn a {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    background-color: #f8d219;
    width: 500px;
    height: 68px;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 0 auto;
    position: relative;
  }
  .recommend .recommend_btn a:hover {
    opacity: 1;
  }
  .recommend .recommend_btn a:hover img {
    opacity: 0;
  }
  .recommend .recommend_btn a:hover:before {
    width: 0%;
  }
  .recommend .recommend_btn a:hover:after {
    border-color: #000;
  }
  .recommend .recommend_btn a:before {
    content: "";
    background-color: #000;
    width: 100%;
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    display: block;
    z-index: 0;
    -webkit-transition: width 0.3s;
    -moz-transition: width 0.3s;
    transition: width 0.3s;
  }
  .recommend .recommend_btn a:after {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    -webkit-transform: rotate(45deg);
       -moz-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 22px;
    z-index: 1;
  }
  .recommend .recommend_btn a span:before {
    content: "";
    display: block;
    width: 92px;
    height: 18.9px;
    background: url(/lab/machikado/img/more_btn_text_bk.png) no-repeat center center;
    -moz-background-size: cover;
         background-size: cover;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
  }
  .recommend .recommend_btn a img {
    position: relative;
    width: 92px;
    z-index: 1;
  }
}

@media screen and (min-width: 751px) and (max-width: 1000px) {
  nav.submenu.open {
    left: 0 !important;
  }
  main .nav-area_menu li {
    padding: 0 1.86667vw;
  }
  main .nav-area_menu li a {
    font-size: 1.86667vw;
    line-height: 1;
  }
}

@media screen and (min-width: 751px) and (max-width: 1350px) {
  main .nav-area .inner {
    max-width: 90%;
  }
}

@media screen and (min-width: 751px) and (max-width: 1200px) {
  main .menu ul li .menu_name,
  main .menu ol li .menu_name {
    padding-right: 22px;
  }
  main .menu ul li .menu_name span:before,
  main .menu ol li .menu_name span:before {
    right: -40px;
  }
  main .menu ul li .menu_name span:after,
  main .menu ol li .menu_name span:after {
    right: -26px;
  }
  main .menu ul li .menu_name img,
  main .menu ol li .menu_name img {
    height: 28px;
  }
}

@media screen and (min-width: 751px) and (max-width: 850px) {
  main .menu ul li .menu_name,
  main .menu ol li .menu_name {
    padding-right: 30px;
  }
  main .menu ul li .menu_name img,
  main .menu ol li .menu_name img {
    height: 24px;
  }
}

@media screen and (max-width: 750px) {
  #wrapper2 {
    width: 100%;
    max-width: 100%;
  }
  .fadein {
    opacity: 0;
    -webkit-transform: translateY(30px);
       -moz-transform: translateY(30px);
        -ms-transform: translateY(30px);
            transform: translateY(30px);
    -webkit-transition: opacity 1.5s,-webkit-transform 1.5s;
    transition: opacity 1.5s,-webkit-transform 1.5s;
    -moz-transition: opacity 1.5s,transform 1.5s,-moz-transform 1.5s;
    transition: opacity 1.5s,transform 1.5s;
    transition: opacity 1.5s,transform 1.5s,-webkit-transform 1.5s,-moz-transform 1.5s;
  }
  .fadein.show {
    opacity: 1;
    -webkit-transform: translateY(0);
       -moz-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
  }
  .fadein-delay--1 {
    -webkit-transition-delay: 0.2s;
       -moz-transition-delay: 0.2s;
            transition-delay: 0.2s;
  }
  .fadein-delay--2 {
    -webkit-transition-delay: 0.4s;
       -moz-transition-delay: 0.4s;
            transition-delay: 0.4s;
  }
  .fadein-delay--3 {
    -webkit-transition-delay: 0.6s;
       -moz-transition-delay: 0.6s;
            transition-delay: 0.6s;
  }
  .show-pc {
    display: none;
  }
  main a {
    color: inherit;
    display: block;
  }
  main a:hover {
    opacity: 1 !important;
  }
  main img {
    max-width: 100%;
    vertical-align: top;
  }
  main .inner {
    max-width: -webkit-calc(100% - 30px);
    max-width: -moz-calc(100% - 30px);
    max-width: calc(100% - 30px);
    margin: 0 auto;
  }
  main .sec-ttl {
    text-align: center;
  }
  main .nav-area {
    background: url(/lab/machikado/img/bg_ptn.png) repeat left top;
    -moz-background-size: 100% 100%;
         background-size: 100% 100%;
    padding-top: 18px;
  }
  main .nav-area_logo {
    width: 182px;
    margin: 0 auto;
  }
  main .nav-area_menu {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    padding: 18px 0;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  main .nav-area_menu li {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 112px;
    -moz-box-sizing: border-box;
         box-sizing: border-box;
  }
  main .nav-area_menu li a {
    font-size: 13px;
    line-height: 1;
    text-align: center;
    font-weight: 500;
    letter-spacing: 0.8px;
    font-family: YakuhanJP,"Noto Sans Japanese", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Verdana", sans-serif;
  }
  main .nav-area_menu li:first-of-type span {
    display: block;
    padding-left: 7px;
  }
  main .nav-area_menu li:last-of-type {
    padding-right: 22px;
  }
  main .nav-area_menu li + li {
    border-left: 1px solid #000;
  }
  .snsList {
    margin-bottom: 130px;
  }
  .back-to-top {
    width: 41px;
    height: 41px;
    background-color: #000;
    -moz-border-radius: 50%;
         border-radius: 50%;
    position: fixed;
    bottom: 90px;
    right: 25px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    overflow: hidden;
    border: 1px solid #000;
    -webkit-transition: opacity 0.3s ease;
    -moz-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
    z-index: 100;
  }
  .back-to-top:before {
    content: "↑";
    color: #fff;
    font-size: 18px;
  }
  .back-to-top.hidden {
    opacity: 0;
    pointer-events: none;
  }
  main {
    background: url(/lab/machikado/img/bg_ptn.png) repeat left top;
    -moz-background-size: 100% 100%;
         background-size: 100% 100%;
  }
  .mv .swiper-pagination {
    width: 50px;
    height: 1px;
    position: static;
    margin: 0 5px;
  }
  .mv .swiper-pagination_wrap {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    line-height: 1;
  }
  .mv .swiper-pagination_wrap p {
    letter-spacing: 1px;
    font-size: 13px;
  }
  .mv .swiper-pagination .swiper-pagination-progressbar-fill {
    background-color: #000;
  }
  .pickup {
    margin-top: 50px;
    position: relative;
    z-index: 0;
  }
  .pickup:after {
    content: "";
    display: block;
    width: 100%;
    height: 41px;
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: #fff;
    z-index: 0;
  }
  .pickup .sec-ttl img {
    width: 174px;
  }
  .pickup ul {
    margin-top: 23px;
    position: relative;
    z-index: 1;
  }
  .pickup ul li {
    width: 82%;
    margin: 0 auto;
  }
  .pickup ul li .movie_wrap {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 56.25%;
  }
  .pickup ul li .movie_wrap iframe {
    position: absolute;
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
  }
  .pickup ul li img {
    width: 100%;
  }
  .pickup ul li + li {
    margin-top: 20px;
  }
  .menu {
    padding: 107px 0 0;
    position: relative;
    z-index: 0;
    background-color: #fff;
    z-index: 0;
  }
  .menu:before {
    content: "";
    display: block;
    background: url(/lab/machikado/img/bg_yellow.png) repeat left top;
    -moz-background-size: cover;
         background-size: cover;
    width: 100%;
    height: -webkit-calc(100% - 108px);
    height: -moz-calc(100% - 108px);
    height: calc(100% - 108px);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 0;
  }
  .menu_wrap {
    padding-bottom: 80px;
  }
  .menu .sec-ttl img {
    width: 312px;
    margin-top: -20px;
  }
  .menu ul,
  .menu ol {
    padding-top: 70px;
  }
  .menu ul li + li,
  .menu ol li + li {
    margin-top: 50px;
  }
  .menu ul li .figure-area,
  .menu ol li .figure-area {
    background-color: #fff;
    padding-bottom: 15px;
    padding-top: 133.5px;
  }
  .menu ul li figure,
  .menu ol li figure {
    margin-top: -33px;
    height: 168.5px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: end;
       -moz-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    position: absolute;
    left: 0;
    right: 0;
    top: -35px;
    margin: auto;
  }
  .menu ul li .menu_num,
  .menu ol li .menu_num {
    margin-top: 5px;
    text-align: center;
  }
  .menu ul li .menu_num img,
  .menu ol li .menu_num img {
    height: 33px;
    width: auto;
  }
  .menu ul li .menu_name,
  .menu ol li .menu_name {
    margin-top: 13px;
    text-align: center;
  }
  .menu ul li .menu_name img,
  .menu ol li .menu_name img {
    height: 27.5px;
    width: auto;
  }
  .menu ul li:nth-of-type(1) figure img,
  .menu ol li:nth-of-type(1) figure img {
    width: 209.5px;
  }
  .menu ul li:nth-of-type(2) figure img,
  .menu ol li:nth-of-type(2) figure img {
    width: 213px;
  }
  .menu ul li:nth-of-type(3) figure img,
  .menu ol li:nth-of-type(3) figure img {
    width: 219.5px;
  }
  .menu ul li:nth-of-type(4) figure img,
  .menu ol li:nth-of-type(4) figure img {
    width: 215px;
  }
  .search {
    padding: 52px 0 32px;
  }
  .search .inner {
    width: 100%;
    max-width: 100%;
  }
  .search .sec-ttl img {
    width: 152px;
  }
  .search_lead {
    margin-top: 22.5px;
    text-align: center;
    font-size: 13px;
  }
  .search .map-area {
    margin-top: 22.5px;
  }
  .search .map-area_map {
    text-align: center;
    padding-left: 24px;
  }
  .search .map-area_region {
    width: 100%;
  }
  .search .map-area_region_name {
    font-size: 16px;
    padding: 15px;
    position: relative;
  }
  .search .map-area_region_name:after {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    border-bottom: 1px solid #000;
    border-right: 1px solid #000;
    -webkit-transform: rotate(45deg);
       -moz-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    position: absolute;
    right: 20px;
    top: 0;
    bottom: 5px;
    margin: auto;
  }
  .search .map-area_region_name.menu-open:after {
    -webkit-transform: rotate(-135deg);
       -moz-transform: rotate(-135deg);
        -ms-transform: rotate(-135deg);
            transform: rotate(-135deg);
    top: 5px;
    bottom: 0;
  }
  .search .map-area_region .prefecture-list {
    height: 0;
    overflow: hidden;
    -webkit-transition: height 0.3s ease-in-out;
    -moz-transition: height 0.3s ease-in-out;
    transition: height 0.3s ease-in-out;
  }
  .search .map-area_region .prefecture-list ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding: 15px;
    padding-bottom: 30px;
    margin: 0 auto;
  }
  .search .map-area_region .prefecture-list li {
    background-color: #fff;
    margin-top: 2px;
    width: -webkit-calc(50% - 1px);
    width: -moz-calc(50% - 1px);
    width: calc(50% - 1px);
  }
  .search .map-area_region .prefecture-list li:nth-child(2n) {
    margin-left: 2px;
  }
  .search .map-area_region .prefecture-list li a, .search .map-area_region .prefecture-list li span {
    width: 100%;
    height: 45px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    color: #777777;
    font-size: 14px;
    padding-left: 4vw;
    background-color: #fff;
    position: relative;
  }
  .search .map-area_region .prefecture-list li a:before, .search .map-area_region .prefecture-list li a:after, .search .map-area_region .prefecture-list li span:before, .search .map-area_region .prefecture-list li span:after {
    content: "";
    display: block;
    position: absolute;
    margin: auto;
  }
  .search .map-area_region .prefecture-list li a:before, .search .map-area_region .prefecture-list li span:before {
    width: 16.5px;
    height: 16.5px;
    background-color: #cbc7b6;
    -moz-border-radius: 50%;
         border-radius: 50%;
    right: 10px;
  }
  .search .map-area_region .prefecture-list li a:after, .search .map-area_region .prefecture-list li span:after {
    width: 4px;
    height: 4px;
    border-bottom: 1px solid #000;
    border-right: 1px solid #000;
    -webkit-transform: rotate(-45deg);
       -moz-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
    right: 16.5px;
  }
  .search .map-area_region .prefecture-list li span {
    color: #ddd;
  }
  .search .map-area_region.region + .map-area_region {
    margin-top: 4px;
  }
  .search .map-area_region.region--1 .map-area_region_name {
    background-color: #cbc7b6;
  }
  .search .map-area_region.region--2 .map-area_region_name {
    background-color: #cfcab5;
  }
  .search .map-area_region.region--3 .map-area_region_name {
    background-color: #d4ceb4;
  }
  .search .map-area_region.region--4 .map-area_region_name {
    background-color: #d9d2b3;
  }
  .search .map-area_region.region--5 .map-area_region_name {
    background-color: #ded6b2;
  }
  .search .map-area_region.region--6 .map-area_region_name {
    background-color: #e3dab1;
  }
  .search .map-area_region.region--7 .map-area_region_name {
    background-color: #e7ddae;
  }
  .search .search_btn {
    margin-top: 52px;
  }
  .search .search_btn a {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    background-color: #000;
    width: -webkit-calc(100% - 30px);
    width: -moz-calc(100% - 30px);
    width: calc(100% - 30px);
    height: 55px;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 0 auto;
    position: relative;
  }
  .search .search_btn a:after {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    -webkit-transform: rotate(45deg);
       -moz-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 20px;
    z-index: 1;
  }
  .search .search_btn a span {
    line-height: 1;
  }
  .search .search_btn a img {
    position: relative;
    width: 228px;
    z-index: 1;
  }
  .recommend {
    padding: 58px 0 133px;
    background-color: #fff;
  }
  .recommend .sec-ttl img {
    width: 198px;
  }
  .recommend ul {
    margin-top: 14px;
  }
  .recommend ul li {
    border-bottom: 1px solid #ddd;
  }
  .recommend ul li:last-of-type {
    border: none;
  }
  .recommend ul li a {
    padding: 9px 0;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
  }
  .recommend ul li .img-area {
    width: 28.5%;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
  .recommend ul li .text-area {
    margin-left: 11px;
  }
  .recommend ul li .text-area p {
    font-size: 12px;
  }
  .recommend ul li .text-area p.date {
    color: #777777;
    font-size: 12px;
  }
  .recommend ul li .text-area p.text {
    margin-top: 7.5px;
  }
  .recommend .recommend_btn {
    margin-top: 40px;
  }
  .recommend .recommend_btn a {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    background-color: #000;
    width: 100%;
    height: 55px;
    -webkit-box-pack: center;
       -moz-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 0 auto;
    position: relative;
  }
  .recommend .recommend_btn a:after {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    -webkit-transform: rotate(45deg);
       -moz-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 20px;
    z-index: 1;
  }
  .recommend .recommend_btn a span {
    line-height: 1;
  }
  .recommend .recommend_btn a img {
    position: relative;
    width: 68px;
    z-index: 1;
  }
}

.swiper-container button#swiper-start-stop {
  font-size: 1.9em;
  margin-right: 0.5em;
  vertical-align: top;
  width: 1em;
  height: 1em;
  position: relative;
  cursor: pointer;
}
#swiper-start-stop img {
  width: 100%;
  vertical-align: top;
  height: 100%;
}
.swiper-container button {
  -webkit-appearance: none;
  appearance: none;
  border: none;
  background: none;
  padding: 0;
  margin: 0;
  z-index: 9999;
}
.swiper-container button.swiper-button-prev::after,.swiper-container button.swiper-button-next::after {
  content: "";
  background-image: url(/lab/machikado/img/arrow.png);
  background-size: 100% 100%;
  width: 100%;
  height: 100%;
  top:50%;
}
.swiper-container button.swiper-button-prev,.swiper-container button.swiper-button-next {
  font-size: 5em;
  width: 1em;
  height: 1em;
}
.swiper-container button.swiper-button-prev{
  right:50%;
  left:inherit;
  transform:translate(calc(30% - 600px),-50%) rotate(180deg);
}
.swiper-container button.swiper-button-next{
  left:50%;
  right:inherit;
  transform:translate(calc(-30% + 600px),-50%);
}
.inner.swiper-controls-wrap {
  display: flex;
  justify-content: flex-end;
  max-width: 98%;
  margin: 18px auto 0;
  width: 1200px;
  align-items: center;
}
.auto-start .swiper-start-image {
  display: none;
}
.auto-stop .swiper-stop-image{
  display: none;
}
@media screen and (max-width:1300px){
  .swiper-container button.swiper-button-prev, .swiper-container button.swiper-button-next {
    font-size: 4.3vw;
  }
  .swiper-button-next, .swiper-button-prev {
    top: 44%;
  }
  .swiper-container button.swiper-button-prev {
    transform: rotate(180deg);
    right: inherit;
    left: 2%;
  }
  .swiper-container button.swiper-button-next {
    transform: none;
    left: inherit;
    right: 2%;
  }
}
@media screen and (max-width:750px){
  .swiper-container button#swiper-start-stop {
    font-size: 1.1em;
  }
  .inner.swiper-controls-wrap {
    margin-top: 15px;
    justify-content: center;
  }
  .swiper-container button.swiper-button-prev, .swiper-container button.swiper-button-next {
    font-size: 7vw;
  }
}