@charset "UTF-8";

* {
    box-sizing: border-box;
    word-break: break-all;
}

html {
    font-size: 14px;
}

@media screen and (max-width: 640px) {
    html {
        font-size: 3.5vw;
    }
}

body {
    color: #000;
    font-family: 'Noto Sans JP', YuGothicM, YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
    font-size: inherit;
}

li {
    list-style: none;
}

img {
    max-width: 100%;
    vertical-align: bottom;
}

a {
    color: #000;
}

a:hover {
    text-decoration: none;
}

a.blank[target="_blank"]:after {
    content: "\f08e";
    font-family: FontAwesome;
    margin-left: 5px;
}

button {
    padding: 0;
    border: none;
    background: none;
    font-size: 1rem;
}

input[type="text"],
input[type="password"],
input[type="tel"],
input[type="email"],
select {
    font-size: 1rem;
}

.only-pc {
    display: block;
}

@media screen and (max-width: 640px) {
    .only-pc {
        display: none !important;
    }
}

.only-sp {
    display: none;
}

@media screen and (max-width: 640px) {
    .only-sp {
        display: block;
    }
}

img.only-pc,
span.only-pc {
    display: inline;
}

@media screen and (max-width: 640px) {

    img.only-pc,
    span.only-pc {
        display: none;
    }
}

img.only-sp,
span.only-sp {
    display: none;
}

@media screen and (max-width: 640px) {

    img.only-sp,
    span.only-sp {
        display: inline;
    }
}

table.only-pc {
    display: table;
}

@media screen and (max-width: 640px) {
    table.only-pc {
        display: none;
    }
}

table.only-sp {
    display: none;
}

@media screen and (max-width: 640px) {
    table.only-sp {
        display: table;
    }
}
.object-fit-img-wrap img,
.object-fit-img {
    object-fit: contain;
    font-family: 'object-fit: contain;';
}

/* パーツ */
.txt-en,
.ttl-area-en,
.spotcheck .spotcheck-ttl,
.news-area .news-ttl .news-ttl-en,
.pickup-area .pickup-list li dl dd,
.pickup-area .pickup-pr li p,
.pickup-area-2 .pickup-list li dl dd,
.pickup-area-2 .pickup-pr li p {
    font-family: 'Roboto', sans-serif;
}

.ttl-area {
    margin-bottom: 15px;
    font-size: 2.28571rem;
    font-weight: bold;
    text-align: center;
}

@media screen and (max-width: 640px) {
    .ttl-area {
        margin-bottom: 5px;
        font-size: 1.57143rem;
    }
}

.ttl-area-en {
    margin-bottom: 60px;
    font-weight: normal;
    text-align: center;
}

@media screen and (max-width: 640px) {
    .ttl-area-en {
        margin-bottom: 30px;
    }
}

.ttl-sec {
    position: relative;
    z-index: 1;
    margin-bottom: 35px;
}

@media screen and (max-width: 640px) {
    .ttl-sec {
        margin-bottom: 20px;
    }
}

.ttl-sec::before {
    content: '';
    position: absolute;
    z-index: -1;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 5px;
    background-color: #d3c5aa;
}

.ttl-sec .ttl-sec-txt {
    display: inline-block;
    margin-left: -15px;
    padding: 0 15px;
    background-color: #f2efe6;
    font-size: 1.85714rem;
}

@media screen and (max-width: 640px) {
    .ttl-sec .ttl-sec-txt {
        margin-left: 0;
        font-size: 1.42857rem;
    }
}

.ttl-subsec {
    font-size: 1.71429rem;
    font-weight: bold;
}

@media screen and (max-width: 640px) {
    .ttl-subsec {
        font-size: 1.28571rem;
    }
}

.ttl-block {
    font-size: 1.14286rem;
    font-weight: bold;
}

.ttl-list {
    margin: 5px 0 10px;
    font-size: 1.14286rem;
    font-weight: bold;
    line-height: 1.5;
}

.ttl-border {
    margin-bottom: 45px;
    padding-bottom: 20px;
    border-bottom: 2px solid #a9894b;
    font-size: 1.71429rem;
    font-weight: bold;
    text-align: center;
}

@media screen and (max-width: 640px) {
    .ttl-border {
        font-size: 1.42857rem;
    }
}

.ttl-line {
    position: relative;
    margin-bottom: 25px;
    padding-bottom: 15px;
    font-size: 1.42857rem;
}

#policy .ttl-line {
    margin: 40px 0 25px;
}

@media screen and (max-width: 640px) {
    .ttl-line {
        font-size: 1.14286rem;
    }
}

.ttl-line::before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 3px;
    background-color: #ccc;
}

.ttl-line::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 295px;
    height: 3px;
    background-color: #a9894b;
}

.ttl-line small {
    margin-left: 1em;
    font-size: 1rem;
    font-weight: normal;
}

.ttl-page {
    font-size: 2.28571rem;
    text-align: center;
}

@media screen and (max-width: 640px) {
    .ttl-page {
        font-size: 1.71429rem;
    }
}

.ttl-page .ico {
    margin-right: 20px;
    line-height: 1;
}

.ttl-sub {
    margin-bottom: 60px;
    font-size: 1.71429rem;
    font-weight: bold;
    text-align: center;
}

.ttl-small {
    margin-bottom: 40px;
    font-size: 1.28571rem;
    text-align: center;
}

.txt-line {
    display: inline-block;
    padding-bottom: 2px;
    border-bottom: 3px solid #a9894b;
    font-weight: bold;
}

.ttl-lv3 {
    margin: 30px 0 10px;
    font-weight: bold;
    border-bottom: 1px solid #a9894b;
    padding-bottom: 5px;
}

.btn-basic {
    display: inline-block;
    position: relative;
    width: 100%;
    padding: 12px 22px 12px 12px;
    background-color: #000;
    color: #fff;
    font-weight: bold;
    line-height: 1;
    text-align: center;
    text-decoration: none;
}

@media screen and (max-width: 640px) {
    .btn-basic {
        font-size: 1rem;
        line-height: 1.5;
    }
}

.btn-basic::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 10px;
    width: 8px;
    height: 13px;
    background: url("../img/common/i_arrow_r_w.png") no-repeat center center;
    background-size: cover;
    margin-top: -6px;
}

.btn-basic.btn-baskc-l::after {
    right: initial;
    left: 10px;
    background-image: url("../img/common/i_arrow_l_w.png");
}

.btn-arrow {
    display: inline-block;
    position: relative;
    width: 100%;
    padding: 15px 26px;
    border: 1px solid #fff;
    color: #fff;
    font-size: 1.14286rem;
    font-weight: bold;
    line-height: 1.3;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
}

@media screen and (max-width: 640px) {
    .btn-arrow {
        font-size: 1rem;
        line-height: 1.5;
        padding: .8em .5em;
    }
}

.btn-arrow::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 15px;
    width: 7px;
    height: 7px;
    margin-top: -3px;
    background: url("../img/common/i_blank_w.png") no-repeat center center;
    background-size: cover;
}

@media screen and (max-width: 640px) {
    .btn-arrow::after {
        display: none;
    }
}

.btn-arrow.btn-border {
    border-color: #000;
    color: #000;
}

.btn-arrow.btn-border::after {
    background-image: url("../img/common/i_blank.png");
}

.btn-arrow.btn-more::after {
    width: 26px;
    height: 26px;
    margin-top: -13px;
    background-image: url("../img/common/i_plus_r.png");
}

.btn-arrow-b {
    display: inline-block;
    position: relative;
    width: 100%;
    padding: 15px;
    border: 1px solid #fff;
    color: #fff;
    font-size: 1.14286rem;
    font-weight: bold;
    line-height: 1;
    text-align: center;
    text-decoration: none;
}

@media screen and (max-width: 640px) {
    .btn-arrow-b {
        font-size: 1rem;
        line-height: 1.5;
    }
}

.btn-arrow-b::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 15px;
    width: 19px;
    height: 11px;
    background: url("../img/common/i_arrows_b_w.png") no-repeat center center;
    background-size: cover;
    margin-top: -5px;
}

@media screen and (max-width: 640px) {
    .btn-arrow-b::after {
        display: none;
    }
}

.btn-arrow-t {
    display: inline-block;
    position: relative;
    width: 100%;
    padding: 15px;
    border: 1px solid #fff;
    color: #fff;
    font-size: 1.14286rem;
    font-weight: bold;
    line-height: 1;
    text-align: center;
    text-decoration: none;
}

@media screen and (max-width: 640px) {
    .btn-arrow-t {
        font-size: 1rem;
        line-height: 1.5;
    }
}

.btn-arrow-t::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 15px;
    width: 19px;
    height: 11px;
    background: url("../img/common/i_arrows_t_w.png") no-repeat center center;
    background-size: cover;
    margin-top: -5px;
}

.btn-back {
    display: inline-block;
    position: relative;
    width: 100%;
    padding: 15px;
    background-color: #a9894b;
    color: #fff;
    font-size: 1.14286rem;
    font-weight: bold;
    line-height: 1;
    text-align: center;
    text-decoration: none;
}

@media screen and (max-width: 640px) {
    .btn-back {
        font-size: 1rem;
        line-height: 1.5;
    }
}

.btn-back::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 15px;
    width: 7px;
    height: 7px;
    background: url("../img/common/i_back.png") no-repeat center center;
    background-size: cover;
    margin-top: -3px;
}

.btn-inverse {
    border-color: #000;
    background-color: #000;
}

.btn-l {
    padding-top: 25px;
    padding-bottom: 25px;
}

.btn-pdf {
    position: relative;
    display: inline-block;
    min-width: 280px;
    padding: 15px;
    background-color: #000;
    color: #fff;
    text-align: center;
    text-decoration: none;
}

@media screen and (max-width: 640px) {
    .btn-pdf {
        width: 100%;
        min-width: auto;
    }
}

@media screen and (max-width: 640px) {
    .btn-pdf span {
        width: 70%;
        display: block;
    }
}

.btn-pdf .ico {
    position: absolute;
    top: 50%;
    right: 20px;
    margin-top: -10px;
}

.box-col2-m .box-col-item {
    float: left;
    width: 48.33333%;
}

@media screen and (max-width: 640px) {
    .box-col2-m .box-col-item {
        float: none;
        width: 100%;
        margin-bottom: 20px;
    }
}

.box-col2-m .box-col-item:last-child {
    float: right;
}

@media screen and (max-width: 640px) {
    .box-col2-m .box-col-item:last-child {
        float: none;
    }
}

.box-col3-m .box-col-item {
    float: left;
    width: 31.66667%;
    margin-right: 2.5%;
}

@media screen and (max-width: 640px) {
    .box-col3-m .box-col-item {
        float: none;
        width: 100%;
        margin-right: 0;
        margin-bottom: 20px;
    }

    .box-col3-m .box-col-item:last-child {
        margin-bottom: 0;
    }
}

.box-col3-m .box-col-item:nth-child(3n) {
    margin-right: 0;
}

.box-col4-tile {
    display: flex;
}

@media screen and (max-width: 640px) {
    .box-col4-tile {
        flex-wrap: wrap;
        justify-content: space-between;
    }
}

.box-col4-tile .box-col-item {
    width: 23.33333%;
    margin-right: 2.16667%;
}

@media screen and (max-width: 640px) {
    .box-col4-tile .box-col-item {
        width: 48.33333%;
        margin-right: 0;
        margin-bottom: 20px;
        padding: 10px;
        background-color: #fff;
    }
}

.box-col4-tile .box-col-item:last-child {
    margin-right: 0;
}

.box-col4-course {
    display: flex;
}

@media screen and (max-width: 640px) {
    .box-col4-course {
        flex-direction: column;
    }
}

.box-col4-course .box-col-item {
    width: 23.33333%;
    margin-right: 2.16667%;
}

@media screen and (max-width: 640px) {
    .box-col4-course .box-col-item {
        width: 100%;
        margin-right: 0;
        margin-bottom: 20px;
    }

    .box-col4-course .box-col-item a {
        display: flex;
    }

    .box-col4-course .box-col-item a>figure {
        width: 40%;
    }

    .box-col4-course .box-col-item a>dl {
        display: flex;
        justify-content: center;
        flex-direction: column;
        width: 60%;
        padding-left: 15px;
    }
}

.box-col4-course .box-col-item:last-child {
    margin-right: 0;
}

@media screen and (max-width: 640px) {
    .box-col4-course .box-col-item:last-child {
        margin-bottom: 0;
    }
}

.box-nav-col {
    margin-bottom: 40px;
}

.box-nav-col ul {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 1em;
}

.box-nav-col ul li {
  display: grid;
}

.box-nav-col ul li a {
  place-content: center;
  overflow-wrap: anywhere;
  line-break: strict;
}

.box-nav-col ul li .btn-inverse::before {
    content: '';
    position: absolute;
    left: 50%;
    bottom: -10px;
    width: 20px;
    height: 20px;
    margin-left: -8px;
    background-color: #000;
    -webkit-transform: rotate(45deg) skew(20deg, 20deg);
    transform: rotate(45deg) skew(20deg, 20deg);
}

@media screen and (max-width: 900px) {
    .box-nav-col.box-nav-col4 ul {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 1.5em 1em;
        padding-bottom: 20px;
    }
}
@media screen and (max-width: 900px) {
    .box-nav-col ul li .btn-inverse::before {
      bottom: -5px;
      width: 14px;
      height: 14px;
      margin-left: -7px;
    }
}

@media screen and (max-width: 640px) {
    .box-nav-col.box-nav-scroll {
        white-space: nowrap;
    }

    .box-nav-col.box-nav-scroll::-webkit-scrollbar {
        height: 5px;
    }

    .box-nav-col.box-nav-scroll::-webkit-scrollbar-track {
        background-color: #f1f1f1;
    }

    .box-nav-col.box-nav-scroll::-webkit-scrollbar-thumb {
        background-color: #bcbcbc;
    }

    .box-nav-col.box-nav-scroll ul {
        display: block;
        padding-bottom: 20px;
    }
}

@media screen and (max-width: 640px) {
    .box-nav-col.box-nav-scroll li {
        display: inline-block;
        width: 48%;
        min-width: 10em;
        margin-right: 0.5em;
        vertical-align: middle;
    }

    .box-nav-col.box-nav-scroll li:last-child {
        margin-right: 0;
    }

    .box-nav-col.box-nav-scroll li a {
        padding-left: 5%;
        padding-right: 5%;
        font-size: 0.8rem;
    }
}

.box-slider {
    position: relative;
}

.box-slider li {
    padding: 0 10px;
}

.box-slider .box-slider-prev {
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -15px;
    cursor: pointer;
}

.box-slider .box-slider-next {
    position: absolute;
    top: 50%;
    right: 0;
    margin-top: -15px;
    cursor: pointer;
}

.box-block {
    padding-bottom: 100px;
}

@media screen and (max-width: 640px) {
    .box-block {
        padding-bottom: 60px;
    }
}

.nav-slider {
    float: right;
    width: 70px;
}

.nav-slider .nav-slider-prev {
    float: left;
}

.nav-slider .nav-slider-next {
    float: right;
}

.link-arrow {
    text-decoration: none;
}

.link-arrow::before {
    content: '> ';
}

.link-arrow span {
    text-decoration: underline;
}

.link-arrow:hover span {
    text-decoration: none;
}

.link-pdf {
    position: relative;
    display: block;
    padding: 15px 0 0 40px;
}

.link-pdf::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 30px;
    height: 36px;
    background: url("../img/common/i_pdf.png") no-repeat;
}

.link-excel {
    position: relative;
    display: block;
    padding: 15px 0 0 40px;
}

.link-excel::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 30px;
    height: 36px;
    background: url("../img/common/i_excel.png") no-repeat;
}

.ico-tag {
    display: inline-block;
    min-width: 150px;
    padding: 5px 0;
    background-color: #a9894b;
    color: #fff;
    text-align: center;
}

.ico-line {
    display: inline-block;
    min-width: 120px;
    margin-bottom: 10px;
    padding-bottom: 5px;
    border-bottom: 3px solid #a9894b;
    font-weight: bold;
}

.ico-areatag {
    display: inline-block;
    min-width: 150px;
    margin-bottom: 10px;
    padding: 3px 10px;
    color: #fff;
    text-align: center;
}

.bg-area-seibu {
    background-color: #b68aba !important;
}

.bg-area-tobu {
    background-color: #e5b730 !important;
}

.bg-area-hokubu {
    background-color: #4bb2c2 !important;
}

.bg-area-nanbu {
    background-color: #a7c539 !important;
}

.bg-area-chushinbu {
    background-color: #e96c6d !important;
}

.bg-area-nagoya {
    background-color: #6cc4e9 !important;
}

.bg-area-osu {
    background-color: #8f8aba !important;
}

.bg-area-other {
    background-color: #9db06b !important;
}

.txt-area-seibu {
    color: #b68aba !important;
}

.txt-area-tobu {
    color: #e5b730 !important;
}

.txt-area-hokubu {
    color: #4bb2c2 !important;
}

.txt-area-nanbu {
    color: #a7c539 !important;
}

.txt-area-chushinbu {
    color: #e96c6d !important;
}

.txt-area-nagoya {
    color: #6cc4e9 !important;
}

.txt-area-osu {
    color: #8f8aba !important;
}

.txt-area-other {
    color: #9db06b !important;
}

.txt-red,
.searchresult-area .searchresult-list .searchresult-item .searchresult-copy {
    color: #d84040;
}

.txt-darkred {
    color: #c00;
}

.tbl {
    width: 100%;
}

.tbl th {
    padding: 15px 15px 15px 45px;
    border: 1px solid #ccc;
    background-color: #ece9e2;
    text-align: left;
    vertical-align: middle;
}

.tbl td {
    padding: 15px 15px 15px 45px;
    border: 1px solid #ccc;
    background-color: #fff;
    vertical-align: middle;
}

@media screen and (max-width: 640px) {
    .tbl-v {
        border-bottom: 1px solid #ccc;
    }

    .tbl-v th {
        display: block;
        padding: 15px;
        border-bottom: none;
    }

    .tbl-v td {
        display: block;
        padding: 15px;
        border-bottom: none;
    }
}

@media screen and (max-width: 640px) {
    .tbl-scroll {
        overflow-x: auto;
        white-space: nowrap;
    }

    .tbl-scroll::-webkit-scrollbar {
        height: 5px;
    }

    .tbl-scroll::-webkit-scrollbar-track {
        background-color: #ededed;
    }

    .tbl-scroll::-webkit-scrollbar-thumb {
        background-color: #876e3e;
    }
}

.cmn-box-cap {
    padding-left: 1em;
    text-indent: -1em;
}

.cmn-list-cap li {
    padding-left: 1em;
    text-indent: -1em;
}

.cmn-list-decimal {
    margin-left: 1em;
}

.cmn-list-decimal li {
    list-style: decimal;
}

.slick-track {
    margin-left: 0;
    margin-right: 0;
}

.slick-dots li button::before {
    content: '■';
    color: #fff;
    font-size: 1rem;
    opacity: 1;
}

.slick-dots li.slick-active button::before {
    opacity: 1;
    color: #a9894b;
}

@media screen and (max-width: 640px) {
    .slick-dots li {
        width: 2rem;
        text-align: center;
    }

    .slick-dots li button {
        display: inline-block;
        width: auto;
        padding: 0;
    }

    .slick-dots li button::before {
        position: static;
        font-size: 1.5rem;
    }

    .slick-dots li.slick-active button::before {
        color: #cdb85d;
    }
}

.ico {
    display: inline-block;
    line-height: 0;
    vertical-align: middle;
    width: auto;    /* 2026 追加 */
}
.ico::before {
  width: initial !important;    /* 2026 追加 */
}

.ico-info-g::before {
    content: url("../img/common/i_info_g.svg");
}

.ico-bus-g::before {
    content: url("../img/common/i_bus_g.svg");
}

.ico-bus-g-l::before {
    content: url("../img/common/i_bus_g_l.png");
}

.ico-wifi-g::before {
    content: url("../img/common/i_wifi.png");
}

.ico-favorite-g::before {
    content: url("../img/common/i_favorite.png");
}

.ico-search-g::before {
    content: url("../img/common/i_search_g.svg");
}

.ico-search-g-r::before {
    content: url("../img/common/i_search_g_r.png");
}

.ico-search-b::before {
    content: url("../img/common/i_search_b.png");
}

.ico-search-sp::before {
    content: url("../img/common/i_search_sp.png");
}

.ico-search-w::before {
    content: url("../img/common/i_search_w.png");
}

.ico-glass-g::before {
    content: url("../img/common/i_ollie_g.svg");
}

.ico-instagram-g::before {
    content: url("../img/common/i_instagram_g.svg");
}

.ico-instagram-b::before {
    content: url("../img/common/i_instagram_b.png");
}

.ico-instagram-sp::before {
    content: url("../img/common/sp/i_footer_sns01_sp.svg");
}

.ico-twitter-g::before {
    content: url("../img/common/i_x_g.svg");
}

.ico-twitter-b::before {
    content: url("../img/common/i_x_b.png");
}

.ico-twitter-w::before {
    content: url("../img/common/i_x_w.png");
}

.ico-twitter-w-s::before {
    content: url("../img/common/i_x_w_s.png");
}

.ico-twitter-sp::before {
    content: url("../img/common/sp/i_footer_sns02_sp.svg");
}

.ico-facebook-g::before {
    content: url("../img/common/i_facebook_g.svg");
}

.ico-facebook-b::before {
    content: url("../img/common/i_facebook_b.png");
}

.ico-facebook-w::before {
    content: url("../img/common/i_facebook_w.png");
}

.ico-facebook-w-s::before {
    content: url("../img/common/i_facebook_w_s.png");
}

.ico-facebook-sp::before {
    content: url("../img/common/sp/i_footer_sns03_sp.svg");
}

.ico-line-w::before {
    content: url("../img/common/i_line_w.png");
}

.ico-heart-w::before {
    content: url("../img/common/i_heart_w.png");
}

.ico-light::before {
    content: url("../img/common/i_light.png");
}

.ico-global-g::before {
    content: url("../img/common/i_global_g.svg");
}

.ico-global-sp::before {
    content: url("../img/common/sp/i_global_sp.svg");
}

.ico-warning::before {
    content: url("../img/common/i_warning.png");
}

.ico-bus-w::before {
    content: url("../img/common/sp/i_bus_w.svg");
}

.ico-clock::before {
    content: url("../img/common/i_clock.png");
}

.ico-clock-s::before {
    content: url("../img/common/i_clock_s.png");
}

.ico-plus-b::before {
    content: url("../img/common/i_plus_b.png");
}

.ico-plus-w::before {
    content: url("../img/common/i_plus_w.png");
}

.ico-plus-sp::before {
    content: url("../img/common/i_plus_sp.png");
}

.ico-minus-b::before {
    content: url("../img/common/i_minus_b.png");
}

.ico-minus-w::before {
    content: url("../img/common/i_minus_w.png");
}

.ico-minus-sp::before {
    content: url("../img/common/i_minus_sp.png");
}

.ico-arrow-b-g {
    line-height: 0;
}

.ico-arrow-b-g::before {
    content: url("../img/common/i_arrow_b_g.png");
}

.ico-arrowsp-b-g {
    line-height: 0;
}

.ico-arrowsp-b-g::before {
    content: url("../img/common/i_arrowsp_b_g.png");
}

.ico-arrow-b-w {
    line-height: 0;
}

.ico-arrow-b-w::before {
    content: url("../img/common/i_arrow_b_w.png");
}

.ico-arrowss-b-w {
    line-height: 0;
}

.ico-arrowss-b-w::before {
    content: url("../img/common/i_arrowss_b_w.png");
}

.ico-arrowsss-b-w {
    line-height: 0;
}

.ico-arrowsss-b-w::before {
    content: url("../img/common/i_arrowsss_b_w.png");
}

.ico-arrowss-r-w {
    line-height: 0;
}

.ico-arrowss-r-w::before {
    content: url("../img/common/i_arrowss_r_w.png");
}

.ico-arrow-t-w {
    line-height: 0;
}

.ico-arrow-t-w::before {
    content: url("../img/common/i_arrow_t_w.png");
}

.ico-arrowss-t-w {
    line-height: 0;
}

.ico-arrowss-t-w::before {
    content: url("../img/common/i_arrowss_t_w.png");
}

.ico-arrow-r-b {
    line-height: 0;
}

.ico-arrow-r-b::before {
    content: url("../img/common/i_arrow_r_b.png");
}

.ico-arrowsp-r-b {
    line-height: 0;
}

.ico-arrowsp-r-b::before {
    content: url("../img/common/i_arrowsp_r_b.png");
}

.ico-arrowsp-r-g {
    line-height: 0;
}

.ico-arrowsp-r-g::before {
    content: url("../img/common/i_arrowsp_r_g.png");
}

.ico-calendar::before {
    content: url("../img/common/i_calendar.png");
}

.ico-calendar-l::before {
    content: url("../img/common/i_calendar_l.png");
}

.ico-map::before {
    content: url("../img/common/i_map.png");
}

.ico-map-w::before {
    content: url("../img/common/i_map_w.png");
}

.ico-price::before {
    content: url("../img/common/i_price.png");
}

.ico-attention::before {
    content: url("../img/common/i_attention.png");
}

.ico-tour::before {
    content: url("../img/common/i_tour.png");
}

.ico-logo::before {
    content: url("../img/common/i_logo.png");
}

.ico-check-w::before {
    content: url("../img/common/i_check_w.png");
}

.ico-time::before {
    content: url("../img/common/i_time.png");
}

.ico-human::before {
    content: url("../img/common/i_human.png");
}

.ico-edit::before {
    content: url("../img/common/i_edit.png");
}

.ico-medal::before {
    content: url("../img/common/i_medal.png");
}

.ico-crown1::before {
    content: url("../img/common/i_crown1.png");
}

.ico-crown2::before {
    content: url("../img/common/i_crown2.png");
}

.ico-crown3::before {
    content: url("../img/common/i_crown3.png");
}

.ico-crown4::before {
    content: url("../img/common/i_crown4.png");
}

.ico-crown5::before {
    content: url("../img/common/i_crown5.png");
}

.ico-article::before {
    content: url("../img/common/i_article.png");
}

.ico-article::before {
    content: url("../img/common/i_article.png");
}

.ico-course::before {
    content: url("../img/common/i_course.png");
}

.ico-pr::before {
    content: url("../img/common/i_pr.png");
}

.ico-train::before {
    content: url("../img/common/i_train.png");
}

.ico-train-l::before {
    content: url("../img/common/i_train_l.png");
}

.ico-train-w-l::before {
    content: url("../img/common/i_train_w_l.png");
}

.ico-subway::before {
    content: url("../img/common/i_subway.png");
}

.ico-bus::before {
    content: url("../img/common/i_bus.png");
}

.ico-walk::before {
    content: url("../img/common/i_walk.png");
}

.ico-walk-s::before {
    content: url("../img/common/i_walk_s.png");
}

.ico-times-w::before {
    content: url("../img/common/i_times_w.png");
}

.ico-info::before {
    content: url("../img/common/i_info.png");
}

.ico-zoom::before {
    content: url("../img/common/i_zoom.png");
}

.ico-blank {
    margin-left: 5px;
}

.ico-blank::before {
    content: url("../img/common/i_external.png");
}

.ico-blank-w {
    margin-left: 5px;
}

.ico-blank-w::before {
    content: url("../img/common/i_external_w.png");
}

.ico-tel::before {
    content: url("../img/common/i_tel.png");
}

.ico-pdf::before {
    content: url("../img/common/i_pdf02.png");
}

.ico-envelope::before {
    content: url("../img/common/i_envelope.png");
}

/*
.ico-rank1::before {
    content: url("../img/home/i_ranking1.png");
}

.ico-rank1-on::before {
    content: url("../img/home/i_ranking1_on.png");
}

.ico-rank2::before {
    content: url("../img/home/i_ranking2.png");
}

.ico-rank2-on::before {
    content: url("../img/home/i_ranking2_on.png");
}

.ico-rank3::before {
    content: url("../img/home/i_ranking1.png");
}

.ico-rank3-on::before {
    content: url("../img/home/i_ranking3_on.png");
}

.ico-rank4::before {
    content: url("../img/home/i_ranking4.png");
}

.ico-rank4-on::before {
    content: url("../img/home/i_ranking4_on.png");
}

.ico-rank5::before {
    content: url("../img/home/i_ranking5.png");
}

.ico-rank5-on::before {
    content: url("../img/home/i_ranking5_on.png");
}
*/

.ico-spot::before {
    content: url("../img/spot/i_spot.png");
}

.ico-spot-sp::before {
    content: '';
    display: inline-block;
    width: 35px;
    height: 35px;
    background: url("../img/common/sp/gnavi_i011_sp.svg") no-repeat;
    background-size: cover;
}

@media screen and (max-width: 640px) {
    .ico-spot-sp::before {
        width: 25px;
        height: 25px;
    }
}

.ico-course-sp::before {
    content: '';
    display: inline-block;
    width: 35px;
    height: 35px;
    background: url("../img/common/sp/gnavi_i012_sp.svg") no-repeat;
    background-size: cover;
}

@media screen and (max-width: 640px) {
    .ico-course-sp::before {
        width: 25px;
        height: 25px;
    }
}

.ico-near-sp::before {
    content: '';
    display: inline-block;
    width: 35px;
    height: 35px;
    background: url("../img/common/sp/gnavi_i013_sp.svg") no-repeat;
    background-size: cover;
}

@media screen and (max-width: 640px) {
    .ico-near-sp::before {
        width: 25px;
        height: 25px;
    }
}

.ico-info-sp::before {
    content: '';
    display: inline-block;
    width: 35px;
    height: 35px;
    background: url("../img/common/sp/i_info_g.svg") no-repeat;
    background-size: cover;
}

@media screen and (max-width: 640px) {
    .ico-info-sp::before {
        width: 25px;
        height: 25px;
    }
}
.ico-favorite-sp::before {
    content: '';
    display: inline-block;
    width: 37px;
    height: 32px;
    background: url("../img/common/sp/i_fav_g.svg") no-repeat;
    background-size: cover;
}

.ico-favorite::before {
    content: url("../img/spot/i_favorite2.png");
}

@media screen and (max-width: 640px) {
    .ico-favorite-sp::before {
        width: 26px;
        height: 22px;
    }
}

.ico-bus-sp::before {
    content: '';
    display: inline-block;
    width: 44px;
    height: 29px;
    background: url("../img/common/sp/i_bus_g.svg") no-repeat;
    background-size: cover;
}

@media screen and (max-width: 640px) {
    .ico-bus-sp::before {
        width: 25px;
        height: 16px;
    }
}

.ico-nagoya::before {
    content: url("../img/common/i_nagoya.png");
}

.ico-nagoya-sp::before {
    content: '';
    display: inline-block;
    width: 35px;
    height: 35px;
    background: url("../img/common/sp/gnavi_i001_sp.svg") no-repeat;
    background-size: cover;
}

@media screen and (max-width: 640px) {
    .ico-nagoya-sp::before {
        width: 25px;
        height: 25px;
    }
}
.ico-contact::before {
    content: url("../img/common/i_contact.png");
}
.ico-feature-sp::before {
    content: '';
    display: inline-block;
    width: 35px;
    height: 35px;
    background: url("../img/common/sp/gnavi_i002_sp.svg") no-repeat;
    background-size: cover;
}

@media screen and (max-width: 640px) {
    .ico-feature-sp::before {
        width: 25px;
        height: 25px;
    }
}

.ico-event::before {
    content: url("../img/common/i_event.png");
}

.ico-event-sp::before {
    content: '';
    display: inline-block;
    width: 35px;
    height: 35px;
    background: url("../img/common/sp/gnavi_i003_sp.svg") no-repeat;
    background-size: cover;
}

@media screen and (max-width: 640px) {
    .ico-event-sp::before {
        width: 25px;
        height: 25px;
    }
}

.ico-gourmet-sp::before {
    content: '';
    display: inline-block;
    width: 35px;
    height: 35px;
    background: url("../img/common/sp/gnavi_i005_sp.svg") no-repeat;
    background-size: cover;
}

@media screen and (max-width: 640px) {
    .ico-gourmet-sp::before {
        width: 25px;
        height: 25px;
    }
}

.ico-souvenir::before {
    content: url("../img/common/i_souvenir.png");
}

.ico-souvenir-sp::before {
    content: '';
    display: inline-block;
    width: 35px;
    height: 35px;
    background: url("../img/common/sp/gnavi_i006_sp.svg") no-repeat;
    background-size: cover;
}

@media screen and (max-width: 640px) {
    .ico-souvenir-sp::before {
        width: 25px;
        height: 25px;
    }
}

.ico-stay-sp::before {
    content: '';
    display: inline-block;
    width: 35px;
    height: 35px;
    background: url("../img/common/sp/gnavi_i007_sp.svg") no-repeat;
    background-size: cover;
}

@media screen and (max-width: 640px) {
    .ico-stay-sp::before {
        width: 25px;
        height: 25px;
    }
}

.ico-access-sp::before {
    content: '';
    display: inline-block;
    width: 35px;
    height: 35px;
    background: url("../img/common/sp/gnavi_i008_sp.svg") no-repeat;
    background-size: cover;
}

@media screen and (max-width: 640px) {
    .ico-access-sp::before {
        width: 25px;
        height: 25px;
    }
}

.ico-useful::before {
    content: url("../img/common/i_book.png");
}

.ico-useful-sp::before {
    content: '';
    display: inline-block;
    width: 35px;
    height: 35px;
    background: url("../img/common/sp/gnavi_i009_sp.svg") no-repeat;
    background-size: cover;
}

@media screen and (max-width: 640px) {
    .ico-useful-sp::before {
        width: 25px;
        height: 25px;
    }
}

.ico-link_list::before {
    content: url("../img/common/sp/gnavi_i010_sp.svg");
}

.ico-link_list-sp::before {
    content: '';
    display: inline-block;
    width: 35px;
    height: 35px;
    background: url("../img/common/sp/gnavi_i010_sp.svg") no-repeat;
    background-size: cover;
}

@media screen and (max-width: 640px) {
    .ico-link_list-sp::before {
        width: 25px;
        height: 25px;
    }
}

.ico-meguru::before {
    content: url("../img/common/i_meguru.png");
}

.ico-news::before {
    content: url("../img/common/i_news.png");
}

.ico-movie::before {
    content: url("../img/common/i_movie.png");
}

.ico-chushinbu::before {
    content: url("../img/common/i_chushinbu.png");
}

.ico-menu-close::before {
    content: url("../img/common/i_times_s.png");
}

.ico-menu-nagoya::before {
    content: url("../img/common/i_menu_nagoya.png");
}

.ico-menu-today::before {
    content: url("../img/common/i_menu_today.png");
}

.ico-menu-envoy::before {
    content: url("../img/common/i_menu_envoy.png");
}

.ico-menu-movie::before {
    content: url("../img/common/i_menu_movie.png");
}

.ico-menu-area::before {
    content: url("../img/common/i_menu_spot.png");
}

.ico-menu-feature::before {
    content: url("../img/common/i_menu_feature.png");
}

.ico-menu-event::before {
    content: url("../img/common/i_menu_event.png");
}

.ico-menu-spot::before {
    content: url("../img/common/i_menu_spot.png");
}

.ico-menu-tour::before {
    content: url("../img/common/i_menu_tour.png");
}

.ico-menu-course::before {
    content: url("../img/common/i_menu_course.png");
}

.ico-menu-gourmet::before {
    content: url("../img/common/i_menu_gourmet.png");
}

.ico-menu-gourmetdigest::before {
    content: url("../img/common/i_menu_gourmetdigest.png");
}

.ico-menu-souvenir::before {
    content: url("../img/common/i_menu_souvenir.png");
}

.ico-menu-souvenirdigest::before {
    content: url("../img/common/i_menu_souvenirdigest.png");
}

.ico-menu-souvenirarea::before {
    content: url("../img/common/i_menu_souvenirarea.png");
}

.ico-menu-stay::before {
    content: url("../img/common/i_menu_stay.png");
}

.ico-menu-access::before {
    content: url("../img/common/i_menu_access.png");
}

.ico-menu-accesscentrair::before {
    content: url("../img/common/i_menu_accesscentrair.png");
}

.ico-menu-accessnagoya::before {
    content: url("../img/common/i_menu_accessnagoya.png");
}

.ico-menu-accesstraffic::before {
    content: url("../img/common/i_menu_accesstraffic.png");
}

.ico-menu-usefulguide::before {
    content: url("../img/common/i_menu_usefulguide.png");
}

.ico-menu-usefulvolunteer::before {
    content: url("../img/common/i_menu_usefulvolunteer.png");
}

.ico-menu-usefulpamphlet::before {
    content: url("../img/common/i_menu_usefulpamphlet.png");
}

.ico-menu-usefulmeguru::before {
    content: url("../img/common/i_menu_usefulmeguru.png");
}

.ico-menu-usefulindustry::before {
    content: url("../img/common/i_menu_usefulindustry.png");
}

.ico-menu-usefulranking::before {
    content: url("../img/common/i_menu_usefulranking.png");
}

.ico-menu-usefulmanner::before {
    content: url("../img/common/i_menu_usefulmanner.png");
}

.ico-menu-usefulfaq::before {
    content: url("../img/common/i_menu_usefulfaq.png");
}

.ico-menu-usefulsns::before {
    content: url("../img/common/i_menu_usefulsns.png");
}

.ico-menu-usefulphoto::before {
    content: url("../img/common/i_menu_usefulphoto.png");
}

.inner-xl {
    max-width: 1710px;
    margin: 0 auto;
    padding: 0 15px;
}

@media screen and (max-width: 640px) {
    .inner-xl {
        padding: 0 3.125%;
    }
}

.inner-l {
    max-width: 1430px;
    margin: 0 auto;
    padding: 0 15px;
}

@media screen and (max-width: 640px) {
    .inner-l {
        padding: 0 3.125%;
    }
}

.inner {
    max-width: 1230px;
    margin: 0 auto;
    padding: 0 15px;
    line-height: initial;   /* 2026 追加 */
}

@media screen and (max-width: 640px) {
    .inner {
        padding: 0 3.125%;
    }
}

.inner-s {
    max-width: 1030px;
    margin: 0 auto;
    padding: 0 15px;
}

@media screen and (max-width: 640px) {
    .inner-s {
        padding: 0 3.125%;
    }
}

.inner-xs {
    max-width: 710px;
    margin: 0 auto;
    padding: 0 15px;
}

@media screen and (max-width: 640px) {
    .inner-xs {
        padding: 0 3.125%;
    }
}

@media screen and (max-width: 900px) {
    .inner-no-tab {
        padding: 0;
    }
}

/* 2026 .header 削除・追加 */
.header .popup .popup-heading {
    font-size: 1.857rem;  /* 26px */
}
.header .popup .popup-subheading {
    font-size: 1.5rem;  /* 21px */
}
.header .popup .popup-close {
    font-size: 1.142rem;  /* 16px */
}
.header .popup .popup-topics .topics-link a p {
    font-size: 1.071rem;  /* 15px */
}
.header .header-main .header-link > li.header-project .popup ul li a p {
    font-size: 1rem;  /* 14px */
}
.header .header-main .header-link > li.header-project .popup ul li a p .ico {
    width: 1em;
    vertical-align: initial;
}
.header .header-main .header-link > li.header-lang .popup ul li a {
    font-size: 1.142rem;  /* 16px */
}
.header .header-main .header-nav li a {
  font-size: 0.714rem;  /* 10px */
}
@media screen and (min-width: 1280px) {
  .header .header-main .header-nav li a {
    font-size: 0.928rem;    /* 13px */
  }
}
.header .header-main .header-nav li a .ico-photo {
  width: 0.928rem;    /* 13px */
}
.header .header-main .header-nav li a .ico-movie01 {
  width: 0.785rem;    /* 11px */
}
.header .header-main .header-nav li a .ico-pamphlet {
  width: 0.857rem;    /* 12px */
}
.header .header-main .header-nav li a .ico-access01 {
  width: 1.071rem;    /* 15px */
}
.header .header-main .header-link li a span, .header .header-main .header-link li .header-popup span {
  font-size: 0.714rem;  /* 10px */
}
@media screen and (min-width: 1280px) {
  .header .header-main .header-link li a span, .header .header-main .header-link li .header-popup span {
    font-size: 0.928rem;    /* 13px */
  }
}
.header .header-main .header-link li a .ico-ncvb, .header .header-main .header-link li .header-popup .ico-ncvb {
  width: 1.428rem;    /* 20px */
}
.header .header-main .header-link li a .ico-lang, .header .header-main .header-link li .header-popup .ico-lang {
  width: 1.214rem;    /* 17px */
}
.header .header-main .header-link li a .ico-project, .header .header-main .header-link li .header-popup .ico-project {
  width: 2.571rem;    /* 36px */
}
.header .header-main .header-search {
  width: 2.514rem;    /* 35.2px */
}
@media screen and (min-width: 768px) {
  .header .header-main .header-search {
    width: 3.857rem;    /* 54px */
  }
}
@media screen and (min-width: 1024px) {
  .header .header-main .header-search {
    width: 5.857rem;    /* 82px */
  }
}
.header .header-main .header-lang._sp {
  width: 2.571rem;    /* 36px */
  margin-right: .8em;
}
@media screen and (min-width: 768px) {
    .header .header-main .header-lang._sp {
        width: 3.714rem;  /* 52px */
        margin-right: 30px;
    }
}
.header .header-main .header-menu .header-menu-con .header-menu-txt::before {
  font-size: min(11px, 0.714rem);   /* 10px */
}
@media screen and (min-width: 768px) {
  .header .header-main .header-menu .header-menu-con .header-menu-txt::before {
    font-size: 0.785rem !important;    /* 11px */
  }
}
.header .gnav ul li {
  font-size: 1rem;  /* 14px */
}
.header .gnav ul li a, .header .gnav ul li .gnav-poptxt {
  font-size: 0.928rem;    /* 13px */
}
.header .gnav ul li a .ico, .header .gnav ul li .gnav-poptxt .ico {
  width: 1.142rem;    /* 16px */
}
.header .gnav ul li._nagoya .popup .popup-con ul li a p {
  font-size: 1.071rem;    /* 15px */
}
.header .gnav ul li._nagoya .popup .popup-con ul li a p .ico-arrow {
    width: 0.428rem;  /* 6px */
}
.header .gnav ul li._nagoya .popup .popup-con .popup-area .popup-area-con .popup-area-nav a {
    font-size: 1rem;  /* 14px */
}
.header .gnav ul li._nagoya .popup .popup-con .popup-area .popup-area-con .popup-area-nav dl dt {
    font-size: 1rem;  /* 14px */
}
.header .gnav ul li._modelcourse .popup ul li a p {
    font-size: 1rem;  /* 14px */
}
.header .gnav ul li._modelcourse .popup ul li a p .ico-arrow {
    width: 0.428rem;  /* 6px */
}
.header .gnav ul li._modelcourse .popup ul li a p .ico-link {
  width: 1.142rem;    /* 16px */
}
.header .gnav ul li._helpful .popup ul li a {
    min-height: 4.285rem;   /* 60px */
}
.header .gnav ul li._helpful .popup ul li a .ico-helpful01 {
  width: 1.571rem;    /* 22px */
}
.header .gnav ul li._helpful .popup ul li a .ico-helpful02 {
  width: 1.428rem;  /* 20px */
}
.header .gnav ul li._helpful .popup ul li a .ico-helpful03 {
  width: 1.071rem;    /* 15px */
}
.header .gnav ul li._helpful .popup ul li a .ico-helpful04 {
  width: 2.214rem;    /* 31px */
}
.header .gnav ul li._helpful .popup ul li a .ico-helpful05 {
  width: 1.428rem;  /* 20px */
}
.header .gnav ul li._helpful .popup ul li a .ico-helpful06 {
  width: 1.642rem;    /* 23px */
}
.header .gnav ul li._helpful .popup ul li a .ico-helpful07 {
  width: 1.214rem;    /* 17px */
}
.header .gnav ul li._helpful .popup ul li a .ico-helpful08 {
  width: 1.714rem;    /* 24px */
}
.header .gnav ul li._helpful .popup ul li a .ico-helpful09 {
  width: 2.071rem;    /* 29px */
}
.header .gnav ul li._helpful .popup ul li a .ico-helpful10 {
  width: 1.285rem;    /* 18px */
}
.header .gnav ul li._helpful .popup ul li a .ico-helpful11 {
  width: 1.714rem;    /* 24px */
}
.header .gnav ul li._helpful .popup ul li a .ico-helpful12 {
  width: 1.857rem;    /* 26px */
}
.header .gnav ul li._helpful .popup ul li a .ico-helpful13 {
  width: 1rem;  /* 14px */
}
.header .gnav ul li._helpful .popup ul li a .ico-helpful14 {
  width: 0.857rem;    /* 12px */
}
.header .gnav ul li._helpful .popup ul li a span {
    font-size: 1rem;  /* 14px */
}

.c-pagenav .pagenav-link li a span {
  font-size: 1.071rem;    /* 15px */
  vertical-align: initial;
}

.nav-spbottom .spbottom-in ul li a span {
  font-size: 0.785rem;    /* 11px */
}
.c-pagenav .pagenav-topics .topics-ttl {
  font-size: 1.142rem;    /* 16px */
}
.c-pagenav .pagenav-topics p {
  font-size: 1rem;  /* 14px */
}

.nav-menu .nav-lang .lang-heading .ico {
    width: 2.142rem;    /* 30px */
}
.nav-menu .nav-lang .lang-heading span {
    font-size: 1.285rem;    /* 18px */
}
@media screen and (min-width: 1024px) {
    .nav-menu .nav-lang .lang-heading span {
        font-size: 1.071rem;  /* 15px */
    }
}
.nav-menu .nav-lang ul li a {
    font-size: 0.857rem;    /* 12px */
}
@media screen and (min-width: 1024px) {
    .nav-menu .nav-lang ul li a {
        font-size: 1rem;    /* 14px */
    }
}
.nav-menu .nav-main ul li a p {
  font-size: 1rem;  /* 14px */
}
.nav-menu .nav-helpful .helpful-heading {
  font-size: 1.142rem;    /* 16px */
}
@media screen and (min-width: 1024px) {
    .nav-menu .nav-helpful .helpful-heading {
        font-size: 1rem;    /* 14px */
    }
}
.nav-menu .nav-helpful ul li a {
    column-gap: 1.428rem;    /* 20px */
}
.nav-menu .nav-helpful ul li a .ico {
    display: inline-flex;
    width: 1.428rem;    /* 20px */
}
@media screen and (min-width: 1024px) {
    .nav-menu .nav-helpful ul li a .ico {
        display: none;
    }
}
.nav-menu .nav-helpful ul li a .ico:before {
    width: 100% !important;
}
.nav-menu .nav-helpful ul li a .ico-helpful13 {
    width: 1rem;  /* 14px */
}
.nav-menu .nav-helpful ul li a .ico-helpful14 {
    width: 0.857rem;    /* 12px */
}
.nav-menu .nav-helpful ul li a span {
    font-size: 1.428rem;    /* 20px */
}
@media screen and (min-width: 1024px) {
    .nav-menu .nav-helpful ul li a {
        line-height: 1.85;
    }
    .nav-menu .nav-helpful ul li a span {
        font-size: 1rem;    /* 14px */
    }
}
.nav-menu .nav-project .project-heading .ico {
    width: 2.857rem;    /* 40px */
}
.nav-menu .nav-project .project-heading span {
    font-size: 2.142rem;    /* 30px */
}
@media screen and (min-width: 1024px) {
    .nav-menu .nav-project .project-heading span {
        font-size: 1.142rem;  /* 16px */
    }
}
.nav-menu .nav-project ul li p {
    font-size: 0.857rem;    /* 12px */
}
@media screen and (min-width: 1024px) {
    .nav-menu .nav-project ul li p {
        font-size: 1rem;    /* 14px */
    }
}
.nav-menu .nav-ncvb p a {
    column-gap: 0.714rem;   /* 10px */
}
.nav-menu .nav-ncvb p a .ico {
    width: 1.642rem;    /* 23px */
}
.nav-menu .nav-ncvb p a span {
    font-size: 1.428rem;    /* 20px */
}
@media screen and (min-width: 1024px) {
    .nav-menu .nav-ncvb p a span {
        font-size: 1.142rem;  /* 16px */
    }
}
.nav-menu .nav-close {
    font-size: 1.428rem;    /* 20px */
}

/* menu buttons for mobile device */
.header-menu-sp {
    display: none;
}
@media screen and (max-width: 900px) {
    .header-menu-sp {
        display: flex;
        align-items:center;
        height: 50px;
    }
}
.header-menu-sp-item {
    cursor: pointer;
    outline: none;
    width: 50px;
    height: 50px;
    background-repeat: no-repeat;
    background-position: 50%;
}
.header-menu-sp-item--search {
    background-image:url(../img/common/btn_search.svg);
    background-size: 21px;
}
.header-menu-sp-item--search.is-open {
    background-image:url(../img/common/btn_search_on.svg);
}
.header-menu-sp-item--lang {
    background-image:url(../img/common/btn_lang.svg);
    margin-right: 7px;
    background-size: 23px;
}
.header-menu-sp-item--lang.is-open {
    background-image:url(../img/common/btn_lang_on.svg);
}
.header-menu-sp-item--menu {
    position: relative;
    display: flex;
    align-items:center;
    justify-content: center;
    background-color: #a9894b;
    color: #fff;
}
.header-menu-sp-item--menu::after {
    content: 'menu';
    text-transform: uppercase;
    font-size: 10px;
    position: absolute;
    bottom: 5px;
}
.header-menu-sp-item--menu span {
    position: relative;
    width: 18px;
    height: 2px;
    background-color: #fff;
    transition: .5s;
    margin-top: -10px;
}
.header-menu-sp-item--menu.is-open span {
background-color: transparent;
}
.header-menu-sp-item--menu span::before,
.header-menu-sp-item--menu span::after {
    content: '';
    position: absolute;
    display: block;
    width: 18px;
    height: 2px;
    transition: .5s;
    background-color: #fff;
}
.header-menu-sp-item--menu span::before {
    top: -6px;
}
.header-menu-sp-item--menu span::after {
    bottom: -6px;
}
.header-menu-sp-item--menu.is-open span::before {
    transform: translateY(6px) rotate(-45deg);
}
.header-menu-sp-item--menu.is-open span::after {
    transform: translateY(-6px) rotate(45deg);
}
/* language menu for mobile device */
.header-menu-sp-lang-panel {
    display: none;
    position: absolute;
    left: 0;
    top: 50px;
    width: 100%;
    background-color: #F2EFE6;
}
.header-menu-sp-lang-panel ul {
    display: flex;
    flex-wrap:wrap;
}
.header-menu-sp-lang-panel li {
    width: 50%;
}
.header-menu-sp-lang-panel a {
    text-decoration: none;
    display: block;
    height: 37px;
    color: #A9894B;
    display: flex;
    align-items:center;
    padding-left: 30px;
}
.header-menu-sp-lang-panel li:nth-child(2) a,
.header-menu-sp-lang-panel li:nth-child(3) a,
.header-menu-sp-lang-panel li:nth-child(6) a,
.header-menu-sp-lang-panel li:nth-child(7) a {
    background-color: #A9894B;
    color: #F2EFE6;
}
.header-menu-sp-lang-panel .is-jp {
    background-image:url(../img/common/bg_check.png);
    background-position:20px 50%;
    background-repeat: no-repeat;
    background-size: 8px;
}
/* search menu for mobile device */
.header-menu-sp-search-panel {
    display: none;
    position: fixed;
    left: 0;
    width: 100%;
    background-color: #1D365F;
}
.header-menu-sp-search-panel-inner {
    overflow-y: auto;
}
.header-menu-sp-search-panel .menu-search {
    padding: 10px 10px 30px;
}
.header-menu-sp-search-panel .menu-search-con {
    background-color: #fff;
    padding: 10px;
}
.header-menu-sp-search-panel .search-area .search-ttl {
    margin-bottom: 20px;
    padding-bottom: 0;
    border-bottom: none;
}


.menu {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99;
    width: 100%;
    height: 100%;
    background-color: #fff;
}

.menu-in {
    overflow-y: auto;
}
.menu-in a {
    text-decoration: none;
}
.menu-search-list {
    display: flex;
    justify-content: space-between;
    padding: 20px 10px;
}
.menu-search-list li {
    width: 25%;
}
.menu-search-list a {
    text-decoration: none;
    color: #a9894b;
    display: flex;
    align-items:center;
    justify-content: flex-end;
    flex-direction: column;
    font-size: 10px;
    height: 100%;
}
.menu-search-list i::before {
    margin-bottom: 10px;
}
.menu-main {
    background-color: #f2efe6;
    padding: 15px;
}

.menu-main-box {
    margin-bottom: 15px;
    border: 1px solid #ccc;
    background-color: #fff;
}

.menu-main-ttl {
    position: relative;
    display: block;
    padding: 10px;
    cursor: pointer;
}

.menu-main-ttl strong {
    margin-left: 10px;
}

.menu-main-ttl p {
    position: absolute;
    top: 50%;
    right: 20px;
    margin-top: -10px;
}

.menu-main-ttl .ico-minus-sp {
    display: none;
}

.menu-main-box ul {
    display: none;
    margin: 0 20px 0 40px;
    padding-bottom: 10px;
    font-size: 0.92857rem;
}

.menu-main-box li {
    border-top: 1px solid #ccc;
}

.menu-main-box li a {
    display: block;
    padding: 15px;
}

.menu-main-box.js-open .menu-main-ttl .ico-minus-sp {
    display: inline-block;
}

.menu-main-box.js-open .menu-main-ttl .ico-plus-sp {
    display: none;
}

.menu-sns {
    display: flex;
    justify-content: space-around;
    padding: 20px 30px;
    background-color: #000;
}

/* .gnav 削除 */

.warning {
    padding: 10px 0;
    background-color: #d84040;
    color: #fff;
}

.warning .inner-l {
    display: flex;
    justify-content: space-between;
}

.warning dl {
    display: flex;
    flex: 1;
    width: 100%;
}

@media screen and (max-width: 640px) {
    .warning dl {
        flex-direction: column;
    }
}

.warning dl dt {
    margin-right: 30px;
    font-size: 1.07143rem;
    font-weight: bold;
}

.warning dl dt .ico {
    margin-right: 5px;
}

.warning dl dd a {
    color: #fff;
}

@media screen and (max-width: 640px) {
    .warning dl dd {
        margin-top: 10px;
        line-height: 1.2;
    }
}

.warning .warning-close {
    width: 24px;
    cursor: pointer;
}

.warning.warning-bus {
    background-color: #000;
}

.main {
    line-height: 1.5;
}

@media screen and (max-width: 900px) {
    .main {
        padding-top: 50px;
    }
}

.fnav {
    padding: 65px 0;
}

@media screen and (max-width: 900px) {
    .fnav {
        padding-bottom: 0;
        background-color: #ececec;
    }
}

@media screen and (max-width: 640px) {
    .fnav {
        padding-top: 60px;
    }
}

.fnav .ttl-subsec {
    margin-bottom: 30px;
    text-align: center;
}

@media screen and (max-width: 640px) {
    .fnav .ttl-subsec {
        text-align: left;
    }
}

@media screen and (max-width: 640px) {
    .fnav .nav-slider {
        position: absolute;
        right: 0;
        bottom: 0;
    }
}

.fnav .fnav-slider {
    position: relative;
    max-width: 1290px;
    margin: 0 auto;
}

@media screen and (max-width: 900px) {
    .fnav .fnav-slider {
        padding: 0 6.66667%;
    }
}

@media screen and (max-width: 640px) {
    .fnav .fnav-slider {
        padding: 0;
    }

    .fnav .fnav-slider .inner {
        padding: 0;
    }
}

.fnav .fnav-slider ul li {
    padding: 0 10px;
    text-align: center;
}

.fnav .fnav-slider ul li img {
    display: inline !important;
}

.fnav .fnav-slider .fnav-slider-prev {
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -15px;
}

.fnav .fnav-slider .fnav-slider-next {
    position: absolute;
    top: 50%;
    right: 0;
    margin-top: -15px;
}

.fnav-other {
    padding: 65px 0;
    background-color: #f4f3f1;
}

@media screen and (max-width: 900px) {
    .fnav-other {
        background-color: #ececec;
    }
}

@media screen and (max-width: 640px) {
    .fnav-other {
        padding-top: 60px;
        padding-bottom: 60px;
    }
}

.fnav-other .fnav-sponsor {
    position: relative;
    float: left;
    width: 82.85714%;
}

@media screen and (max-width: 900px) {
    .fnav-other .fnav-sponsor {
        float: none;
        width: 100%;
    }
}

.fnav-other .fnav-sponsor .fnav-sponsor-header {
    float: left;
    width: 15.51724%;
}

@media screen and (max-width: 900px) {
    .fnav-other .fnav-sponsor .fnav-sponsor-header {
        float: none;
        width: 100%;
        margin-bottom: 30px;
    }

    .fnav-other .fnav-sponsor .fnav-sponsor-header .ttl-subsec {
        float: left;
    }
}

.fnav-other .fnav-sponsor .fnav-sponsor-header p {
    position: absolute;
    left: 0;
    bottom: 20px;
}

@media screen and (max-width: 900px) {
    .fnav-other .fnav-sponsor .fnav-sponsor-header p {
        position: static;
        float: right;
    }
}

.fnav-other .fnav-sponsor ul {
    float: left;
    width: 84.48276%;
}

@media screen and (max-width: 900px) {
    .fnav-other .fnav-sponsor ul {
        float: none;
        width: 100%;
    }
}

.fnav-other .fnav-sponsor ul li {
    float: left;
    width: 18.36735%;
    margin: 0 2.04082% 2.04082% 0;
}

.fnav-other .fnav-sponsor ul li:nth-child(5n) {
    margin-right: 0;
}

@media screen and (max-width: 900px) {
    .fnav-other .fnav-sponsor ul li {
        width: 50%;
        margin-right: 0;
        padding: 0 10px;
    }

    .fnav-other .fnav-sponsor ul li img {
        width: 100%;
    }
}

@media screen and (max-width: 640px) {
    .fnav-other .fnav-sponsor {
        float: none;
        width: 100%;
    }
}

.fnav-other .fnav-ads {
    float: right;
    width: 14.28571%;
}

.fnav-other .fnav-ads p {
    margin-bottom: 5px;
}

@media screen and (max-width: 900px) {
    .fnav-other .fnav-ads {
        float: none;
        width: 100%;
        padding: 40px 10px 0;
    }
}

/* .footer 削除・追加 */
.footer-banner .banner-heading {
  font-size: 2.142rem;  /* 30px */
}
@media screen and (min-width: 768px) {
  .footer-banner .banner-heading {
    font-size: 2.428rem;  /* 34px */
  }
}
@media screen and (min-width: 768px) {
  .footer .footer-main .footer-ttl {
    font-size: 1.285rem;  /* 18px */
  }
}
.footer .footer-main .footer-address {
  font-size: 0.857rem;    /* 12px */
}
@media screen and (min-width: 768px) {
  .footer .footer-main .footer-address {
    font-size: 1.071rem;  /* 15px */
  }
}
.footer .footer-main .footer-nav ul li a {
  font-size: 1rem;    /* 14px */
}
@media screen and (min-width: 768px) {
  .footer .footer-main .footer-nav ul li a {
    font-size: 1.142rem;  /* 16px */
  }
}
.footer .footer-main .footer-link ul li a {
  font-size: 1rem;    /* 14px */
}
@media screen and (min-width: 768px) {
  .footer .footer-main .footer-link ul li a {
    font-size: 1.142rem;  /* 16px */
  }
}
.footer .copy {
  font-size: 0.714rem;    /* 10px */
}
@media screen and (min-width: 768px) {
  .footer .copy {
  font-size: 1rem;    /* 14px */
  }
}

.modalsearch-sec .modal-top .modal-ttl span {
    font-size: 1.428rem;    /* 20px */
}
.modalsearch-sec .modal-main .modal-box .modal-heading {
    font-size: 1.285rem;    /* 18px */
}
.modalsearch-sec .modal-top .modal-ttl .ico {
    width: 1.714rem;  /* 24px */
}
.modalsearch-sec .modal-main ._keyword .keyword-search .search-input {
    font-size: 1.142rem;    /* 16px */
}
.modalsearch-sec .modal-main ._keyword .keyword-search .search-btn {
    font-size: 1rem;    /* 14px */
}
.modalsearch-sec .modal-main ._genre .modal-item ul {
    font-size: 1.142rem;    /* 16px */
}


/* 2026 add */
.under-acc .under-acc-head-con .under-acc-head {
  padding-block: 1em;
}
@media screen and (min-width: 768px) {
  .under-acc .under-acc-head-con .under-acc-head {
    padding-block: 2.142em 1.428em;
  }
}
@media screen and (min-width: 768px) {
  .under-acc .under-acc-head-con .under-acc-head .under-acc-heading {
    font-size: 1.428rem;    /* 20px */
  }
}
.under-acc .under-acc-head-con .under-acc-head .under-acc-heading span {
  font-size: 4.285rem;  /* 60px */
}
@media screen and (min-width: 768px) {
    .under-acc .under-acc-head-con .under-acc-head .under-acc-heading span {
    font-size: 6.428rem;    /* 90px */
  }
}
.js-menuopen .header-menu .header-menu-txt:before {
  font-size: min(11px, 0.714rem)!important; /* 10px */
}
@media screen and (min-width: 768px) {
  .js-menuopen .header-menu .header-menu-txt:before {
    font-size: 0.857rem!important;    /* 12px */
  }
}



.searchmodal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10000;
    width: 100%;
    height: 100%;
}

.searchmodal .searchmodal-inner {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    align-items: start;
    justify-content: center;
    width: 100%;
    height: 100%;
    padding: 100px 0;
    background-color: rgba(41, 64, 103, 0.8);
    overflow-y: auto;
}

@media screen and (max-width: 900px) {
    .searchmodal .searchmodal-inner {
        padding: 60px 0;
    }
}

.searchmodal .searchmodal-bg {
    width: 100%;
    max-width: 1230px;
    padding: 0 15px;
}

.searchmodal .searchmodal-bg .searchmodal-head {
    position: relative;
    padding: 20px;
    background-color: #1d365f;
}

.searchmodal .searchmodal-bg .searchmodal-head p {
    color: #fff;
    font-size: 1.42857rem;
    font-weight: bold;
    text-align: center;
}

@media screen and (max-width: 640px) {
    .searchmodal .searchmodal-bg .searchmodal-head p {
        font-size: 1.14286rem;
    }
}

.searchmodal .searchmodal-bg .searchmodal-head p .ico {
    margin-right: 10px;
}

.searchmodal .searchmodal-bg .searchmodal-head .searchmodal-close {
    position: absolute;
    top: 50%;
    right: 20px;
    margin-top: -14px;
    cursor: pointer;
}

.searchmodal .searchmodal-bg .searchmodal-con {
    padding: 1px 4.16667% 55px;
    background-color: #fff;
}

.searchmodal-lead {
    font-size: 1.285714286rem;
    font-weight: bold;
    background-color: #1D365F;
    color: #fff;
    height: 65px;
    display: flex;
    align-items:center;
    justify-content: center;
    margin-top: 60px;
}
.error__menu .searchmodal-lead {
    height: 40px;
    margin-top: 30px;
}
@media screen and (max-width: 640px) {
    .searchmodal-lead {
        height: 40px;
        margin-top: 30px;
    }
}

.searchmodal-tab {
    display: flex;
    align-items:center;
    justify-content: space-between;
    flex-wrap:wrap;
    margin-bottom: 40px;
}
.searchmodal-tab li {
    width: calc(12.5% - 1px);
    height: 50px;
    padding: 0 5px;
    display: flex;
    align-items:center;
    justify-content: center;
    flex-wrap: wrap;
    text-align: center;
    color: #1d365f;
    font-weight: bold;
    font-size: 1.125rem;
    background-color: #D8D7D7;
    position: relative;
}
.error__menu .searchmodal-tab li {
    width: calc(50% - 1px);
    margin-bottom: 1px;
}
@media screen and (max-width: 640px) {
    .searchmodal-tab li {
        height: 30px;
        width: calc(50% - 1px);
        margin-bottom: 1px;
    }
}

.searchmodal-tab li.is-current {
    background-color: #1d365f;
    color: #fff;
}
.searchmodal-tab li.is-current::after {
    content:'';
    position: absolute;
    bottom: -12px;
    left: 0;
    right: 0;
    margin: auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 12px 8px 0 8px;
    border-color: #1d365f transparent transparent transparent;
}
.error__menu .searchmodal-tab li.is-current::after {
    display: none;
}
@media screen and (max-width: 640px) {
    .searchmodal-tab li.is-current::after {
        display: none;
    }
}
.searchmodal-btn {
    position: relative;
    cursor: pointer;
    background-image:url(../img/common/i_plus_w.png);
    background-repeat: no-repeat;
    background-position: 95% 50%;
}
.searchmodal-btn.is-open {
    background-image:url(../img/common/i_minus_w.png);

}
.searchmodal-area {
    border: solid  #D8D7D7;
    border-width: 0 1px 1px;
    padding: 40px 30px;
}
.allsearch-area .searchmodal-area {
    border-color: #AF9259;
}
.error__menu .searchmodal-area {
    border: none;
    padding: 10px 0 0;
}
@media screen and (max-width: 640px) {
    .searchmodal-area {
        border: none;
        padding: 10px 0 0;
    }
}
.searchmodal-area-panel {
    display: none;
}

.searchmodal .searchmodal-area .search-ttl {
    margin-bottom: 20px;
    padding-bottom: 0;
    border-bottom: none;
    font-size: 1.28571rem;
    font-weight: bold;
}

.searchmodal-area .search-submit {
    background-color: #000;
}

.js-searchopen {
    overflow: hidden;
}

.js-searchopen .searchmodal {
    display: block;
}





.topicpath {
    padding: 12px 0;
    background-color: #233046;
    color: #fff;
    font-size: 0.85714rem;
}

.topicpath a {
    color: #fff;
}

.topicpath li {
    display: inline-block;
    margin-right: 0.5em;
}

.topicpath li::after {
    content: '　＞';
}

.topicpath li:last-child::after {
    content: '';
}

@media screen and (max-width: 640px) {
    .topicpath {
        margin-top: 10px;
    }
}

/* .pagetop 削除 */

.box-mainslider {
    position: relative;
}

.box-mainslider .mainslider-slick img {
    width: 1200px;
    margin: 0 auto;
}

.box-mainslider .mainslider-thumb {
    margin-top: 10px;
}

.box-mainslider .mainslider-thumb li {
    padding: 0 8px;
}

.box-mainslider .mainslider-thumb li p {
    border: 2px solid #fff;
    background-color: #000;
}

.box-mainslider .mainslider-thumb li p img {
    opacity: 0.4;
}

.box-mainslider .mainslider-thumb .slick-current li p img {
    opacity: 1;
}

.box-mainslider .mainslider-thumb-inner {
    position: relative;
    margin: 0 auto;
    padding: 0 4.96%;
}

.box-mainslider .mainslider-thumb-arrow {
    position: absolute;
    /*top: 50%;*/
    width: 4.37%;
    margin-top: -2.185%;
}

.box-mainslider .mainslider-thumb-prev {
    left: 0;
}

.box-mainslider .mainslider-thumb-next {
    right: 0;
}

.box-spot-detail dt {
    float: left;
    font-weight: bold;
}

.box-spot-detail dt .ico {
    margin-right: 5px;
}

.box-spot-detail dd {
    margin: 0 0 12px 75px;
    line-height: 1.4;
}

.box-list li {
    padding: 0 15px;
}

.box-list li figure {
    margin-bottom: 15px;
}

.box-list li figure img {
    width: 100%;
}

.box-list li .ico {
    margin-right: 5px;
}

.box-icon {
    margin-bottom: 15px;
}

.box-icon span {
    display: inline-block;
    margin-right: 5px;
    padding: 5px 10px;
    background-color: #a9894b;
    color: #fff;
    font-weight: bold;
}

.box-icon span:last-child {
    margin-right: 0;
}

.box-icon .box-icon-guide {
    background-color: #73ad54;
}

.box-icon .box-icon-gourmet {
    background-color: #ef8c8c;
}

.box-icon .box-icon-exp {
    background-color: #ea8c59;
}

.box-tag {
    font-size: 0.92857rem;
}

.box-tag span,
.box-tag a {
    display: inline-block;
    margin: 0 5px 10px 0;
    padding: 3px 10px;
    border-radius: 1em;
    background-color: #d9cfbc;
    text-decoration: none;
}

.box-tour-data {
    margin-top: 20px;
    border-top: 1px solid #000;
}

.box-tour-data dt {
    padding: 15px 0 5px;
    font-size: 0.92857rem;
    font-weight: bold;
}

.box-tour-data dt .ico {
    margin-right: 5px;
}

.box-tour-data dd {
    line-height: 1.4;
}

@media screen and (max-width: 900px) {
    .box-btns {
        overflow-x: scroll;
        white-space: nowrap;
    }

    .box-btns::-webkit-scrollbar {
        height: 5px;
    }

    .box-btns::-webkit-scrollbar-track {
        background-color: #f1f1f1;
    }

    .box-btns::-webkit-scrollbar-thumb {
        background-color: #bcbcbc;
    }
}

.box-btns ul {
    display: flex;
    justify-content: space-between;
}

@media screen and (max-width: 900px) {
    .box-btns ul {
        display: block;
        padding-bottom: 20px;
    }
}

.box-btns li {
    width: 31.66667%;
}

.box-btns li big {
    font-size: 1.71429rem;
}

@media screen and (max-width: 640px) {
    .box-btns li big {
        font-size: 1.28571rem;
    }
}

@media screen and (max-width: 900px) {
    .box-btns li {
        display: inline-block;
        width: auto;
        min-width: 10em;
        margin-right: 0.5em;
        vertical-align: middle;
    }

    .box-btns li:last-child {
        margin-right: 0;
    }

    .box-btns li a {
        padding-left: 2em;
        padding-right: 2em;
    }
}

.box-youtube {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}

.box-youtube iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.box-back {
    text-align: center;
}

.box-back .btn-back {
    max-width: 600px;
}

.box-datepicker {
    display: inline-block;
    padding: 10px;
    border: 1px solid #ccc;
    background-color: #fff;
}

.box-datepicker input {
    border: none;
    outline: none;
}

.box-datepicker img {
    vertical-align: middle;
}

.pagettl-area {
    padding-top: 70px;
    padding-bottom: 40px;
}

.cmn-tab .cmn-tab-btn {
    cursor: pointer;
}

.cmn-switch {
    display: flex;
}

.cmn-switch li {
    width: 100%;
    padding: 0 1px;
}

.cmn-switch li:first-child span {
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
}

.cmn-switch li:last-child span {
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
}

.cmn-switch li span {
    display: block;
    padding: 10px 0;
    background-color: #876e3e;
    color: #fff;
    text-align: center;
    cursor: pointer;
}

.cmn-switch li.is-current span {
    background-color: #fff;
    color: #876e3e;
}

.cmn-fig-area {
    position: relative;
}
.cmn-fig-area-inner {
    position: relative;
    padding-top: 75%;
    /* width: 100%; */
}
.cmn-fig-area-inner img {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
}
.cmn-fig-area figcaption {
    position: absolute;
    top: 0;
    left: 0;
    min-width: 120px;
    padding: 3px 5px;
    background-color: #fff;
    color: #876e3e;
    text-align: center;
}

.cmn-fig-way {
    position: relative;
}

.cmn-fig-way figcaption {
    position: absolute;
    bottom: 0;
    right: 0;
    min-width: 120px;
    padding: 3px 5px;
    background-color: #a9894c;
    color: #fff;
    text-align: center;
}

.cmn-fig-zoom {
    position: relative;
}

.cmn-fig-zoom::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 50px;
    height: 50px;
    background: #000 url("../img/common/i_zoom_w.png") no-repeat center center;
}

.cmn-fig-zoom.is-right::before {
    left: initial;
    right: 0;
}

.submenu-list {
    background-color: #1d365f;
    line-height: 1.5;
}

.submenu-list li {
    position: relative;
    float: left;
    width: 50%;
    padding-top: 17.5%;
    color: #fff;
}

.submenu-list li:nth-child(1),
.submenu-list li:nth-child(4),
.submenu-list li:nth-child(5),
.submenu-list li:nth-child(8) {
    background-color: #172e53;
}

@media screen and (max-width: 640px) {
    .submenu-list li {
        padding-top: 32.8125%;
    }
}

.submenu-list li a {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    color: #fff;
    text-align: center;
    text-decoration: none;
}

.submenu-list li a figcaption {
    margin-top: 5px;
}

.submenu-list li a figcaption small {
    font-size: 0.7857rem;
}

.search-area {
    margin-bottom: 60px;
}
@media screen and (max-width: 640px) {
    .search-area {
        margin-bottom: 30px;
    }
}
.search-area .box-btns {
    margin-bottom: 55px;
}

.search-area .search-btn {
    position: relative;
    padding: 20px;
    background-color: #a9894b;
    color: #fff;
    font-size: 1.42857rem;
    font-weight: bold;
    text-align: center;
    cursor: pointer;
}

@media screen and (max-width: 640px) {
    .search-area .search-btn {
        font-size: 1.14286rem;
    }
}

.search-area .search-btn .ico-search-b,
.search-area .search-btn .ico-search-w {
    margin-right: 10px;
    line-height: 20px;
}

.search-area .search-btn p {
    position: absolute;
    top: 50%;
    right: 20px;
    margin-top: -15px;
    line-height: 1;
}

.search-area .search-btn p .ico {
    line-height: 20px;
}

.search-area .search-btn p .ico-minus-b,
.search-area .search-btn p .ico-minus-w {
    display: none;
}

.search-area.js-searchopen .search-btn .ico-plus-b,
.search-area.js-searchopen .search-btn .ico-plus-w {
    display: none;
}

.search-area.js-searchopen .search-btn .ico-minus-b,
.search-area.js-searchopen .search-btn .ico-minus-w {
    display: inline-block;
}

.search-area .search-con {
    display: none;
    padding: 50px;
    background-color: #f2efe6;
}

@media screen and (max-width: 640px) {
    .search-area .search-con {
        padding: 10px;
    }
}

.search-area .ttl-subsec {
    margin-bottom: 50px;
    text-align: center;
}

@media screen and (max-width: 640px) {
    .search-area .ttl-subsec {
        margin-bottom: 20px;
    }
}

.search-area .search-form {
    display: flex;
    margin-bottom: 50px;
}

@media screen and (max-width: 640px) {
    .search-area .search-form {
        margin-bottom: 30px;
    }
}

.search-area .search-form p {
    flex: 1;
    border: 1px solid #ccc;
    background-color: #fff;
}
.search-area .search-form p input {
    width: 100%;
    font-size: 16px;
    padding: 10px;
    border: none;
    outline: none;
}
input[type=text], input[type=password], input[type=tel], input[type=email], input[type=submit], input[type=button], textarea, select {
  font-size: 16px;
}
.search-area .search-form p input::-webkit-input-placeholder {
    color: #868686;
    font-size: 1.125rem;
}
.search-form-txt {
    border: 1px solid #ccc;
    background-color: #fff;
    height: 43px;
}
.search-form-submit {
    background-color: #000;
    color: #fff;
    font-size: 1.125rem;
    border: none;
    width: 90px;
  -webkit-appearance: none;
  cursor: pointer;
}
/* .search-form-submit::-webkit-search-decoration {
  display: none;
}
.search-form-submit::focus {
  outline-offset: -2px;
} */
.search-area .search-form button {
    width: 80px;
    padding: 10px;
    border: 1px solid #666;
    background-color: #000;
    text-align: center;
}

.search-area .search-box {
    padding-bottom: 35px;
}

.search-area .search-box-sub {
    padding-bottom: 15px;
}

.search-area .search-ttl {
    margin-bottom: 35px;
    padding-bottom: 15px;
    border-bottom: 3px solid #a9894b;
    font-size: 1.28571rem;
    font-weight: bold;
}

@media screen and (max-width: 640px) {
    .search-area .search-ttl {
        margin-bottom: 20px;
    }
}

.search-area .search-ttl-sub {
    margin-bottom: 20px;
    font-size: 1.14286rem;
    font-weight: bold;
}

.search-area .search-sel label, .cf-btn {
    display: inline-block;
    margin: 0 10px 1em 0;
    padding: 0.5em 10px;
    border: 1px solid #bababa;
    border-radius: 5px;
    background-color: #fff;
}

.search-area .search-sel label.is-active {
    background-color: #e7d9bf;
}

.cf-btn.is-tactive {
    background-color: #e7d9bf;
}

.cf-btn.is-kactive {
    background-color: #e7d9bf;
}

.search-area .search-sel label input {
    display: none;
}

.search-area .search-sel .search-area-chushin {
    padding: 2.1em 10px;
}

@media screen and (max-width: 900px) {
    .search-area .search-sel .search-area-chushin {
        width: 100%;
        margin-right: 0;
        padding: 0.5em 10px;
        text-align: center;
    }
}
.search-wrap {
    display: flex;
    align-items:center;
    justify-content:space-between;
}
@media screen and (max-width: 640px) {
    .search-wrap {
        display: block;
    }
}
.search-calendar {
    background-color: #000;
    color: #fff;
    padding: 10px;
    cursor: pointer;
    background-image: url(../img/common/i_search_w.png);
    background-repeat: no-repeat;
    background-position: 10px 50%;
    padding-left: 40px;
    white-space: nowrap;
    transition:.5s;
    text-decoration: none;
    display: block;
}
.search-calendar:hover {
    opacity: .7;
}
@media screen and (max-width: 640px) {
    .search-calendar {
        width: 100%;
        margin-top: 30px;
    }
}
.search-area .search-term span {
    margin: 0 1em;
    color: #ccc;
}

.search-area .search-local {
    display: flex;
}

@media screen and (max-width: 900px) {
    .search-area .search-local {
        display: block;
    }
}

.search-area .search-local .search-sel {
    width: 440px;
}

@media screen and (max-width: 900px) {
    .search-area .search-local .search-sel {
        width: 100%;
    }
}

.search-area .search-local .search-sel .search-area-chushin {
    float: left;
}

@media screen and (max-width: 900px) {
    .search-area .search-local .search-sel .search-area-chushin {
        float: none;
    }
}

.search-area .search-local .search-areamap {
    text-align: right;
}

.search-area .search-local-gourmet .search-local-gourmet-chushin {
    float: left;
    display: flex;
    margin-bottom: 10px;
    padding: 10px;
    background-color: #e6e2e2;
}

@media screen and (max-width: 900px) {
    .search-area .search-local-gourmet .search-local-gourmet-chushin {
        flex-wrap: wrap;
    }
}

.search-area .search-local-gourmet .search-local-gourmet-chushin label {
    margin: 0;
}

.search-area .search-local-gourmet .search-local-gourmet-chushin .search-area-chushin {
    padding: 1.6em 10px;
}

.search-area .search-local-gourmet .search-local-gourmet-chushin div {
    padding: 0 10px;
    border-right: 1px solid #666464;
}

.search-area .search-local-gourmet .search-local-gourmet-chushin div:last-child {
    padding-right: 0;
    border-right: none;
}

@media screen and (max-width: 900px) {
    .search-area .search-local-gourmet .search-local-gourmet-chushin div {
        width: 50%;
        margin-top: 10px;
    }

    .search-area .search-local-gourmet .search-local-gourmet-chushin div:nth-child(even) {
        padding-left: 0;
    }

    .search-area .search-local-gourmet .search-local-gourmet-chushin div:nth-child(odd) {
        padding-right: 0;
        border-right: none;
    }

    .search-area .search-local-gourmet .search-local-gourmet-chushin div label {
        margin-right: 10px;
    }
}

.search-area .search-local-gourmet .search-local-gourmet-chushin div a {
    display: block;
    margin-top: 10px;
    text-align: center;
}

@media screen and (max-width: 900px) {
    .search-area .search-local-gourmet .search-local-gourmet-chushin div a {
        display: inline-block;
    }
}

.search-area .search-areamap {
    flex: 1;
}

@media screen and (max-width: 900px) {
    .search-area .search-areamap {
        text-align: center;
    }
}

.search-area .search-areamap span {
    display: none;
    width: 250px;
    padding: 10px;
    background-color: #000;
    color: #fff;
    font-size: 1.28571rem;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
}

@media screen and (max-width: 900px) {
    .search-area .search-areamap span {
        display: inline-block;
        width: 100%;
        max-width: 600px;
    }
}

.search-area .search-areamap span .ico {
    margin-right: 10px;
}

@media screen and (max-width: 900px) {

    .search-area .search-areamap p,
    .search-area .search-areamap figure {
        display: none;
        margin-top: 10px;
    }
}

.search-area .search-areamap figcaption {
    margin-top: 10px;
}

@media screen and (max-width: 900px) {

    .search-area .search-areamap.js-areamapopen p,
    .search-area .search-areamap.js-areamapopen figure {
        display: block;
    }
}

.search-area .search-ctrl {
    display: flex;
    max-width: 420px;
    margin: 30px auto 0;
}

.search-area .search-ctrl p {
    width: 50%;
}

.search-area .search-ctrl p:first-child {
    padding-right: 10px;
}

.search-area .search-ctrl p:last-child {
    padding-left: 10px;
}

.search-area .search-ctrl p button {
    display: block;
    width: 100%;
    padding: 15px 0;
    color: #fff;
    font-size: 1.71429rem;
    letter-spacing: 3px;
}

@media screen and (max-width: 640px) {
    .search-area .search-ctrl p button {
        font-size: 1.28571rem;
    }
}

.search-area .search-ctrl p button.search-reset {
    background-color: #666;
}

.search-area .search-ctrl p button.search-submit {
    background-color: #a9894b;
}

.search-area .search-ctrl p button.search-submit .ico {
    margin-right: 10px;
    line-height: 1;
}

.box-calendar {
    opacity: 0;
    height: 0;
    z-index: -1;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgb(0, 0, 0,.7);
    display: flex;
    align-items:center;
    justify-content: center;
    transition: .5s;
}
.box-calendar.is-open {
    opacity: 1;
    z-index: 100;
}
.box-calendar-inner {
    background-color: #fff;
    width: 95%;
    max-width: 1280px;
    padding: 30px;
}
.calendar-close {
    color: #fff;
    background-color: #000;
    padding: 10px;
    margin: 30px auto;
    display: block;
    cursor: pointer;
    width: 10em;
    text-align: center;
}
.box-calendar .calendar-ttl {
    margin-bottom: 20px;
    font-size: 1.71429rem;
    text-align: center;
}

.box-calendar .calendar-ttl .ico {
    margin-right: 10px;
}

.box-calendar .calendar-slider {
    position: relative;
}

.box-calendar .calendar-slider ul {
    max-width: 1280px;
    margin: 0 auto;
}

.box-calendar .calendar-slider ul li {
    padding: 0 10px;
}

.box-calendar .calendar-slider .calendar-month {
    margin-bottom: 10px;
    font-size: 1.14286rem;
    text-align: center;
}

.box-calendar .calendar-slider .calendar-month big {
    font-size: 1.71429rem;
}

.box-calendar .calendar-slider .calendar-month span {
    font-size: 1.28571rem;
}

.box-calendar .calendar-slider table {
    width: 100%;
    max-width: 350px;
    margin: 0 auto;
}

.box-calendar .calendar-slider table th {
    padding: 3px;
    border: 2px solid #fff;
    text-align: center;
}

.box-calendar .calendar-slider table td {
    padding: 10px 3px;
    border: 2px solid #fff;
    background-color: #f6f6f6;
    text-align: center;
}

.box-calendar .calendar-slider table td.sun {
    background-color: #f3dbd8;
}

.box-calendar .calendar-slider table td.pholiday {
    background-color: #f3dbd8;
}

.box-calendar .calendar-slider table td.null {
    background-color: #e4e4e4;
    color: #aaaaaa;
}

.box-calendar .calendar-slider table td a {
    display: block;
    margin-top: 3px;
}

.box-calendar .calendar-slider .calendar-btn {
    position: absolute;
    top: 10px;
}

.box-calendar .calendar-slider .calendar-btn.calendar-prev {
    left: 20%;
}

.box-calendar .calendar-slider .calendar-btn.calendar-next {
    right: 20%;
}

.searchresult-area {
    padding: 100px 0;
    background-color: #f4f3f1;
}

@media screen and (max-width: 640px) {
    .searchresult-area {
        padding: 60px 0;
    }
}

.searchresult-area .searchresult-ttl {
    margin-bottom: 30px;
    padding-bottom: 35px;
    border-bottom: 2px solid #a9894b;
    font-size: 1.71429rem;
    text-align: center;
}

@media screen and (max-width: 640px) {
    .searchresult-area .searchresult-ttl {
        font-size: 1.28571rem;
    }
}

.searchresult-area .searchresult-month {
    width: 100%;
    max-width: 520px;
    margin: 0 auto 10px;
    display: flex;
    align-items:center;
    justify-content:space-between;
}
.searchresult-area .searchresult-month .searchresult-month-ttl {
    font-size: 2rem;
}
@media screen and (max-width: 640px) {
    .searchresult-area .searchresult-month .searchresult-month-ttl {
        font-size: 1.42857rem;
    }
}
.searchresult-month-link {
    font-size: 1.42857rem;
    background-color: #000;
    color: #fff;
    text-decoration: none;
    display: flex;
    align-items:center;
    justify-content: center;
    padding: 0 10px;
}
@media screen and (max-width: 640px) {
    .searchresult-month-link {
        font-size: 1.14286rem;
    }
}
.searchresult-month-link--prev::before,
.searchresult-month-link--next::after {
    content: '';
    width: 10px;
    height: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
}
@media screen and (max-width: 640px) {
    .searchresult-month-link--prev::before,
    .searchresult-month-link--next::after {
        content: '';
        width: 8px;
        height: 8px;
    }
}
.searchresult-month-link--prev::before {
    transform: rotate(-135deg);
    margin-right: 5px;
}
.searchresult-month-link--next::after {
    transform: rotate(45deg);
    margin-left: 5px;
}

.searchresult-area .searchresult-num {
    float: left;
    margin-bottom: 35px;
    font-size: 1.28571rem;
}

.searchresult-area .searchresult-num big {
    font-size: 2.14286rem;
}

@media screen and (max-width: 640px) {
    .searchresult-area .searchresult-num big {
        font-size: 1.71429rem;
    }
}

.searchresult-area .searchresult-btn {
    float: right;
}

.searchresult-area .searchresult-btn li {
    float: left;
    width: 40px;
    height: 40px;
    margin-left: 10px;
    text-indent: -9999px;
    cursor: pointer;
}

.searchresult-area .searchresult-btn li.searchresult-btn-list {
    background: #fff url("../img/common/i_list.png") no-repeat center center;
}

.searchresult-area .searchresult-btn li.searchresult-btn-list.is-current {
    background-color: #000;
    background-image: url("../img/common/i_list_on.png");
}

.searchresult-area .searchresult-btn li.searchresult-btn-grid {
    background: #fff url("../img/common/i_grid.png") no-repeat center center;
}

.searchresult-area .searchresult-btn li.searchresult-btn-grid.is-current {
    background-color: #000;
    background-image: url("../img/common/i_grid_on.png");
}

.searchresult-area .searchresult-category {
    margin-bottom: 25px;
    padding: 25px 30px 10px;
    background-color: #fff;
}

@media screen and (max-width: 640px) {
    .searchresult-area .searchresult-category {
        padding-left: 20px;
        padding-right: 20px;
    }
}

.searchresult-area .searchresult-category .searchresult-category-ttl {
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 3px solid #a9894b;
    font-size: 1.28571rem;
}

@media screen and (max-width: 640px) {
    .searchresult-area .searchresult-category .searchresult-category-ttl {
        font-size: 1.14286rem;
    }
}

.searchresult-area .searchresult-category .searchresult-category-sel {
    font-size: 1.14286rem;
}

@media screen and (max-width: 640px) {
    .searchresult-area .searchresult-category .searchresult-category-sel {
        font-size: 1rem;
    }
}

.searchresult-area .searchresult-category .searchresult-category-sel label {
    display: inline-block;
    margin: 0 50px 15px 0;
}

@media screen and (max-width: 640px) {
    .searchresult-area .searchresult-category .searchresult-category-sel label {
        margin-right: 1em;
    }
}

.searchresult-area .searchresult-category .searchresult-category-sel label input {
    margin-right: 5px;
}
.searchresult-pagerwrap {
    display: flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom: 25px;
}
@media screen and (max-width: 640px) {
    .searchresult-pagerwrap {
        display: block;
    }
    .searchresult-pagerwrap .box-pagination {
        margin-top: 20px;
    }
}
.searchresult-area .searchresult-except {
    font-size: 1.14286rem;
}

@media screen and (max-width: 640px) {
    .searchresult-area .searchresult-except {
        font-size: 1rem;
    }
}

.searchresult-area .searchresult-list {
    display: flex;
    flex-wrap: wrap;
    padding-bottom: 60px;
    margin: 0 auto;
    max-width: 1000px;
}
.courseresult-area .searchresult-list.js-listgrid {
    max-width:100%;
}
.searchresult-area .searchresult-list .searchresult-item {
    width: 48.33333%;
    margin: 0 3.33333% 3.33333% 0;
    padding: 15px 20px;
    background-color: #fff;
    box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.3);
}

@media screen and (max-width: 900px) {
    .searchresult-area .searchresult-list .searchresult-item {
        width: 100%;
        margin-right: 0;
    }
}

.searchresult-area .searchresult-list .searchresult-item:nth-child(even) {
    margin-right: 0;
}

.searchresult-area .searchresult-list .searchresult-item .searchresult-box {
    display: flex;
    text-decoration: none;
}

@media screen and (max-width: 640px) {
    .searchresult-area .searchresult-list .searchresult-item .searchresult-box {
        display: block;
        width: 100%;
    }
}

.searchresult-area .searchresult-list .searchresult-item figure {
    /* width: 43.10345%; */
    width: auto;
}

@media screen and (max-width: 640px) {
    .searchresult-area .searchresult-list .searchresult-item figure {
        display: inline-block;
        width: 43.10345%;
    }
}

.searchresult-area .searchresult-list .searchresult-item .searchresult-con {
    width: 56.89655%;
    padding-left: 20px;
}

@media screen and (max-width: 640px) {
    .searchresult-area .searchresult-list .searchresult-item .searchresult-con {
        width: 55%;
        padding-left: 5%;
        display: inline-block;
        vertical-align: top;
    }
}

.searchresult-area .searchresult-list .searchresult-item .searchresult-row {
    display: flex;
    justify-content: space-between;
}

@media screen and (max-width: 640px) {
    .searchresult-area .searchresult-list .searchresult-item .searchresult-row {
        flex-direction: column;
    }
}

.searchresult-area .searchresult-list .searchresult-item .searchresult-price {
    color: #c00;
    font-size: 1.28571rem;
    font-weight: bold;
    text-align: right;
}

.searchresult-area .searchresult-list .searchresult-item .searchresult-date {
    margin-bottom: 5px;
    color: #666;
    font-size: 1.14286rem;
    font-weight: bold;
}

.searchresult-area .searchresult-list .searchresult-item .searchresult-name {
    margin-bottom: 10px;
    font-size: 1.14286rem;
    font-weight: bold;
}

.searchresult-area .searchresult-list .searchresult-item .searchresult-copy {
    margin-bottom: 10px;
    font-size: 1.14286rem;
    font-weight: bold;
}

.searchresult-area .searchresult-list .searchresult-item .searchresult-txt span {
    margin-left: 1em;
    text-decoration: underline;
}

.searchresult-area .searchresult-list .searchresult-item .searchresult-info {
    margin-top: 15px;
}

.searchresult-area .searchresult-list .searchresult-item .searchresult-info span {
    display: inline-block;
    margin-right: 1em;
}

.searchresult-area .searchresult-list .searchresult-item .searchresult-info span:last-child {
    margin-right: 0;
}

.searchresult-area .searchresult-list .searchresult-item .searchresult-info span .ico {
    margin-right: 5px;
}

.searchresult-area .searchresult-list .searchresult-item .searchresult-data {
    margin-top: 15px;
}

.searchresult-area .searchresult-list .searchresult-item .searchresult-end {
    margin-top: 5px;
    color: #e80000;
}

.searchresult-area .searchresult-list .searchresult-item .box-tag {
    margin-top: 15px;
}

.searchresult-area .searchresult-list .searchresult-item.is-pr {
    position: relative;
    padding-bottom: 1em !important;
    background-color: #ffdfd4;
}

.searchresult-area .searchresult-list .searchresult-item.is-pr::after {
    content: 'PR';
    position: absolute;
    bottom: 0;
    right: 0;
    width: 3em;
    background-color: #000;
    color: #fff;
    text-align: center;
}

.searchresult-area .searchresult-list.js-listgrid .searchresult-item {
    width: 31.66667%;
    margin-right: 2.5%;
    padding: 10px;
}

.searchresult-area .searchresult-list.js-listgrid .searchresult-item:nth-child(3n) {
    margin-right: 0;
}

@media screen and (max-width: 900px) {
    .searchresult-area .searchresult-list.js-listgrid .searchresult-item {
        width: 48.75%;
    }

    .searchresult-area .searchresult-list.js-listgrid .searchresult-item:nth-child(odd) {
        margin-right: 2.5%;
    }

    .searchresult-area .searchresult-list.js-listgrid .searchresult-item:nth-child(even) {
        margin-right: 0
    }
}

.searchresult-area .searchresult-list.js-listgrid .searchresult-item .searchresult-box {
    display: block;
    text-decoration: none;
}

.searchresult-area .searchresult-list.js-listgrid .searchresult-item figure {
    width: 100%;
    text-align: center;
}

.searchresult-area .searchresult-list.js-listgrid .searchresult-item .searchresult-con {
    width: 100%;
    padding: 20px 10px 10px;
}

@media screen and (max-width: 640px) {
    .searchresult-area .searchresult-list.js-listgrid .searchresult-item .searchresult-con {
        padding: 0;
    }
}

.searchresult-area .searchresult-list.js-listgrid .searchresult-item .searchresult-txt {
    display: none;
}

.searchresult-area .searchresult-list.js-listgrid .searchresult-item .searchresult-data {
    display: none;
}

.searchresult-area .searchresult-list.js-listgrid .searchresult-item .searchresult-info {
    display: none;
}

.searchresult-area .searchresult-list.js-listgrid .searchresult-item .box-tag {
    padding: 0 10px;
}

@media screen and (max-width: 640px) {
    .searchresult-area .searchresult-list.js-listgrid .searchresult-item .box-tag {
        display: none;
    }
}

.box-pagination {
    text-align: center;
}

.box-pagination li {
    display: inline-block;
    margin-right: 10px;
}

@media screen and (max-width: 640px) {
    .box-pagination li {
        width: 17%;
        margin: 0 0 6% 0;
    }
}

.box-pagination li:last-child {
    margin-right: 0;
}

.box-pagination li a,
.box-pagination li span {
    display: inline-block;
    min-width: 30px;
    padding: 3px 5px;
    background-color: #000;
    color: #fff;
    text-align: center;
    text-decoration: none;
}

@media screen and (max-width: 640px) {

    .box-pagination li a,
    .box-pagination li span {
        padding: 15%;
        min-width: 65%;
    }
}

.box-pagination li a.is-current,
.box-pagination li span.is-current {
    background-color: #a9894b;
}

.related-area {
    padding: 100px 0;
}

@media screen and (max-width: 640px) {
    .related-area {
        padding: 60px 0;
    }
}

.related-area .related-nav {
    display: flex;
    justify-content: flex-end;
    width: 100%;
    margin-bottom: 40px;
}

.related-area .related-nav li {
    min-width: 130px;
    padding: 10px;
    border: 1px solid #000;
    font-size: 1.14286rem;
    text-align: center;
}

.related-area .related-nav li.is-current {
    background-color: #000;
    color: #fff;
}

@media screen and (max-width: 640px) {
    .related-area .related-nav li {
        font-size: 1rem;
    }
}

.related-area .btn-arrow {
    max-width: 600px;
}

.related-list {
    margin-bottom: 40px;
}

.related-list .related-item {
    float: left;
    width: 23.5%;
    margin: 0 2% 2.85714% 0;
    background-color: #fff;
    box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.3);
    padding: 10px;
}

.related-list .related-item:nth-child(4n) {
    margin-right: 0;
}

@media screen and (max-width: 900px) {
    .related-list .related-item {
        width: 47.5%;
        margin-right: 0;
    }

    .related-list .related-item:nth-child(even) {
        float: right;
    }
}

@media screen and (max-width: 640px) {
    .related-list .related-item {
        width: 100%;
    }

    .related-list .related-item img {
        width: 100%;
    }
}

.related-list .related-item a {
    text-decoration: none;
}

.related-list .related-item figure {
    margin-bottom: 10px;
    text-align: center;
    padding-top: 75%;
    position: relative;
}

.related-list .related-item figure img {
    display: block;
    -o-object-fit: cover;
    object-fit: cover;
    height: 100%;
    position: absolute;
    top: 0;
}

.related-list .related-item .box-tag {
    margin-top: 25px;
}

.related-list .related-item .box-icon span {
    min-width: 120px;
    font-size: 0.92857rem;
    text-align: center;
}

/* スポット詳細関連 */
.spotname .spotname-txt {
    position: relative;
    padding-left: 45px;
}

/*
.spotname .spotname-txt::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 43px;
    height: 53px;
    background: url("../img/spot/i_flag.png") no-repeat center center;
    background-size: cover;
}
*/

.spotname .spotname-txt.is-souvenir::before {
    height: 54px;
    background: url("../img/common/i_souvenir.png") no-repeat center center;
}

/* @media screen and (max-width: 640px) {
    .spotname .spotname-txt {
        float: none;
    }
} */

.spotname .spotname-txt p {
    font-size: 90%;
}

.spotname .spotname-txt .spotname-ttl {
    font-size: 2rem;
}

@media screen and (max-width: 640px) {
    .spotname .spotname-txt .spotname-ttl {
        font-size: 1.42857rem;
    }
}

.spotname .detail-link {
    margin-top: 20px;
}

@media screen and (max-width: 640px) {
    .spotname .detail-link {
        margin-top: 10px;
    }
}

.detail-link {
    float: right;
}

.detail-link li {
    display: inline-block;
    margin-left: 15px;
}

.spotslider .slick-slider {
    margin-bottom: 70px;
}
.spotslider .slick-slide li {
    padding: 0 1px;
    position: relative;
}
.spotslider .slick-slide .fig {
    position: relative;
}

.spotslider .slick-slide li::after {
    content:'';
    padding-top: 75%;
    display: block;
    width: 100%;
    height: 100%;
    background-color: #eee;
}
.spotslider .slick-slider li figcaption { margin-top: 3px; padding-right: 5px; font-size: 0.8571428571rem; text-align: right; }

.common_cap.spotslider .slick-slide li::after {
    content: none;
}
.common_cap.spotslider .slick-slide .fig::after {
    content:'';
    padding-top: 75%;
    display: block;
    width: 100%;
    height: 100%;
    background-color: #eee;
}
.common_cap.spotslider .slick-slider .cap { margin-top: 3px; padding-right: 5px; font-size: 0.8571428571rem; text-align: right; }

.spotslider .slick-slide li img {
    position: absolute;
    top: 0;
    height: 100%;
}

.spotslider .slick-dots {
    bottom: 30px;
}

.spotlnav {
    display: flex;
    margin-bottom: 50px;
}

@media screen and (max-width: 900px) {
    .spotlnav {
        flex-wrap: wrap;
    }
}

.spotlnav li {
    flex: 1;
    background-color: #a9894b;
    border-right: 1px solid #fff;
}

@media screen and (max-width: 900px) {
    .spotlnav li {
        flex: 0 0 auto;
        width: 50%;
        border-bottom: 1px solid #fff;
    }
}

.spotlnav li a,
.spotlnav li span {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 70px;
    border: none;
    line-height: 1.4;
}

@media screen and (max-width: 640px) {

    .spotlnav li a,
    .spotlnav li span {
        height: 80px;
    }
}

.spotlnav li a .ico,
.spotlnav li span .ico {
    margin-right: 10px;
}

.spotlnav li.is-current {
    background-color: #fff;
}

.spotlnav li.is-current a,
.spotlnav li.is-current span {
    border: 1px solid #a9894b;
    color: #000;
}

.spotlnav li.is-current .btn-arrow-b::after {
    background-image: url("../img/common/i_arrows_b_b.png");
}

.spotcopy {
    margin-bottom: 30px;
}

.spotcopy .spotcopy-ttl {
    margin-bottom: 20px;
    font-size: 1.57143rem;
}

@media screen and (max-width: 640px) {
    .spotcopy .spotcopy-ttl {
        font-size: 1.28571rem;
    }
}

.spotcopy p {
    line-height: 2;
}

.spotcheck {
    margin-bottom: 90px;
    border: 3px solid #233046;
}

.spotcheck .spotcheck-ttl {
    padding: 12px 0 12px 35px;
    background-color: #233046;
    color: #fff;
    font-size: 1.42857rem;
}

.spotcheck ul {
    padding: 30px 35px 0;
    font-size: 1.14286rem;
}

.spotcheck ul li {
    margin-bottom: 30px;
    padding-left: 36px;
    text-indent: -36px;
}

.spotcheck ul li::before {
    content: url("../img/spot/i_check.png");
    display: inline;
    margin-right: 10px;
    vertical-align: middle;
}

.spotphoto {
    margin-bottom: 60px;
}

.spotphoto .spotphoto-ttl {
    margin: 65px 0 20px;
    font-size: 1.57143rem;
}

.spotphoto .spotphoto-lead {
    margin-bottom: 65px;
}

.spotphoto figure {
    text-align: center;
}

.spotphoto figcaption {
    margin-top: 10px;
    text-align: center;
}

.spotevent .spotevent-inner {
    display: flex;
    max-width: 1100px;
    margin: 0 auto;
}

@media screen and (max-width: 900px) {
    .spotevent .spotevent-inner {
        display: block;
    }
}

.spotevent .spotevent-inner figure {
    width: 36.36364%;
    padding-top: 30px;
}

@media screen and (max-width: 900px) {
    .spotevent .spotevent-inner figure {
        width: 100%;
        padding-top: 0;
        text-align: center;
    }
}

.spotevent .spotevent-inner .spotevent-con {
    width: 63.63636%;
    padding: 0 50px;
}

@media screen and (max-width: 900px) {
    .spotevent .spotevent-inner .spotevent-con {
        width: 100%;
        margin-top: 30px;
        padding: 0;
    }
}

.spotevent .spotevent-inner .spotevent-ttl {
    margin-bottom: 20px;
    font-size: 1.57143rem;
}

.spotevent .spotevent-inner dt {
    margin-bottom: 20px;
    font-size: 1.28571rem;
    font-weight: bold;
    font-size: 1.57143rem;
}

.spotevent .spotevent-inner dd {
    margin-bottom: 30px;
}

.spotdetail table {
    width: 100%;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}

.spotdetail table th {
    width: 19.16667%;
    padding: 25px 0 25px 30px;
    text-align: left;
}

@media screen and (max-width: 640px) {
    .spotdetail table th {
        display: block;
        width: 100%;
        padding: 15px;
        background-color: #f2efe6;
    }
}

.spotdetail table td {
    padding: 25px 30px 25px 0;
}

@media screen and (max-width: 640px) {
    .spotdetail table td {
        display: block;
        padding: 15px;
        /* width: 100%; */
    }
}

.spotdetail table tr:nth-child(odd) {
    background-color: #f2efe6;
}

@media screen and (max-width: 640px) {
    .spotdetail table tr:nth-child(odd) {
        background-color: #fff;
    }
}

.spotmap .spotmap-map {
    position: relative;
    width: 100%;
    padding-top: 500px;
}

@media screen and (max-width: 1800px) {
    .spotmap .spotmap-map {
        padding-top: 33.33333%;
    }
}

@media screen and (max-width: 640px) {
    .spotmap .spotmap-map {
        padding-top: 78.125%;
    }
}

.spotmap .spotmap-map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.spotlink ul {
    padding-left: 30px;
}

.spotlink ul li {
    margin-bottom: 30px;
}

.spotlink ul li:last-child {
    margin-bottom: 0;
}

.spotlink ul li::before {
    content: url("../img/common/i_link.png");
    display: inline-block;
    margin-right: 10px;
    vertical-align: middle;
}

.spotkeyword li {
    display: inline-block;
    margin-right: 10px;
    padding: 5px 10px;
    background-color: #e6d9bf;
}

.spotkeyword p {
    padding: 10px;
}

@media screen and (max-width: 640px) {
    .spotother {
        padding-top: 40px;
        background-color: #f2efe6;
    }
}

.spotcourse a {
    text-decoration: none;
}

.spotcourse dt {
    margin-top: 10px;
}

@media screen and (max-width: 640px) {
    .spotcourse dt {
        margin-top: 0;
    }
}

.spotcourse dd {
    font-size: 1.14286rem;
    font-weight: bold;
}

@media screen and (max-width: 640px) {
    .spotcourse dd {
        font-size: 1rem;
    }
}

.spotrelated a {
    text-decoration: none;
}

.spotrelated dt {
    margin: 10px 0;
    font-size: 1.14286rem;
    font-weight: bold;
}

@media screen and (max-width: 640px) {
    .spotrelated dt {
        font-size: 1rem;
    }
}

.spotrelated figure {
    text-align: center;
    position: relative;
}

.spotrelated figure div {
    padding-top: 75%;
    position: relative;
}

.spotrelated figure div img {
    display: block;
    -o-object-fit: cover;
    object-fit: cover;
    height: 100%;
    position: absolute;
    top: 0;
}

.spotrelated figcaption {
    margin-top: 10px;
    font-size: 1.14286rem;
    font-weight: bold;
    text-align: center;
}

@media screen and (max-width: 640px) {
    .spotrelated figcaption {
        font-size: 1rem;
    }
}

.spotrelated .spotrelated-add {
    margin-top: 40px;
    font-size: 1.42857rem;
}

@media screen and (max-width: 640px) {
    .spotrelated .spotrelated-add {
        font-size: 1.14286rem;
    }
}

/* ニュースアイコン */
.news-ico {
    display: inline-block;
    min-width: 140px;
    padding: 5px .5em;
    color: #fff;
    text-align: center;
}

.news-ico.news-ico-info {
    background-color: #89aa3a;
}

.news-ico.news-ico-recruit {
    background-color: #ec9907;
}

.news-ico.news-ico-press {
    background-color: #e74a3f;
}

.news-ico.news-ico-meguru {
    background-color: #9e4887;
}

.news-ico.news-ico-kiratto {
    background-color: #458fab;
}

.news-ico.news-ico-library {
    background-color: #679de0;
    font-size: 90%;
}

.news-ico.emergency-ico-warning {
    background-color: #9e4887;
}

.news-ico.news-ico-spot { 
  background: #00a0f2; 
}

.news-ico.news-ico-accommodation { 
  background: #777862; 
}

.news-ico.news-ico-food { 
  background: #e75c5a; 
}

/* 詳細ユニット */
.detailunit {
    margin-bottom: 40px;
}

.detailunit-inner {
    max-width: 1130px;
    margin: 0 auto;
}

.detailunit-fig {
    text-align: center;
}

.detailunit-fig figcaption {
    margin-top: 10px;
}

.detailunit-imgr .detailunit-fig {
    float: right;
    max-width: 440px;
    margin: 0 0 10px 40px;
}

@media screen and (max-width: 900px) {
    .detailunit-imgr .detailunit-fig {
        float: none;
        max-width: initial;
        margin: 0 0 30px 0;
    }
}

.detailunit-imgl .detailunit-fig {
    float: left;
    max-width: 440px;
    margin: 0 40px 10px 0;
}

@media screen and (max-width: 900px) {
    .detailunit-imgl .detailunit-fig {
        float: none;
        max-width: initial;
        margin: 0 0 30px 0;
    }
}

.detailunit-img3 {
    display: flex;
    justify-content: space-between;
}

@media screen and (max-width: 640px) {
    .detailunit-img3 {
        flex-direction: column;
    }
}

.detailunit-img3 .detailunit-fig {
    width: 32.21239%;
}

@media screen and (max-width: 640px) {
    .detailunit-img3 .detailunit-fig {
        width: 100%;
        margin-bottom: 20px;
    }

    .detailunit-img3 .detailunit-fig:last-child {
        margin-bottom: 0;
    }
}

.detailunit-img2 {
    display: flex;
    justify-content: space-between;
}

@media screen and (max-width: 640px) {
    .detailunit-img2 {
        flex-direction: column;
    }
}

.detailunit-img2 .detailunit-fig {
    width: 48.23009%;
}

@media screen and (max-width: 640px) {
    .detailunit-img2 .detailunit-fig {
        width: 100%;
        margin-bottom: 20px;
    }

    .detailunit-img2 .detailunit-fig:last-child {
        margin-bottom: 0;
    }
}

.detailunit-movie {
    max-width: 1080px;
    margin: 0 auto;
}

.detailunit-tbl {
    width: 100%;
}

.detailunit-tbl th {
    padding: 20px 20px 20px 30px;
    border-bottom: 1px solid #ccc;
    text-align: left;
}

@media screen and (max-width: 640px) {
    .detailunit-tbl th {
        display: block;
        padding: 20px 20px 0;
        border-bottom: none;
    }
}

.detailunit-tbl td {
    padding: 20px 20px 20px 30px;
    border-bottom: 1px solid #ccc;
}

@media screen and (max-width: 640px) {
    .detailunit-tbl td {
        display: block;
        padding: 10px 20px 20px;
    }
}

.detailunit-btn {
    text-align: center;
}

.detailunit-btn .btn-arrow {
    max-width: 600px;
}

.pageindex-area {
    padding-bottom: 30px;
}

.pageindex-area .pageindex-lead {
    margin-bottom: 60px;
}

.pageindex-area .pageindex-list {
    display: flex;
    flex-wrap: wrap;
}

.pageindex-area .pageindex-list li {
    width: 31.66667%;
    margin: 0 2.5% 2.5% 0;
    padding: 9px;
    border: 1px solid #ccc;
}

.pageindex-area .pageindex-list li:nth-child(3n) {
    margin-right: 0;
}

@media screen and (max-width: 640px) {
    .pageindex-area .pageindex-list li {
        width: 48.33333%;
        margin-right: 3.33333%;
    }

    .pageindex-area .pageindex-list li:nth-child(3n) {
        margin-right: 3.33333%;
    }

    .pageindex-area .pageindex-list li:nth-child(even) {
        margin-right: 0;
    }
}

.pageindex-area .pageindex-list a {
    text-decoration: none;
}

.pageindex-area .pageindex-list dl {
    padding: 20px 10px;
}

.pageindex-area .pageindex-list dl dt {
    margin-bottom: 10px;
    font-size: 1.14286rem;
    font-weight: bold;
    text-decoration: underline;
}

.pageindex-area .pageindex-list dl dt .ico {
    margin-left: 5px;
}

.news-list li {
    display: table;
    width: 100%;
    margin-bottom: 25px;
}

.news-list li:last-child {
    margin-bottom: 0;
}

@media screen and (max-width: 640px) {
    .news-list li {
        display: block;
    }
}

.news-list li .news-date {
    display: table-cell;
    width: 9em;
    font-weight: bold;
}

@media screen and (max-width: 640px) {
    .news-list li .news-date {
        display: inline-block;
        width: auto;
        margin-right: 1em;
        font-size: 1.14286rem;
    }
}

.news-list li .news-ico-box {
    display: table-cell;
    width: 9em;
}

@media screen and (max-width: 640px) {
    .news-list li .news-ico-box {
        display: inline-block;
        margin-bottom: .5em;
    }
}
.news-list li .news-txt,
.news-list li .newsitem-txt {
  display: inline-block;
  vertical-align: top;
  line-height: 1.6;
  padding-inline: 1em;
}
@media screen and (max-width: 640px) {
  .news-list li .news-txt,
  .news-list li .newsitem-txt {
    padding-inline: 0;
  }
}

/* ホーム */
.mv-area {
  display: flex;
  justify-content: space-between;
  line-height: 1;
    margin-bottom: 30px;
    border-top: 1px solid #eeeeee;
}

@media screen and (max-width: 900px) {
    .mv-area {
      margin-bottom: 0;
      background-color: #b4a280;
    }
}

@media screen and (max-width: 640px) {
    .mv-area {
        background-color: #fff;
    }
}

.mv-area .box-mainslider {
    width: 77.22222%;
    background-color: #f2efe6;
}

@media screen and (max-width: 900px) {
    .mv-area .box-mainslider {
        width: 100%;
    }
}

@media screen and (max-width: 640px) {
    .mv-area .box-mainslider {
      background-color: #fff;
    }
}

.mv-area .box-mainslider .mainslider-slick {
  width: 100%;
}

.mv-area .box-mainslider .mainslider-slick img {
    width: 100%;
    vertical-align:top !important;
}

.mv-area .box-mainslider .mainslider-thumb {
  max-width: 1090px;
  margin: 0 auto;
  padding-top: 1.4388%;
}

@media screen and (max-width: 1565px) {
.mv-area .box-mainslider .mainslider-thumb  {
  width: 80%;
    max-width: 100%;
  }  
}  

@media screen and (max-width: 900px) {
  .mv-area .box-mainslider .mainslider-thumb {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    margin-top: 0;
    padding: 0;
  }
}

.mv-area .box-mainslider .mainslider-thumb img {
  vertical-align:top !important;
}

@media screen and (max-width: 900px) {
  .mv-area .box-mainslider .mainslider-thumb li {
      padding: 0 8px;
  }
}

.box-mainslider .mainslider-thumb li p {
    border: none;
}
@media screen and (max-width: 900px) {
    .box-mainslider .mainslider-thumb li p {
      border: 2px solid #fff;
  }
}
.mv-area .box-mainslider .mainslider-thumb .mainslider-thumb-arrow  {
    position: absolute;
    width: 50px;
    margin-top: 0;
    text-align: center;
    z-index: 999;
}
  
@media screen and (max-width: 900px) {
.mv-area .box-mainslider .mainslider-thumb .mainslider-thumb-arrow  {
      position: absolute !important;
      top: 50%;
      width: 4.37%;
      
  }  
}  
  
.mv-area .box-mainslider .mainslider-thumb .mainslider-thumb-arrow img {
  width: 100%;
}

.mv-area .box-mainslider .mainslider-thumb .mainslider-thumb-prev {
    margin-top: -25px;
    top: 50%;
    left: -80px;
}

@media screen and (max-width: 1650px) {
.mv-area .box-mainslider .mainslider-thumb .mainslider-thumb-prev  {
    left: -50px;
  }  
}  
@media screen and (max-width: 900px) {
.mv-area .box-mainslider .mainslider-thumb .mainslider-thumb-prev  {
    left: 0;
  }  
}  


.mv-area .box-mainslider .mainslider-thumb .mainslider-thumb-next {
  margin-top: -25px;
  top: 50%;
  right: -80px;
}
@media screen and (max-width: 1650px) {
.mv-area .box-mainslider .mainslider-thumb .mainslider-thumb-next  {
    right: -50px;
  }  
}  
@media screen and (max-width: 900px) {
.mv-area .box-mainslider .mainslider-thumb .mainslider-thumb-next  {
    right: 0;
  }  
}  

  @media screen and (max-width: 900px) {
    .mv-area .box-mainslider .mainslider-thumb {
        position: static;
        margin-top: 10px;
    }

    .mv-area .box-mainslider .mainslider-thumb li {
        padding: 0 4px;
    }

    .mv-area .box-mainslider .mainslider-thumb .mainslider-thumb-arrow {
        top: 50%;
        width: 8%;
        margin-top: -4.5%;
      z-index: 999;
    }
}

.mv-area .box-mainslider .mainslider-thumb .mainslider-thumb-inner {
    width: 100%;
    margin-bottom: 0;
    padding: 0;
  
}
@media screen and (max-width: 900px) {
    .mv-area .box-mainslider .mainslider-thumb .mainslider-thumb-inner {
      position: relative;
      width: 90.714%;
      margin: 0 auto;
      margin-bottom: 2.071%;
      padding: 0 4.96%;
    }
}
  
  
@media screen and (max-width: 900px) {
    .mv-area .box-mainslider .mainslider-thumb .mainslider-thumb-inner {
        width: 100%;
        padding: 0;
    }
}
  
@media screen and (max-width: 900px) {
    .mainslider-thumb-btn-pc {
      display: none;
    }
}
.mainslider-thumb-btn-sp {
  display: none;
}
  
@media screen and (max-width: 900px) {
    .mainslider-thumb-btn-sp {
      display: block;
    }
}


.mv-area .mv-sub {
  width: 21.6666%;
}

@media screen and (max-width: 900px) {
    .mv-area .mv-sub {
        display: none;
    }
}

.mv-area .mv-sub .mv-sub-menu {
    position: relative;
}

.mv-area .mv-sub .mv-sub-menu-btn {
    cursor: pointer;
}

.mv-area .mv-sub .submenu-list {
    display: none;
    position: absolute;
    width: 100%;
}

.mv-area .mv-sub .submenu-list li {
    padding-top: 34.4871%;
}

.recopr-area {
    display: flex;
    justify-content: space-between;
    margin-bottom: 50px;
}

@media screen and (max-width: 900px) {
    .recopr-area {
        flex-direction: column;
        margin-bottom: 40px;
    }
}

.reco-area {
    display: flex;
    width: min(1200px, 100%);
    margin: auto;
}

@media screen and (max-width: 900px) {
    .reco-area {
        flex-direction: column;
        width: 100%;
    }
}

.reco-area .reco-nav {
    position: relative;
    width: 28.57143%;
    padding: 25px 30px;
    background-color: #b4a280;
    color: #fff;
    vertical-align: top;
}

@media screen and (max-width: 900px) {
    .reco-area .reco-nav {
        width: 100%;
    }
}

.reco-area .reco-nav::before {
    content: '';
    position: absolute;
    top: 50%;
    right: 0;
    z-index: 1;
    width: 24px;
    height: 24px;
    margin: -10px -10px 0 0;
    background-color: #b4a280;
    -webkit-transform: rotate(-45deg) skew(10deg, 10deg);
    transform: rotate(-45deg) skew(10deg, 10deg);
}

@media screen and (max-width: 900px) {
    .reco-area .reco-nav::before {
        top: initial;
        right: initial;
        left: 50%;
        bottom: 0;
        margin: 0 0 -10px -10px;
        -webkit-transform: rotate(45deg) skew(10deg, 10deg);
        transform: rotate(45deg) skew(10deg, 10deg);
    }
}

.reco-area .reco-nav .reco-nav-ttl {
    margin-bottom: 20px;
    text-align: center;
}

@media screen and (max-width: 900px) {
    .reco-area .reco-nav .reco-nav-ttl br {
        display: none;
    }
}

.reco-area .reco-nav .reco-nav-ttl p {
    margin-top: 10px;
    font-size: 1.28571rem;
    font-weight: bold;
    vertical-align: middle;
}

@media screen and (max-width: 900px) {
    .reco-area .reco-nav .reco-nav-ttl p {
        display: inline-block;
        margin-left: 10px;
        font-size: 1rem;
    }
}

.reco-area .reco-nav .cmn-switch {
    max-width: 455px;
    margin: 0 auto;
}

.reco-area .reco-con {
    position: relative;
    width: 71.42857%;
    padding: 20px 35px;
    background-color: #f2efe6;
    vertical-align: top;
}

@media screen and (max-width: 1000px) {
    .reco-area .reco-con {
        padding: 30px 3.125%;
    }
}

@media screen and (max-width: 900px) {
    .reco-area .reco-con {
        width: 100%;
        margin-left: 0;
    }
}

.reco-area .reco-con .reco-con-inner {
    display: flex;
}

@media screen and (max-width: 640px) {
    .reco-area .reco-con .reco-con-inner {
        margin-bottom: 10px;
    }
}

.reco-area .reco-con figure {
    width: 150px;
    padding-right: 15px;
}

.reco-area .reco-con dl {
    flex: 1;
}

.reco-area .reco-con dl dt {
    padding: 5px 0;
    font-size: 1.14286rem;
    font-weight: bold;
}

.reco-area .reco-con .btn-basic {
    margin-top: 15px;
}

.reco-area .reco-con .reco-btn {
    position: absolute;
    right: 20px;
    bottom: 20px;
}

.reco-area .reco-con .reco-btn .btn-basic {
    width: 160px;
}

@media screen and (max-width: 640px) {
    .reco-area .reco-con .reco-btn .btn-basic {
        width: 50%;
    }
}

@media screen and (max-width: 1000px) {
    .reco-area .reco-con .reco-btn {
        position: static;
        margin-top: 15px;
        text-align: right;
    }
}

@media screen and (max-width: 900px) {
    .reco-area .reco-con .reco-btn {
        text-align: center;
    }
}

.pr-area {
    width: 25.71429%;
    border: 1px solid #1d365f;
}

@media screen and (max-width: 900px) {
    .pr-area {
      width: auto;
      margin-block: 2em;
    }
}

.pr-area p {
    padding: 10px;
    background-color: #1d365f;
    color: #fff;
    font-size: 1.28571rem;
    font-weight: bold;
    text-align: center;
}

.pr-area figure {
    margin: 20px;
    text-align: center;
}

.news-area {
    float: left;
    width: 59.64286%;
    margin-bottom: 40px;
    padding-top: 10px;
}

@media screen and (max-width: 900px) {
    .news-area {
        float: none;
        width: 100%;
        padding: 0 3.125%;
        margin-bottom: 0;
    }
}

.news-area .inner-l {
    position: relative;
}

.news-area .news-ttl {
    float: left;
    margin-bottom: 25px;
}

.news-area .news-ttl .news-ttl-en {
    display: inline-block;
    margin-right: 10px;
    font-size: 2.57143rem;
}

.news-area .news-ttl p {
    display: inline-block;
}

.news-area .news-nav {
    float: right;
    padding-top: 15px;
}

.news-area .news-nav ul {
    float: left;
}

@media screen and (max-width: 900px) {
    .news-area .news-nav ul {
        float: right;
    }
}

.news-area .news-nav ul li {
    float: left;
    margin-left: 10px;
}

.news-area .news-nav p {
    float: left;
    padding: 5px 0 0 20px;
}

.weather-area {
    position: relative;
    float: right;
    width: 37.85714%;
    margin-bottom: 40px;
    padding: 15px 10px;
    background-color: #f4f4f5;
}

@media screen and (max-width: 900px) {
    .weather-area {
        float: none;
        width: 100%;
        margin-bottom: 0;
        padding: 20px 10px 30px;
    }
}

.weather-area .weather-ttl {
    margin-bottom: 20px;
    padding: 0 100px 0 10px;
    font-size: 1.28571rem;
    font-weight: bold;
}

/* .weather-area .weather-ttl p { font-size: 1.71429rem; } */

.weather-area .cmn-switch {
    position: absolute;
    top: 15px;
    right: 20px;
    width: 100px;
    padding-top: 5px;
}

.weather-area .cmn-switch li span {
    background-color: #fff;
    color: #1d365f;
}

.weather-area .cmn-switch li.is-current span {
    background-color: #1d365f;
    color: #fff;
}

.weather-area .weather-list ul {
    display: flex;
    justify-content: space-between;
}

.weather-area .weather-list ul li {
    padding: 0 5px;
    text-align: center;
}

@media screen and (max-width: 900px) {
    .weather-area .weather-list ul li {
        border-right: 1px solid #71aac2;
    }

    .weather-area .weather-list ul li:last-child {
        border-right: none;
    }
}

@media screen and (max-width: 640px) {
    .weather-area .weather-list ul li {
        padding: 0 5px;
    }
}

.weather-area .weather-list ul.weather-list-day li {
    width: 25%;
}

.weather-area .weather-list ul.weather-list-week li {
    width: 14.28571%;
}

.weather-area .weather-list .weather-day {
    color: #1d365f;
    font-size: 1.14286rem;
}

.weather-area .weather-list .weather-wday {
    margin-bottom: 10px;
    color: #1d365f;
    font-size: 0.85714rem;
}

.weather-area .weather-list .weather-h {
    margin-top: 10px;
    padding: 3px 0;
    background-color: #e74a3f;
    color: #fff;
    font-size: 1.28571rem;
    text-align: center;
}

@media screen and (max-width: 640px) {
    .weather-area .weather-list .weather-h {
        font-size: 1.14286rem;
    }
}

.weather-area .weather-list .weather-l {
    margin-top: 2px;
    padding: 3px 0;
    background-color: #1d365f;
    color: #fff;
    font-size: 1.28571rem;
    text-align: center;
}

@media screen and (max-width: 640px) {
    .weather-area .weather-list .weather-l {
        font-size: 1.14286rem;
    }
}

.allsearch-area {
    padding: 80px 0;
    background-color: #1d365f;
}

@media screen and (max-width: 900px) {
    .allsearch-area {
        padding: 30px 0;
    }
}

@media screen and (max-width: 640px) {
    .allsearch-area {
        margin-bottom: 0;
    }
}
.allsearch-area .search-con {
    padding-top: 1px;
}
.allsearch-area .search-btn {
    background-color: #fff;
    color: #1d365f;
}

.note-area {
    max-width: 1000px;
    margin: 0 auto 50px;
    padding: 30px 20px;
    background-color: #ffbabd;
    text-align: center;
}

.note-area p {
    margin-bottom: 1em;
}

.event-area {
    padding: 85px 0 100px;
    background-color: #f2efe6;
}

@media screen and (max-width: 640px) {
    .event-area {
        padding: 60px 0;
    }
}

.event-area .ttl-sec-txt {
    margin-top: 20px;
}

.event-area .event-list {
    margin-bottom: 70px;
}
@media screen and (max-width: 640px) {
    .event-area .event-list {
        position: relative;
        margin: 30px 0 40px;
    }
}
.event-area .event-list .event-item {
    padding: 8px;
}
.event-area .event-list .event-box {
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
    background-color: #fff;
    display: block;
}

/* @media screen and (max-width: 640px) {
    .event-area .event-box {
        padding: 0 6.25%;
    }
} */
.event-box-content {
    padding: 10px;
/*    display: flex;
    flex-direction: column;*/
}
.event-area .event-box .event-box-content .event-box-ttl {
    margin: 10px 0 15px;
    font-size: 1.57143rem;
}

@media screen and (max-width: 640px) {
    .event-area .event-box .event-box-content .event-box-ttl {
        font-size: 1.28571rem;
    }
}

.event-area .event-box .event-box-content .event-box-txt {
    border-bottom: 1px solid #c3c2c1;
    line-height: 2;
    min-height: 5.5rem;
}

@media screen and (max-width: 640px) {
    .event-area .event-box .event-box-content .event-box-txt {
        line-height: 1.5;
    }
}

.event-area .event-box .event-box-content .event-box-txt p {
    padding-bottom: 20px;
    border-bottom: 1px solid #313130;
    min-height: 5.5rem;
}

@media screen and (max-width: 640px) {
    .event-area .event-box .event-box-content .event-box-txt p {
        min-height: 6rem;
    }
}

.event-area .event-box .event-box-content .box-spot-detail {
    margin: 30px 0;
    min-height: 70px;
}

.event-area .event-box .event-box-content .box-spot-detail .ico {
    margin-right: 5px;
}

.event-area .event-box .event-box-content .box-spot-detail .detail {
    min-height: 3rem;
}

.event-area .event-box .event-box-content .box-spot-detail .event-date {
    font-size: 1.1rem;
    font-weight: bold;
}

.event-area .event-box .event-box-content .btn-arrow {
    max-width: 400px;
    margin-top: auto;
}
/*
.event-area .event-box figure {
    margin-bottom: 15px;
} */

.event-area .event-pickup {
    margin-bottom: 80px;
}

@media screen and (max-width: 640px) {
    .event-area .event-pickup {
        margin-bottom: 40px;
    }
}

.event-area .event-calendar {
    position: relative;
    float: right;
    width: 370px;
    padding: 10px;
    background-color: #fff;
}

@media screen and (max-width: 1000px) {
    .event-area .event-calendar {
        display: none;
    }
}

.event-area .event-calendar .event-calendar-ttl {
    margin-bottom: 5px;
    text-align: center;
    font-size: 1.14286rem;
    font-weight: bold;
}

.event-area .event-calendar .event-calendar-ttl big {
    margin-left: 5px;
    font-size: 1.71429rem;
}

.event-area .event-calendar .event-calendar-ttl span {
    font-size: 1.28571rem;
}

.event-area .event-calendar .event-calendar-prev {
    position: absolute;
    top: 10px;
    left: 10px;
}

.event-area .event-calendar .event-calendar-next {
    position: absolute;
    top: 10px;
    right: 10px;
}

.event-area .event-calendar table {
    width: 100%;
}

.event-area .event-calendar table th {
    padding: 3px;
    border: 2px solid #fff;
    text-align: center;
}

.event-area .event-calendar table td {
    padding: 22px 3px;
    border: 2px solid #fff;
    background-color: #f6f6f6;
    text-align: center;
}

.event-area .event-calendar table td.sun {
    background-color: #f3dbd8;
}

.event-area .event-calendar table td.pholiday {
    background-color: #f3dbd8;
}

.event-area .event-calendar table td.null {
    background-color: #e4e4e4;
    color: #aaaaaa;
}

.event-area .event-calendar table td a {
    display: block;
    margin-top: 3px;
}

.event-area .event-attention {
    margin-right: 400px;
    padding: 35px 45px 30px;
    background-color: #fff;
}

@media screen and (max-width: 1000px) {
    .event-area .event-attention {
        float: none;
        width: 100%;
    }
}

@media screen and (max-width: 900px) {
    .event-area .event-attention {
        padding: 40px 3.125%;
    }
}

.event-area .event-attention .event-attention-ttl {
    font-size: 1.42857rem;
}

.event-area .event-attention .event-attention-inner {
    display: flex;
    justify-content: space-between;
}

.event-area .event-attention .event-attention-img {
    width: 30%;
    margin-top: 15px;
}

@media screen and (max-width: 640px) {
    .event-area .event-attention .event-attention-img {
        width: 36.66667%;
    }
}

.event-area .event-attention .event-attention-content {
    width: 63.5%;
}

@media screen and (max-width: 640px) {
    .event-area .event-attention .event-attention-content {
        width: 60%;
        margin-top: 15px;
    }
}

.event-area .event-attention .event-attention-name {
    margin: 10px 0;
    font-size: 1.28571rem;
}

.event-area .event-attention .event-attention-txt {
    line-height: 2;
}

.event-area .event-attention .box-spot-detail {
    margin-top: 20px;
    padding-top: 15px;
    border-top: 1px solid #000;
}

.event-area .event-attention .ico {
    margin-right: 5px;
}

.event-area .event-attention .event-attention-btn {
    margin-top: 30px;
    text-align: center;
}

.event-area .btn-arrow {
    max-width: 400px;
}

.event-area .event-future {
    margin-bottom: 110px;
}
.event-area .event-future .event-item {
    padding: 8px;
}
.event-area .event-future .event-future-link {
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
    background-color: #fff;
    display: block;
}
.event-area .event-future .cmn-fig-area {
    margin: 0;
}
.pickup-area {
    padding: 80px 0 100px;
}

@media screen and (max-width: 640px) {
    .pickup-area {
        padding: 60px 0;
    }
}

.pickup-area .pickup-list {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 30px;
}

@media screen and (max-width: 640px) {
    .pickup-area .pickup-list {
        margin-bottom: 20px;
    }
}

.pickup-area .pickup-list li {
    width: 33.33%;
    text-align: center;
}

@media screen and (max-width: 900px) {
    .pickup-area .pickup-list li {
        width: 50%;
    }
}

@media screen and (max-width: 640px) {
    .pickup-area .pickup-list li {
        width: 100%;
        margin-bottom: 20px;
        text-align: left;
    }
}

.pickup-area .pickup-list li a {
    text-decoration: none;
}

@media screen and (max-width: 640px) {
    .pickup-area .pickup-list li a {
        display: table;
    }
}

@media screen and (max-width: 640px) {
    .pickup-area .pickup-list li figure {
        display: table-cell;
        width: 50%;
        padding-right: 20px;
        vertical-align: middle;
    }
}
.pickup-area .pickup-list li img {
    width: 100%;
}
@media screen and (max-width: 640px) {
    .pickup-area .pickup-list li dl {
        display: table-cell;
        width: 50%;
        vertical-align: middle;
    }
}

.pickup-area .pickup-list li dl dt {
    margin-top: 15px;
    font-size: 1.57143rem;
    font-weight: bold;
}

@media screen and (max-width: 640px) {
    .pickup-area .pickup-list li dl dt {
        margin-top: 0;
        font-size: 1.14286rem;
    }
}

.pickup-area .pickup-list li dl dd {
    margin: 10px 0 30px;
    font-size: 0.85714rem;
}

@media screen and (max-width: 640px) {
    .pickup-area .pickup-list li dl dd {
        margin-bottom: 0;
    }
}

.pickup-area .btn-more {
    margin-bottom: 40px;
}

.pickup-area .pickup-pr {
    padding: 30px 0 25px;
    background-color: #f4f4f5;
}

.pickup-area .pickup-pr li {
    padding: 0 10px;
}

.pickup-area .pickup-pr li a {
    text-decoration: none;
}

.pickup-area .pickup-pr li p {
    margin-top: 5px;
    font-size: 1.14286rem;
    font-weight: bold;
    text-align: right;
}

.pickup-area .pickup-pr .nav-slider {
    margin-top: 10px;
}

.pickup-area-2 {
    padding: 80px 0 100px;
}

@media screen and (max-width: 640px) {
    .pickup-area-2 {
        padding: 60px 0;
    }
}

.pickup-area-2 .pickup-list {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 30px;
}

@media screen and (max-width: 640px) {
    .pickup-area-2 .pickup-list {
        justify-content: space-between;
        margin-bottom: 20px;
    }
}

.pickup-area-2 .pickup-list li {
    width: 33.33%;
    text-align: center;
}

@media screen and (max-width: 900px) {
    .pickup-area-2 .pickup-list li {
        width: 50%;
    }
}

@media screen and (max-width: 640px) {
    .pickup-area-2 .pickup-list li {
        width: 48%;
        margin-bottom: 20px;
        text-align: left;
    }
}

.pickup-area-2 .pickup-list li a {
    text-decoration: none;
}

.pickup-area-2 .pickup-list li dl dt {
    margin-top: 15px;
    font-size: 1.57143rem;
    font-weight: bold;
}

@media screen and (max-width: 640px) {
    .pickup-area-2 .pickup-list li dl dt {
        font-size: 1.14286rem;
    }
}

.pickup-area-2 .pickup-list li dl dd {
    margin: 10px 0 30px;
    font-size: 0.85714rem;
}

@media screen and (max-width: 640px) {
    .pickup-area-2 .pickup-list li dl dd {
        margin-bottom: 0;
    }
}

.pickup-area-2 .btn-more {
    margin-bottom: 40px;
}

.pickup-area-2 .pickup-pr {
    padding: 30px 0 25px;
    background-color: #f4f4f5;
}

.pickup-area-2 .pickup-pr li {
    padding: 0 10px;
}

.pickup-area-2 .pickup-pr li a {
    text-decoration: none;
}

.pickup-area-2 .pickup-pr li p {
    margin-top: 5px;
    font-size: 1.14286rem;
    font-weight: bold;
    text-align: right;
}

.pickup-area-2 .pickup-pr .nav-slider {
    margin-top: 10px;
}

.ranking-area {
    padding: 100px 0;
    background-color: #f2efe6;
}

@media screen and (max-width: 900px) {
    .ranking-area {
        background-color: #a9894b;
    }

    .ranking-area .ttl-area {
        color: #fff;
    }

    .ranking-area .ttl-area-en {
        color: #fff;
    }
}

@media screen and (max-width: 640px) {
    .ranking-area {
        padding: 60px 0;
    }
}

.ranking-area .ranking-tab {
    display: flex;
    margin: 0 auto 45px;
}

.ranking-area .ranking-tab li {
    width: 18.33333%;
    margin-right: 2.08333%;
    padding: 15px 0;
    background-color: #fff;
    color: #a9894b;
    font-size: 1.14286rem;
    font-weight: bold;
    text-align: center;
    cursor: pointer;
}

.ranking-area .ranking-tab li:last-child {
    margin-right: 0;
}

.ranking-area .ranking-tab li .ranking-ico,
.ranking-area .ranking-tab li .ranking-ico-on {
    display: none;
    position: relative;
    z-index: 1;
}

.ranking-area .ranking-tab li br {
    display: none;
}

@media screen and (max-width: 900px) {
    .ranking-area .ranking-tab li {
        width: 20%;
        margin-right: 0;
        border: 1px solid #fff;
        background-color: #a9894b;
        font-size: 0.85714rem;
    }

    .ranking-area .ranking-tab li:first-child {
        padding-top: 6px;
        padding-bottom: 6px;
    }

    .ranking-area .ranking-tab li br {
        display: block;
    }

    .ranking-area .ranking-tab li span {
        display: block;
        margin-top: 5px;
        color: #fff;
    }

    .ranking-area .ranking-tab li .ranking-ico {
        display: inline-block;
        height: 30px;
    }

    .ranking-area .ranking-tab li .ranking-ico-on {
        display: none;
        height: 30px;
    }
}

@media screen and (max-width: 640px) {
    .ranking-area .ranking-tab li {
        font-size: 0.71429rem;
    }
}

.ranking-area .ranking-tab li.is-current {
    position: relative;
    background-color: #a9894b;
    color: #fff;
}

@media screen and (max-width: 900px) {
    .ranking-area .ranking-tab li.is-current {
        background-color: #fff;
    }

    .ranking-area .ranking-tab li.is-current span {
        color: #a9894b;
        line-height: 1.2;
    }

    .ranking-area .ranking-tab li.is-current .ranking-ico {
        display: none;
    }

    .ranking-area .ranking-tab li.is-current .ranking-ico-on {
        display: inline-block;
    }
}

.ranking-area .ranking-tab li.is-current::after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: -13px;
    width: 24px;
    height: 24px;
    margin-left: -10px;
    background-color: #a9894b;
    -webkit-transform: rotate(45deg) skew(20deg, 20deg);
    transform: rotate(45deg) skew(20deg, 20deg);
}

@media screen and (max-width: 900px) {
    .ranking-area .ranking-tab li.is-current::after {
        display: none;
    }
}

.ranking-area .ranking-list {
    padding-bottom: 20px;
}

.ranking-area .ranking-list li {
    padding: 0 10px;
}
.ranking-area .ranking-list li .cmn-fig-area div {
    position: relative;
    padding-top: 75%;
    display: block;
}
.ranking-area .ranking-list li .cmn-fig-area img {
position: absolute;
top: 0;
height: 100%;
}
.ranking-area .ranking-list li .cmn-fig-area figcaption {
    min-width: 40px;
    padding: 0;
    background-color: #01384a;
    color: #fff;
    font-size: 1.28571rem;
    line-height: 40px;
}

.ranking-area .ranking-list li .cmn-fig-area figcaption.ranking-rank1 {
    min-width: 50px;
    background-color: #dabf44;
    line-height: 50px;
}

.ranking-area .ranking-list li .cmn-fig-area figcaption.ranking-rank2 {
    min-width: 50px;
    background-color: #8a8a8a;
    line-height: 50px;
}

.ranking-area .ranking-list li .cmn-fig-area figcaption.ranking-rank3 {
    background-color: #8c4d27;
}

.ranking-area .ranking-list li .cmn-fig-area figcaption.ranking-rank4 {
    background-color: #005571;
}

.ranking-area .ranking-list li dt {
    margin: 10px 0;
    font-size: 1.14286rem;
    font-weight: bold;
}

.ranking-area .ranking-list .slick-dots {
    bottom: -60px;
}

.ranking-area .btn-arrow {
    max-width: 600px;
    margin-top: 40px;
}

.pickuparea-area {
    padding-top: 100px;
}

@media screen and (max-width: 900px) {
    .pickuparea-area {
        padding-bottom: 100px;
    }
}

@media screen and (max-width: 640px) {
    .pickuparea-area {
        padding: 60px 0;
    }
}

.pickuparea-area ul {
    display: flex;
    justify-content: space-between;
}

@media screen and (max-width: 900px) {
    .pickuparea-area ul {
        flex-direction: column;
    }
}

.pickuparea-area ul li {
    width: 32.85714%;
}

@media screen and (max-width: 900px) {
    .pickuparea-area ul li {
        width: 100%;
        margin-bottom: 20px;
    }

    .pickuparea-area ul li:last-child {
        margin-bottom: 0;
    }
}

.pickuparea-area ul li a {
    position: relative;
    display: block;
    text-align: center;
}

.pickuparea-area ul li a div {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    color: #fff;
    text-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
}

.pickuparea-area ul li a div dt {
    margin-bottom: 5px;
    font-size: 1.71429rem;
    font-weight: bold;
}

.pickuparea-area ul li:nth-child(2) a div {
    color: #000;
    text-shadow: 0 0 5px rgba(255, 255, 255, 0.5);
}

.pickuparea-area .btn-arrow {
    max-width: 600px;
    margin-top: 40px;
}

.pickuparea-area-2 {
    padding-top: 100px;
}

@media screen and (max-width: 900px) {
    .pickuparea-area-2 {
        padding-bottom: 100px;
    }
}

@media screen and (max-width: 640px) {
    .pickuparea-area-2 {
        padding: 60px 0;
    }
}

.pickuparea-area-2 ul {
    display: flex;
    justify-content: space-between;
}

.pickuparea-area-2 ul li {
    width: 32.85714%;
}

.pickuparea-area-2 ul li a {
    position: relative;
    display: block;
    text-align: center;
}

.pickuparea-area-2 ul li a div {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    color: #fff;
    text-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
}

.pickuparea-area-2 ul li a div dt {
    margin-bottom: 5px;
    font-size: 1.71429rem;
    font-weight: bold;
}

@media screen and (max-width: 640px) {
    .pickuparea-area-2 ul li a div dt {
        font-size: 1.14286rem;
    }
}

@media screen and (max-width: 640px) {
    .pickuparea-area-2 ul li a div dd {
        font-size: 0.85714rem;
    }
}

.pickuparea-area-2 ul li:nth-child(2) a div {
    color: #000;
    text-shadow: 0 0 5px rgba(255, 255, 255, 0.5);
}

.pickuparea-area-2 .btn-arrow {
    max-width: 600px;
    margin-top: 40px;
}

.model-area {
    padding: 100px 0;
}

@media screen and (max-width: 900px) {
    .model-area {
        padding: 60px 0;
        background-color: #f2efe6;
    }

    .model-area .model-inner {
        padding: 0 3.125%;
    }
}

.model-area .model-block {
    display: flex;
    justify-content: space-between;
}

@media screen and (max-width: 900px) {
    .model-area .model-block {
        flex-direction: column;
    }
}

.model-area .model-sec {
    width: 47.85714%;
}

@media screen and (max-width: 900px) {
    .model-area .model-sec {
        width: 100%;
    }
}

.model-area .model-sec-in {
    padding: 30px 2.14286%;
    background-color: #f2efe6;
}

@media screen and (max-width: 900px) {
    .model-area .model-sec-in {
        padding-top: 10px;
    }
}

.model-area .model-sec-in ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.model-area .model-sec-in ul li {
    width: 49.18033%;
    margin-bottom: 50px;
}

.model-area .model-ttl {
    margin-bottom: 30px;
    font-size: 1.71429rem;
    text-align: center;
}

@media screen and (max-width: 640px) {
    .model-area .model-ttl {
        font-size: 1.42857rem;
    }
}

.model-area .btn-arrow {
    max-width: 600px;
}

@media screen and (max-width: 640px) {
    .model-area .model-course .model-sec-in ul li {
        width: 100%;
        margin-bottom: 30px;
    }

    .model-area .model-course .model-sec-in ul li a {
        display: flex;
    }

    .model-area .model-course .model-sec-in ul li a figure {
        width: 40%;
    }
}

.model-area .model-course dl {
    margin-top: 15px;
}

@media screen and (max-width: 640px) {
    .model-area .model-course dl {
        display: flex;
        justify-content: center;
        flex-direction: column;
        width: 60%;
        margin-top: 0;
        padding-left: 15px;
    }
}

.model-area .model-course dl dd {
    font-size: 1.14286rem;
    font-weight: bold;
}

@media screen and (max-width: 640px) {
    .model-area .model-course dl dd {
        font-size: 1rem;
    }
}

@media screen and (max-width: 900px) {
    .model-area .model-tour {
        margin-top: 40px;
    }
}

@media screen and (max-width: 640px) {
    .model-area .model-tour .model-sec-in ul li {
        width: 47.54098%;
    }

    .model-area .model-tour figure {
        text-align: center;
    }
}

.sns-area {
    padding: min(100px, 15dvw) 0;
    background-color: #f2efe6;
}
.sns-area .sns-ttl {
  font-size: 2.143rem;
  text-align: center;
  margin-bottom: 1em;
}
@media screen and (max-width: 640px) {
  .sns-area .sns-ttl {
    font-size: 1.6rem;
  }
  .sns-area ._insta .sns-ttl {
    margin-bottom: .6em;
  }
}
.sns-area .sns-ttl::before {
  content: '';
  display: inline-block;
  width: 1.2em;
  height: 1.2em;
  background: no-repeat center / contain;
  margin-right: .3em;
  vertical-align: sub;
}
.sns-area ._insta .sns-ttl::before {
  background-image: url('../img/common/ico_insta.png');
}
.sns-area ._x .sns-ttl::before {
  background-image: url('../img/common/ico_x.svg');
}
.sns-area ._fb .sns-ttl::before {
  background-image: url('../img/common/ico_fb.svg');
}
.sns-area .sns-con:has(+.sns-con) {
  margin-bottom: min(70px, 15dvw);
}
.sns-area._useful .sns-con:has(+.sns-con) {
  border-bottom: 1px solid #a9894b;
  padding-bottom: min(90px, 17dvw);
}
.sns-area .sns-lead {
  font-size: 1.143rem;
  text-align: center;
  font-weight: 600;
  line-height: 1.6;
}
@media screen and (max-width: 640px) {
  .sns-area p.sns-lead {
    font-size: .914rem;
  }
}
.sns-area .sns-ttl-wrap {
  border-bottom: 1px solid #ea336b;
  padding-bottom: 2.5em;
  margin-bottom: 2em;
}
@media screen and (max-width: 640px) {
  .sns-area .sns-ttl-wrap {
    padding-bottom: 1.5em;
    margin-bottom: 1.5em;
  }
}
.sns-area .sns-official-ttl-wrap {
  display: flex;
  align-items: center;
  margin-bottom: 1.5em;
}
.sns-area .sns-official-ttl-wrap a {
  text-decoration: none;
}
.sns-area .sns-official-ttl-wrap h4 {
  font-size: 1.286rem;
}
@media screen and (max-width: 640px) {
  .sns-area .sns-official-ttl-wrap h4 {
    font-size: 1.067rem;
  }
}
.sns-area .sns-official-ttl-wrap span {
  display: block;
  font-size: 1.071rem;
  padding-left: .5em;
}
@media screen and (max-width: 640px) {
  .sns-area .sns-official-ttl-wrap span {
    font-size: .914rem;
  }
}
.sns-area .sns-insta-lists {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 2em;
}
@media screen and (max-width: 980px) {
  .sns-area .sns-insta-lists {
    grid-template-columns: repeat(3, 1fr);
    gap: 1em;
  }
}
.sns-area .sns-insta-lists li {
  aspect-ratio: 4 / 5;
  overflow: hidden;
}
.sns-area .sns-insta-lists li img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: scale .5s ease, filter .5s ease;
}
@media (any-hover : hover) {
  .sns-area .sns-insta-lists li a:hover img {
    scale: 1.05;
    filter: opacity(0.7);
  }
}
@media (hover : none) {
  .sns-area .sns-insta-lists li a:active img {
    scale: 1.05;
    filter: opacity(0.7);
  }
}
.sns-area .sns-bnr-wrap {
  width: min(814px, 100%);
  border: 7px solid #f1efe6;
  outline: 1px solid;
  margin: auto;
  transition: outline-width .3s ease;
}
@media screen and (max-width: 900px) {
  .sns-area .sns-bnr-wrap {
    width: min(650px, 100%);
    outline-width: 2px;
  }
}
.sns-area .sns-bnr-wrap._insta {
  outline-color: #ea336b;
}
.sns-area .sns-bnr-wrap._x {
  outline-color: #000;
}
.sns-area .sns-bnr-wrap._fb {
  outline-color: #1877f2;
}
@media (any-hover : hover) {
  .sns-area .sns-bnr-wrap:has(a:hover) {
    outline-width: 3px;
  }
}
@media (hover : none) {
  .sns-area .sns-bnr-wrap:has(a:active) {
    outline-width: 3px;
  }
}
.sns-area .sns-bnr-wrap a {
  display: flex;
  text-decoration: none;  
}
@media screen and (max-width: 900px) {
  .sns-area .sns-bnr-wrap a {
    flex-direction: column;
  }
}
.sns-area .sns-bnr-wrap .sns-bnr-txt-area {
  flex: 1;
  background: #fff;
  padding: 2em 2.3em;
}
@media screen and (max-width: 640px) {
  .sns-area .sns-bnr-wrap .sns-bnr-txt-area {
    padding: 2e;
  }
}
.sns-area .sns-bnr-wrap .sns-bnr-txt-area p {
  font-size: 1.143rem;
  font-weight: 600;
  line-height: 1.5;
}
@media screen and (max-width: 640px) {
  .sns-area .sns-bnr-wrap .sns-bnr-txt-area p {
    font-size: .914rem;
  }
}
.sns-area .sns-bnr-wrap .sns-bnr-img-area {
  width: 50%;
  aspect-ratio: 3 / 2;
  overflow: hidden;
}
@media screen and (max-width: 900px) {
  .sns-area .sns-bnr-wrap .sns-bnr-img-area {
    width: 100%;
  }
}
.sns-area .sns-bnr-wrap .sns-bnr-img-area img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: scale .5s ease, filter .5s ease;
}
@media (any-hover : hover) {
  .sns-area .sns-bnr-wrap a:hover .sns-bnr-img-area img {
    scale: 1.05;
    filter: opacity(0.7);
  }
}
@media (hover : none) {
  .sns-area .sns-bnr-wrap a:active .sns-bnr-img-area img {
    scale: 1.05;
    filter: opacity(0.7);
  }
}

.useful-area {
    padding: 100px 0 120px;
    background-color: #1d365f;
    color: #fff;
}

.useful-area ul li {
    float: left;
    width: 10.83333%;
    margin: 0 4% 30px 0;
    background-color: #fff;
}

@media screen and (max-width: 900px) {
    .useful-area ul li {
        width: 21.66667%;
        margin-right: 4.16667%;
    }

    .useful-area ul li:nth-child(4) {
        margin-right: 0;
    }

    .useful-area ul li:nth-child(5) {
        margin-left: 12.91667%;
    }
}

.useful-area ul li:last-child {
    margin-right: 0;
}

.useful-area ul li a {
    display: block;
    padding: 15px 0;
    color: #1d365f;
    text-align: center;
    text-decoration: none;
}

.useful-area ul li a figcaption {
    margin-top: 5px;
}

/* なごやの魅力 */
.inner-l {
    position: relative;
}

/* なごやの魅力トップ */
.nagoyatop {
    font-size: 1.28571rem;
    margin-bottom: 100px;
}

@media screen and (max-width: 640px) {
    .nagoyatop {
        margin-bottom: 0;
    }
}

.nagoyatop-inner {
    position: relative;
    background-repeat: no-repeat;
    background-position: 0 100%;
    padding-top: 200px;
    padding-bottom: 250px;
}

@media screen and (max-width: 1400px) {
    .nagoyatop-inner {
        padding-top: 15%;
        padding-bottom: 17.85714%;
    }
}

@media screen and (max-width: 900px) {
    .nagoyatop-inner {
        padding-top: 30px;
        padding-bottom: 0;
        background-size: auto 80%;
    }
}

@media screen and (max-width: 640px) {
    .nagoyatop-inner {
        background-size: 70% auto;
        background-position: 0 30vw;
        padding-bottom: 50px;
    }
}

.nagoyatop-txt {
    padding-left: 15px;
    line-height: 1.666;
}

@media screen and (max-width: 900px) {
    .nagoyatop-txt {
        padding-left: 0;
    }
}

.nagoyatop-title {
    margin-bottom: 50px;
}

@media screen and (max-width: 900px) {
    .nagoyatop-title {
        margin-bottom: 20px;
    }
}

@media screen and (max-width: 640px) {
    .nagoyatop-info {
        padding: 0 40% 0 0;
    }
}

@media screen and (max-width: 640px) {
    .nagoyatop-info--right {
        padding: 0 0 0 40%;
    }
}

.nagoyatop-tag {
    color: #000;
    font-size: 1.14286rem;
    display: flex;
    flex-wrap: wrap;
    margin: 60px 0 35px;
}

@media screen and (max-width: 900px) {
    .nagoyatop-tag {
        margin: 20px 0 15px;
    }
}

.nagoyatop-tag li {
    margin: 0 9px 9px 0;
    background-color: #fff;
    border: 1px solid #ccc;
    line-height: 1;
    border-radius: 3px;
    padding: 6px 10px;
}

.nagoyatop-btn {
    text-decoration: none;
    font-size: 1.14286rem;
    font-weight: bold;
    color: #fff;
    text-align: center;
    background-color: #000;
    background-image: url(../img/nagoya/top_arrow.png);
    background-repeat: no-repeat;
    background-position: 95% 50%;
    padding: 10px 40px;
    display: inline-block;
    min-width: 300px;
}

@media screen and (max-width: 640px) {
    .nagoyatop-btn {
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        margin: 10px 3.125%;
    }
}

.nagoyatop-figlist {
    width: 100%;
    max-width: 1400px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    position: absolute;
    left: 0;
    right: 0;
    bottom: -140px;
    margin: auto;
    z-index: 1;
}

@media screen and (max-width: 1400px) {
    .nagoyatop-figlist {
        padding: 0 10px;
    }
}

@media screen and (max-width: 900px) {
    .nagoyatop-figlist {
        position: relative;
        bottom: inherit;
        padding: 20px 0;
    }
}

@media screen and (max-width: 640px) {
    .nagoyatop-figlist {
        padding-top: 0;
    }
}

.nagoyatop-figlist li {
    flex: 0 1 32%;
}

.nagoyatop-figlist img {
    width: 100%;
}

.nagoyatop_a {
    background-image: url(../img/nagoya/top_bg_a.jpg);
    background-position: 50% 100%;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-color: #fff;
}

@media screen and (max-width: 1400px) {
    .nagoyatop_a {
        background-size: 150% auto;
    }
}

@media screen and (max-width: 900px) {
    .nagoyatop_a {
        background-size: 200% auto;
    }
}

@media screen and (max-width: 640px) {
    .nagoyatop_a {
        background-size: inherit;
    }
}

.nagoyatop_b {
    background-image: url(../img/nagoya/top_bg_b.jpg);
    color: #fff;
}

.nagoyatop01 {
    font-weight: bold;
    line-height: 2;
    font-size: 1.71429rem;
    padding-top: 30px;
}

@media screen and (max-width: 900px) {
    .nagoyatop01 {
        font-size: 1.28571rem;
    }
}

.nagoyatop01-txt {
    padding: 70px 0 130px 660px;
}

@media screen and (max-width: 1400px) {
    .nagoyatop01-txt {
        padding: 5% 0 9.28571% 47.14286%;
    }
}

@media screen and (max-width: 640px) {
    .nagoyatop01-txt {
        padding: 0 0 10px;
    }
}

@media screen and (max-width: 640px) {
    .nagoyatop01-title {
        margin-bottom: 95vw;
    }
}

.nagoyatop01-fig {
    position: absolute;
    bottom: -240px;
    left: 20px;
    width: 66.5%;
    max-width: 931px;
}

@media screen and (max-width: 1400px) {
    .nagoyatop01-fig {
        bottom: -17.143vw;
    }
}

@media screen and (max-width: 640px) {
    .nagoyatop01-fig {
        top: 16vw;
        bottom: inherit;
        left: inherit;
        width: 100%;
    }
}

.nagoyatop02-inner {
    background-image: url(../img/nagoya/top_bg02.png);
    background-position: 34% 98%;
    background-repeat: no-repeat;
    background-size: 31%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    padding-top: 115px;
    padding-bottom: 280px;
}

@media screen and (max-width: 1400px) {
    .nagoyatop02-inner {
        padding-top: 8.21429%;
        padding-bottom: 20%;
    }
}

@media screen and (max-width: 900px) {
    .nagoyatop02-inner {
        background-position: 90% 30vw;
        padding-bottom: 0;
    }
}

@media screen and (max-width: 640px) {
    .nagoyatop02-inner {
        padding-top: 30px;
        padding-bottom: 75px;
    }
}

.nagoyatop02-txt {
    padding-top: 160px;
    width: 36.07143%;
}

@media screen and (max-width: 1400px) {
    .nagoyatop02-txt {
        padding-top: 11.42857%;
    }
}

@media screen and (max-width: 900px) {
    .nagoyatop02-txt {
        width: 100%;
    }
}

@media screen and (max-width: 640px) {
    .nagoyatop02-txt {
        padding-top: 0;
    }
}

.nagoyatop02-fig {
    width: 50%;
}

@media screen and (max-width: 900px) {
    .nagoyatop02-fig {
        width: 100%;
        margin-top: 20px;
    }

    .nagoyatop02-fig img {
        width: 100%;
    }
}

@media screen and (max-width: 640px) {
    .nagoyatop02-fig {
        margin-bottom: 10px;
    }
}

.nagoyatop03 {
    background-image: url(../img/nagoya/top_bg03.jpg), url(../img/nagoya/top_bg03_02.jpg);
    background-position: 50% 0;
    background-repeat: no-repeat, repeat;
}

@media screen and (max-width: 1800px) {
    .nagoyatop03 {
        background-size: cover;
    }
}

@media screen and (max-width: 640px) {
    .nagoyatop03 {
        background-image: url(../img/nagoya/top_bg03.jpg);
        padding-top: 30px;
        background-color: #d5e1e6;
        background-size: 150%;
        background-position: 0 10vw;
    }
}

.nagoyatop03-inner {
    height: 79vw;
    max-height: 1452px;
}

@media screen and (max-width: 900px) {
    .nagoyatop03-inner {
        height: auto;
    }
}

@media screen and (max-width: 640px) {
    .nagoyatop03-inner {
        padding-bottom: 50px;
    }
}

@media screen and (max-width: 640px) {
    .nagoyatop03-title {
        margin-bottom: 100vw;
    }
}

.nagoyatop03-txt {
    padding: 240px 0 0 760px;
}

@media screen and (max-width: 1400px) {
    .nagoyatop03-txt {
        padding: 17.14286% 0 0 54.28571%;
    }
}

@media screen and (max-width: 900px) {
    .nagoyatop03-txt {
        padding: 3.57143% 0 0 54.28571%;
    }
}

@media screen and (max-width: 640px) {
    .nagoyatop03-txt {
        padding: 0;
    }
}
.nagoyatop03-body {
  text-shadow: 1px 1px 1px #fff, -1px -1px 1px #fff;
}
.nagoyatop04-inner {
    background-image: url(../img/nagoya/top_bg04.png);
    background-position: 85% 100%;
}

@media screen and (max-width: 640px) {
    .nagoyatop04-inner {
        background-position: 100% 30vw;
    }
}

.nagoyatop04-txt {
    padding-right: 620px;
}

@media screen and (max-width: 900px) {
    .nagoyatop04-txt {
        padding-right: 50%;
    }
}

@media screen and (max-width: 640px) {
    .nagoyatop04-txt {
        padding-right: 0;
    }
}

.nagoyatop05-inner {
    background-image: url(../img/nagoya/top_bg05.png);
}

@media screen and (max-width: 640px) {
    .nagoyatop05-inner {
        background-position: 0 50vw;
    }
}

.nagoyatop05-txt {
    padding-left: 620px;
}

@media screen and (max-width: 900px) {
    .nagoyatop05-txt {
        padding-left: 50%;
    }
}

@media screen and (max-width: 640px) {
    .nagoyatop05-txt {
        padding-left: 0;
    }
}

.nagoyatop06-inner {
    background-image: url(../img/nagoya/top_bg06.png);
    background-position: 100% 100%;
    padding-bottom: 180px;
}

@media screen and (max-width: 1400px) {
    .nagoyatop06-inner {
        padding-bottom: 12.85714%;
    }
}

@media screen and (max-width: 900px) {
    .nagoyatop06-inner {
        padding-bottom: 0;
    }
}

@media screen and (max-width: 640px) {
    .nagoyatop06-inner {
        padding-bottom: 50px;
        background-position: 100% 50vw;
    }
}

.nagoyatop06-txt {
    padding-right: 570px;
}

@media screen and (max-width: 900px) {
    .nagoyatop06-txt {
        padding-right: 50%;
    }
}

@media screen and (max-width: 640px) {
    .nagoyatop06-txt {
        padding-right: 0;
    }
}

.nagoyatop-figlist06 {
    bottom: -80px;
}

@media screen and (max-width: 900px) {
    .nagoyatop-figlist06 {
        bottom: inherit;
    }
}

.nagoyatop-figlist06 li {
    flex: 0 1 19%;
}

.nagoyatop07-inner {
    background-image: url(../img/nagoya/top_bg07.png);
    padding-top: 160px;
    background-position: 15% 100%;
}

@media screen and (max-width: 1400px) {
    .nagoyatop07-inner {
        padding-top: 11.42857%;
    }
}

@media screen and (max-width: 900px) {
    .nagoyatop07-inner {
        padding-top: 30px;
        background-position: 10px 5vw;
    }
}

@media screen and (max-width: 640px) {
    .nagoyatop07-inner {
        background-position: 10px 52vw;
        background-size: 50%;
    }
}

.nagoyatop07-txt {
    padding-left: 610px;
}

@media screen and (max-width: 900px) {
    .nagoyatop07-txt {
        padding-left: 50%;
    }
}

@media screen and (max-width: 640px) {
    .nagoyatop07-txt {
        padding-left: 0;
    }
}

/* なごやの魅力下層 */
.nagoyamap-area {
    padding-bottom: 100px;
}

@media screen and (max-width: 640px) {
    .nagoyamap-area {
        padding-bottom: 60px;
    }
}

.nagoyamap-area .nagoyamap-lead {
    margin-bottom: 30px;
}

.nagoyaarea-area {
    padding: 100px 0;
    background-color: #f4f3f1;
}

@media screen and (max-width: 640px) {
    .nagoyaarea-area {
        padding: 60px 0;
    }
}

.nagoyaarea-area .nagoyaarea-overview {
    display: flex;
    flex-direction: row-reverse;
    margin-bottom: 80px;
}

@media screen and (max-width: 900px) {
    .nagoyaarea-area .nagoyaarea-overview {
        flex-direction: column;
    }
}

@media screen and (max-width: 640px) {
    .nagoyaarea-area .nagoyaarea-overview {
        margin-bottom: 40px;
    }
}

.nagoyaarea-area .nagoyaarea-overview .nagoyaarea-overview-con {
    width: 50%;
    padding: 30px 50px 0;
    background-color: #fff;
}

@media screen and (max-width: 900px) {
    .nagoyaarea-area .nagoyaarea-overview .nagoyaarea-overview-con {
        width: 100%;
        padding: 20px;
    }
}

.nagoyaarea-area .nagoyaarea-overview .nagoyaarea-overview-con .nagoyaarea-overview-ttl {
    margin: 20px 0;
    font-size: 1.71429rem;
    text-align: center;
}

@media screen and (max-width: 640px) {
    .nagoyaarea-area .nagoyaarea-overview .nagoyaarea-overview-con .nagoyaarea-overview-ttl {
        font-size: 1.28571rem;
    }
}

.nagoyaarea-area .nagoyaarea-overview .nagoyaarea-overview-con .nagoyaarea-overview-txt {
    line-height: 2;
}

.nagoyaarea-area .nagoyaarea-overview figure {
    width: 50%;
}

@media screen and (max-width: 900px) {
    .nagoyaarea-area .nagoyaarea-overview figure {
        width: 100%;
    }
}

.nagoyaarea-area .nagoyaarea-overview figure img {
    width: 100%;
}

.nagoyaarea-area .nagoyaarea-link {
    padding-bottom: 20px;
}

.nagoyaarea-area .nagoyaarea-link li {
    margin-bottom: 10px;
    font-weight: bold;
    text-align: right;
}

.nagoyaarea-area .nagoyaarea-list {
    margin-bottom: 80px;
}

@media screen and (max-width: 640px) {
    .nagoyaarea-area .nagoyaarea-list {
        margin-bottom: 40px;
    }
}

.nagoyaarea-area .nagoyaarea-list figure {
    margin-bottom: 15px;
}

.nagoyaarea-area .nagoyaarea-list .btn-arrow {
    max-width: 600px;
}

.nagoyaarea-area .nagoyaarea-course {
    margin-bottom: 80px;
}

@media screen and (max-width: 640px) {
    .nagoyaarea-area .nagoyaarea-course {
        margin-bottom: 40px;
    }
}

.nagoyaarea-area .nagoyaarea-course .nagoyaarea-course-list {
    display: flex;
    gap: 1.5em;
    padding-bottom: 40px;
}

@media screen and (max-width: 640px) {
    .nagoyaarea-area .nagoyaarea-course .nagoyaarea-course-list {
        flex-direction: column;
        padding-bottom: 10px;
    }
}

.nagoyaarea-area .nagoyaarea-course .nagoyaarea-course-list li {
    width: 33.33333%;
    margin-bottom: 20px;
}

@media screen and (max-width: 640px) {
  .nagoyaarea-area .nagoyaarea-course .nagoyaarea-course-list li {
      width: 100%;
  }
  .nagoyaarea-area .nagoyaarea-course .nagoyaarea-course-list li img {
    width: 100%;
  }
}

.nagoyaarea-area .nagoyaarea-course .nagoyaarea-course-list li .nagoyaarea-course-con {
    padding: 15px;
}

.nagoyaarea-area .nagoyaarea-course .nagoyaarea-course-list li .nagoyaarea-course-con .ico {
    margin-right: 5px;
}

.nagoyaarea-area .nagoyaarea-course .btn-arrow {
    max-width: 600px;
}

.nagoyaarea-area .nagoyaarea-feature .nagoyaarea-feature-list {
    display: flex;
    gap: 1.5em;
    padding-bottom: 40px;
}

@media screen and (max-width: 640px) {
    .nagoyaarea-area .nagoyaarea-feature .nagoyaarea-feature-list {
        flex-wrap: wrap;
        gap: 1em;
        padding-bottom: 10px;
    }
}

.nagoyaarea-area .nagoyaarea-feature .nagoyaarea-feature-list li {
    width: 25%;
    margin-bottom: 20px;
}

@media screen and (max-width: 640px) {
    .nagoyaarea-area .nagoyaarea-feature .nagoyaarea-feature-list li {
      width: calc(50% - .5em);
    }
}

.nagoyaarea-area .nagoyaarea-feature .nagoyaarea-feature-list li .nagoyaarea-feature-con {
    padding: 15px 10px;
}

.nagoyaarea-area .nagoyaarea-feature .btn-arrow {
    max-width: 600px;
}

.nagoyaaccess-area {
    padding: 80px 0;
}

@media screen and (max-width: 640px) {
    .nagoyaaccess-area {
        padding: 60px 0;
    }
}

.nagoyaaccess-area .nagoyaaccess-stations {
    max-width: 800px;
    margin: 0 auto;
}

.nagoyaaccess-area .nagoyaaccess-stations .nagoyaaccess-ttl {
    padding: 10px 20px;
    background-color: #a9894b;
    color: #fff;
    font-size: 1.14286rem;
}

@media screen and (max-width: 640px) {
    .nagoyaaccess-area .nagoyaaccess-stations .nagoyaaccess-ttl {
        font-size: 1rem;
    }
}

.nagoyaaccess-area .nagoyaaccess-stations ul {
    margin-left: 45px;
}

@media screen and (max-width: 640px) {
    .nagoyaaccess-area .nagoyaaccess-stations ul {
        margin-left: 30px;
    }
}

.nagoyaaccess-area .nagoyaaccess-stations ul li {
    padding: 0 0 15px 55px;
    border-left: 1px dotted #000;
}

@media screen and (max-width: 640px) {
    .nagoyaaccess-area .nagoyaaccess-stations ul li {
        padding-left: 30px;
    }
}

.nagoyaaccess-area .nagoyaaccess-stations ul li:first-child {
    padding-top: 40px;
}

.nagoyaaccess-area .nagoyaaccess-stations ul li .nagoyaaccess-distance {
    position: relative;
    display: table;
    width: 100%;
    margin-bottom: 10px;
    border: 1px solid #a9894b;
    font-size: 1.14286rem;
}

@media screen and (max-width: 640px) {
    .nagoyaaccess-area .nagoyaaccess-stations ul li .nagoyaaccess-distance {
        font-size: 1rem;
    }
}

.nagoyaaccess-area .nagoyaaccess-stations ul li .nagoyaaccess-distance::before {
    content: '';
    position: absolute;
    top: 50%;
    left: -55px;
    width: 55px;
    height: 1px;
    border-top: 1px dotted #000;
}

@media screen and (max-width: 640px) {
    .nagoyaaccess-area .nagoyaaccess-stations ul li .nagoyaaccess-distance::before {
        left: -30px;
        width: 30px;
    }
}

.nagoyaaccess-area .nagoyaaccess-stations ul li .nagoyaaccess-distance .nagoyaaccess-name {
    display: table-cell;
    width: 7em;
    padding: 10px 0;
    background-color: #a9894b;
    color: #fff;
    text-align: center;
    vertical-align: middle;
}

.nagoyaaccess-area .nagoyaaccess-stations ul li .nagoyaaccess-distance .nagoyaaccess-way {
    display: table-cell;
    padding: 10px 20px;
}

.nagoyaaccess-area .nagoyaaccess-stations ul li .nagoyaaccess-distance .nagoyaaccess-way p {
    display: inline-block;
    margin-right: 40px;
}

@media screen and (max-width: 640px) {
    .nagoyaaccess-area .nagoyaaccess-stations ul li .nagoyaaccess-distance .nagoyaaccess-way p {
        display: block;
        margin: 0 0 10px 0;
    }

    .nagoyaaccess-area .nagoyaaccess-stations ul li .nagoyaaccess-distance .nagoyaaccess-way p:last-child {
        margin-bottom: 0;
    }
}

.nagoyaaccess-area .nagoyaaccess-stations ul li .nagoyaaccess-distance .nagoyaaccess-way p .ico {
    margin-right: 5px;
}

.nagoyaaccess-area .nagoyaaccess-stations ul li:last-child {
    padding-bottom: 0;
    border-left: none;
}

.nagoyaaccess-area .nagoyaaccess-stations ul li:last-child .nagoyaaccess-distance::after {
    content: '';
    position: absolute;
    top: 0;
    left: -56px;
    width: 1px;
    height: 50%;
    border-left: 1px dotted #000;
}

@media screen and (max-width: 640px) {
    .nagoyaaccess-area .nagoyaaccess-stations ul li:last-child .nagoyaaccess-distance::after {
        left: -31px;
    }
}

.nagoyarelated-area {
    padding: 80px 0;
    background-color: #f4f3f1;
}

@media screen and (max-width: 640px) {
    .nagoyarelated-area {
        padding: 60px 0;
    }
}

.nagoyarelated-area ul {
    display: flex;
    justify-content: space-between;
    max-width: 620px;
    margin: 0 auto;
}

.nagoyarelated-area ul li {
    width: 48.3871%;
}

/* envoy */
.nagoyaenvoy-area .nagoyaenvoy-main {
    margin-bottom: 80px;
}

@media screen and (max-width: 900px) {
    .nagoyaenvoy-area .nagoyaenvoy-main {
        margin-bottom: 60px;
    }
}
.nagoyaenvoy-area .nagoyaenvoy-main .tokushi-lists-ttl {
  padding-block: 2em .5em;
}
.nagoyaenvoy-area .nagoyaenvoy-main .tokushi-lists li {
  display: flex;
}
.nagoyaenvoy-area .nagoyaenvoy-main .tokushi-lists li:has(+ li) {
  margin-bottom: .5em;
}
.nagoyaenvoy-area .nagoyaenvoy-main .tokushi-lists li .tokushi-date::after {
  content: '：';
}
.nagoyaenvoy-area .nagoyaenvoy-main figure {
    margin-bottom: 30px;
}

.nagoyaenvoy-area .nagoyaenvoy-detail {
    padding: 100px 0;
    background-color: #f4f3f1;
}

@media screen and (max-width: 900px) {
    .nagoyaenvoy-area .nagoyaenvoy-detail {
        padding: 60px 0;
    }
}

.nagoyaenvoy-area .nagoyaenvoy-detail .nagoyaenvoy-detail-box {
    margin-bottom: 100px;
}

.nagoyaenvoy-area .nagoyaenvoy-detail .nagoyaenvoy-detail-box:last-child {
    margin-bottom: 0;
}

@media screen and (max-width: 900px) {
    .nagoyaenvoy-area .nagoyaenvoy-detail .nagoyaenvoy-detail-box {
        margin-bottom: 60px;
    }
}

.nagoyaenvoy-area .nagoyaenvoy-detail .nagoyaenvoy-detail-main {
    display: flex;
    justify-content: space-between;
    margin-bottom: 60px;
}

@media screen and (max-width: 900px) {
    .nagoyaenvoy-area .nagoyaenvoy-detail .nagoyaenvoy-detail-main {
        flex-direction: column;
    }
}

.nagoyaenvoy-area .nagoyaenvoy-detail .nagoyaenvoy-detail-main figure {
    width: 50%;
}

@media screen and (max-width: 900px) {
    .nagoyaenvoy-area .nagoyaenvoy-detail .nagoyaenvoy-detail-main figure {
        width: 100%;
        text-align: center;
    }
}

.nagoyaenvoy-area .nagoyaenvoy-detail .nagoyaenvoy-detail-main .nagoyaenvoy-detail-con {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 47.85714%;
}

@media screen and (max-width: 900px) {
    .nagoyaenvoy-area .nagoyaenvoy-detail .nagoyaenvoy-detail-main .nagoyaenvoy-detail-con {
        display: block;
        width: 100%;
        margin-top: 20px;
    }
}

.nagoyaenvoy-area .nagoyaenvoy-detail .nagoyaenvoy-detail-main .nagoyaenvoy-detail-txt {
    margin-bottom: 40px;
}

@media screen and (max-width: 900px) {
    .nagoyaenvoy-area .nagoyaenvoy-detail .nagoyaenvoy-detail-main .nagoyaenvoy-detail-txt {
        margin-bottom: 20px;
    }
}

.nagoyaenvoy-area .nagoyaenvoy-detail .nagoyaenvoy-detail-main .btn-arrow {
    max-width: 360px;
}

.nagoyaenvoy-area .nagoyaenvoy-detail .nagoyaenvoy-detail-main .btn-arrow::after {
    display: none;
}

.nagoyaenvoy-area .nagoyaenvoy-detail .nagoyaenvoy-detail-main .btn-arrow .ico {
    margin-left: 10px;
}

.nagoyaenvoy-area .nagoyaenvoy-detail ul {
    display: flex;
    flex-wrap: wrap;
    padding: 2px 2px;
    background-color: #fff;
}

.nagoyaenvoy-area .nagoyaenvoy-detail ul li {
    width: 50%;
    padding: 2px;
}

.nagoyaenvoy-area .nagoyaenvoy-news {
    padding: 100px 0;
}

@media screen and (max-width: 900px) {
    .nagoyaenvoy-area .nagoyaenvoy-news {
        padding: 60px 0;
    }
}

.nagoyaenvoy-area .nagoyaenvoy-news ul {
    border-top: 1px solid #ccc;
    font-size: 1.14286rem;
}

@media screen and (max-width: 640px) {
    .nagoyaenvoy-area .nagoyaenvoy-news ul {
        font-size: 1rem;
    }
}

.nagoyaenvoy-area .nagoyaenvoy-news ul li {
    border-bottom: 1px solid #ccc;
}

.nagoyaenvoy-area .nagoyaenvoy-news .nagoyaenvoy-news-box {
    display: flex;
    padding: 15px 12px;
    text-decoration: none;
}

.nagoyaenvoy-area .nagoyaenvoy-news .nagoyaenvoy-news-box figure {
    width: 90px;
    margin-right: 30px;
}

.nagoyaenvoy-area .nagoyaenvoy-news .nagoyaenvoy-news-box dl {
    display: flex;
    flex-direction: column;
    justify-content: center;
    flex: 1;
}

.nagoyaenvoy-area .nagoyaenvoy-news .nagoyaenvoy-news-box dl dt {
    margin-bottom: 5px;
}

/* 動画ギャラリー */
.movielist-area {
    padding: 60px 0;
    background-color: #f4f3f1;
}

.movielist-area .movielist-block {
    padding-bottom: 50px;
}

@media screen and (max-width: 900px) {
    .movielist-area .movielist-block {
        padding-bottom: 10px;
    }
}

.movielist-area .movielist-block:last-child {
    padding-bottom: 0;
}

.movielist-area .movielist-block .movielist-list {
    display: flex;
    flex-wrap: wrap;
    max-width: 1150px;
    margin: 0 auto;
}

.movielist-area .movielist-block .movielist-list li {
    width: 33.33333%;
    margin-bottom: 35px;
    padding: 0 10px;
}

@media screen and (max-width: 900px) {
    .movielist-area .movielist-block .movielist-list li {
        width: 50%;
    }
}

.movielist-area .movielist-block .movielist-list li .movielist-caption {
    margin-top: 10px;
    text-align: center;
}

.moviedetail-area .spotname {
    padding: 45px 0 60px;
}

@media screen and (max-width: 640px) {
    .moviedetail-area .spotname {
        padding-bottom: 40px;
    }
}

.moviedetail-area .box-youtube {
    margin-bottom: 60px;
}

.moviedetail-area .spotcopy {
    margin-bottom: 80px;
}

.moviedetail-area .movierelated .box-col-item {
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
}

@media screen and (max-width: 640px) {
    .moviedetail-area .movierelated .box-col-item {
        box-shadow: none;
    }

    .moviedetail-area .movierelated .box-col-item a {
        display: flex;
    }

    .moviedetail-area .movierelated .box-col-item a>figure {
        width: 40%;
    }
}

.moviedetail-area .movierelated .box-col-item .movierelated-con {
    padding: 10px 10px 20px;
}

@media screen and (max-width: 640px) {
    .moviedetail-area .movierelated .box-col-item .movierelated-con {
        display: flex;
        justify-content: center;
        flex-direction: column;
        width: 60%;
        padding: 0 0 0 15px;
    }
}

.moviedetail-area .movierelated .box-col-item .movierelated-con .box-icon {
    margin-bottom: 5px;
}

.moviedetail-area .movierelated .box-col-item .movierelated-con dt {
    margin-bottom: 5px;
    font-size: 1.28571rem;
    font-weight: bold;
    text-decoration: underline;
}

/* 特集 - 一覧 */
.featurepickup-area {
    padding-bottom: 100px;
}

@media screen and (max-width: 640px) {
    .featurepickup-area {
        padding-bottom: 60px;
    }
}

.featurepickup-area dt {
    margin: 10px 0 5px;
    font-size: 1.14286rem;
    font-weight: bold;
}

.featurepickup-area .box-tag {
    margin-top: 10px;
}

.featurepickup-area .box-tag span {
    margin-right: 3px;
}

.featurepickup-area .box-tag span:last-child {
    margin-right: 0;
}

.featureresult-area .searchresult-list.js-listgrid .searchresult-item {
    width: 23.07692%;
    margin-right: 2.53846%;
    padding: 0;
}

@media screen and (max-width: 900px) {
    .featureresult-area .searchresult-list.js-listgrid .searchresult-item {
        width: 47.5%;
        margin-right: 5%;
    }
}

.featureresult-area .searchresult-list.js-listgrid .searchresult-item:nth-child(3n) {
    margin-right: 2.53846%;
}

@media screen and (max-width: 900px) {
    .featureresult-area .searchresult-list.js-listgrid .searchresult-item:nth-child(3n) {
        margin-right: 5%;
    }
}

.featureresult-area .searchresult-list.js-listgrid .searchresult-item:nth-child(4n) {
    margin-right: 0;
}

@media screen and (max-width: 900px) {
    .featureresult-area .searchresult-list.js-listgrid .searchresult-item:nth-child(even) {
        margin-right: 0;
    }
}

.featureresult-area .searchresult-list.js-listgrid .searchresult-item .searchresult-con {
    padding: 10px;
}

.featurebnnav-area {
    padding: 100px 0;
}

@media screen and (max-width: 640px) {
    .featurebnnav-area {
        padding: 60px 0;
    }
}

.featurebnbtn-area {
    padding: 100px 0 79px;
}

@media screen and (max-width: 640px) {
    .featurebnbtn-area {
        padding: 60px 0 30px;
    }
}

.featurereco-area {
    padding: 100px 0;
}

@media screen and (max-width: 640px) {
    .featurereco-area {
        padding: 60px 0 40px;
    }
}

.featurereco-area ul {
    display: flex;
    justify-content: space-between;
    max-width: 1320px;
    margin: 0 auto;
}

@media screen and (max-width: 640px) {
    .featurereco-area ul {
        flex-direction: column;
    }
}

.featurereco-area ul li {
    width: 30.30303%;
    text-align: center;
}

@media screen and (max-width: 640px) {
    .featurereco-area ul li {
        width: 100%;
        margin-bottom: 20px;
    }
}

/* 特集 - 詳細 */
.featuredetail-area {
    padding-top: 60px;
    padding-bottom: 75px;
}

.feature-con {
    float: left;
    width: 77.14286%;
}

@media screen and (max-width: 1000px) {
    .feature-con {
        float: none;
        width: 100%;
    }
}

.featureimg {
    margin-bottom: 50px;
}

.featurecopy {
    margin-bottom: 60px;
}

@media screen and (max-width: 640px) {
    .featurecopy .detail-link {
        margin: 0 0 15px;
    }
}

.featurecopy .featurecopy-content {
    float: left;
    width: 76.66667%;
}

@media screen and (max-width: 640px) {
    .featurecopy .featurecopy-content {
        float: none;
        width: 100%;
        clear: both;
    }
}

.featurecopy .featurecopy-content p {
    line-height: 1.8;
}

.featurecopy .featurecopy-ttl {
    margin-bottom: 25px;
    font-size: 2rem;
}

@media screen and (max-width: 640px) {
    .featurecopy .featurecopy-ttl {
        font-size: 1.42857rem;
    }
}
.feature-content {
    background-color: #F6F6F6;
    padding: 25px 30px 0;
    margin-bottom: 30px;
}
.feature-content__title {
    font-size: 24px;
    background-image:url(../img/feature/bg_title_content.png);
    background-position:0 50%;
    background-repeat: no-repeat;
    padding-left: 50px;
    margin-bottom: 25px;
}
.feature-content__list {
    height: 170px;
    overflow: hidden;
    margin: 0 0 40px 50px;
}
@media screen and (max-width: 640px) {
    .feature-content__list {
        margin-left: 0;
    }
}
.feature-content__list.is-open {
    height: auto;
}
.feature-content__item {
    font-size: 17px;
    line-height: 1.5;
    font-weight: bold;
}
.feature-content__item a {
    color: #683100;
    text-decoration: none;
}
.feature-content__list02 {
    margin: 0 0 10px 20px;
}
.feature-content__item02 {
    font-size: 16px;
    line-height: 2.5;
    position: relative;
    padding-left: 10px;
    list-style: none;
}
.feature-content__list02 a {
    color: #000;
    font-weight: normal;
    text-decoration: none;
}
/* .feature-content__list02_01::before {
      content: '';
      position: relative;
      left: -9px;
      top: 16px;
      display: block;
      width: 3px;
      height: 3px;
      border-radius: 50%;
      background-color: #000;
} */
.feature-content__btn {
    border-top: 1px solid  #DEDEDE;
    width: 100%;
    line-height: 70px;
    cursor: pointer;
    outline: none;
}
.feature-content__btn-inner {
    position: relative;
}
.feature-content__btn-inner::after {
    content: '';
    position: absolute;
    top: 0;
    right: -20px;
    width: 8px;
    height: 8px;
    border-top: 2px solid #000;
    border-right: 2px solid #000;
    transform: rotate(135deg);
}
.is-open .feature-content__btn-inner::after {
    top: 5px;
    transform: rotate(-45deg);
}

.feature-box {
    margin-bottom: 80px;
}

.feature-box .feature-ttl {
    margin-bottom: 25px;
    padding-bottom: 12px;
    border-bottom: 3px solid #fb6a8c;
    font-size: 1.57143rem;
}

@media screen and (max-width: 640px) {
    .feature-box .feature-ttl {
        font-size: 1.28571rem;
    }
}

.feature-box .feature-lead {
    margin-bottom: 90px;
    line-height: 1.8;
}

.feature-box .feature-lead dt {
    margin-bottom: 5px;
    font-size: 1.14286rem;
    font-weight: bold;
    line-height: 1.5;
}

.feature-box .feature-lead dd {
    margin-bottom: 20px;
}

.feature-box .feature-lead dd:last-child {
    margin-bottom: 0;
}

.feature-box .feature-img {
    margin-bottom: 60px;
    text-align: center;
}

.feature-box .feature-btn {
    text-align: center;
}

.feature-box .feature-btn a {
    max-width: 600px;
}

.feature-txt {
    margin-bottom: 165px;
    padding-top: 35px;
    border-top: 1px solid #ccc;
    line-height: 1.8;
}

@media screen and (max-width: 640px) {
    .feature-txt {
        margin-bottom: 60px;
    }
}

.featurerelated a {
    display: block;
    text-align: center;
    text-decoration: none;
}

.featurerelated p {
    margin-top: 10px;
}

.featurerelated .box-tag {
    margin-top: 10px;
}

.featurepickup {
    padding: 60px 0 80px;
    background-color: #a9894b;
    color: #fff;
}

@media screen and (max-width: 640px) {
    .featurepickup {
        margin-bottom: 40px;
    }
}

.featurepickup .featurepickup-ttl {
    margin-bottom: 15px;
    font-size: 1.42857rem;
}

@media screen and (max-width: 640px) {
    .featurepickup .featurepickup-ttl {
        font-size: 1.28571rem;
    }
}

.featurepickup a {
    display: block;
    color: #fff;
    text-align: center;
    text-decoration: none;
}

.featurepickup p {
    margin-top: 10px;
    font-size: 1.14286rem;
    font-weight: bold;
}

.feature-side {
    float: right;
    width: 21.42857%;
}

@media screen and (max-width: 1000px) {
    .feature-side {
        float: none;
        width: 100%;
        margin-top: 40px;
    }
}

.feature-side .feature-sub-box {
    margin-bottom: 40px;
}

.feature-side .feature-sub-box:last-child {
    margin-bottom: 0;
}

.feature-side .feature-sub-ttl {
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 3px solid #d3c5aa;
    font-size: 1.42857rem;
    font-weight: bold;
}

.feature-side .feature-sub-ttl .ico {
    margin-right: 8px;
}

.feature-side a {
    text-decoration: none;
}

.feature-side .btn-arrow {
    max-width: 250px;
}

.feature-side .feature-sub-search {
    padding: 20px 20px 30px;
    background-color: #f2efe6;
}

.feature-side .feature-sub-search dl {
    margin-bottom: 25px;
}

.feature-side .feature-sub-search dl dt {
    margin-bottom: 10px;
    font-size: 1.14286rem;
    font-weight: bold;
}

.feature-side .feature-sub-search .feature-sub-search-form {
    display: flex;
}

.feature-side .feature-sub-search .feature-sub-search-form p {
    flex: 1;
    border: 1px solid #ccc;
    background-color: #fff;
}

.feature-side .feature-sub-search .feature-sub-search-form p input {
    width: 100%;
    padding: 10px;
    border: none;
    outline: none;
}

.feature-side .feature-sub-search .feature-sub-search-form button {
    width: 36px;
    padding: 5px 0;
    border: 1px solid #666;
    background-color: #000;
    text-align: center;
}

.feature-side .feature-sub-search .feature-sub-search-sel p {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 15px;
}

.feature-side .feature-sub-search .feature-sub-search-sel p:last-child {
    margin-bottom: 0;
}

.feature-side .feature-sub-search .feature-sub-search-sel p label {
    width: 50%;
    margin-bottom: 5px;
}

.feature-side .feature-sub-search select {
    width: 100%;
    padding: 10px;
}

.feature-side .feature-sub-search .btn-arrow {
    max-width: 120px;
    font-size: 1rem;
}

.feature-side .feature-sub-list li {
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #ccc;
}

.feature-side .feature-sub-list li:last-child {
    border-bottom: none;
}

.feature-side .feature-sub-list a {
    display: flex;
}

.feature-side .feature-sub-list figure {
    width: 100px;
}

.feature-side .feature-sub-list p,
.feature-side .feature-sub-list dl {
    flex: 1;
    padding-left: 10px;
}

.feature-side .feature-sub-related figure {
    width: 126px;
}

.feature-side .feature-sub-ranking .feature-sub-list p {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.feature-side .feature-sub-ranking .feature-sub-list p .ico {
    display: block;
}

.feature-side .feature-sub-reco dt {
    font-weight: bold;
}

.feature-side .feature-sub-course dt {
    margin-bottom: 5px;
}

.feature-side .feature-sub-pr li {
    margin-bottom: 10px;
    text-align: center;
}

/* イベント一覧 */
.event-slider {
    position: relative;
    margin-bottom: 60px;
}

.event-slider .event-slider-item {
    padding: 8px;
}

.event-slider .event-slider-item a {
    display: block;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
}
.event-slider .event-slider-item figure {
    position: relative;
}
.event-slider .event-slider-item figure::before {
    content:'';
    /* padding-top: 75%; */
    display: block;
}
.event-slider .event-slider-item img {
/*     object-fit: contain;
    font-family: 'object-fit: contain;'; */
    height: 100%;
    position: absolute;
    top: 0;
}

.event-slider .event-slider-item .event-slider-con {
    padding: 10px;
}

.event-slider-date {
    margin-bottom: 5px;
    color: #666;
}

.event-slider-name {
    margin-bottom: 10px;
    font-size: 1.14286rem;
    font-weight: bold;
    text-decoration: underline;
}

.event-slider .event-slider-item .box-tag {
    margin-top: 15px;
}

.event-slider .event-slider-btn {
    position: absolute;
    top: 50%;
    margin-top: -30px;
}

.event-slider .event-slider-btn.event-slider-prev {
    left: 0;
}

.event-slider .event-slider-btn.event-slider-next {
    right: 0;
}

.eventsearch-area .box-btns {
    margin-bottom: 25px;
}

.eventsearch-area .eventsearch-link {
    margin-bottom: 40px;
    font-size: 1.28571rem;
    text-align: right;
}

@media screen and (max-width: 640px) {
    .eventsearch-area .eventsearch-link {
        text-align: center;
    }
}

.eventsearch-area .eventsearch-month {
    display: flex;
    justify-content: space-between;
}

@media screen and (max-width: 640px) {
    .eventsearch-area .eventsearch-month {
        display: none;
    }
}

.eventsearch-area .eventsearch-month li {
    width: 7.5%;
}

.eventsearch-area .eventsearch-month li a {
    display: block;
    padding: 5px 0;
    border: 2px solid #a9894b;
    background-color: #a9894b;
    color: #fff;
    font-size: 1.28571rem;
    text-align: center;
    text-decoration: none;
}

.eventsearch-area .eventsearch-month li.is-current a {
    background-color: #fff;
    color: #000;
}

.eventsearch-area .eventsearch-sel {
    padding: 5px;
}

.eventmonth-area {
    padding: 80px 0;
    background-color: #f4f3f1;
}

@media screen and (max-width: 900px) {
    .eventmonth-area {
        padding: 60px 0;
    }
}

.eventmonth-area .eventmonth-head {
    display: flex;
    justify-content: space-between;
    margin-bottom: 55px;
}

.eventmonth-area .eventmonth-head p {
    width: 130px;
}

.eventmonth-area .eventmonth-head .eventmonth-ttl {
    font-size: 1.71429rem;
}

.eventmonth-area .eventmonth-head .eventmonth-ttl big {
    font-size: 2.14286rem;
}

.eventmonth-area .eventmonth-list .eventmonth-list-head {
    display: flex;
}

@media screen and (max-width: 900px) {
    .eventmonth-area .eventmonth-list .eventmonth-list-head {
        display: none;
    }
}

.eventmonth-area .eventmonth-list .eventmonth-list-head p {
    padding: 20px 15px;
    background-color: #a9894b;
    color: #fff;
    font-size: 1.28571rem;
    text-align: center;
}

.eventmonth-area .eventmonth-list .eventmonth-list-head p:nth-child(1) {
    width: 63.75%;
}

.eventmonth-area .eventmonth-list .eventmonth-list-head p:nth-child(2) {
    width: 36.25%;
    border-left: 1px solid #ccc;
}

.eventmonth-area .eventmonth-list .eventmonth-list-date {
    padding: 20px 15px;
    background-color: #000;
    color: #fff;
    font-size: 1.14286rem;
    text-align: center;
}

.eventmonth-area .eventmonth-list .eventmonth-list-item {
    display: flex;
    border-bottom: 1px solid #ccc;
    background-color: #fff;
}

@media screen and (max-width: 900px) {
    .eventmonth-area .eventmonth-list .eventmonth-list-item {
        flex-direction: column;
    }
}

.eventmonth-area .eventmonth-list .eventmonth-list-item .eventmonth-list-item-info {
    display: flex;
    justify-content: space-between;
    width: 63.75%;
    padding: 30px 35px;
}

@media screen and (max-width: 900px) {
    .eventmonth-area .eventmonth-list .eventmonth-list-item .eventmonth-list-item-info {
        width: 100%;
        padding: 25px 25px 20px;
    }
}

.eventmonth-area .eventmonth-list .eventmonth-list-item .eventmonth-list-item-info figure {
    width: 120px;
}

.eventmonth-area .eventmonth-list .eventmonth-list-item .eventmonth-list-item-info .eventmonth-list-item-con {
    flex: 1;
    padding-left: 25px;
}

.eventmonth-area .eventmonth-list .eventmonth-list-item .eventmonth-list-item-name {
    margin-bottom: 10px;
    font-size: 1.28571rem;
    font-weight: bold;
}

@media screen and (max-width: 900px) {
    .eventmonth-area .eventmonth-list .eventmonth-list-item .eventmonth-list-item-txt {
        display: none;
    }
}

.eventmonth-area .eventmonth-list .eventmonth-list-item .eventmonth-list-item-desc {
    display: none;
}

@media screen and (max-width: 900px) {
    .eventmonth-area .eventmonth-list .eventmonth-list-item .eventmonth-list-item-desc {
        display: block;
        padding: 0 25px 25px;
    }
}

.eventmonth-area .eventmonth-list .eventmonth-list-item .eventmonth-list-item-data {
    width: 36.25%;
    border-left: 1px solid #ccc;
    padding: 30px;
}

@media screen and (max-width: 900px) {
    .eventmonth-area .eventmonth-list .eventmonth-list-item .eventmonth-list-item-data {
        display: none;
    }
}

.eventmonth-area .eventmonth-list .eventmonth-list-item .eventmonth-list-item-date {
    margin-bottom: 5px;
    font-size: 1.28571rem;
    font-weight: bold;
}

/* スポット - 一覧 */
.spotslide-area {
    margin-bottom: 60px;
}

@media screen and (max-width: 640px) {
    .spotslide-area {
        margin-bottom: 40px;
    }
}

/* スポット - 詳細 */
.spotdetail {
    position: relative;
}

.spotdetail-area .spotname {
    padding: 45px 0 60px;
}

@media screen and (max-width: 640px) {
    .spotdetail-area .spotname {
        padding-bottom: 40px;
    }
}

.spotdetail-area .spotcopy-wrap {
    display: flex;
    justify-content: space-between;
    margin-bottom: 30px;
}

@media screen and (max-width: 900px) {
    .spotdetail-area .spotcopy-wrap {
        flex-direction: column;
    }
}

.spotdetail-area .spotcopy-wrap .spotcopy {
    width: 70%;
    margin-bottom: 0;
}

@media screen and (max-width: 900px) {
    .spotdetail-area .spotcopy-wrap .spotcopy {
        width: 100%;
        margin-bottom: 30px;
    }
}

.spotdetail-area .spotcopy-wrap .spotmovie {
    width: 28%;
}

@media screen and (max-width: 900px) {
    .spotdetail-area .spotcopy-wrap .spotmovie {
        width: 100%;
    }
}

/* ツアー詳細 */
.tourdetail-area {
    padding: 60px 0;
    background-color: #f4f3f1;
}

.tourdetail-area .tourdetail-fig {
    display: flex;
    justify-content: space-between;
    margin-bottom: 60px;
    padding: 35px 30px 30px 40px;
    background-color: #fff;
}

@media screen and (max-width: 900px) {
    .tourdetail-area .tourdetail-fig {
        display: block;
    }
}

.tourdetail-area .tourdetail-fig .tourdetail-fig-l {
    position: relative;
    width: 36.28319%;
    padding: 5px 0 120px;
}

@media screen and (max-width: 900px) {
    .tourdetail-area .tourdetail-fig .tourdetail-fig-l {
        width: 100%;
    }
}

.tourdetail-area .tourdetail-fig .tourdetail-fig-l .box-icon {
    margin-bottom: 35px;
}

.tourdetail-area .tourdetail-fig .tourdetail-fig-l .box-icon span {
    min-width: 150px;
    font-size: 0.92857rem;
    text-align: center;
}

.tourdetail-area .tourdetail-fig .tourdetail-fig-l .tourdetail-fig-ttl {
    margin-bottom: 15px;
    font-size: 1.71429rem;
}

.tourdetail-area .tourdetail-fig .tourdetail-fig-l .tourdetail-fig-date {
    font-size: 1.28571rem;
}

.tourdetail-area .tourdetail-fig .tourdetail-fig-l ul {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    max-width: 410px;
    margin: 0 auto;
}

.tourdetail-area .tourdetail-fig .tourdetail-fig-l ul li {
    padding: 0 10px;
}

.tourdetail-area .tourdetail-fig .tourdetail-fig-l ul .is-movie {
    position: relative;
}

.tourdetail-area .tourdetail-fig .tourdetail-fig-l ul .is-movie::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(51, 51, 51, 0.5) url("../img/common/i_play.png") no-repeat center center;
}

.tourdetail-area .tourdetail-fig .tourdetail-fig-r {
    width: 60.17699%;
}

@media screen and (max-width: 900px) {
    .tourdetail-area .tourdetail-fig .tourdetail-fig-r {
        width: 100%;
        margin-top: 40px;
    }
}

.tourdetail-area .tourdetail-sns {
    max-width: 860px;
    margin: 0 auto;
}

.tourdetail-area .tourdetail-sns li {
    float: left;
    width: 31.39535%;
    margin-right: 2.90698%;
}

@media screen and (max-width: 640px) {
    .tourdetail-area .tourdetail-sns li {
        float: none;
        width: 100%;
        margin-right: 0;
        margin-bottom: 20px;
    }
}

.tourdetail-area .tourdetail-sns li:last-child {
    margin-right: 0;
}

@media screen and (max-width: 640px) {
    .tourdetail-area .tourdetail-sns li:last-child {
        margin-bottom: 0;
    }
}

.tourdetail-area .tourdetail-sns li .ico {
    margin-right: 10px;
}

.tourdetail-area .tourdetail-sec {
    margin-bottom: 60px;
}

.tourdetail-area .tbl {
    font-size: 1.14286rem;
}

.tourdetail-area .tbl th {
    width: 260px;
    vertical-align: middle;
}

@media screen and (max-width: 640px) {
    .tourdetail-area .tbl th {
        width: 100%;
    }
}

.tourdetail-area .tourdetail-overview {
    margin-bottom: 60px;
}

.tourdetail-area .tourdetail-overview .ttl-area-en {
    margin-bottom: 40px;
}

.tourdetail-area .tourdetail-overview dl {
    margin-bottom: 55px;
}

.tourdetail-area .tourdetail-overview dl dt {
    margin-bottom: 10px;
    font-size: 1.28571rem;
    font-weight: bold;
}

.tourdetail-area .tourdetail-overview dl dd {
    font-size: 1.14286rem;
    line-height: 1.8;
}

.tourdetail-area .tourdetail-map {
    position: relative;
    padding-top: 53.33333%;
    border: 5px solid #fff;
}

.tourdetail-area .tourdetail-map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.tourdetail-area .cmn-list-cap {
    padding-left: 20px;
}

.tourdetail-area .cmn-list-cap li {
    margin-bottom: 25px;
}

.tourdetail-area .cmn-list-cap li:last-child {
    margin-bottom: 0;
}

.tourdetail-area .tourdetail-apply {
    display: flex;
}

@media screen and (max-width: 1000px) {
    .tourdetail-area .tourdetail-apply {
        display: block;
    }
}

.tourdetail-area .tourdetail-apply p:first-child {
    flex: 1;
}

.tourdetail-area .tourdetail-apply p:nth-child(2) {
    display: flex;
    align-items: center;
    width: 180px;
}

@media screen and (max-width: 1000px) {
    .tourdetail-area .tourdetail-apply p:nth-child(2) {
        margin-top: 10px;
    }
}

.tourdetail-area .tourdetail-apply a {
    max-width: 300px;
    padding-top: 30px;
    padding-bottom: 30px;
}

.tourdetail-back {
    padding-bottom: 80px;
}

/* モデルコース一覧 */
.coursemain-area {
    padding: 70px 0;
}

@media screen and (max-width: 640px) {
    .coursemain-area {
        padding: 60px 0;
    }
}

.coursemain-area .coursemain-ttl {
    margin-bottom: 20px;
    padding-left: 15px;
    border-left: 5px solid #d3c5aa;
    font-size: 1.71429rem;
    font-weight: bold;
}

.coursemain-area .coursemain-now {
    float: left;
    width: 71.42857%;
}

@media screen and (max-width: 1000px) {
    .coursemain-area .coursemain-now {
        float: none;
        width: 100%;
    }
}

.coursemain-area .coursemain-now .coursemain-now-fig {
    margin-bottom: 15px;
}

.coursemain-area .coursemain-now .coursemain-now-thumb {
    position: relative;
    padding-right: 70px;
}

.coursemain-area .coursemain-now .coursemain-now-thumb li {
    padding-right: 10px;
}

.coursemain-area .coursemain-now .coursemain-now-thumb li p {
    background-color: #000;
}

.coursemain-area .coursemain-now .coursemain-now-thumb li img {
    opacity: 0.4;
}

.coursemain-area .coursemain-now .coursemain-now-thumb .slick-current li img {
    opacity: 1;
}

.coursemain-area .coursemain-now .coursemain-now-thumb .coursemain-now-nav {
    position: absolute;
    bottom: 5px;
    right: 0;
    width: 70px;
}

.coursemain-area .coursemain-now .coursemain-now-thumb .coursemain-now-nav p {
    float: left;
}

.coursemain-area .coursemain-now .coursemain-now-thumb .coursemain-now-nav p:last-child {
    float: right;
}

.coursemain-area .coursemain-ranking {
    float: right;
    width: 25%;
}

@media screen and (max-width: 1000px) {
    .coursemain-area .coursemain-ranking {
        float: none;
        width: 100%;
        margin-top: 30px;
    }
}

.coursemain-area .coursemain-ranking li {
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #ccc;
}

.coursemain-area .coursemain-ranking li:last-child {
    border-bottom: none;
}

.coursemain-area .coursemain-ranking li a {
    display: flex;
    text-decoration: none;
}

.coursemain-area .coursemain-ranking li figure {
    width: 100px;
}

.coursemain-area .coursemain-ranking li div {
    flex: 1;
    padding-left: 20px;
}

.coursemain-area .coursemain-ranking li div dt {
    margin-top: 3px;
}

.coursemain-area .coursemain-ranking li div dd {
    margin-top: 3px;
    font-size: 1.14286rem;
}

.courseresult-area .searchresult-list .searchresult-item {
    float: none;
    width: 100%;
    margin: 0 0 3.33333% 0
}

@media screen and (max-width: 900px) {
    .courseresult-area .searchresult-list .searchresult-item {
        margin-left: 0;
    }
}

.courseresult-area .searchresult-list .searchresult-item:nth-child(even) {
    margin-right: auto;
}

.courseresult-area .searchresult-list .searchresult-item figure {
    width: 30%;
}

@media screen and (max-width: 640px) {
    .courseresult-area .searchresult-list .searchresult-item figure {
        width: 100%;
    }
}

.courseresult-area .searchresult-list .searchresult-item .searchresult-con {
    width: 70%;
    padding: 20px;
}

@media screen and (max-width: 900px) {
    .courseresult-area .searchresult-list .searchresult-item .searchresult-con {
        padding: 0 20px 20px 20px;
    }
}

@media screen and (max-width: 640px) {
    .courseresult-area .searchresult-list .searchresult-item .searchresult-con {
        width: 100%;
        padding: 0;
    }
}

.courseresult-area .searchresult-list .searchresult-item .courseresult-cat {
    margin-bottom: 5px;
}

.courseresult-area .searchresult-list .searchresult-item .courseresulte-name {
    margin-bottom: 10px;
    font-size: 1.14286rem;
    font-weight: bold;
}

.courseresult-area .searchresult-list .searchresult-item .courseresult-plan dt {
    color: #a9894b;
    font-weight: bold;
}

.courseresult-area .searchresult-list .searchresult-item .courseresult-plan dd {
    margin-bottom: 10px;
}

.courseresult-area .searchresult-list .searchresult-item .courseresult-plan dd:last-child {
    margin-bottom: 0;
}

.courseresult-area .searchresult-list.js-listgrid .searchresult-item {
    float: left;
}

.courseresult-area .searchresult-list.js-listgrid .searchresult-item:nth-child(even) {
    margin-right: 2.5%;
}

@media screen and (max-width: 900px) {
    .courseresult-area .searchresult-list.js-listgrid .searchresult-item:nth-child(even) {
        margin-right: 0;
    }
}

.courseresult-area .searchresult-list.js-listgrid .searchresult-item:nth-child(3n) {
    margin-right: 0;
}

@media screen and (max-width: 900px) {
    .courseresult-area .searchresult-list.js-listgrid .searchresult-item:nth-child(3n) {
        margin-right: 2.5%;
    }
}

@media screen and (max-width: 640px) {
    .courseresult-area .searchresult-list.js-listgrid .searchresult-item .courseresult-plan {
        display: none;
    }
}

/* モデルコース詳細 */
.coursedetail-area .coursedetail-head {
    padding: 60px 0;
}

.coursedetail-area .coursedetail-head .coursedetail-head-fig {
    margin-bottom: 15px;
}

.coursedetail-area .coursedetail-head .coursedetail-head-cat {
    float: left;
    font-size: 1.14286rem;
    font-weight: bold;
}

.coursedetail-area .coursedetail-head .coursedetail-head-tag {
    float: right;
}

.coursedetail-area .coursedetail-head .coursedetail-head-tag span {
    display: inline-block;
    margin-right: 10px;
    padding: 5px 30px;
    border: 1px solid #a9894b;
    border-radius: 10px;
}

.coursedetail-area .coursedetail-head .coursedetail-head-tag span:last-child {
    margin-right: 0;
}

.coursedetail-area .coursedetail-head .spotname {
    padding: 20px 0 30px;
}

.coursedetail-area .coursedetail-head .coursedetail-head-lead {
    line-height: 2;
}

.coursedetail-area .coursedetail-plan {
    max-width: 1020px;
    margin: 0 auto 150px;
}

@media screen and (max-width: 640px) {
    .coursedetail-area .coursedetail-plan {
        margin-bottom: 60px;
    }
}

.coursedetail-area .coursedetail-plan .coursedetail-plan-day {
    float: left;
    width: 47.05882%;
    background-color: #f4f3f1;
}

@media screen and (max-width: 900px) {
    .coursedetail-area .coursedetail-plan .coursedetail-plan-day {
        float: none;
        width: 100%;
    }
}

.coursedetail-area .coursedetail-plan .coursedetail-plan-day:nth-child(even) {
    float: right;
}

@media screen and (max-width: 900px) {
    .coursedetail-area .coursedetail-plan .coursedetail-plan-day:nth-child(even) {
        float: none;
        margin-top: 40px;
    }
}

.coursedetail-area .coursedetail-plan .coursedetail-plan-ttl {
    padding: 10px;
    background-color: #1d365f;
    color: #fff;
    font-size: 1.57143rem;
    font-weight: bold;
    text-align: center;
}

.coursedetail-area .coursedetail-plan .coursedetail-plan-con {
    padding: 30px 45px;
}

@media screen and (max-width: 900px) {
    .coursedetail-area .coursedetail-plan .coursedetail-plan-con {
        padding: 30px 20px;
    }
}

.coursedetail-area .coursedetail-plan .coursedetail-plan-spot {
    font-size: 1.28571rem;
}

.coursedetail-area .coursedetail-plan .coursedetail-plan-spot span {
    display: inline-block;
    width: 50px;
    margin-right: 15px;
    background-color: #a9894b;
    color: #fff;
    font-size: 1.71429rem;
    font-weight: bold;
    line-height: 50px;
    text-align: center;
}

.coursedetail-area .coursedetail-plan .coursedetail-plan-move {
    margin-left: 75px;
    padding: 10px 0 30px 20px;
    background: url("../img/common/bg_dot.png") no-repeat;
}

.coursedetail-area .coursedetail-plan .coursedetail-plan-move .ico {
    margin-right: 10px;
}

.coursedetail-area .coursedetail-spot {
    margin-bottom: 135px;
}

@media screen and (max-width: 640px) {
    .coursedetail-area .coursedetail-spot {
        margin-bottom: 60px;
    }
}

.coursedetail-area .coursedetail-spot .coursedetail-spot-box {
    padding-bottom: 105px;
    background: url("../img/common/bg_dot.png") no-repeat center bottom;
}

.coursedetail-area .coursedetail-spot .coursedetail-spot-box:last-child {
    padding-bottom: 0;
    background: none;
}

.coursedetail-area .coursedetail-spot .coursedetail-spot-box .coursedetail-spot-name {
    display: flex;
    margin-bottom: 30px;
}

.coursedetail-area .coursedetail-spot .coursedetail-spot-box .coursedetail-spot-name span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 80px;
    height: auto;
    background-color: #a9894b;
    color: #fff;
    font-size: 2rem;
    font-weight: bold;
}

.coursedetail-area .coursedetail-spot .coursedetail-spot-box .coursedetail-spot-name div {
    flex: 1;
    position: relative;
    padding: 10px 0 0 25px;
    border-bottom: 3px solid #ccc;
}

.coursedetail-area .coursedetail-spot .coursedetail-spot-box .coursedetail-spot-name div::before {
    content: '';
    position: absolute;
    left: 0;
    bottom: -3px;
    width: 300px;
    height: 3px;
    background-color: #a9894b;
}

@media screen and (max-width: 640px) {
    .coursedetail-area .coursedetail-spot .coursedetail-spot-box .coursedetail-spot-name div::before {
        width: 100%;
    }
}

.coursedetail-area .coursedetail-spot .coursedetail-spot-box .coursedetail-spot-name div p {
    font-size: 1.2rem;
}

.coursedetail-area .coursedetail-spot .coursedetail-spot-box .coursedetail-spot-name div .coursedetail-spot-ttl {
    font-size: 1.85714rem;
}

.coursedetail-area .coursedetail-spot .coursedetail-spot-box .coursedetail-spot-fig .coursedetail-spot-fig-main {
    width: 75%;
}

@media screen and (max-width: 900px) {
    .coursedetail-area .coursedetail-spot .coursedetail-spot-box .coursedetail-spot-fig .coursedetail-spot-fig-main {
        width: 100%;
    }
}

.coursedetail-area .coursedetail-spot .coursedetail-spot-box .coursedetail-spot-fig .coursedetail-spot-fig-sub {
    width: 23.33333%;
}

@media screen and (max-width: 900px) {
    .coursedetail-area .coursedetail-spot .coursedetail-spot-box .coursedetail-spot-fig .coursedetail-spot-fig-sub {
        width: 100%;
        margin-top: 20px;
    }
}

.coursedetail-area .coursedetail-spot .coursedetail-spot-box .coursedetail-spot-fig .coursedetail-spot-fig-sub li {
    margin-bottom: 5%;
}

@media screen and (max-width: 900px) {
    .coursedetail-area .coursedetail-spot .coursedetail-spot-box .coursedetail-spot-fig .coursedetail-spot-fig-sub li {
        margin-bottom: 0;
    }
}

.coursedetail-area .coursedetail-spot .coursedetail-spot-box:nth-child(odd) .coursedetail-spot-fig .coursedetail-spot-fig-main {
    float: left;
}

@media screen and (max-width: 900px) {
    .coursedetail-area .coursedetail-spot .coursedetail-spot-box:nth-child(odd) .coursedetail-spot-fig .coursedetail-spot-fig-main {
        float: none;
    }
}

.coursedetail-area .coursedetail-spot .coursedetail-spot-box:nth-child(odd) .coursedetail-spot-fig .coursedetail-spot-fig-sub {
    float: right;
}

@media screen and (max-width: 900px) {
    .coursedetail-area .coursedetail-spot .coursedetail-spot-box:nth-child(odd) .coursedetail-spot-fig .coursedetail-spot-fig-sub {
        float: none;
    }
}

.coursedetail-area .coursedetail-spot .coursedetail-spot-box:nth-child(even) .coursedetail-spot-fig .coursedetail-spot-fig-main {
    float: right;
}

@media screen and (max-width: 900px) {
    .coursedetail-area .coursedetail-spot .coursedetail-spot-box:nth-child(even) .coursedetail-spot-fig .coursedetail-spot-fig-main {
        float: none;
    }
}

.coursedetail-area .coursedetail-spot .coursedetail-spot-box:nth-child(even) .coursedetail-spot-fig .coursedetail-spot-fig-sub {
    float: left;
}

@media screen and (max-width: 900px) {
    .coursedetail-area .coursedetail-spot .coursedetail-spot-box:nth-child(even) .coursedetail-spot-fig .coursedetail-spot-fig-sub {
        float: none;
    }
}

.coursedetail-area .coursedetail-spot .coursedetail-spot-box .coursedetail-spot-desc {
    padding: 10px 0 30px;
    line-height: 2;
}

.coursedetail-area .coursedetail-spot .coursedetail-spot-box .coursedetail-spot-info {
    margin-bottom: 60px;
    padding: 30px 50px;
    background-color: #f4f3f1;
}

.coursedetail-area .coursedetail-spot .coursedetail-spot-box .btn-arrow {
    max-width: 600px;
}

.coursedetail-area .coursedetail-guide .coursedetail-guide-inner {
    display: flex;
    justify-content: space-between;
    max-width: 1020px;
    margin: 0 auto;
}

@media screen and (max-width: 900px) {
    .coursedetail-area .coursedetail-guide .coursedetail-guide-inner {
        display: block;
    }
}

.coursedetail-area .coursedetail-guide .coursedetail-guide-inner figure {
    width: 29.41176%;
}

@media screen and (max-width: 900px) {
    .coursedetail-area .coursedetail-guide .coursedetail-guide-inner figure {
        width: 100%;
        padding-top: 0;
        text-align: center;
    }
}

.coursedetail-area .coursedetail-guide .coursedetail-guide-inner .coursedetail-guide-con {
    width: 64.70588%;
    padding-top: 50px;
}

@media screen and (max-width: 900px) {
    .coursedetail-area .coursedetail-guide .coursedetail-guide-inner .coursedetail-guide-con {
        width: 100%;
        margin-top: 30px;
        padding: 0;
    }
}

.coursedetail-area .coursedetail-guide .coursedetail-guide-inner .coursedetail-guide-con p {
    margin-bottom: 20px;
}

.coursedetail-area .coursedetail-guide .coursedetail-guide-inner .coursedetail-guide-con .btn-arrow {
    max-width: 600px;
}

.tourdetail-other {
    padding: 70px 0 80px;
    background-color: #f4f3f1;
}

@media screen and (max-width: 640px) {
    .tourdetail-other {
        padding: 60px 0;
    }
}

.tourdetail-other a {
    text-decoration: none;
}

.tourdetail-other .tourdetail-other-con {
    padding: 10px 15px;
    background-color: #fff;
}

@media screen and (max-width: 640px) {
    .tourdetail-other .tourdetail-other-con {
        display: flex;
        justify-content: center;
        flex-direction: column;
        width: 60%;
        padding: 0 0 0 15px;
        background: none;
    }
}

.tourdetail-other .tourdetail-other-con dt {
    padding: 5px 0;
    font-size: 1.14286rem;
    font-weight: bold;
}

.tourdetail-ranking {
    padding: 100px 0 150px;
}

@media screen and (max-width: 640px) {
    .tourdetail-ranking {
        padding: 60px 0;
    }
}

.tourdetail-ranking .box-col-item a {
    text-decoration: none;
}

@media screen and (max-width: 640px) {
    .tourdetail-ranking .box-col-item a {
        display: flex;
    }
}

.tourdetail-ranking .box-col-item figure {
    margin-bottom: 10px;
    text-align: center;
}

@media screen and (max-width: 640px) {
    .tourdetail-ranking .box-col-item figure {
        width: 40%;
    }
}

.tourdetail-ranking .box-col-item div {
    display: flex;
}

@media screen and (max-width: 640px) {
    .tourdetail-ranking .box-col-item div {
        width: 60%;
        padding-left: 15px;
    }
}

.tourdetail-ranking .box-col-item div .ico {
    margin-right: 10px;
}

.tourdetail-ranking .box-col-item div dl dd {
    margin-top: 5px;
    font-size: 1.14286rem;
    font-weight: bold;
}

/* なごやのショッピングエリア情報 */
.souvenirarea-area {
    margin-bottom: 100px;
}

@media screen and (max-width: 900px) {
    .souvenirarea-area {
        margin-bottom: 60px;
    }
}

.souvenirarea-area .souvenirarea-lead {
    margin-bottom: 40px;
}

.souvenirarea-area .souvenirarea-map {
    display: flex;
    justify-content: space-between;
}

@media screen and (max-width: 900px) {
    .souvenirarea-area .souvenirarea-map {
        flex-direction: column;
    }
}

.souvenirarea-area .souvenirarea-map-fig {
    width: 75%;
}

@media screen and (max-width: 900px) {
    .souvenirarea-area .souvenirarea-map-fig {
        width: 100%;
        margin-bottom: 30px;
    }
}

.souvenirarea-area .souvenirarea-map-nav {
    width: 21.66667%;
}

@media screen and (max-width: 900px) {
    .souvenirarea-area .souvenirarea-map-nav {
        display: flex;
        justify-content: space-between;
        width: 100%;
    }
}

.souvenirarea-area .souvenirarea-map-nav li {
    position: relative;
    margin-bottom: 10px;
    padding: 12px;
    border: 2px solid #000;
    background: url("../img/common/i_blank.png") no-repeat right 15px center;
    font-size: 1.28571rem;
    font-weight: bold;
    line-height: 1.2;
}

@media screen and (max-width: 900px) {
    .souvenirarea-area .souvenirarea-map-nav li {
        width: 19.33333%;
        margin-bottom: 0;
        padding-bottom: 20px;
        background-position: center bottom 5px;
        font-size: 1rem;
        text-align: center;
    }
}

.souvenirarea-area .souvenirarea-map-nav li:last-child {
    margin-bottom: 0;
}

@media screen and (max-width: 900px) {
    .souvenirarea-area .souvenirarea-map-nav li:last-child {
        margin-right: 0;
    }
}

.souvenirarea-area .souvenirarea-map-nav li:last-child p {
    display: flex;
    align-items: center;
    height: 73px;
    padding-left: 1em;
}

@media screen and (max-width: 900px) {
    .souvenirarea-area .souvenirarea-map-nav li:last-child p {
        position: absolute;
        top: 0;
        left: 0;
        justify-content: center;
        width: 100%;
        height: 100%;
        padding-left: 0;
    }
}

.souvenirarea-area .souvenirarea-map-nav li.is-current {
    background-color: #000;
    background-image: url("../img/common/i_blank_w.png");
    color: #fff;
}

.souvenirarea-area .souvenirarea-map-nav li.is-current::before {
    content: '';
    position: absolute;
    top: 50%;
    left: -10px;
    width: 20px;
    height: 20px;
    margin-top: -5px;
    background-color: #000;
    -webkit-transform: rotate(-45deg) skew(20deg, 20deg);
    transform: rotate(-45deg) skew(20deg, 20deg);
}

@media screen and (max-width: 900px) {
    .souvenirarea-area .souvenirarea-map-nav li.is-current::before {
        top: -10px;
        left: 50%;
        margin-top: 0;
        margin-left: -5px;
        -webkit-transform: rotate(45deg) skew(20deg, 20deg);
        transform: rotate(45deg) skew(20deg, 20deg);
    }
}

.souvenirarea-area .souvenirarea-map-nav li figure {
    position: relative;
    z-index: 1;
    display: flex;
}

@media screen and (max-width: 900px) {
    .souvenirarea-area .souvenirarea-map-nav li figure {
        flex-direction: column;
    }
}

.souvenirarea-area .souvenirarea-map-nav li figure figcaption {
    display: flex;
    align-items: center;
    margin-left: 12px;
}

@media screen and (max-width: 900px) {
    .souvenirarea-area .souvenirarea-map-nav li figure figcaption {
        flex-direction: column;
        margin-left: 0;
        margin-top: 5px;
    }
}

.souvenirarearesult-area {
    padding: 100px 0;
    background-color: #f4f3f1;
}

@media screen and (max-width: 900px) {
    .souvenirarearesult-area {
        padding: 60px 0;
    }
}

.souvenirarearesult-area .souvenirarearesult-list {
    display: flex;
    flex-wrap: wrap;
}

@media screen and (max-width: 900px) {
    .souvenirarearesult-area .souvenirarearesult-list {
        justify-content: space-between;
    }
}

.souvenirarearesult-area .souvenirarearesult-item {
    width: 31.66667%;
    margin: 0 2.5% 30px 0;
    padding: 10px;
    border: 1px solid #ccc;
    background-color: #fff;
}

.souvenirarearesult-area .souvenirarearesult-item:nth-child(3n) {
    margin-right: 0;
}

@media screen and (max-width: 900px) {
    .souvenirarearesult-area .souvenirarearesult-item {
        width: 48.33333%;
        margin-right: 0;
    }
}

.souvenirarearesult-area .souvenirarearesult-item figure {
    margin-bottom: 25px;
}

.souvenirarearesult-area .souvenirarearesult-item dl {
    margin-bottom: 25px;
    padding: 0 10px;
}

.souvenirarearesult-area .souvenirarearesult-item dl dt {
    margin-bottom: 10px;
    font-size: 1.14286rem;
    text-decoration: underline;
}

.souvenirarearesult-area .souvenirarearesult-item a {
    display: block;
    padding: 12px;
    background-color: #000;
    color: #fff;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
}

/* 詳細 */
.souvenirdetail-area .souvenirslider {
    margin-bottom: 40px;
}

.souvenirdetail-area .spotmap {
    margin-bottom: 60px;
}

.souvenirdetail-area .souvenirbtns {
    display: flex;
    justify-content: space-between;
    max-width: 1310px;
    margin: 0 auto 80px;
}

@media screen and (max-width: 900px) {
    .souvenirdetail-area .souvenirbtns {
        flex-direction: column;
        justify-content: space-around;
    }
}

.souvenirdetail-area .souvenirbtns li {
    width: 100%;
    max-width: 45.80153%;
    text-align: center;
}

@media screen and (max-width: 900px) {
    .souvenirdetail-area .souvenirbtns li {
        max-width: initial;
        margin-bottom: 20px;
    }

    .souvenirdetail-area .souvenirbtns li:last-child {
        margin-bottom: 0;
    }
}

.souvenirdetail-area .souvenirbtns li .btn-arrow {
    max-width: 600px;
}

/* アクセス */
.access-lead {
    margin-bottom: 40px;
    font-size: 1.14286rem;
}

.access-guide ul {
    display: flex;
    flex-wrap: wrap;
    border-top: 1px solid #ccc;
    font-size: 1.14286rem;
}

@media screen and (max-width: 1000px) {
    .access-guide ul {
        flex-direction: column;
    }
}

.access-guide ul li {
    width: 50%;
    padding: 15px 25px;
    border-bottom: 1px solid #ccc;
}

@media screen and (max-width: 1000px) {
    .access-guide ul li {
        width: 100%;
    }
}

@media screen and (max-width: 640px) {
    .access-guide ul li {
        padding-left: 0;
        padding-right: 0;
    }
}

.access-guide ul li dl {
    display: flex;
    justify-content: space-between;
}

@media screen and (max-width: 640px) {
    .access-guide ul li dl {
        flex-direction: column;
    }
}

.access-guide ul li dl dt {
    flex: 1;
    font-weight: bold;
}

.access-guide ul li dl dd {
    width: 8em;
}

@media screen and (max-width: 640px) {
    .access-guide ul li dl dd {
        width: 100%;
        margin-top: 5px;
    }
}

.accessex-area .accessex-main {
    margin-bottom: 100px;
    text-align: center;
}

@media screen and (max-width: 640px) {
    .accessex-area .accessex-main {
        margin-bottom: 60px;
    }
}

.accessex-area .accessex-start {
    padding-bottom: 40px;
}

@media screen and (max-width: 640px) {
    .accessex-area .accessex-start {
        padding-bottom: 20px;
    }
}

.accessex-area .accessex-start .accessex-start-fig {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

@media screen and (max-width: 640px) {
    .accessex-area .accessex-start .accessex-start-fig {
        flex-direction: column;
    }
}

.accessex-area .accessex-start .accessex-start-fig li {
    width: 46.66667%;
    margin-bottom: 60px;
}

@media screen and (max-width: 640px) {
    .accessex-area .accessex-start .accessex-start-fig li {
        width: 100%;
        margin-bottom: 40px;
    }
}

.accessex-area .accessex-start .accessex-start-fig li h4 {
    margin-bottom: 15px;
    font-size: 1.14286rem;
    font-weight: bold;
}

.accesscentrair-area {
    margin-bottom: 100px;
}

@media screen and (max-width: 640px) {
    .accesscentrair-area {
        margin-bottom: 60px;
    }
}

.accesscentrair-area .accesscentrair-main {
    display: flex;
    justify-content: space-between;
}

@media screen and (max-width: 640px) {
    .accesscentrair-area .accesscentrair-main {
        flex-direction: column;
    }
}

.accesscentrair-area .accesscentrair-main li {
    width: 47.91667%;
}

@media screen and (max-width: 640px) {
    .accesscentrair-area .accesscentrair-main li {
        width: 100%;
    }
}

.accessdetail-area {
    padding: 100px 0;
    background-color: #f4f3f1;
}

@media screen and (max-width: 640px) {
    .accessdetail-area {
        padding: 60px 0;
    }
}

.accessdetail-area .accessdetail-box {
    margin-bottom: 40px;
}

.accessdetail-area .accessdetail-box .accessdetail-ttl {
    position: relative;
    padding: 20px 35px;
    background-color: #a9894b;
    color: #fff;
    font-size: 1.42857rem;
    font-weight: bold;
    cursor: pointer;
}

@media screen and (max-width: 640px) {
    .accessdetail-area .accessdetail-box .accessdetail-ttl {
        font-size: 1.28571rem;
    }
}

.accessdetail-area .accessdetail-box .accessdetail-ttl p {
    position: absolute;
    top: 50%;
    right: 20px;
    margin-top: -15px;
    line-height: 1;
}

.accessdetail-area .accessdetail-box .accessdetail-ttl p .ico {
    line-height: 20px;
}

.accessdetail-area .accessdetail-box .accessdetail-ttl p .ico-arrow-t-w {
    display: none;
}

.accessdetail-area .accessdetail-box .accessdetail-con {
    display: none;
    padding: 30px 50px;
    background-color: #fff;
    font-size: 1.14286rem;
    line-height: 1.8;
}

@media screen and (max-width: 640px) {
    .accessdetail-area .accessdetail-box .accessdetail-con {
        padding: 30px 20px;
        font-size: 1rem;
    }
}

.accessdetail-area .accessdetail-box .accessdetail-con ul {
    margin-bottom: 15px;
}

.accessdetail-area .accessdetail-box .accessdetail-con p {
    margin-bottom: 15px;
}

.accessdetail-area .accessdetail-box .accessdetail-con p:last-child {
    margin-bottom: 0;
}

.accessdetail-area .accessdetail-box .accessdetail-con .accessdetail-bg {
    margin: 0 15px 15px;
    padding: 10px 20px;
    background-color: #f0ede8;
}

.accessdetail-area .accessdetail-box .accessdetail-con .accessdetail-link dt {
    font-weight: bold;
}

.accessdetail-area .accessdetail-box .accessdetail-con .accessdetail-link dd {
    padding-left: 15px;
}

.accessdetail-area .accessdetail-box.js-open .accessdetail-ttl .ico-arrow-b-w {
    display: none;
}

.accessdetail-area .accessdetail-box.js-open .accessdetail-ttl .ico-arrow-t-w {
    display: inline-block;
}

/* 名古屋市内の主な交通手段 */
.accesstraffic-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 40px;
    background-color: #000;
    cursor: pointer;
}

.accesstraffic-btn .ico-arrowss-t-w {
    display: none;
}

.accesstraffic-btn.js-open .ico-arrowss-b-w {
    display: none;
}

.accesstraffic-btn.js-open .ico-arrowss-t-w {
    display: inline-block;
}

.accesstraffic-area {
    margin-bottom: 100px;
}

@media screen and (max-width: 900px) {
    .accesstraffic-area {
        margin-bottom: 60px;
    }
}

.accesstraffic-area .accesstraffic-ticket {
    background-color: #f2efe6;
}

.accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-head {
    display: flex;
}

.accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-main {
    flex: 1;
    display: flex;
    justify-content: space-between;
    padding: 30px 35px 35px;
}

@media screen and (max-width: 900px) {
    .accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-main {
        flex-direction: column;
    }
}

.accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-main div {
    text-align: center;
}

@media screen and (max-width: 900px) {
    .accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-main div {
        margin-bottom: 20px;
    }
}

.accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-main div .accesstraffic-ticket-ttl {
    margin: 15px 0 10px;
    font-size: 1.71429rem;
    font-weight: bold;
}

@media screen and (max-width: 640px) {
    .accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-main div .accesstraffic-ticket-ttl {
        font-size: 1.42857rem;
    }
}

.accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-main div p {
    font-size: 1.28571rem;
}

@media screen and (max-width: 640px) {
    .accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-main div p {
        font-size: 1.14286rem;
    }
}

.accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-main figure {
    display: flex;
    align-items: center;
}

@media screen and (max-width: 900px) {
    .accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-main figure {
        justify-content: center;
    }
}

.accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-detail {
    display: none;
    padding: 25px 50px 50px;
}

@media screen and (max-width: 640px) {
    .accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-detail {
        padding: 20px;
    }
}

.accesstraffic-area .accesstraffic-ticket .spotlnav {
    margin-bottom: 30px;
}

.accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-con {
    padding: 30px 50px 60px;
    background-color: #fff;
}

@media screen and (max-width: 640px) {
    .accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-con {
        padding: 20px;
    }
}

.accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-name {
    margin-bottom: 40px;
    padding-bottom: 15px;
    border-bottom: 3px solid #a9894b;
    font-size: 1.28571rem;
}

.accesstraffic-area .accesstraffic-ticket dl {
    margin-bottom: 40px;
}

.accesstraffic-area .accesstraffic-ticket dl:last-child {
    margin-bottom: 0;
}

.accesstraffic-area .accesstraffic-ticket dl dt {
    margin-bottom: 20px;
    font-size: 1.28571rem;
    font-weight: bold;
}

.accesstraffic-area .accesstraffic-ticket dl dt .ico {
    margin-right: 10px;
}

@media screen and (max-width: 640px) {
    .accesstraffic-area .accesstraffic-ticket dl dt {
        font-size: 1.14286rem;
    }
}

.accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-box {
    margin-bottom: 40px;
}

.accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-box:last-child {
    margin-bottom: 0;
}

.accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-fig {
    display: flex;
    justify-content: space-around;
    margin-bottom: 30px;
}

@media screen and (max-width: 640px) {
    .accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-fig {
        margin-bottom: 0;
    }
}

.accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-desc {
    display: flex;
    justify-content: space-between;
}

@media screen and (max-width: 640px) {
    .accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-desc {
        flex-direction: column;
    }
}

.accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-desc figure {
    width: 24%;
}

@media screen and (max-width: 640px) {
    .accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-desc figure {
        width: 100%;
        text-align: center;
    }
}

.accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-desc .accesstraffic-ticket-txt {
    width: 73%;
}

@media screen and (max-width: 640px) {
    .accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-desc .accesstraffic-ticket-txt {
        width: 100%;
        margin-top: 20px;
    }
}

.accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-txt p {
    margin-bottom: 40px;
    font-size: 1.14286rem;
}

@media screen and (max-width: 640px) {
    .accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-txt p {
        font-size: 1rem;
    }
}

.accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-txt dl dd {
    margin-bottom: 30px;
    padding-left: 25px;
}

@media screen and (max-width: 640px) {
    .accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-txt dl dd {
        font-size: 1.57143rem;
    }
}

.accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-txt dl dd:last-child {
    margin-bottom: 0;
}

.accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-txt dl dd big {
    font-size: 2.14286rem;
    font-weight: bold;
    line-height: 1;
}

.accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-reco {
    padding: 30px 45px;
    background-color: #f0ede8;
}

@media screen and (max-width: 640px) {
    .accesstraffic-area .accesstraffic-ticket .accesstraffic-ticket-reco {
        padding: 20px;
    }
}

.accesstrafficway-area {
    padding: 100px 0;
    background-color: #f4f3f1;
}

@media screen and (max-width: 900px) {
    .accesstrafficway-area {
        padding: 60px 0;
    }
}

.accesstrafficway-area .accesstrafficway-item {
    position: relative;
    margin-bottom: 40px;
    padding: 30px;
    background-color: #fff;
}

.accesstrafficway-area .accesstrafficway-item:last-child {
    margin-bottom: 0;
}

.accesstrafficway-area .accesstrafficway-item .accesstraffic-btn {
    position: absolute;
    top: 0;
    right: 0;
    height: 40px;
}

.accesstrafficway-area .accesstrafficway-main {
    display: flex;
    justify-content: space-between;
}

@media screen and (max-width: 640px) {
    .accesstrafficway-area .accesstrafficway-main {
        flex-direction: column;
    }
}

.accesstrafficway-area .accesstrafficway-main figure {
    width: 26.31579%;
}

@media screen and (max-width: 640px) {
    .accesstrafficway-area .accesstrafficway-main figure {
        width: 100%;
        text-align: center;
    }
}

.accesstrafficway-area .accesstrafficway-main dl {
    width: 70.17544%;
}

@media screen and (max-width: 640px) {
    .accesstrafficway-area .accesstrafficway-main dl {
        width: 100%;
        margin-top: 20px;
    }
}

.accesstrafficway-area .accesstrafficway-main dl dt {
    margin: 15px 0;
    font-size: 1.28571rem;
    font-weight: bold;
}

@media screen and (max-width: 640px) {
    .accesstrafficway-area .accesstrafficway-main dl dt {
        font-size: 1.14286rem;
    }
}

.accesstrafficway-area .accesstrafficway-main dl dd {
    font-size: 1.14286rem;
}

@media screen and (max-width: 640px) {
    .accesstrafficway-area .accesstrafficway-main dl dd {
        font-size: 1rem;
    }
}

.accesstrafficway-area .accesstrafficway-detail {
    display: none;
    padding: 35px 15px 20px;
}

@media screen and (max-width: 640px) {
    .accesstrafficway-area .accesstrafficway-detail {
        padding: 35px 0 20px;
    }
}

.accesstrafficway-area .accesstrafficway-detail p {
    margin-bottom: 30px;
}

.accesstrafficway-area .accesstrafficway-detail ul {
    font-size: 1.14286rem;
    font-weight: bold;
}

@media screen and (max-width: 640px) {
    .accesstrafficway-area .accesstrafficway-detail ul {
        font-size: 1rem;
    }
}

.accesstrafficway-area .accesstrafficway-detail ul li {
    margin-bottom: 20px;
}

.accesstrafficway-area .accesstrafficway-detail ul li:last-child {
    margin-bottom: 0;
}

.accesstrafficway-area .accesstrafficway-detail ul li a {
    display: flex;
    justify-content: space-between;
    padding: 10px 20px 10px 25px;
    border: 1px solid #999;
    text-decoration: none;
}

.accesstrafficguide-area {
    padding: 100px 0;
}

@media screen and (max-width: 900px) {
    .accesstrafficguide-area {
        padding: 60px 0;
    }
}

.accessparking-area {
    margin-bottom: 100px;
}

@media screen and (max-width: 900px) {
    .accessparking-area {
        margin-bottom: 60px;
    }
}

.accessparking-area .accessparking-map {
    border: 1px solid #ccc;
    padding: 4px;
}

.accessparking-area .accessparking-map .accessparking-map-in {
    position: relative;
    padding-top: 51.2605%;
}

@media screen and (max-width: 640px) {
    .accessparking-area .accessparking-map .accessparking-map-in {
        padding-top: 70%;
    }
}

.accessparking-area .accessparking-map .accessparking-map-in iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.accessparkinglist-area {
    padding: 60px 0;
    background-color: #f4f3f1;
}

@media screen and (max-width: 900px) {
    .accessparkinglist-area {
        padding: 40px 0;
    }
}

.accessparkinglist-area .tbl th {
  padding-left: 15px;
  text-align: center;
}

.accessparkinglist-area .tbl td {
  padding-left: 15px;
}
.accessparkinglist-area .tbl td:nth-child(2) {
  line-height: 1.8;
}
@media screen and (max-width: 640px) {
  _::-webkit-full-page-media, _:future, :root .accessparkinglist-area .tbl td:nth-child(2){
    font-size: .84rem!important;
  }
}

/* 共通 */
.useful-nav {
    margin-bottom: 50px;
}

@media screen and (max-width: 640px) {
    .useful-nav {
        margin-bottom: 3%;
    }
}

.useful-nav span {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 2em;
}

@media screen and (max-width: 640px) {
    .useful-nav span {
        min-height: 3em;
    }
}

.useful-lead {
    margin-bottom: 80px;
    font-size: 1.14286rem;
}

/* 観光案内所 */
.usefulguide-map {
  position: relative;
  padding-bottom: 50%;
  height: 0;
  overflow: hidden;
  margin-bottom: 30px;
}
@media screen and (max-width: 640px) {
    .usefulguide-map {
      padding-bottom: 100%;
  }
}
.usefulguide-map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.usefulguide-area {
    padding-bottom: 100px;
}

@media screen and (max-width: 640px) {
    .usefulguide-area {
        padding-bottom: 60px;
    }
}

.usefulguide-area .usefulguide-news {
  margin-bottom: 60px;
}

.usefulguide-area .usefulguide-news .ttl-page {
  margin-bottom: 30px;
}

.usefulguide-area .usefulguide-news ul {
  border-top: 1px solid #ccc;
}

.usefulguide-area .usefulguide-news ul li {
  border-bottom: 1px solid #ccc;
}

.usefulguide-area .usefulguide-news .usefulguide-news-con {
  display: block;
  padding: 15px 12px;
  text-decoration: none;
}

.usefulguide-area .usefulguide-news .usefulguide-news-cat {
  display: flex;
  align-items: center;
  margin-bottom: 10px;
}

.usefulguide-area .usefulguide-news .usefulguide-news-date {
  margin-right: 1em;
}

.usefulguide-area .usefulguide-news a .usefulguide-news-txt {
  text-decoration: underline;
}

.usefulguide-area .usefulguide-news a:hover .usefulguide-news-txt {
  text-decoration: none;
}

.usefulguide-area .spotlnav li {
    width: 33.33333%;
}

.usefulguide-area .usefulguide-spot {
    position: relative;
    padding-top: 10px;
    margin-bottom: 100px;
}

.usefulguide-area .usefulguide-spot:last-child {
    margin-bottom: 0;
}

.usefulguide-area .usefulguide-spot .usefulguide-now {
    position: absolute;
    top: 0;
    right: 0;
    display: flex;
    min-width: 187px;
    padding: 5px 10px;
    border: 2px solid #000;
}

@media screen and (max-width: 900px) {
    .usefulguide-area .usefulguide-spot .usefulguide-now {
        position: static;
        margin-bottom: 30px;
    }
}

.usefulguide-area .usefulguide-spot .usefulguide-now figure {
    width: 37px;
}

.usefulguide-area .usefulguide-spot .usefulguide-now p {
    flex: 1;
    line-height: 1.2;
    text-align: center;
}

.usefulguide-area .usefulguide-spot .usefulguide-box {
    margin-bottom: 100px;
}

@media screen and (max-width: 640px) {
    .usefulguide-area .usefulguide-spot .usefulguide-box {
        margin-bottom: 40px;
    }
}

.usefulguide-area .usefulguide-spot .usefulguide-service .usefulguide-service-lead {
    margin-bottom: 40px;
    font-size: 1.14286rem;
}

.usefulguide-area .usefulguide-spot .usefulguide-service .usefulguide-service-list {
    display: flex;
    flex-wrap: wrap;
    padding-bottom: 20px;
}

.usefulguide-area .usefulguide-spot .usefulguide-service .usefulguide-service-list li {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 11%;
    padding: 15px 0 10px;
    margin: 0 1.25% 20px 0;
    background-color: #f4f3f1;
    text-align: center;
}

.usefulguide-area .usefulguide-spot .usefulguide-service .usefulguide-service-list li:last-child {
    margin-right: 0;
}

@media screen and (max-width: 900px) {
    .usefulguide-area .usefulguide-spot .usefulguide-service .usefulguide-service-list li {
        width: 32.5%;
    }

    .usefulguide-area .usefulguide-spot .usefulguide-service .usefulguide-service-list li:nth-child(3n) {
        margin-right: 0;
    }
}

.usefulguide-area .usefulguide-spot .usefulguide-service .usefulguide-service-list li figcaption {
    margin-top: 10px;
    color: #1d365f;
    font-size: 1.07143rem;
    line-height: 1.2;
}

.usefulguide-area .usefulguide-spot .usefulguide-service .usefulguide-service-fig {
    display: flex;
    margin-bottom: 60px;
}

.usefulguide-area .usefulguide-spot .usefulguide-service .usefulguide-service-fig li {
    width: 31.66667%;
    margin-right: 2.5%;
    background-color: #eeeeee;
    text-align: center;
}

.usefulguide-area .usefulguide-spot .usefulguide-service .usefulguide-service-fig li:last-child {
    margin-right: 0;
}

.usefulguide-area .usefulguide-spot .usefulguide-service .usefulguide-service-gmap {
    position: relative;
    border: 1px solid #ccc;
}

.usefulguide-area .usefulguide-spot .usefulguide-service .usefulguide-service-gmap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.usefulguide-area .usefulguide-spot .usefulguide-service .tbl th {
    padding-left: 15px;
    text-align: center;
}

@media screen and (max-width: 640px) {
    .usefulguide-area .usefulguide-spot .usefulguide-service .tbl th {
        text-align: left;
    }
}

.usefulguide-area .usefulguide-spot .usefulguide-service .usefulguide-service-map {
    display: flex;
    justify-content: space-between;
    margin-bottom: 50px;
}

.usefulguide-area .usefulguide-spot .usefulguide-service .usefulguide-service-map .cmn-fig-zoom {
    width: 31.66667%;
    padding: 20px 0;
    border: 1px solid #ccc;
    text-align: center;
}

.usefulguide-area .usefulguide-spot .usefulguide-service .usefulguide-service-map .usefulguide-service-gmap {
    width: 65.83333%;
}

.usefulguide-area .usefulguide-spot .usefulguide-service .usefulguide-service-map-non {
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
    margin-bottom: 50px;
}

@media screen and (max-width: 900px) {
    .usefulguide-area .usefulguide-spot .usefulguide-service .usefulguide-service-map-non {
        flex-direction: column;
    }
}

.usefulguide-area .usefulguide-spot .usefulguide-service .usefulguide-service-map-non .usefulguide-service-gmap {
    width: 50%;
}

@media screen and (max-width: 900px) {
    .usefulguide-area .usefulguide-spot .usefulguide-service .usefulguide-service-map-non .usefulguide-service-gmap {
        width: 100%;
        padding-top: 50%;
    }
}

.usefulguide-area .usefulguide-spot .usefulguide-service .usefulguide-service-map-non .tbl {
    width: 47.5%;
}

@media screen and (max-width: 900px) {
    .usefulguide-area .usefulguide-spot .usefulguide-service .usefulguide-service-map-non .tbl {
        width: 100%;
        margin-top: 30px;
    }
}

.usefulguide-area .usefulguide-spot .usefulguide-course li {
    margin-bottom: 25px;
}

.usefulguide-area .usefulguide-spot .usefulguide-course .usefulguide-course-box {
    display: flex;
    justify-content: space-between;
    padding: 14px;
    text-decoration: none;
    box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.3);
}

@media screen and (max-width: 640px) {
    .usefulguide-area .usefulguide-spot .usefulguide-course .usefulguide-course-box {
        flex-direction: column;
        padding: 25px 20px;
    }
}

.usefulguide-area .usefulguide-spot .usefulguide-course .usefulguide-course-box:last-child {
    margin-bottom: 0;
}

.usefulguide-area .usefulguide-spot .usefulguide-course .usefulguide-course-box figure {
    width: 27.35043%;
}

@media screen and (max-width: 640px) {
    .usefulguide-area .usefulguide-spot .usefulguide-course .usefulguide-course-box figure {
        width: 100%;
        text-align: center;
    }
}

.usefulguide-area .usefulguide-spot .usefulguide-course .usefulguide-course-box dl {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 69.23077%;
}

@media screen and (max-width: 640px) {
    .usefulguide-area .usefulguide-spot .usefulguide-course .usefulguide-course-box dl {
        width: 100%;
        margin-top: 20px;
    }
}

.usefulguide-area .usefulguide-spot .usefulguide-course .usefulguide-course-box dl dt {
    margin-bottom: 10px;
    font-size: 1.14286rem;
    font-weight: bold;
}

.usefulguide-area .usefulguide-spot .usefulguide-comment-box {
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
    margin-bottom: 25px;
    padding: 30px;
    background-color: #ece9e2;
}

.usefulguide-area .usefulguide-spot .usefulguide-comment-box:last-child {
    margin-bottom: 0;
}

@media screen and (max-width: 640px) {
    .usefulguide-area .usefulguide-spot .usefulguide-comment-box {
        flex-direction: column;
    }
}

.usefulguide-area .usefulguide-spot .usefulguide-comment-box .usefulguide-comment-txt {
    display: flex;
    align-items: center;
    width: 71.05263%;
}

@media screen and (max-width: 640px) {
    .usefulguide-area .usefulguide-spot .usefulguide-comment-box .usefulguide-comment-txt {
        width: 100%;
    }
}

.usefulguide-area .usefulguide-spot .usefulguide-comment-box figure {
    width: 26.31579%;
    text-align: center;
}

@media screen and (max-width: 640px) {
    .usefulguide-area .usefulguide-spot .usefulguide-comment-box figure {
        width: 100%;
        margin-top: 20px;
    }
}

.usefulguide-area .usefulguide-spot .usefulguide-comment-box figure figcaption {
    margin-top: 10px;
}

.usefulguideresult-area .usefulguideresult-time {
    display: inline-block;
    padding: 5px 10px;
    border: 1px solid #000;
    font-weight: bold;
}

.usefulguideresult-area .usefulguideresult-service {
    display: flex;
    flex-wrap: wrap;
    padding-top: 5px;
}

.usefulguideresult-area .usefulguideresult-service li {
    margin: 5px 8px 0 0;
}

.usefulguideresult-area .usefulguideresult-service li:last-child {
    margin-rignt: 0;
}

/* 観光パンフレット */
.usefulpamphlet-area { padding-top: 20px; }
.usefulpamphlet-area .search-btn { background-color: #cc3333; }
@media screen and (max-width: 640px) { .usefulpamphlet-area .search-btn { font-size: 1rem; } }
.usefulpamphlet-area .search-btn .ico-envelope { margin-right: 10px; }
.usefulpamphlet-area .search-con { padding: 30px 4.1666666667% 40px; border: 1px solid #cc3333; background-color: #fff; font-size: 1.1428571429rem; }
@media screen and (max-width: 640px) { .usefulpamphlet-area .search-con { font-size: 1rem; } }
.usefulpamphlet-area .usefulpamphlet-box { display: flex; justify-content: space-between; }
@media screen and (max-width: 640px) { .usefulpamphlet-area .usefulpamphlet-box { display: block; } }
.usefulpamphlet-area .usefulpamphlet-item { width: 48%; }
@media screen and (max-width: 640px) { .usefulpamphlet-area .usefulpamphlet-item { width: 100%; margin-bottom: 2em; }
  .usefulpamphlet-area .usefulpamphlet-item:last-child { margin-bottom: 0; } }
.usefulpamphlet-area .usefulpamphlet-btn { background-color: #cc3333; color: #fff; padding: 10px; margin-top: 10px; display: inline-block; text-decoration: none; }

.usefulpamphletsearch-area .search-con {
    padding-left: 4.16667%;
    padding-right: 4.16667%;
}

.usefulpamphletsearch-area .search-con form {
    position: relative;
}

.usefulpamphletsearch-area .search-con .search-all {
    position: absolute;
    top: 0;
    right: 0;
    width: 140px;
    border: 1px solid #bababa;
    border-radius: 5px;
    background-color: #fff;
    font-size: 1.14286rem;
    line-height: 42px;
    text-align: center;
    cursor: pointer;
}

.usefulpamphletresult-area .searchresult-list .searchresult-item {
    width: 100%;
    margin-right: 0;
    padding: 35px 0;
}

.usefulpamphletresult-area .searchresult-list .searchresult-item figure {
    width: 25.83333%;
    padding: 0 20px;
    text-align: center;
}

@media screen and (max-width: 640px) {
    .usefulpamphletresult-area .searchresult-list .searchresult-item figure {
        width: 100%;
    }
}

.usefulpamphletresult-area .searchresult-list .searchresult-item .searchresult-name {
    font-size: 1.42857rem;
}

.usefulpamphletresult-area .searchresult-list .searchresult-item .searchresult-con {
    width: 74.16667%;
    padding: 0 35px;
}

@media screen and (max-width: 640px) {
    .usefulpamphletresult-area .searchresult-list .searchresult-item .searchresult-con {
        width: 100%;
        padding: 0 20px;
    }
}

.usefulpamphletresult-area .searchresult-list .searchresult-item .searchresult-box-sp {
    padding: 0 20px;
}

.usefulpamphletresult-area .usefulpamphletresult-file {
    margin-bottom: 10px;
}

.usefulpamphletresult-area .usefulpamphletresult-file li {
    margin-bottom: 5px;
}

.usefulpamphletresult-area .usefulpamphletresult-file .ico {
    margin-right: 10px;
}

.usefulpamphletresult-area .usefulpamphletresult-add {
    margin-top: 25px;
    padding: 10px 25px;
    background-color: #ece9e2;
}

.usefulkiratto-area {
    padding-bottom: 80px;
}

@media screen and (max-width: 640px) {
    .usefulkiratto-area {
        padding-bottom: 60px;
    }
}

.usefulkiratto-area .usefulkiratto-latest {
    display: flex;
    padding: 20px 0;
    border: 3px solid #ccc;
}

.usefulkiratto-area .usefulkiratto-latest figure {
    width: 36.66667%;
    padding: 0 20px;
    text-align: center;
}

.usefulkiratto-area .usefulkiratto-latest .usefulkiratto-latest-con {
    width: 63.33333%;
    padding: 15px 35px 0;
}

.usefulkiratto-area .usefulkiratto-latest .usefulkiratto-latest-ico {
    display: inline-block;
    min-width: 150px;
    margin-bottom: 15px;
    padding: 5px 10px;
    border: 1px solid #000;
    text-align: center;
}

.usefulkiratto-area .usefulkiratto-latest .usefulkiratto-latest-ttl {
    margin-bottom: 15px;
    font-size: 1.71429rem;
    font-weight: bold;
}

.usefulkiratto-area .usefulkiratto-latest .usefulkiratto-latest-txt {
    margin-bottom: 35px;
    font-size: 1.14286rem;
}

.usefulkirattobn-area {
    padding: 80px 0;
    background-color: #f4f3f1;
}

@media screen and (max-width: 640px) {
    .usefulkirattobn-area {
        padding: 60px 0;
    }
}

.usefulkirattobn-area ul {
    display: flex;
    flex-wrap: wrap;
}

@media screen and (max-width: 640px) {
    .usefulkirattobn-area ul {
        justify-content: space-between;
    }
}

.usefulkirattobn-area ul li {
    width: 31.66667%;
    margin: 0 2.5% 30px 0;
    padding: 15px 15px 30px;
    background-color: #fff;
    text-align: center;
}

@media screen and (max-width: 640px) {
    .usefulkirattobn-area ul li {
        width: 48.33333%;
        margin-right: 0;
    }
}

@media screen and (max-width: 700px) {
    /* パンフレット */
    .usefulkirattobn-area ul li a.type-book {
        display: block;
        background-color: orange;
        color: #fff;
        padding: 5px 10px;
    }
}

.usefulkirattobn-area ul li:nth-child(3n) {
    margin-right: 0;
}

.usefulkirattobn-area ul li img {
    max-width: 57.14286%;
}

.usefulkirattobn-area ul li p {
    margin-top: 15px;
}
.usefulkirattobn-area ul li a.type-book {
    background-color: orange;
    color: #fff;
    padding: 5px 10px;
}
.usefulkiratto-latest a.type-book {
    background-color: orange;
    color: #fff;
    padding: 9px 20px;
    text-decoration: none;
}
/* なごや観光ルートバスガイドボランティア */
.volunteerarea-area {
    padding-bottom: 100px;
}

@media screen and (max-width: 640px) {
    .volunteerarea-area {
        padding-bottom: 60px;
    }
}

.volunteerarea-area .volunteerarea-lead {
    margin-bottom: 10px;
    font-size: 1.14286rem;
}

.volunteerarea-area .volunteerarea-lead-covit{
    color: red;
    font-weight: bold;
    font-size: 1.14286rem;
    margin-bottom: 30px;
}

.volunteerarea-area dl {
    margin-bottom: 60px;
}

.volunteerarea-area dl dt {
    margin-bottom: 15px;
    font-size: 1.42857rem;
    font-weight: bold;
}

.volunteerarea-area dl dd {
    font-size: 1.14286rem;
}

.volunteerarea-area .volunteerarea-txt {
    margin-bottom: 40px;
    font-size: 1.14286rem;
    text-align: center;
}

.volunteerarea-area .volunteerarea-map {
    display: block;
    max-width: 900px;
    margin: 0 auto;
}

.volunteerspot-area {
    padding: 80px 0 40px;
    background-color: #f4f3f1;
}

@media screen and (max-width: 640px) {
    .volunteerspot-area {
        padding: 60px 0 20px;
    }
}

.volunteerspot-area ul {
    display: flex;
    flex-wrap: wrap;
}

@media screen and (max-width: 900px) {
    .volunteerspot-area ul {
        flex-direction: column;
    }
}

.volunteerspot-area ul li {
    position: relative;
    width: 48.33333%;
    margin: 0 3.33333% 40px 0;
    padding: 15px;
    background-color: #fff;
    box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.3);
}

.volunteerspot-area ul li:nth-child(even) {
    margin-right: 0;
}

@media screen and (max-width: 900px) {
    .volunteerspot-area ul li {
        width: 100%;
        margin-right: 0;
    }
}

.volunteerspot-area ul li .volunteerspot-row {
    display: flex;
    justify-content: space-between;
}

@media screen and (max-width: 640px) {
    .volunteerspot-area ul li .volunteerspot-row {
        margin-bottom: 15px;
    }
}

.volunteerspot-area ul li .volunteerspot-fig {
    width: 36.36364%;
}

.volunteerspot-area ul li .volunteerspot-fig figure {
    background-color: #dfdfdf;
    text-align: center;
}

.volunteerspot-area ul li .volunteerspot-fig figure img {
    max-height: 150px;
}

.volunteerspot-area ul li .volunteerspot-con {
    position: relative;
    width: 60%;
}

.volunteerspot-area ul li .volunteerspot-ico {
    position: absolute;
    display: block;
    width: 30px;
    border-radius: 15px;
    background-color: #207fac;
    color: #fff;
    line-height: 30px;
    text-align: center;
}

.volunteerspot-area ul li .volunteerspot-tel {
    margin-bottom: 5px;
    font-size: 1.14286rem;
}

.volunteerspot-area ul li .volunteerspot-tel .ico {
    margin-right: 10px;
}

.volunteerspot-area ul li .volunteerspot-name {
    margin-bottom: 10px;
    margin-left: 40px;
    font-size: 1.14286rem;
    font-weight: bold;
}

@media screen and (max-width: 640px) {
    .volunteerspot-area ul li .volunteerspot-name {
        width: calc(100% - 30px);
    }
}

.volunteerspot-area ul li dt {
    float: left;
    margin-bottom: 5px;
}

.volunteerspot-area ul li dd {
    margin: 0 0 5px 8em;
}

.volunteerdetail-area .volunteerdetail-lead {
    margin-bottom: 50px;
    font-size: 1.14286rem;
    text-align: center;
}

.volunteerdetail-area .volunteerdetail-main {
    display: flex;
    justify-content: space-between;
    margin-bottom: 50px;
    padding: 40px 80px 30px 60px;
    border: 3px solid #ccc;
}

@media screen and (max-width: 900px) {
    .volunteerdetail-area .volunteerdetail-main {
        flex-direction: column;
        padding: 30px 50px;
    }
}

.volunteerdetail-area .volunteerdetail-fig {
    position: relative;
    width: 45.06641%;
}

@media screen and (max-width: 900px) {
    .volunteerdetail-area .volunteerdetail-fig {
        width: 100%;
    }
}

.volunteerdetail-area .volunteerdetail-fig figcaption {
    margin: 20px 0;
    font-size: 1.14286rem;
    text-align: center;
}

.volunteerdetail-area .volunteerdetail-fig .volunteerdetail-fig-thumb {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    margin-top: 53.73134%;
}

.volunteerdetail-area .volunteerdetail-fig .volunteerdetail-fig-thumb li {
    padding: 0 5px;
}

.volunteerdetail-area .volunteerdetail-fig .volunteerdetail-fig-thumb img {
    margin: 0 auto;
    border: 3px solid #fff;
}

.volunteerdetail-area .volunteerdetail-fig .volunteerdetail-fig-thumb .slick-current li img {
    border-color: #f19149;
}

.volunteerdetail-area .volunteerdetail-fig .volunteerdetail-fig-arrow {
    position: absolute;
    top: 0;
    margin-top: 62.68657%;
}

.volunteerdetail-area .volunteerdetail-fig .volunteerdetail-fig-arrow.volunteerdetail-fig-prev {
    left: -35px;
}

.volunteerdetail-area .volunteerdetail-fig .volunteerdetail-fig-arrow.volunteerdetail-fig-next {
    right: -35px;
}

.volunteerdetail-area .volunteerdetail-con {
    display: flex;
    align-items: center;
    width: 47.91271%;
}

@media screen and (max-width: 900px) {
    .volunteerdetail-area .volunteerdetail-con {
        width: 100%;
        margin-top: 30px;
    }
}

.volunteerdetail-area .volunteerdetail-con .volunteerdetail-in {
    position: relative;
    padding: 30px 0 5px 40px;
    border-left: 3px solid #ccc;
}

@media screen and (max-width: 900px) {
    .volunteerdetail-area .volunteerdetail-con .volunteerdetail-in {
        width: 100%;
        padding: 0;
        border-left: none;
    }
}

.volunteerdetail-area .volunteerdetail-con .volunteerdetail-in::before {
    content: '';
    position: absolute;
    top: 50%;
    left: -14px;
    width: 20px;
    height: 20px;
    margin-top: -10px;
    border-left: 3px solid #ccc;
    border-bottom: 3px solid #ccc;
    background-color: #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

@media screen and (max-width: 900px) {
    .volunteerdetail-area .volunteerdetail-con .volunteerdetail-in::before {
        display: none;
    }
}

.volunteerdetail-area .volunteerdetail-con dl dt {
    margin-bottom: 30px;
}

.volunteerdetail-area .volunteerdetail-con dl dt span {
    display: inline-block;
    min-width: 150px;
    padding: 5px 1em;
    background-color: #000;
    color: #fff;
    font-size: 1.14286rem;
    font-weight: bold;
    text-align: center;
}

.volunteerdetail-area .volunteerdetail-con dl dd {
    margin-bottom: 20px;
    padding-right: 35px;
    font-size: 1.14286rem;
}

@media screen and (max-width: 900px) {
    .volunteerdetail-area .volunteerdetail-con dl dd {
        padding-right: 0;
    }
}

.volunteerdetail-area .tbl th {
    padding-left: 15px;
    text-align: center;
}

/* 名古屋観光ルートバス「メーグル」 */
.meguru-busstop {
    display: inline-block;
    width: 30px;
    margin-right: 5px;
    border: 2px solid #201f1f;
    border-radius: 5px;
    background-color: #fdd000;
    font-weight: bold;
    line-height: 26px;
    text-align: center;
}

@media screen and (max-width: 640px) {
  .meguru-busstop {
     width: 45px;
     line-height: 40px;
  }
}

.megurucommon-area .megurucommon-ttl {
    margin-bottom: 20px;
}

.megurucommon-area .megurucommon-lead {
    margin-bottom: 40px;
    font-size: 1.14286rem;
}

.megurucommon-area .megurucommon-con {
    display: flex;
    justify-content: space-between;
    margin-bottom: 60px;
}

@media screen and (max-width: 900px) {
    .megurucommon-area .megurucommon-con {
        flex-direction: column;
        margin-bottom: 40px;
    }
}

.megurucommon-area .megurucommon-con .megurucommon-movie {
    position: relative;
    width: 47.85714%;
    background-color: #f2f2f2;
}

@media screen and (max-width: 900px) {
    .megurucommon-area .megurucommon-con .megurucommon-movie {
        width: 100%;
    }
}

.megurucommon-area .megurucommon-con .megurucommon-movie figcaption {
    margin: 20px 0;
    font-size: 1.14286rem;
    font-weight: bold;
    text-align: center;
}



@media screen and (max-width: 900px) {
    .megurucommon-area .megurucommon-con .megurucommon-movie .megurucommon-movie-thumb {
        width: 100%;
        position: relative;
    }
}


.megurucommon-area .megurucommon-con .megurucommon-movie .megurucommon-movie-thumb li {
    padding: 0 5px;
}

.megurucommon-area .megurucommon-con .megurucommon-movie .megurucommon-movie-thumb img {
    margin: 0 auto;
    border: 3px solid #fff;
}

.megurucommon-area .megurucommon-con .megurucommon-movie .megurucommon-movie-thumb .slick-current li img {
    border-color: #f19149;
}

.megurucommon-area .megurucommon-con .megurucommon-info {
    position: relative;
    width: 48.57143%;
}

@media screen and (max-width: 900px) {
    .megurucommon-area .megurucommon-con .megurucommon-info {
        width: 100%;
        margin-top: 40px;
    }
}

.megurucommon-area .megurucommon-con .megurucommon-info .megurucommon-info-ttl {
    font-size: 1.71429rem;
}

.megurucommon-area .megurucommon-con .megurucommon-info .news-nav {
    text-align: right;
}

@media screen and (max-width: 640px) {
    .megurucommon-area .megurucommon-con .megurucommon-info .megurucommon-info-ttl {
        float: none;
    }
}

@media screen and (max-width: 640px) {
    .megurucommon-area .megurucommon-con .megurucommon-info .news-nav {
        float: none;
        margin: 1rem 0;
        text-align: right;
    }
}

.megurucommon-area .megurucommon-con .megurucommon-info .megurucommon-info-ttl .ico {
    margin-right: 10px;
}

@media screen and (max-width: 640px) {
    .megurucommon-area .megurucommon-con .megurucommon-info .megurucommon-info-ttl {
        font-size: 1.42857rem;
    }
}

.megurucommon-area .megurucommon-con .megurucommon-info ul {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: calc(100% - 70px);
    padding-right: 25px;
    overflow-y: auto;
}

@media screen and (max-width: 1000px) {
    .megurucommon-area .megurucommon-con .megurucommon-info ul {
        height: calc(100% - 80px);
    }
}

@media screen and (max-width: 900px) {
    .megurucommon-area .megurucommon-con .megurucommon-info ul {
        position: static;
        height: 300px;
        margin-top: 30px;
    }
}

.megurucommon-area .megurucommon-con .megurucommon-info ul li {
    margin-bottom: 15px;
    padding-bottom: 20px;
    border-bottom: 1px solid #000;
}

.megurucommon-area .megurucommon-con .megurucommon-info ul li .megurucommon-info-dt {
    margin-right: 1em;
    font-size: 1.14286rem;
}

.megurucommon-area .megurucommon-con .megurucommon-info ul li .megurucommon-info-ico {
    display: inline-block;
    min-width: 150px;
    padding: 5px;
    color: #fff;
    font-size: 0.92857rem;
    text-align: center;
}

.megurucommon-area .megurucommon-con .megurucommon-info ul li .megurucommon-info-ico.megurucommon-info-ico1 {
    background-color: #eb9104;
}

.megurucommon-area .megurucommon-con .megurucommon-info ul li .megurucommon-info-ico.megurucommon-info-ico2 {
    background-color: #89aa3a;
}

.megurucommon-area .megurucommon-con .megurucommon-info ul li .megurucommon-info-ico.megurucommon-info-ico3 {
    background-color: #4a5198;
}

.megurucommon-area .megurucommon-con .megurucommon-info ul li .megurucommon-info-sub {
    display: block;
    margin-top: 5px;
    font-size: 1.14286rem;
}

.megurucommon-area .megurucommon-exbtn {
    margin-bottom: 80px;
    text-align: center;
}

@media screen and (max-width: 900px) {
    .megurucommon-area .megurucommon-exbtn {
        margin-bottom: 60px;
    }
}

.megurucommon-area .box-nav-col {
    margin-bottom: 100px;
}

@media screen and (max-width: 900px) {
    .megurucommon-area .box-nav-col {
        margin-bottom: 40px;
    }
}

.megururoute-area {
    margin-bottom: 80px;
}

@media screen and (max-width: 900px) {
    .megururoute-area {
        margin-bottom: 60px;
    }
}

.megururoute-area figure {
    margin-bottom: 20px;
}

.megururoute-area li {
    margin-bottom: 10px;
}

.megurumap-area {
    margin-bottom: 60px;
}

.megurumap-area .megurumap-map {
    border: 6px solid #a9894b;
}

.megurumap-area .megurumap-zoom {
    margin-top: 15px;
    font-size: 1.28571rem;
}

.megurumap-area .megurumap-zoom a {
    text-decoration: none;
}

.megurumap-area .megurumap-zoom .ico {
    margin-right: 10px;
}

.megurumap-area .megurumap-tab {
    display: flex;
    justify-content: space-between;
    margin-top: 60px;
}

.megurumap-area .megurumap-tab li {
    width: 24%;
    padding: 15px 0;
    background-color: #a9894b;
    color: #fff;
    font-size: 1.28571rem;
    text-align: center;
}

@media screen and (max-width: 900px) {
    .megurumap-area .megurumap-tab li {
        width: 25%;
        border-right: 1px solid #fff;
        font-size: 1rem;
    }
}

.megurumap-area .megurumap-tab li.is-current {
    background-color: #f4f3f1;
    color: #a9894b;
}

.megurumap-area .megurumap-con {
    padding: 60px 0;
    background-color: #f4f3f1;
}

.megurumap-area .megurumap-con .cmn-tab-content {
    display: flex;
    justify-content: space-between;
}

@media screen and (max-width: 900px) {
    .megurumap-area .megurumap-con .cmn-tab-content {
        flex-direction: column;
    }
}

.megurumap-area .megurumap-con .megurumap-fig {
    width: 33.33333%;
    text-align: center;
}

@media screen and (max-width: 900px) {
    .megurumap-area .megurumap-con .megurumap-fig {
        width: 100%;
    }
}

.megurumap-area .megurumap-con .megurumap-info {
    width: 61.66667%;
}

@media screen and (max-width: 900px) {
    .megurumap-area .megurumap-con .megurumap-info {
        width: 100%;
        margin-top: 40px;
    }
}

.megurumap-area .megurumap-con .megurumap-info .megurumap-info-ttl {
    margin-bottom: 25px;
    font-size: 1.57143rem;
}

.megurumap-area .megurumap-con .megurumap-info .megurumap-info-ttl .ico {
    margin-right: 10px;
}

.megurumap-area .megurumap-con .megurumap-spot {
    display: flex;
    justify-content: space-between;
    margin-bottom: 30px;
}

@media screen and (max-width: 640px) {
    .megurumap-area .megurumap-con .megurumap-spot {
        flex-wrap: wrap;
    }
}

.megurumap-area .megurumap-con .megurumap-spot .megurumap-spot-img {
    width: 37.83784%;
}

@media screen and (max-width: 640px) {
    .megurumap-area .megurumap-con .megurumap-spot .megurumap-spot-img {
        width: 100%;
        text-align: center;
    }
}

.megurumap-area .megurumap-con .megurumap-spot .megurumap-spot-img .slick-dotted {
    margin-bottom: 0;
}

.megurumap-area .megurumap-con .megurumap-spot .megurumap-spot-img .slick-dots {
    bottom: 10px;
}

.megurumap-area .megurumap-con .megurumap-spot .megurumap-spot-con {
    width: 59.45946%;
}

@media screen and (max-width: 640px) {
    .megurumap-area .megurumap-con .megurumap-spot .megurumap-spot-con {
        width: 100%;
        margin-top: 30px;
    }
}

.megurumap-area .megurumap-con .megurumap-spot .megurumap-spot-head {
    margin-bottom: 10px;
}

.megurumap-area .megurumap-con .megurumap-spot .megurumap-spot-head p {
    float: left;
    font-size: 1.28571rem;
    font-weight: bold;
    text-decoration: underline;
}

.megurumap-area .megurumap-con .megurumap-spot .megurumap-spot-head ul {
    float: right;
}

.megurumap-area .megurumap-con .megurumap-spot .megurumap-spot-head ul li {
    float: left;
    margin-left: 5px;
}

.megurumap-area .megurumap-con .megurumap-spot .megurumap-spot-st {
    margin-bottom: 5px;
}

.megurumap-area .megurumap-con .megurumap-spot .megurumap-spot-st .txt-red,
.megurumap-area .megurumap-con .megurumap-spot .megurumap-spot-st .searchresult-area .searchresult-list .searchresult-item .searchresult-copy,
.searchresult-area .searchresult-list .searchresult-item .megurumap-area .megurumap-con .megurumap-spot .megurumap-spot-st .searchresult-copy {
    font-weight: bold;
}

.megurumap-area .megurumap-con .megurumap-spot .megurumap-spot-disc {
    margin-bottom: 10px;
}

.megurumap-area .megurumap-con .megurumap-spot dl dt {
    float: left;
}

.megurumap-area .megurumap-con .megurumap-spot dl dd {
    margin-left: 6em;
}

.megurumap-area .megurumap-con .megurumap-mark {
    padding: 15px 20px;
    background-color: #fff;
}

.megurumap-area .megurumap-con .megurumap-mark .megurumap-mark-ttl {
    position: relative;
    margin-bottom: 15px;
    text-align: center;
}

.megurumap-area .megurumap-con .megurumap-mark .megurumap-mark-ttl span {
    position: relative;
    z-index: 1;
    display: inline-block;
    padding: 0 10px;
    background-color: #fff;
    color: #4c80ba;
    font-weight: bold;
}

.megurumap-area .megurumap-con .megurumap-mark .megurumap-mark-ttl::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #4c80ba;
}

.megurumap-area .megurumap-con .megurumap-mark dl {
    display: flex;
    margin-bottom: 10px;
}

.megurumap-area .megurumap-con .megurumap-mark dl dt {
    display: flex;
    align-items: center;
}

.megurumap-area .megurumap-con .megurumap-mark dl dd {
    display: flex;
    align-items: center;
    padding-left: 10px;
    line-height: 1.2;
}

.megurumap-area .megurumap-con .megurumap-mark .megurumap-mark-point {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding-bottom: 5px;
}

.megurumap-area .megurumap-con .megurumap-mark .megurumap-mark-line {
    display: flex;
    flex-wrap: wrap;
}

.megurumap-area .megurumap-con .megurumap-mark .megurumap-mark-line dl {
    width: 20%;
}

@media screen and (max-width: 900px) {
    .megurumap-area .megurumap-con .megurumap-mark .megurumap-mark-line dl {
        width: 33.33333%;
    }
}

.megurucourse-area {
    padding-bottom: 60px;
}

.megurucourse-area figure {
    margin-bottom: 15px;
}

@media screen and (max-width: 640px) {
    .megurucourse-area figure {
        margin-bottom: 0;
    }
}

.megurucourse-area .megurucourse-name {
    margin: 5px 0;
    font-size: 1.14286rem;
    font-weight: bold;
}

@media screen and (max-width: 640px) {
    .megurucourse-area .megurucourse-name {
        font-size: 1rem;
    }
}

.meguruinfo-area {
    margin-bottom: 60px;
}

.meguruinfo-area .meguruinfo-con {
    display: flex;
    justify-content: space-between;
    margin-bottom: 40px;
}

@media screen and (max-width: 900px) {
    .meguruinfo-area .meguruinfo-con {
        flex-direction: column;
        margin-bottom: 0;
    }
}

.meguruinfo-area .meguruinfo-con .meguruinfo-col {
    width: 31.66667%;
}

@media screen and (max-width: 900px) {
    .meguruinfo-area .meguruinfo-con .meguruinfo-col {
        width: 100%;
        margin-bottom: 40px;
    }
}

.meguruinfo-area .meguruinfo-con .meguruinfo-col .ttl-line::after {
    width: 150px;
}

.meguruinfo-area .meguruinfo-con .meguruinfo-day dt {
    margin-bottom: 5px;
    font-size: 1.28571rem;
    font-weight: bold;
}

.meguruinfo-area .meguruinfo-con .meguruinfo-day dd {
    margin-bottom: 20px;
}

.meguruinfo-area .meguruinfo-con .meguruinfo-day dd:last-child {
    margin-bottom: 0;
}

.meguruinfo-area .meguruinfo-con .meguruinfo-fee ul {
    margin: 15px 0;
}

.meguruinfo-area .meguruinfo-con .meguruinfo-tel dt {
    margin-bottom: 5px;
    font-weight: bold;
}

.meguruinfo-area .meguruinfo-con .meguruinfo-tel dd {
    margin-bottom: 20px;
}

.meguruinfo-area .meguruinfo-con .meguruinfo-tel dd:last-child {
    margin-bottom: 0;
}

.meguruinfo-area .meguruinfo-ticket {
    max-width: 1000px;
    margin: 0 auto;
    padding: 5px 3% 20px;
    background-color: #f4f3f1;
}

.meguruinfo-area .meguruinfo-ticket .meguruinfo-ticket-inner {
    display: flex;
    margin-bottom: 15px;
}

@media screen and (max-width: 900px) {
    .meguruinfo-area .meguruinfo-ticket .meguruinfo-ticket-inner {
        flex-direction: column;
    }
}

.meguruinfo-area .meguruinfo-ticket .meguruinfo-ticket-con {
    width: 77.12766%;
    padding-top: 25px;
}

@media screen and (max-width: 900px) {
    .meguruinfo-area .meguruinfo-ticket .meguruinfo-ticket-con {
        width: 100%;
    }
}

.meguruinfo-area .meguruinfo-ticket .meguruinfo-ticket-con .meguruinfo-ticket-head {
    max-width: 680px;
    margin-bottom: 15px;
}

@media screen and (max-width: 640px) {
    .meguruinfo-area .meguruinfo-ticket .meguruinfo-ticket-con .meguruinfo-ticket-head {
        margin-bottom: 20px;
    }
}

.meguruinfo-area .meguruinfo-ticket .meguruinfo-ticket-con .meguruinfo-ticket-head .meguruinfo-ticket-ttl {
    float: left;
    font-size: 2rem;
}

@media screen and (max-width: 640px) {
    .meguruinfo-area .meguruinfo-ticket .meguruinfo-ticket-con .meguruinfo-ticket-head .meguruinfo-ticket-ttl {
        float: none;
        font-size: 1.42857rem;
        text-align: center;
    }
}

.meguruinfo-area .meguruinfo-ticket .meguruinfo-ticket-con .meguruinfo-ticket-head p {
    float: right;
    padding: 5px 10px;
    background-color: #ee7701;
    color: #fff;
    font-size: 1.57143rem;
    font-weight: bold;
}

@media screen and (max-width: 640px) {
    .meguruinfo-area .meguruinfo-ticket .meguruinfo-ticket-con .meguruinfo-ticket-head p {
        float: none;
        margin-top: 10px;
        font-size: 1.28571rem;
        text-align: center;
    }
}

.meguruinfo-area .meguruinfo-ticket .meguruinfo-ticket-con dt {
    margin-bottom: 10px;
    font-size: 1.14286rem;
    font-weight: bold;
}

.meguruinfo-area .meguruinfo-ticket .meguruinfo-ticket-con dd {
    line-height: 1.8;
}

.meguruinfo-area .meguruinfo-ticket figure {
    width: 22.87234%;
}

@media screen and (max-width: 900px) {
    .meguruinfo-area .meguruinfo-ticket figure {
        width: 100%;
        margin-top: 20px;
        text-align: center;
    }
}

.meguruinfo-area .meguruinfo-ticket .btn-arrow {
    max-width: 300px;
    margin-right: 20px;
}

.meguruinfo-area .meguruinfo-ticket .btn-arrow:last-child {
    margin-right: 0;
}

.meguruticket-area {
    margin-bottom: 60px;
}

.meguruticket-area .meguruticket-lead {
    margin-bottom: 25px;
}

.meguruticket-area .meguruticket-con {
    display: flex;
    gap: 3em;
    margin-bottom: 70px;
}

@media screen and (max-width: 900px) {
    .meguruticket-area .meguruticket-con {
        flex-direction: column;
        gap: 0;
        margin-bottom: 0;
    }
}

.meguruticket-area .meguruticket-con .meguruticket-col {
  flex: 1;
}

@media screen and (max-width: 900px) {
    .meguruticket-area .meguruticket-con .meguruticket-col {
        width: 100%;
        margin-bottom: 40px;
    }
}

.meguruticket-area .meguruticket-con .meguruticket-col .ttl-line::after {
    width: 150px;
}

.meguruticket-area .meguruticket-con .meguruticket-col ul {
    margin-bottom: 40px;
}

.meguruticket-area .meguruticket-con .meguruticket-col ul:last-child {
    margin-bottom: 0;
}

.meguruticket-area .meguruticket-con .meguruticket-col ul li {
    margin-bottom: 15px;
}

.meguruticket-area .meguruticket-con .meguruticket-col ul li:last-child {
    margin-bottom: 0;
}

.meguruticket-area .meguruticket-con .meguruticket-col ul li::before {
    content: '>';
    margin-right: 5px;
    color: #a9894b;
}

.meguruticket-area .meguruticket-coupon {
    max-width: 1000px;
    margin: 0 auto;
    padding: 30px 3%;
    background-color: #f4f3f1;
}

.meguruticket-area .meguruticket-coupon .meguruticket-coupon-inner .meguruticket-coupon-ttl {
    margin-bottom: 10px;
    font-size: 2rem;
}

@media screen and (max-width: 640px) {
    .meguruticket-area .meguruticket-coupon .meguruticket-coupon-inner .meguruticket-coupon-ttl {
        float: none;
        font-size: 1.42857rem;
        text-align: center;
    }
}

.meguruticket-area .meguruticket-coupon .meguruticket-coupon-inner p {
    margin-bottom: 15px;
    line-height: 1.8;
}

.meguruticket-area .meguruticket-coupon .btn-arrow {
    max-width: 600px;
}

.megurubenefit-area {
    padding: 0;
    background-color: #fff;
}

.megurubenefit-area .megurubenefit-lead {
    margin-bottom: 40px;
    text-align: center;
}

.megurubenefit-area .megurubenefit-list .megurubenefit-item {
    margin-bottom: 20px;
    padding: 15px 0;
    background-color: #fff;
    box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.3);
}

.megurubenefit-area .megurubenefit-list .megurubenefit-item .tdn {
    display: flex;
}

@media screen and (max-width: 900px) {
    .megurubenefit-area .megurubenefit-list .megurubenefit-item .tdn {
        flex-direction: column;
    }
}

.megurubenefit-area .megurubenefit-list .megurubenefit-item .megurubenefit-l {
    width: 50%;
    padding: 0 15px;
}

@media screen and (max-width: 900px) {
    .megurubenefit-area .megurubenefit-list .megurubenefit-item .megurubenefit-l {
        width: 100%;
    }
}

.megurubenefit-area .megurubenefit-list .megurubenefit-item .megurubenefit-head {
    display: flex;
    margin-bottom: 15px;
}

@media screen and (max-width: 640px) {
    .megurubenefit-area .megurubenefit-list .megurubenefit-item .megurubenefit-head {
        display: block;
        margin-bottom: 15px;
    }
}

.megurubenefit-area .megurubenefit-list .megurubenefit-item .megurubenefit-head figure {
    width: 33.33333%;
    background-color: #eeeeee;
    text-align: center;
}

@media screen and (max-width: 640px) {
    .megurubenefit-area .megurubenefit-list .megurubenefit-item .megurubenefit-head figure {
        width: 100%;
    }
}

@media screen and (max-width: 640px) {
    .megurubenefit-area .megurubenefit-list .megurubenefit-item .megurubenefit-head img {
        width: 100%;
    }
}

.megurubenefit-area .megurubenefit-list .megurubenefit-item .megurubenefit-head div {
    width: 66.66667%;
    padding-left: 15px;
}

@media screen and (max-width: 640px) {
    .megurubenefit-area .megurubenefit-list .megurubenefit-item .megurubenefit-head div {
        width: 100%;
        padding: 0;
    }
}

.megurubenefit-area .megurubenefit-list .megurubenefit-item .megurubenefit-head div .megurubenefit-copy {
    margin-bottom: 10px;
    font-weight: bold;
}

.megurubenefit-area .megurubenefit-list .megurubenefit-item .megurubenefit-head div .megurubenefit-icon {
    display: inline-block;
    width: 100%;
    margin-right: 5px;
    border-radius: 5px;
    background-color: #00b0ec;
    color: #fff;
    font-weight: bold;
    line-height: 30px;
    text-align: center;
}

.megurubenefit-area .megurubenefit-list .megurubenefit-item .megurubenefit-head div .megurubenefit-name {
    font-size: 1.14286rem;
    font-weight: bold;
    display: inline-block;
    width: 100%;
}

.megurubenefit-area .megurubenefit-list .megurubenefit-item .megurubenefit-r {
    width: 50%;
    padding: 0 10px;
    border-left: 1px solid #dddddd;
}

@media screen and (max-width: 900px) {
    .megurubenefit-area .megurubenefit-list .megurubenefit-item .megurubenefit-r {
        width: 100%;
        border-left: none;
    }
}

.megurubenefit-area .megurubenefit-list .megurubenefit-item .megurubenefit-r ul {
    display: flex;
    flex-wrap: wrap;
}

@media screen and (max-width: 900px) {
    .megurubenefit-area .megurubenefit-list .megurubenefit-item .megurubenefit-r ul {
        margin-top: 15px;
        padding-top: 15px;
        border-top: 1px solid #dddddd;
    }
}

.megurubenefit-area .megurubenefit-list .megurubenefit-item .megurubenefit-r ul li {
    width: 50%;
    margin-bottom: 10px;
    padding: 0 5px;
}

@media screen and (max-width: 640px) {
    .megurubenefit-area .megurubenefit-list .megurubenefit-item .megurubenefit-r ul li {
        width: 100%;
    }
}

.megurubenefit-area .megurubenefit-list .megurubenefit-item .megurubenefit-r ul li:last-child {
    /*margin-bottom: 0;*/
}

.megurubenefit-area .megurubenefit-list .megurubenefit-item .megurubenefit-r p {
    margin-top: 15px;
    padding: 0 5px;
}

.megurutime-area .megurutime-box {
    margin-bottom: 60px;
}

.megurutime-area .megurutime-box figure {
    text-align: center;
}

.megurutime-area .megurutime-guide {
    margin-bottom: 60px;
}

.megurutime-area .megurutime-guide .megurutime-guide-box {
    display: flex;
    justify-content: space-between;
}

@media screen and (max-width: 900px) {
    .megurutime-area .megurutime-guide .megurutime-guide-box {
        flex-direction: column;
    }
}

.megurutime-area .megurutime-guide .megurutime-guide-con {
    width: 66.66667%;
}

@media screen and (max-width: 900px) {
    .megurutime-area .megurutime-guide .megurutime-guide-con {
        width: 100%;
    }
}

.megurutime-area .megurutime-guide .megurutime-guide-con p {
    margin-bottom: 15px;
}

.megurutime-area .megurutime-guide .megurutime-guide-con .megurutime-guide-bus {
    margin-bottom: 10px;
    font-size: 1.28571rem;
}

.megurutime-area .megurutime-guide .megurutime-guide-con table {
    width: 100%;
    max-width: 1000px;
}

@media screen and (max-width: 640px) {
    .megurutime-area .megurutime-guide .megurutime-guide-con table {
        border-bottom: 1px solid #c7c4c0;
    }
}

.megurutime-area .megurutime-guide .megurutime-guide-con table th {
    padding: 10px 15px;
    border: 1px solid #c7c4c0;
    background-color: #e9dfca;
    text-align: left;
}

@media screen and (max-width: 640px) {
    .megurutime-area .megurutime-guide .megurutime-guide-con table th {
        display: block;
        border-bottom: none;
    }
}

.megurutime-area .megurutime-guide .megurutime-guide-con table td {
    padding: 10px 15px;
    border: 1px solid #c7c4c0;
}

@media screen and (max-width: 640px) {
    .megurutime-area .megurutime-guide .megurutime-guide-con table td {
        display: block;
        border-bottom: none;
    }
}

.megurutime-area .megurutime-guide .megurutime-guide-con li {
    margin-top: 10px;
}

.megurutime-area .megurutime-guide figure {
    width: 30%;
    text-align: center;
}

@media screen and (max-width: 900px) {
    .megurutime-area .megurutime-guide figure {
        width: 100%;
        margin-top: 20px;
    }
}

/* 産業観光バス */
.industry-area .industry-lead {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    margin-bottom: 60px;
}

@media screen and (max-width: 900px) {
    .industry-area .industry-lead {
        flex-direction: column;
    }
}

.industry-area .industry-lead figure {
    width: 32.5%;
    text-align: center;
}

@media screen and (max-width: 900px) {
    .industry-area .industry-lead figure {
        width: 100%;
    }
}

.industry-area .industry-lead p {
    width: 65.83333%;
    padding-top: 20px;
    font-size: 1.14286rem;
}

@media screen and (max-width: 900px) {
    .industry-area .industry-lead p {
        width: 100%;
    }
}

.industry-area .industry-tour {
    margin-bottom: 100px;
}

@media screen and (max-width: 900px) {
    .industry-area .industry-tour {
        margin-bottom: 60px;
    }
}

.industry-area .industry-tour ul {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 30px;
}

@media screen and (max-width: 640px) {
    .industry-area .industry-tour ul {
        flex-direction: column;
    }
}

.industry-area .industry-tour ul li {
    width: 31.66667%;
    margin: 0 2.5% 30px 0;
    padding: 9px;
    border: 1px solid #ccc;
}

.industry-area .industry-tour ul li:nth-child(3n) {
    margin-right: 0;
}

@media screen and (max-width: 640px) {
    .industry-area .industry-tour ul li {
        width: 100%;
        padding: 20px 15px;
    }
}

.industry-area .industry-tour .industry-tour-con {
    padding: 20px 9px;
}

.industry-area .industry-tour .industry-tour-head {
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px;
}

@media screen and (max-width: 900px) {
    .industry-area .industry-tour .industry-tour-head {
        flex-direction: column;
    }
}

@media screen and (max-width: 640px) {
    .industry-area .industry-tour .industry-tour-head {
        flex-direction: row;
    }
}

.industry-area .industry-tour .industry-tour-head .ico-tag {
    min-width: 80px;
}

.industry-area .industry-tour .industry-tour-head p big {
    font-size: 1.28571rem;
}

.industry-area .industry-tour figure {
    text-align: center;
}

.industry-area .industry-tour .industry-tour-date {
    margin-bottom: 10px;
}

.industry-area .industry-tour .industry-tour-name {
    margin-bottom: 10px;
    font-size: 1.14286rem;
    font-weight: bold;
}

.industry-area .industry-tour dl {
    margin-bottom: 15px;
}

.industry-area .industry-tour dl dt {
    font-weight: bold;
}

.industry-area .industry-tour .industry-tour-btn {
    display: inline-block;
    width: 280px;
    max-width: 100%;
    padding: 10px;
    background-color: #000;
    color: #fff;
    text-align: center;
    text-decoration: none;
}

.industry-area .industry-tour .industry-tour-btn .ico {
    margin-left: 5px;
}

@media screen and (max-width: 640px) {
    .industry-area .industry-tour .industry-tour-btn {
        width: 100%;
    }
}

.industry-area .industry-tour .btn-arrow-b {
    max-width: 400px;
    background-color: #a9894b;
}

.industry-area .industry-contact {
    margin-bottom: 70px;
}

@media screen and (max-width: 900px) {
    .industry-area .industry-contact {
        margin-bottom: 30px;
    }
}

.industry-area .industry-contact p {
    margin-bottom: 40px;
    font-size: 1.14286rem;
}

.industry-area .industry-contact .industry-contact-list {
    display: flex;
    flex-wrap: wrap;
    font-size: 1.14286rem;
}

@media screen and (max-width: 640px) {
    .industry-area .industry-contact .industry-contact-list {
        flex-direction: column;
    }
}

.industry-area .industry-contact .industry-contact-list dl {
    width: 48.33333%;
    margin: 0 3.33333% 30px 0;
}

@media screen and (max-width: 640px) {
    .industry-area .industry-contact .industry-contact-list dl {
        width: 100%;
        margin-right: 0;
    }
}

.industry-area .industry-contact .industry-contact-list dl:nth-child(even) {
    margin-right: 0;
}

.industry-area .industry-contact .industry-contact-list dl dt {
    font-weight: bold;
}

.industry-area .industry-contact .industry-contact-list dl dd {
    padding: 15px 0 0 20px;
}

.industry-area .industry-place {
    margin-bottom: 70px;
}

@media screen and (max-width: 900px) {
    .industry-area .industry-place {
        margin-bottom: 30px;
    }
}

.industry-area .industry-place p {
    margin-bottom: 40px;
    font-size: 1.14286rem;
}

.industry-area .industry-place .industry-place-list {
    display: flex;
    flex-wrap: wrap;
}

@media screen and (max-width: 640px) {
    .industry-area .industry-place .industry-place-list {
        flex-direction: column;
    }
}

.industry-area .industry-place .industry-place-list dl {
    width: 48.33333%;
    margin: 0 3.33333% 30px 0;
}

@media screen and (max-width: 640px) {
    .industry-area .industry-place .industry-place-list dl {
        width: 100%;
        margin-right: 0;
    }
}

.industry-area .industry-place .industry-place-list dl:nth-child(even) {
    margin-right: 0;
}

.industry-area .industry-place .industry-place-list dl dt {
    margin-bottom: 10px;
    font-size: 1.28571rem;
    font-weight: bold;
}

/* アクセスランキング */
.accessranking-area .accessranking-main {
    margin-bottom: 65px;
}

.accessranking-area .accessranking-nav {
    display: flex;
    border-right: 1px solid #000;
    border-bottom: 1px solid #000;
}

.accessranking-area .accessranking-nav li {
    width: 20%;
    padding: 15px 10px;
    border-top: 1px solid #000;
    border-left: 1px solid #000;
    font-size: 1.28571rem;
    text-align: center;
}

@media screen and (max-width: 640px) {
    .accessranking-area .accessranking-nav li {
        font-size: 1rem;
    }
}

.accessranking-area .accessranking-nav li.is-current {
    background-color: #000;
    color: #fff;
}

.accessranking-area .accessranking-nav-b {
    margin-bottom: 60px;
}

.accessranking-area .accessranking-nav-b .is-current {
    position: relative;
}

.accessranking-area .accessranking-nav-b .is-current::before {
    content: '';
    position: absolute;
    top: -10px;
    left: 50%;
    width: 20px;
    height: 20px;
    margin-left: -8px;
    background-color: #000;
    -webkit-transform: rotate(45deg) skew(20deg, 20deg);
    transform: rotate(45deg) skew(20deg, 20deg);
}

.accessranking-area .accessranking-head {
    position: relative;
    margin-bottom: 80px;
    padding: 30px 20px;
    background-color: #000;
    color: #fff;
    text-align: center;
}

.accessranking-area .accessranking-head::before {
    content: '';
    position: absolute;
    left: 50%;
    bottom: -15px;
    width: 30px;
    height: 30px;
    margin-left: -12px;
    background-color: #000;
    -webkit-transform: rotate(45deg) skew(15deg, 15deg);
    transform: rotate(45deg) skew(15deg, 15deg);
}

.accessranking-area .accessranking-head .accessranking-ttl {
    margin-bottom: 5px;
    font-size: 1.71429rem;
}

@media screen and (max-width: 640px) {
    .accessranking-area .accessranking-head .accessranking-ttl {
        font-size: 1.42857rem;
    }
}

.accessranking-area .accessranking-head p {
    font-size: 1.28571rem;
}

@media screen and (max-width: 640px) {
    .accessranking-area .accessranking-head p {
        font-size: 1rem;
    }
}

.accessranking-area .accessranking-head p span {
    color: #ff9999;
}

.accessranking-area .accessranking-list {
    margin-bottom: 85px;
    padding: 80px 0;
    background-color: #f4f3f1;
}

@media screen and (max-width: 900px) {
    .accessranking-area .accessranking-list {
        padding: 60px 0;
    }
}

.accessranking-area .accessranking-list li {
    display: flex;
    justify-content: space-between;
    margin-bottom: 50px;
    padding: 25px;
    background-color: #fff;
}

@media screen and (max-width: 900px) {
    .accessranking-area .accessranking-list li {
        flex-direction: column;
    }
}

.accessranking-area .accessranking-list li:last-child {
    margin-bottom: 0;
}

.accessranking-area .accessranking-list figure {
    width: 26.34783%;
}

@media screen and (max-width: 900px) {
    .accessranking-area .accessranking-list figure {
        width: 100%;
        text-align: center;
    }
}

@media screen and (max-width: 900px) {
    .accessranking-area .accessranking-list figure img {
        width: 100%;
        text-align: center;
    }
}

.accessranking-area .accessranking-list .accessranking-list-ico {
    width: 101px;
    padding: 0 5px;
}

@media screen and (max-width: 900px) {
    .accessranking-area .accessranking-list .accessranking-list-ico {
        margin: -20px auto 15px;
    }
}

.accessranking-area .accessranking-list .accessranking-list-ico span {
    display: block;
    width: 91px;
    height: 90px;
    padding-top: 35px;
    background: url("../img/useful/ranking_i04.png") no-repeat;
    color: #fff;
    font-size: 2.14286rem;
    font-weight: bold;
    text-align: center;
}

@media screen and (max-width: 640px) {
    .accessranking-area .accessranking-list .accessranking-list-ico span {
        font-size: 1.57143rem;
    }
}

.accessranking-area .accessranking-list .accessranking-list-ico span.accessranking-list-ico1 {
    background-image: url("../img/useful/ranking_i01.png");
}

.accessranking-area .accessranking-list .accessranking-list-ico span.accessranking-list-ico2 {
    background-image: url("../img/useful/ranking_i02.png");
}

.accessranking-area .accessranking-list .accessranking-list-ico span.accessranking-list-ico3 {
    background-image: url("../img/useful/ranking_i03.png");
}

.accessranking-area .accessranking-list .accessranking-list-con {
    width: 62.6087%;
}

@media screen and (max-width: 900px) {
    .accessranking-area .accessranking-list .accessranking-list-con {
        width: 100%;
    }
}

.accessranking-area .accessranking-list .accessranking-list-name {
    margin-bottom: 10px;
    font-size: 1.42857rem;
    font-weight: bold;
}

.accessranking-area .accessranking-list .box-tag {
    margin-bottom: 5px;
}

.accessranking-area .accessranking-list .btn-arrow {
    margin-top: 15px;
    max-width: 360px;
    font-size: 1rem;
}

/* よくある質問 */
.faqsearch-area {
    max-width: 1400px;
    margin: 0 auto 80px;
    padding: 40px 0;
    background-color: #e2e2e2;
}

@media screen and (max-width: 900px) {
    .faqsearch-area {
        margin-bottom: 60px;
    }
}

.faqsearch-area .faqsearch-form {
    display: flex;
    border: 1px solid #ccc;
}

.faqsearch-area .faqsearch-form input {
    flex: 1;
    width: 100%;
    padding: 0 10px;
    border: none;
    outline: none;
}

.faqsearch-area .faqsearch-form button {
    width: 80px;
    padding: 10px 0;
    background-color: #000;
    text-align: center;
}

.faqcontent-area {
    padding: 100px 0;
    background-color: #f4f3f1;
}

@media screen and (max-width: 900px) {
    .faqcontent-area {
        padding: 60px 0;
    }
}

.faqcontent-area .inner-l {
    display: flex;
    justify-content: space-between;
}

@media screen and (max-width: 900px) {
    .faqcontent-area .inner-l {
        flex-direction: column;
    }
}

.faqcontent-area .faqcontent-all {
    margin-bottom: 45px;
    text-align: right;
}

.faqcontent-area .faqcontent-all span {
    display: inline-block;
    padding: 10px 20px;
    background-color: #000;
    color: #fff;
    cursor: pointer;
}

.faqcontent-area .faqcontent-all span .ico {
    margin-left: 5px;
}

.faqcontent-area .faqcontent-list {
    width: 71.42857%;
}

@media screen and (max-width: 900px) {
    .faqcontent-area .faqcontent-list {
        width: 100%;
    }
}

.faqcontent-area .faqcontent-item {
    position: relative;
    margin-bottom: 35px;
    background-color: #fff;
}

.faqcontent-area .faqcontent-item dt {
    display: flex;
    padding: 25px 40px;
    font-size: 1.42857rem;
    font-weight: bold;
}

.faqcontent-area .faqcontent-item dt span {
    width: 1.5em;
}

.faqcontent-area .faqcontent-item dd {
    display: none;
}

.faqcontent-area .faqcontent-item dd .faqcontent-item-con {
    display: flex;
    padding: 0 40px 30px;
}

.faqcontent-area .faqcontent-item dd .faqcontent-item-con span {
    width: 2em;
    font-size: 1.42857rem;
    font-weight: bold;
}

.faqcontent-area .faqcontent-item dd .faqcontent-item-con p {
    padding-top: 5px;
}

.faqcontent-area .faqcontent-item .faqcontent-btn {
    position: absolute;
    top: 0;
    right: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 40px;
    height: 40px;
    background-color: #000;
    cursor: pointer;
}

.faqcontent-area .faqcontent-item .faqcontent-btn .ico-arrowss-t-w {
    display: none;
}

.faqcontent-area .faqcontent-item.js-open .faqcontent-btn .ico-arrowss-b-w {
    display: none;
}

.faqcontent-area .faqcontent-item.js-open .faqcontent-btn .ico-arrowss-t-w {
    display: inline-block;
}

.faqcontent-area .faqcontent-nav {
    width: 25%;
}

@media screen and (max-width: 900px) {
    .faqcontent-area .faqcontent-nav {
        width: 100%;
    }
}

.faqcontent-area .faqcontent-nav a {
    text-decoration: none;
}

.faqcontent-area .faqcontent-nav .faqcontent-nav-ttl {
    position: relative;
    display: block;
    padding: 15px 20px;
    background-color: #000;
    color: #fff;
    font-size: 1.28571rem;
}

.faqcontent-area .faqcontent-nav .faqcontent-nav-ttl .ico {
    position: absolute;
    top: 50%;
    right: 20px;
    margin-top: -8px;
}

.faqcontent-area .faqcontent-nav dt {
    padding: 15px 20px;
    border-bottom: 1px solid #bfbfbf;
    font-size: 1.28571rem;
}

.faqcontent-area .faqcontent-nav dd {
    border-bottom: 1px solid #bfbfbf;
}

.faqcontent-area .faqcontent-nav dd a {
    display: block;
    padding: 10px 20px 10px 30px;
}

.faqcontent-area .faqcontent-nav dd a.is-current {
    background-color: #a9894b;
    color: #fff;
}

/* SNSのご案内 */
 .snsguide-area {
    padding: 100px 0;
    background-color: #f4f3f1;
}

@media screen and (max-width: 900px) {
    .snsguide-area {
        padding: 0;
    }
    
    .snsguide-box {
        padding: 3rem 0;
    }
    
}

.snsguide-area dl {
    margin-bottom: 50px;
}

@media screen and (max-width: 900px) {
    .snsguide-area dl {
        margin-bottom: 0;
    }
}
.snsguide-area dl dt {
    margin-bottom: 15px;
    font-size: 1.14286rem;
    font-weight: bold;
}

.snsguide-area .snsguide-list {
    display: flex;
    flex-wrap: wrap;
}

@media screen and (max-width: 900px) {
    .snsguide-area .snsguide-list {
        justify-content: space-between;
    }
}

.snsguide-area .snsguide-item {
    width: 31.66667%;
    margin: 0 2.5% 80px 0;
}

.snsguide-area .snsguide-item.instagram-item {
    width: 48.75%
}

@media screen and (max-width: 640px) {
    .snsguide-area .snsguide-item.instagram-item {
        width: 90%;
        margin: 0 auto;
    }
}

.snsguide-area .snsguide-item.instagram-item ul {
    font-size: 0;
}

.snsguide-area .snsguide-item.instagram-item ul li {
    display: inline-block;
    width: 32.2%;
    margin: 0 1% 1% 0;
}

.snsguide-area .snsguide-item.instagram-item ul li:nth-child(3n) {
    margin: 0 0 1% 0;
}

.snsguide-area .snsguide-item.instagram-item:nth-child(even) {
    margin: 0 0 80px 0;
}

@media screen and (max-width: 640px) {
    .snsguide-area .snsguide-item.instagram-item:nth-child(even) {
        margin: 3rem auto 0;
    }
}

@media screen and (max-width: 900px) {
    .snsguide-area .snsguide-item {
        width: 48.33333%;
        margin-right: 0;
    }
}

@media screen and (max-width: 640px) {
    .snsguide-area .snsguide-item {
        width: 90%;
        margin: 3rem auto 0;
    }
}

.snsguide-area .snsguide-item:nth-child(3n) {
    margin-right: 0;
}

@media screen and (max-width: 640px) {
    .snsguide-area .snsguide-item:nth-child(3n) {
        margin: 3rem auto 0;
    }
}

.snsguide-area .snsguide-item p {
    margin-bottom: 10px;
}

.snsguide-area .snsguide-item .btn-arrow {
    margin-top: 15px;
}

/* .snspolicy-area {
    padding: 100px 0;
}

@media screen and (max-width: 900px) {
    .snspolicy-area {
        padding: 60px 0;
    }
}

.snspolicy-area .snspolicy-date {
    margin-bottom: 60px;
}

.snspolicy-area dl {
    margin-bottom: 40px;
}

.snspolicy-area dl:last-child {
    margin-bottom: 0;
}

.snspolicy-area dl dt {
    margin-bottom: 20px;
} */

.snsguide-area-item {
    position: relative;
    padding-left: 1em;
}
.snsguide-area-item::before {
  content: '';
  position: absolute;
  left: 0;
  top: .5em;
  display: block;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background-color: #000;
}


/* フォトライブラリー */
.photo-tag { display: inline-block; margin: 0 10px 1em 0; padding: 0.5em 10px; border: 1px solid #bababa; border-radius: 5px; background-color: #fff; text-decoration: none; }

.photo-login { padding: 25px; border-radius: 10px; background-color: #f4f3f1; }
.photo-login .ttl-border { margin-bottom: 25px; padding-bottom: 10px; font-size: 1.4285714286rem; text-align: left; }
.photo-login dl { display: flex; margin-bottom: 20px; }
.photo-login dl dt { width: 4em; padding: 5px 0 0 1em; font-weight: bold; }
.photo-login dl dd { flex: 1; width: 100%; }
.photo-login dl dd input { width: 100%; padding: 10px; border: none; }
.photo-login p { margin-bottom: 15px; text-align: center; }
.photo-login .btn-arrow { width: 200px; border: none; background-color: #a9894b; }

.photo-faq { padding: 25px; background-color: #fff; }
.photo-faq dl { padding: 0 10px; }
.photo-faq dl dt { padding: 15px 20px; background-color: #f4f3f1; font-size: 1.4285714286rem; font-weight: bold; }
@media screen and (max-width: 640px) { .photo-faq dl dt { font-size: 1.1428571429rem; } }
.photo-faq dl dt div { padding-left: 2em; text-indent: -2em; }
.photo-faq dl dt span { margin-right: 1em; }
.photo-faq dl dd { margin-bottom: 40px; padding: 15px 20px; font-size: 1.1428571429rem; }
@media screen and (max-width: 640px) { .photo-faq dl dd { font-size: 1rem; } }
.photo-faq dl dd div { padding-left: 2.5em; text-indent: -2.5em; }
.photo-faq dl dd span { margin-right: 1em; font-size: 1.4285714286rem; font-weight: bold; }
@media screen and (max-width: 640px) { .photo-faq dl dd span { font-size: 1.1428571429rem; } }

.photohead-area.moviehead-area { margin-bottom: 70px; }
.photohead-area.moviehead-area .moviehead-in { padding: 50px 40px 0; border: 1px solid #a9894b; }
@media screen and (max-width: 640px) { .photohead-area.moviehead-area .moviehead-in { padding: 20px 20px 0; } }
.photohead-area.moviehead-area .moviehead-nav { display: flex; width: 89.1666666667%; margin: 60px auto 0; }
.photohead-area.moviehead-area .moviehead-nav li { width: 48.1308411215%; margin-right: 3.2710280374%; }
.photohead-area.moviehead-area .moviehead-nav li:first-child span { padding-left: 65px; background: url("../img/useful/tab_i001.png") no-repeat left center; }
@media screen and (max-width: 900px) { .photohead-area.moviehead-area .moviehead-nav li:first-child span { padding-left: 50px; background-size: 38px auto; } }
@media screen and (max-width: 640px) { .photohead-area.moviehead-area .moviehead-nav li:first-child span { padding-left: 35px; background-size: 24px auto; } }
@media screen and (max-width: 480px) { .photohead-area.moviehead-area .moviehead-nav li:first-child span { padding: 7px 0 7px 30px; } }
.photohead-area.moviehead-area .moviehead-nav li:first-child.active span, .photohead-area.moviehead-area .moviehead-nav li:first-child:hover span { background-image: url("../img/useful/tab_i001_on.png"); }
.photohead-area.moviehead-area .moviehead-nav li:last-child { margin-right: 0; }
.photohead-area.moviehead-area .moviehead-nav li:last-child span { padding-left: 70px; background: url("../img/useful/tab_i002.png") no-repeat left center; }
@media screen and (max-width: 900px) { .photohead-area.moviehead-area .moviehead-nav li:last-child span { padding-left: 50px; background-size: 38px auto; } }
@media screen and (max-width: 640px) { .photohead-area.moviehead-area .moviehead-nav li:last-child span { padding-left: 35px; background-size: 24px auto; } }
@media screen and (max-width: 480px) { .photohead-area.moviehead-area .moviehead-nav li:last-child span { padding: 7px 0 7px 30px; } }
.photohead-area.moviehead-area .moviehead-nav li:last-child.active span, .photohead-area.moviehead-area .moviehead-nav li:last-child:hover span { background-image: url("../img/useful/tab_i002_on.png"); }
.photohead-area.moviehead-area .moviehead-nav li a { display: block; padding: 15px 5px; border: 1px solid #a9894b; border-bottom: none; font-size: 2.2857142857rem; font-weight: bold; text-align: center; -webkit-border-top-left-radius: 10px; -webkit-border-top-right-radius: 10px; -moz-border-radius-topleft: 10px; -moz-border-radius-topright: 10px; }
@media screen and (max-width: 900px) { .photohead-area.moviehead-area .moviehead-nav li a { font-size: 1.4285714286rem; } }
@media screen and (max-width: 640px) { .photohead-area.moviehead-area .moviehead-nav li a { font-size: 0.8571428571rem; } }
.photohead-area.moviehead-area .moviehead-nav li a:hover { background-color: #a9894b; color: #fff; }
.photohead-area.moviehead-area .moviehead-nav li a span { display: inline-block; }
.photohead-area.moviehead-area .moviehead-nav li.active a { background-color: #a9894b; color: #fff; }
.photohead-area .photohead-main { display: flex; justify-content: space-between; margin-bottom: 45px; }
@media screen and (max-width: 900px) { .photohead-area .photohead-main { flex-direction: column; } }
.photohead-area .photohead-main .photohead-link { width: 61.6666666667%; }
@media screen and (max-width: 900px) { .photohead-area .photohead-main .photohead-link { width: 100%; margin-bottom: 30px; } }
.photohead-area .photohead-main .photohead-link .photohead-lead { margin-bottom: 60px; font-size: 1.1428571429rem; }
.photohead-area .photohead-main .photohead-link .ttl-border { margin-bottom: 25px; padding-bottom: 10px; font-size: 1.2857142857rem; text-align: left; }
.photohead-area .photohead-main .photo-login { width: 34.1666666667%; }
@media screen and (max-width: 900px) { .photohead-area .photohead-main .photo-login { width: 100%; } }
.photohead-area .photohead-main.moviehead-main { display: block; }
.photohead-area .photohead-main.moviehead-main .photohead-link { width: 100% !important; }
.photohead-area .photohead-btn { display: flex; justify-content: space-between; margin-bottom: 45px; }
@media screen and (max-width: 640px) { .photohead-area .photohead-btn.photohead-btn03 { display: block !important; } }
.photohead-area .photohead-btn.photohead-btn03 span, .photohead-area .photohead-btn.photohead-btn03 .btn-md { margin: 0 20px; }
@media screen and (max-width: 640px) { .photohead-area .photohead-btn.photohead-btn03 span, .photohead-area .photohead-btn.photohead-btn03 .btn-md { margin: 5px 0; } }
@media screen and (max-width: 640px) { .photohead-area .photohead-btn.photohead-btn03 .btn-arrow { width: 100%; } }
.photohead-area .photohead-btn .btn-arrow { width: 49.1666666667%; }

.photoresult-area .searchresult-sort { float: right; display: flex; margin-bottom: 35px; }
.photoresult-area .searchresult-sort dt { padding: 12px 15px 0 0; font-weight: bold; }
.photoresult-area .searchresult-sort dd { width: 100px; padding: 10px 0; border: 2px solid #000; text-align: center; }
.photoresult-area .searchresult-sort dd.is-current { background-color: #000; color: #fff; }
.photoresult-area .searchresult-cate-heading { margin-bottom: 30px; padding-bottom: 20px; border-bottom: 1px solid #a9894b; font-size: 2.1428571429rem; text-align: center; font-weight: 500; }
.photoresult-area .searchresult-list { padding-bottom: 20px; }
.photoresult-area .searchresult-list .searchresult-item { position: relative; width: 23.5714285714%; margin-right: 1.8571428571%; padding: 0; text-align: center; }
@media screen and (max-width: 900px) { .photoresult-area .searchresult-list .searchresult-item { width: 48.3333333333%; margin-right: 3.3333333333%; } }
.photoresult-area .searchresult-list .searchresult-item.photoresult-movie-item { padding: 5px 5px 20px; }
.photoresult-area .searchresult-list .searchresult-item:nth-child(even) { margin-right: 1.8571428571%; }
@media screen and (max-width: 900px) { .photoresult-area .searchresult-list .searchresult-item:nth-child(even) { margin-right: 0; } }
.photoresult-area .searchresult-list .searchresult-item:nth-child(4n) { margin-right: 0; }
.photoresult-area .searchresult-list .searchresult-item a { display: block; padding: 5px 5px 20px; text-decoration: none; }
.photoresult-area .searchresult-list .searchresult-item input { z-index: 99; position: absolute; top: 10px; left: 10px; }
.photoresult-area .searchresult-list .searchresult-item .photoresult-fig { position: relative; }
.photoresult-area .searchresult-list .searchresult-item .photoresult-fig:hover .photoresult-play { opacity: 1; }
.photoresult-area .searchresult-list .searchresult-item .photoresult-play { opacity: 0; position: absolute; top: 0; left: 0; display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; }
.photoresult-area .searchresult-list .searchresult-item figure { width: 100%; }
.photoresult-area .searchresult-list .searchresult-item .photoresult-name { margin: 10px 0; font-size: 1.1428571429rem; }
@media screen and (max-width: 640px) {
  .photoresult-area .searchresult-list .searchresult-item .photoresult-name {
    margin: 10px 0 2px;
  }
}
.photoresult-area .searchresult-list .searchresult-item .photoresult-name-02 { margin-top: 30px !important; }
.photoresult-area .searchresult-list .searchresult-item .photoresult-name-02 { margin-top: 30px !important; }
.photoresult-area .searchresult-list .searchresult-item .photoresult-name-03 { padding: 0 30px; }
.photoresult-area .photoresult-btn { margin-bottom: 80px; text-align: center; }
.photoresult-area .photoresult-btn .btn-arrow { max-width: 590px; }

.movie-sec { display: none; }

.movie-box .movie-close-btn { margin-bottom: 10px; text-align: right; cursor: pointer; }
.movie-box .movie-box-in { width: 83.3333333333%; margin: 0 auto; }
.movie-box .movie-close-txt { margin-bottom: 20px; font-size: 1.1428571429rem; color: #fff; }
.movie-box .movie-box-iframe { position: relative; width: 100%; padding-bottom: 53%; height: 0; overflow: hidden; }
.movie-box .movie-box-iframe iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

#cboxClose { background: none; }

#cboxLoadedContent { padding: 20px 20px 50px; border: none; background: #000; }

#cboxPrevious { left: 40px; margin-top: -11px; background: url("../img/common/i_prev.png") no-repeat left top; width: 21px; height: 28px; }

#cboxPrevious:hover { background-position: bottom left; }

#cboxNext { right: 40px; margin-top: -11px; background: url("../img/common/i_next.png") no-repeat left top; width: 21px; height: 28px; }

.photodetail-area { margin-bottom: 100px; }
@media screen and (max-width: 900px) { .photodetail-area { margin-bottom: 60px; } }
.photodetail-area .box-nav-col { margin-bottom: 60px; }
.photodetail-area .box-nav-col .btn-inverse { padding: 20px; }
@media screen and (max-width: 900px) { .photodetail-area .box-nav-col .btn-inverse { padding: 20px 40px; } }
.photodetail-area .box-nav-col .btn-inverse::before { display: none; }
.photodetail-area .box-nav-col .btn-inverse .ico-search-w { position: absolute; top: 50%; left: 20px; margin-top: -10px; }
@media screen and (max-width: 900px) { .photodetail-area .box-nav-col .btn-inverse .ico-search-w { position: static; margin-top: 0; margin-right: 10px; } }
@media screen and (max-width: 900px) { .photodetail-area .box-nav-col li:first-child .btn-inverse { padding-left: 20px; } }
.photodetail-area .box-nav-col li a:has(.photologin-btn) {
  background: #a9894b;
}
.photodetail-area .box-nav-col li .photologin-btn { border-color: #a9894b; background-color: #a9894b; }
.photodetail-area .photodetail-main { margin-bottom: 70px; padding: 28px; border: 2px solid #ccc; }
.photodetail-area .photodetail-main .photodetail-main-top { display: flex; justify-content: space-between; margin-bottom: 60px; }
@media screen and (max-width: 900px) { .photodetail-area .photodetail-main .photodetail-main-top { flex-direction: column; } }
.photodetail-area .photodetail-main .photodetail-zoom { position: relative; width: 52.6315789474%; cursor: pointer; }
@media screen and (max-width: 900px) { .photodetail-area .photodetail-main .photodetail-zoom { width: 100%; margin-bottom: 20px; } }
.photodetail-area .photodetail-main .photodetail-zoom:hover .photodetail-expansion { opacity: 1; }
.photodetail-area .photodetail-main .photodetail-zoom figure { width: 100%; }
@media screen and (max-width: 900px) { .photodetail-area .photodetail-main .photodetail-zoom figure { text-align: center; } }
.photodetail-area .photodetail-main .photodetail-zoom .photodetail-expansion { opacity: 0; position: absolute; top: 0; left: 0; display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; }
.photodetail-area .photodetail-main .photodetail-main-con { display: flex; align-items: center; width: 42.5438596491%; padding-right: 3.9473684211%; }
@media screen and (max-width: 900px) { .photodetail-area .photodetail-main .photodetail-main-con { width: 100%; padding-right: 0; } }
.photodetail-area .photodetail-main .photodetail-main-con div { width: 100%; }
.photodetail-area .photodetail-main .photodetail-main-con .photodetail-main-ttl { margin-bottom: 20px; font-size: 1.7142857143rem; }
.photodetail-area .photodetail-main .photodetail-main-con .photodetail-main-desc { margin-bottom: 20px; font-size: 1.1428571429rem; }
.photodetail-area .photodetail-main .photodetail-main-con .photodetail-main-btn { display: inline-block; min-width: 280px; margin-top: 20px; padding: 15px; background-color: #000; color: #fff; font-size: 1.2857142857rem; text-align: center; text-decoration: none; }
.photodetail-area .photodetail-txt { margin-bottom: 60px; padding-bottom: 60px; border-bottom: 1px solid #ccc; font-size: 1.1428571429rem; }
.photodetail-area .photodetail-sub .photodetail-sub-ttl { margin-bottom: 40px; font-size: 1.7142857143rem; font-weight: bold; }
.photodetail-area .photodetail-sub .photodetail-sub-box { position: relative; padding: 25px 10px; background-color: #f4f3f1; }
.photodetail-area .photodetail-sub .photodetail-sub-box .slide-btn { position: absolute; top: 50%; margin-top: -20px; cursor: pointer; }
.photodetail-area .photodetail-sub .photodetail-sub-box .slide-btn.slide-prev { left: 0; }
.photodetail-area .photodetail-sub .photodetail-sub-box .slide-btn.slide-next { right: 0; }
.photodetail-area .photodetail-sub .slick-slide { margin: 0 16px; }

.photorelated-area { padding: 60px 0; background-color: #f4f3f1; }
.photorelated-area li { padding: 0 14px; }
.photorelated-area li a { display: block; padding: 5px 5px 20px; background-color: #fff; text-align: center; text-decoration: none; }
.photorelated-area li p { margin-top: 15px; font-size: 1.1428571429rem; font-weight: bold; }

.photomodal-area { display: none; position: fixed; top: 0; left: 0; z-index: 10000; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.7); }
.photomodal-area .photomodal-inner { position: absolute; top: 0; left: 0; display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; overflow-y: auto; }
.photomodal-area .photomodal-con { position: relative; width: 100%; margin: auto; padding: 60px; }
@media screen and (max-width: 640px) { .photomodal-area .photomodal-con { padding: 40px; } }
.photomodal-area .photomodal-close { position: absolute; top: 0; right: 0; cursor: pointer; }
@media screen and (max-width: 640px) { .photomodal-area .photomodal-close { top: 10px; right: 10px; width: 30px; height: 30px; } }
.photomodal-area.photomodal-zoom .photomodal-con { max-width: 1320px; }
.photomodal-area.photomodal-zoom figcaption { margin-top: 50px; color: #fff; font-size: 1.7142857143rem; text-align: center; }
.photomodal-area.photomodal-login .photomodal-con { max-width: 610px; }
.photomodal-area.photomodal-login .btn-arrow { margin-top: 30px; }
.photomodal-area.photomodal-faq .photomodal-con { max-width: 1320px; }

.js-photomodalopen { overflow: hidden; }

.photoguide-area { margin-bottom: 100px; }
@media screen and (max-width: 900px) { .photoguide-area { margin-bottom: 60px; } }
.photoguide-area ol li { margin-bottom: 25px; padding-bottom: 60px; background: url("../img/common/bg_arrow.png") no-repeat center bottom; }
.photoguide-area ol li:last-child { background: none; }
.photoguide-area ol li div { display: flex; border: 2px solid #999; }
@media screen and (max-width: 900px) { .photoguide-area ol li div { flex-direction: column; } }
.photoguide-area ol li p { width: 220px; padding: 20px 0; background-color: #ece9e2; font-size: 1.7142857143rem; font-weight: bold; line-height: 1; text-align: center; }
@media screen and (max-width: 900px) { .photoguide-area ol li p { width: 100%; } }
.photoguide-area ol li p big { font-size: 2.5714285714rem; }
.photoguide-area ol li dl { flex: 1; width: 100%; padding: 15px 25px; }
.photoguide-area ol li dl dt { margin-bottom: 5px; font-size: 1.4285714286rem; font-weight: bold; }
@media screen and (max-width: 640px) { .photoguide-area ol li dl dt { font-size: 1.2857142857rem; } }
.photoguide-area .btn-arrow { max-width: 590px; }

.photoformnav-area { margin-bottom: 30px; font-size: 1.2857142857rem; }
@media screen and (max-width: 900px) { .photoformnav-area .only-sp { display: block; } }
@media screen and (max-width: 640px) { .photoformnav-area { font-size: 1rem; } }
.photoformnav-area ol { display: flex; margin-bottom: 20px; border-left: 2px solid #000; overflow: hidden; }
@media screen and (max-width: 900px) { .photoformnav-area ol { flex-wrap: wrap; } }
.photoformnav-area ol li { position: relative; width: 24.5833333333%; padding: 15px 0; text-align: center; }
@media screen and (max-width: 900px) { .photoformnav-area ol li { width: 48.3333333333%; }
  .photoformnav-area ol li.only-pc { display: none; } }
.photoformnav-area ol li:nth-child(1) { z-index: 4; }
.photoformnav-area ol li:nth-child(2) { z-index: 3; }
.photoformnav-area ol li:nth-child(3) { z-index: 2; }
.photoformnav-area ol li:nth-child(4) { z-index: 1; }
.photoformnav-area ol li::before { box-sizing: border-box; content: ''; position: absolute; top: 0; left: -10px; z-index: 1; width: 100%; height: 100%; border-top: 2px solid #000; border-left: 2px solid #000; border-bottom: 2px solid #000; background-color: #fff; }
@media screen and (max-width: 640px) { .photoformnav-area ol li::before { left: -15px; } }
.photoformnav-area ol li::after { content: ''; position: absolute; top: 50%; right: -9px; width: 50px; height: 50px; margin-top: -25px; border-right: 2px solid #000; border-bottom: 2px solid #000; background-color: #fff; transform: rotate(-45deg); }
@media screen and (max-width: 640px) { .photoformnav-area ol li::after { right: -5px; } }
.photoformnav-area ol li.is-current { color: #fff; }
.photoformnav-area ol li.is-current::before { background-color: #000; }
.photoformnav-area ol li.is-current::after { background-color: #000; }
.photoformnav-area ol li span { position: relative; z-index: 2; }
.photoformnav-area .tar { padding-top: 40px; }
.photoformnav-area .tar .photofaq-btn { text-decoration: underline; cursor: pointer; }
.photoformnav-area .tar .photofaq-btn:hover { text-decoration: none; }

.photoform-area { padding: 60px 0 100px; background-color: #f4f3f1; }
@media screen and (max-width: 900px) { .photoform-area { padding-bottom: 60px; } }
.photoform-area .photoform-lead { margin-bottom: 50px; font-size: 1.1428571429rem; text-align: center; }
.photoform-area .photoform-inner { padding: 50px 60px; background-color: #fff; }
@media screen and (max-width: 640px) { .photoform-area .photoform-inner { padding: 30px; } }
.photoform-area .photoform-ttl { margin-bottom: 40px; font-size: 1.7142857143rem; text-align: center; }
@media screen and (max-width: 640px) { .photoform-area .photoform-ttl { font-size: 1.4285714286rem; } }
.photoform-area .photoform-ttl span { display: inline-block; padding: 0 50px 20px; border-bottom: 3px solid #a9894b; }
.photoform-area .photoform-guide-box { margin-bottom: 80px; font-size: 1.1428571429rem; }
@media screen and (max-width: 640px) { .photoform-area .photoform-guide-box { font-size: 1rem; } }
.photoform-area .photoform-guide-box .photoform-guide-ttl { margin-bottom: 15px; color: #a9894b; font-size: 1.4285714286rem; }
@media screen and (max-width: 640px) { .photoform-area .photoform-guide-box .photoform-guide-ttl { font-size: 1.2857142857rem; } }
.photoform-area .photoform-guide-box .photoform-guide-con { padding-left: 25px; }
@media screen and (max-width: 640px) { .photoform-area .photoform-guide-box .photoform-guide-con { padding-left: 0; } }
.photoform-area .photoform-guide-box p { margin-bottom: 40px; }
.photoform-area .photoform-guide-box dl dt { margin-bottom: 5px; font-size: 1.2857142857rem; font-weight: bold; }
@media screen and (max-width: 640px) { .photoform-area .photoform-guide-box dl dt { font-size: 1.1428571429rem; } }
.photoform-area .photoform-guide-box dl dd { margin-bottom: 40px; }
.photoform-area .photoform-guide-box dl dd:last-child { margin-bottom: 0; }
.photoform-area .photoform-guide-box ol li { margin-bottom: 20px; }
.photoform-area .photoform-guide-box ol li:last-child { margin-bottom: 0; }
.photoform-area .photoform-guide-agree { margin-bottom: 40px; font-size: 1.1428571429rem; font-weight: bold; text-align: center; }
.photoform-area .photoform-input { max-width: 840px; margin: 0 auto; padding-right: 80px; font-size: 1.1428571429rem; }
@media screen and (max-width: 900px) { .photoform-area .photoform-input { padding-right: 0; } }
.photoform-area .photoform-input dl { display: flex; margin-bottom: 40px; }
@media screen and (max-width: 640px) { .photoform-area .photoform-input dl { flex-direction: column; } }
.photoform-area .photoform-input dl dt { width: 26.3157894737%; padding-top: 10px; }
@media screen and (max-width: 640px) { .photoform-area .photoform-input dl dt { width: 100%; margin-bottom: 10px; } }
.photoform-area .photoform-input dl dd { width: 73.6842105263%; }
@media screen and (max-width: 640px) { .photoform-area .photoform-input dl dd { width: 100%; } }
.photoform-area .photoform-input dl dd p { margin-bottom: 15px; }
.photoform-area .photoform-input dl dd p:last-child { margin-bottom: 0; }
.photoform-area .photoform-input.photoform-conf dl dt { padding-top: 0; }
.photoform-area .photoform-input .photoform-input-sels { display: flex; flex-wrap: wrap; }
.photoform-area .photoform-input .photoform-input-sels label { display: block; width: 33.3333333333%; margin-top: 5px; }
@media screen and (max-width: 640px) { .photoform-area .photoform-input .photoform-input-sels label { width: 50%; } }
.photoform-area .photoform-input input[type="text"], .photoform-area .photoform-input input[type="tel"], .photoform-area .photoform-input input[type="email"], .photoform-area .photoform-input select { padding: 10px; font-size: 1.1428571429rem; }
.photoform-area .btn-arrow { max-width: 590px; }
.photoform-area .photoform-input-btns .btn-arrow { max-width: 30%; margin-right: 20px; }
.photoform-area .photoform-input-btns .btn-arrow:last-child { margin-right: 0; }
.photoform-area .photoform-input-btns .btn-edit { border-color: #999; background-color: #999; }
.photoform-area .photoform-comp-ttl { margin-bottom: 40px; font-size: 1.7142857143rem; font-weight: bold; text-align: center; }
@media screen and (max-width: 640px) { .photoform-area .photoform-comp-ttl { font-size: 1.4285714286rem; } }
.photoform-area .photoform-comp-nav { display: flex; justify-content: space-around; max-width: 900px; margin: 0 auto; }
@media screen and (max-width: 640px) { .photoform-area .photoform-comp-nav { flex-direction: column; text-align: center; }
  .photoform-area .photoform-comp-nav li { margin-bottom: 10px; } }
.photoform-area .photoform-comp-nav span { text-decoration: underline; cursor: pointer; }
.photoform-area .photoform-comp-nav span:hover { text-decoration: none; }

/* 動画ライブラリー */
.usefulmovie-area .usefulmovie-txt { margin-bottom: 55px; font-size: 1.1428571429rem; }
.usefulmovie-area .usefulmovie-form { margin-bottom: 30px; padding: 40px; background-color: #f4f3f1; }
@media screen and (max-width: 640px) { .usefulmovie-area .usefulmovie-form { padding: 20px; } }
.usefulmovie-area .usefulmovie-form dl { display: flex; align-items: center; margin-bottom: 40px; }
@media screen and (max-width: 900px) { .usefulmovie-area .usefulmovie-form dl { display: block; } }
.usefulmovie-area .usefulmovie-form dl dt { width: 18.75%; padding-right: 10px; font-size: 1.2857142857rem; font-weight: bold; }
@media screen and (max-width: 900px) { .usefulmovie-area .usefulmovie-form dl dt { width: 100%; margin-bottom: 10px; padding-right: 0; } }
.usefulmovie-area .usefulmovie-form dl dd { flex: 1; }
.usefulmovie-area .usefulmovie-form dl dd input, .usefulmovie-area .usefulmovie-form dl dd textarea { padding: 10px; border: none; border-radius: 5px; }
.usefulmovie-area .usefulmovie-form dl dd .w600 { width: 65.9340659341%; }
@media screen and (max-width: 900px) { .usefulmovie-area .usefulmovie-form dl dd .w600 { width: 100%; } }
.usefulmovie-area .usefulmovie-form dl dd .w135 { width: 14.8351648352%; }
.usefulmovie-area .usefulmovie-form dl dd .w70 { width: 7.6923076923%; }
@media screen and (max-width: 640px) { .usefulmovie-area .usefulmovie-form dl dd .w70 { width: 9.8901098901%; } }
.usefulmovie-area .usefulmovie-form dl dd span { margin: 0 10px; }
.usefulmovie-area .usefulmovie-form .usefulmovie-form-txt { margin-bottom: 20px; margin-left: 18.75%; font-size: 1.1428571429rem; }
@media screen and (max-width: 900px) { .usefulmovie-area .usefulmovie-form .usefulmovie-form-txt { margin-left: 0; } }
.usefulmovie-area .usefulmovie-form-lead { margin-bottom: 30px; font-size: 1.2857142857rem; text-align: center; }
.usefulmovie-area .usefulmovie-form-check { margin-bottom: 50px; font-size: 1.2857142857rem; font-weight: bold; text-align: center; }
.usefulmovie-area .usefulmovie-form-btn { width: 30%; margin: 0 auto; }
@media screen and (max-width: 900px) { .usefulmovie-area .usefulmovie-form-btn { margin-bottom: 40px; } }
@media screen and (max-width: 640px) { .usefulmovie-area .usefulmovie-form-btn { width: 100%; } }
.usefulmovie-area .usefulmovie-form-btn li { margin-bottom: 20px; }
.usefulmovie-area .usefulmovie-form-btn li:last-child { margin-bottom: 0; }
.usefulmovie-area .usefulmovie-form-btn input { width: 100%; padding: 20px; border: none; background: #000 url("../img/common/i_blank_w.png") no-repeat right 20px center; font-size: 1.2857142857rem; font-weight: bold; color: #fff; cursor: pointer; }


.koukoku p,
.koukoku ul {
    margin-bottom: 2em;
}

.koukoku-table-wrap {
    overflow-x: auto;
    white-space: nowrap;
    margin-bottom: 30px;
}

.koukoku-table-wrap::-webkit-scrollbar {
    height: 10px;
}

.koukoku-table-wrap::-webkit-scrollbar-track {
    background: #F1F1F1;
}

.koukoku-table-wrap::-webkit-scrollbar-thumb {
    background: #BCBCBC;
}

.koukoku-table {
    width: 100%;
    border: solid #ccc;
    border-width: 1px 1px 0 0;
    margin: 30px 0;
}

.koukoku-table th,
.koukoku-table td {
    border: solid #ccc;
    border-width: 0 0 1px 1px;
    padding: 10px;
    white-space: nowrap;
}

.koukoku-table th {
    text-align: left;
    background-color: #f2efe6;
    font-weight: normal;
}
.koukoku-table td {
    background-color: #fff;
}
.koukoku-table-resp th {
    width: 20%;
}

.koukoku-table-sns th,
.koukoku-table-sns td {
    white-space: normal;
    vertical-align: middle;
}
.koukoku-table-sns th {
    text-align: center;
}
.koukoku-table-sns .td-sns {
    white-space: nowrap;
}
@media screen and (max-width: 640px) {
    .koukoku-table-sns .td-sns {
        font-weight: bold;
    }
}

@media screen and (max-width: 640px) {
    .koukoku-table-resp th,
    .koukoku-table-resp td {
        display: block;
        width: 100%;
    }
}

.link__list {
    display: flex;
    flex-wrap: wrap;
}

.link__item {
    line-height: 2;
    width: 50%;
}

#link .inner-content {
    padding-bottom: 30px;
}

.contact {
    font-size: 1.14286rem;
}

.contact input[type=text],
.contact input[type=email],
.contact select,
.contact textarea {
    border: 1px solid #ddd;
    background-color: #fff;
    padding: 5px 10px;
    width: 100%;
}

.contact input[type=text].contact__input-m,
.contact input[type=email].contact__input-m,
.contact select.contact__input-m,
.contact textarea.contact__input-m {
    width: 12em;
}

.contact input[type=text].contact__input-s,
.contact input[type=email].contact__input-s,
.contact select.contact__input-s,
.contact textarea.contact__input-s {
    width: 7em;
}

.contact input[type=text]::-webkit-input-placeholder,
.contact input[type=email]::-webkit-input-placeholder,
.contact select::-webkit-input-placeholder,
.contact textarea::-webkit-input-placeholder {
    color: #999;
}

.contact input[type=text]::-moz-placeholder,
.contact input[type=email]::-moz-placeholder,
.contact select::-moz-placeholder,
.contact textarea::-moz-placeholder {
    color: #999;
}

.contact input[type=text]:-ms-input-placeholder,
.contact input[type=email]:-ms-input-placeholder,
.contact select:-ms-input-placeholder,
.contact textarea:-ms-input-placeholder {
    color: #999;
}

.contact input[type=text]::-ms-input-placeholder,
.contact input[type=email]::-ms-input-placeholder,
.contact select::-ms-input-placeholder,
.contact textarea::-ms-input-placeholder {
    color: #999;
}

.contact input[type=text]::placeholder,
.contact input[type=email]::placeholder,
.contact select::placeholder,
.contact textarea::placeholder {
    color: #999;
}

.contact textarea {
    height: 6em;
}

.contact select {
    width: 10em;
}

.contact table {
    border-top: 1px solid #ccc;
}

.contact th,
.contact td {
    padding: 15px 0;
    background-color: transparent;
    border-width: 0 0 1px;
}

@media screen and (max-width: 640px) {

    .contact th,
    .contact td {
        padding: 10px 0;
    }
}

.contact th {
    width: 14em;
}

@media screen and (max-width: 640px) {
    .contact th {
        width: 100%;
        padding-bottom: 0;
    }
}

@media screen and (max-width: 640px) {
    .contact td {
        border-bottom: 1px solid #ccc;
    }
}

.contact-txt {
    font-size: 1.28571rem;
    margin-bottom: 30px;
}

.contact-note {
    margin-bottom: 30px;
}

.contact-note-item {
    margin-left: 2em;
    text-indent: -2em;
    padding-left: 2em;
}

@media screen and (max-width: 640px) {
    .contact-note-item {
        padding: 0;
    }
}

.contact-note-item::before {
    content: '※　';
}

.contact-item {
    position: relative;
    padding-left: 30px;
    line-height: 2;
}

.contact-item::before {
    content: '';
    position: absolute;
    left: 20px;
    top: 1em;
    display: block;
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background-color: #000;
}

.contact-form {
    background-color: #F4F3F1;
    padding: 60px 0 100px;
    margin-top: 50px;
}

@media screen and (max-width: 640px) {
    .contact-form {
        padding: 20px 0;
    }
}

.contact-step {
    font-size: 1.28571rem;
    font-weight: bold;
    margin-bottom: 60px;
    background-color: #fff;
    display: flex;
    width: calc(100% - 30px);
    border-left: 1px solid #000;
}

@media screen and (max-width: 640px) {
    .contact-step {
        display: block;
        width: 100%;
        border: none;
        margin-bottom: 30px;
    }
}

.contact-step-item {
    position: relative;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: -1px;
    border: solid #000;
    border-width: 1px 0;
    width: 33.333%;
}

@media screen and (max-width: 640px) {
    .contact-step-item {
        width: 100%;
        border-width: 1px;
    }
}

.contact-step-item::after {
    content: '';
    position: absolute;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    background-color: #fff;
    z-index: 10;
    width: 41px;
    height: 41px;
    right: -21px;
}

@media screen and (max-width: 640px) {
    .contact-step-item::after {
        -webkit-transform: rotate(135deg);
        transform: rotate(135deg);
        width: 10px;
        height: 10px;
        right: 0;
        left: 0;
        margin: auto;
        bottom: -6px;
    }
}

.contact-step-item.is-current {
    background-color: #000;
    color: #fff;
}

.contact-step-item.is-current::after {
    background-color: #000;
}

.contact__small {
    margin-bottom: 10px;
    font-size: 1rem;
}

.contact-require {
    color: #D84040;
    background-color: #fff;
    font-size: 0.85714rem;
    border: 1px solid;
    margin-left: 1em;
    padding: 0 7px;
    display: inline-block;
}
.contact-submit-wrap {
  display: flex;
  align-items:center;
  justify-content: center;
  margin-top: 100px;
}
@media screen and (max-width: 640px) {
    .contact-submit-wrap {
        margin-top: 20px;
    }
}

.contact-submit {
    background-color: #000;
    color: #fff;
    border: none;
    height: 70px;
    width: 100%;
    max-width: 600px;
    margin: 0 25px;
    display: flex;
    align-items:center;
    justify-content: center;
    cursor: pointer;
    background-image: url(../img/common/i_blank_w.png);
    background-repeat: no-repeat;
    background-position: 90% 50%;
    text-decoration: none;
    transition: .5s;
}
@media screen and (max-width: 640px) {
    .contact-submit {
        margin: 0 5px;
        height: 40px;
    }
}
.contact-submit:hover {
  opacity: .7;
}
.contact-submit--small {
  max-width: 300px;
}
.contact-submit--reset {
  background-color: #A9894B;
}

.contact_error input[type=text],
.contact_error input[type=email],
.contact_error input[type=password],
.contact_error select,
.contact_error textarea {
    border-color: #D84040;
}

.contact-error-msg {
    color: #D84040;
    font-size: 1rem;
}

.contact-error-msg02 {
    background-image: url(../img/common/i_warning_red.png);
    background-repeat: no-repeat;
    background-position: 10px 50%;
    background-color: #fff;
    color: #D84040;
    border: 1px solid #D84040;
    padding: 10px 10px 10px 40px;
    font-size: 1rem;
    margin-bottom: 20px;
}

.ttl-page--favorites {
    display: flex;
    align-items: center;
    justify-content: center;
}

.ttl-page--favorites::before {
    content: '';
    background-image: url(../img/favorites/ico_favorites.svg);
    background-repeat: no-repeat;
    background-position: 0 50%;
    width: 38px;
    height: 33px;
    margin-right: 30px;
}

.favorites {
    background-color: #F4F3F1;
    padding: 50px 0 100px;
}

.favorites__btn-wrap {
    display: flex;
    justify-content: flex-end;
}

@media screen and (max-width: 640px) {
    .favorites__btn-wrap {
        width: 100%;
    }
}

.favorites__btn {
    display: block;
    background-color: #000;
    color: #fff;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 10px;
    font-size: 1.14286rem;
    font-weight: bold;
    flex: 0 0 auto;
    margin-left: auto;
}

.favorites__sec {
    padding-bottom: 20px;
}

.favorites__head {
    text-align: center;
    border-bottom: 1px solid #A9894B;
    font-size: 1.71429rem;
    padding: 1em 0;
    margin-bottom: 60px;
}

.favorites__item {
    background-color: #fff;
    margin-bottom: 30px;
    display: flex;
    align-items: center;
    padding: 15px 30px;
}

@media screen and (max-width: 640px) {
    .favorites__item {
        flex-wrap: wrap;
        padding: 10px;
    }
}

.favorites__label {
    position: relative;
}

.favorites__checkbox {
    display: none;
}

.favorites__checkbox:checked+.favorites__check::after {
    border-left: 3px solid #a9894b;
    border-bottom: 3px solid #a9894b;
    width: 14px;
    height: 5px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    left: 2px;
    top: -5px;
    position: absolute;
}

.favorites__check {
    position: relative;
}

.favorites__check::before,
.favorites__check::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    width: 15px;
    height: 15px;
}

.favorites__check::before {
    margin-top: -7px;
    background-color: #fff;
    border: 1px solid #999;
}

.favorites__fig {
    margin: 0 30px;
    position: relative;
    height: 120px;
    width: 100%;
    flex: 0 0 160px;
}

.favorites__fig::before {
    background-color: #f5f5f5;
    padding-top: 75%;
    content: '';
    display: block;
}

.favorites__img {
    position: absolute;
    top: 0;
    height: 100%;
    width: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    font-family: 'object-fit: contain;';
}

.favorites__title {
    margin-right: 30px;
    flex: 1 1 auto;
    font-size: 1.42857rem;
}

@media screen and (max-width: 640px) {
    .favorites__title {
        margin: 10px 0;
    }
}

/* error */
.error__main {
    text-align: center;
    padding: 100px 10px;
    flex: 1 1 auto;
}

@media screen and (max-width: 900px) {
    .error__main {
        padding: 30px 10px;
        width: 100%;
    }
}

.error__header {
    font-size: 30px;
    line-height: 1;
    margin-bottom: 30px;
}

.error__num {
    font-size: 100px;
    display: block;
}

.error {
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
}

#contact .error {
    display: block;
}
@media screen and (max-width: 900px) {
    .error {
        display: block;
    }
}

.error__btn {
    background-color: #000;
    color: #fff;
    max-width: 200px;
    height: 50px;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 30px auto 0;
}

.error__menu {
    width: 320px;
}

@media screen and (max-width: 900px) {
    .error__menu {
        display: none;
    }
}

/*.error__menu a {
    text-decoration: none;
}

.error__menu .ico::before {
    width: 25px;
    height: 25px;
}*/

.error__menu .menu-search {
    padding: 10px;
    background-color: #1d365f;
}

.error__menu .menu-search-btn {
    position: relative;
    padding: 10px 0;
    border: 1px solid #ccc;
    background-color: #fff;
    color: #1d365f;
    font-weight: bold;
    text-align: center;
    background-image:url(../img/common/i_plus_b.png);
    background-repeat: no-repeat;
    background-position: 95% 50%;
}
.error__menu .menu-search-btn.is-open {
    background-image:url(../img/common/i_minus_b.png);
}

.error__menu .menu-search-btn .ico-search-sp {
    margin-right: 10px;
}

/*.error__menu .menu-search-btn .ico-arrowsp-r-b {
    position: absolute;
    top: 50%;
    right: 20px;
    margin-top: -10px;
}*/

.error__menu .menu-search .menu-search-con {
    display: none;
    padding: 1px 10px 10px;
    background-color: #fff;
}

/*.error__menu .menu-search .menu-search-con .menu-search-lead {
    margin-bottom: 10px;
    font-size: 1.14286rem;
    font-weight: bold;
    text-align: center;
}*/

/* .error__menu .search-area {
    max-width: 900px;
    margin: 0 auto;
    padding-top: 15px;
} */

.error__menu .search-ttl {
    margin-bottom: 10px;
    padding-bottom: 0;
    border-bottom: none;
}

.error__menu .search-area .search-ctrl .search-submit {
    background-color: #000;
}

.error__menu .search-area .search-form {
    margin-bottom: 10px;
}

.error__menu .search-area .label {
    margin: 0 5px 5px 0;
}

.error__menu .search-area .search-box {
    padding-bottom: 20px;
}

.error__menu .search-area .search-ctrl {
    /*display: flex;*/
    justify-content: space-between;
}

.error__menu .search-area .search-ctrl p {
    padding: 0;
    width: 49%;
}

.error__menu .search-area .search-ctrl button {
    padding: 10px;
    font-size: 16px;
}

/*.error__menu .menu-search-list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 10px 10px 5px;
    background-color: #f2efe6;
}*/

/*.error__menu .menu-search-list a {
    position: relative;
    display: block;
    width: 49%;
    margin-bottom: 5px;
    padding: 10px 10px 10px 5px;
    border: 1px solid #ccc;
    background-color: #fff;
    line-height: 1.1;
    font-size: 12px;
    display: flex;
    align-items: center;
    font-weight: bold;
}

.error__menu .menu-search-list a p {
    display: flex;
    align-items: center;
}

.error__menu .menu-search-list a i {
    margin-right: 5px;
}

.error__menu .menu-search-list a .ico-arrowsp-r-g {
    position: absolute;
    right: 0;
}*/

/*.error__menu .menu-main {
    padding: 10px 0 0 10px;
}

.error__menu .menu-main-box {
    margin-bottom: 10px;
    border: 1px solid #ccc;
}

.error__menu .menu-main-box .menu-main-ttl {
    position: relative;
    display: block;
    padding: 10px;
    cursor: pointer;
    display: flex;
    align-items: center;
}

.error__menu .menu-main-box .menu-main-ttl strong {
    margin-left: 10px;
}

.error__menu .menu-main-box .menu-main-ttl p {
    position: absolute;
    right: 20px;
}

.error__menu .menu-main-box .menu-main-ttl .ico-minus-sp {
    display: none;
}

.error__menu .menu-main-box ul {
    display: none;
    margin: 0 20px 0 40px;
    padding-bottom: 10px;
    font-size: 0.92857rem;
}

.error__menu .menu-main-box li {
    border-top: 1px solid #ccc;
}

.error__menu .menu-main-box li a {
    display: block;
    padding: 15px;
}

.error__menu .menu-main-box.js-open .menu-main-ttl .ico-minus-sp {
    display: inline-block;
}

.error__menu .menu-main-box.js-open .menu-main-ttl .ico-plus-sp {
    display: none;
}*/

/* ニュース一覧 */
.newslist-area {
    padding: 90px 0;
    background-color: #f4f3f1;
}

@media screen and (max-width: 640px) {
    .newslist-area {
        padding: 60px 0;
    }
}

.newslist-area .news-list {
    margin-bottom: 30px;
}

/* ニュース詳細 */
.newsdetail-area {
    padding: 90px 0;
    background-color: #f4f3f1;
}

@media screen and (max-width: 640px) {
    .newsdetail-area {
        padding: 60px 0;
    }
}

.newsdetail-area .newsitem {
    margin-bottom: 10px;
}

.newsdetail-area .newsitem .newsitem-date {
    display: inline-block;
    margin-right: 15px;
    font-size: 1.28571rem;
    font-weight: bold;
    vertical-align: middle;
}

.newsdetail-area .newsitem .news-ico {
    font-size: 0.85714rem;
    vertical-align: middle;
}

.newsdetail-area .newsdetail-ttl {
    margin-bottom: 40px;
    font-size: 1.57143rem;
    font-weight: bold;
}

.bg_emergency {
    background-color: #ebbfc0;
}

.bg_emergency .newsdetail-area {
    background-color: #ebbfc0;
}

/* お問い合わせ */
#contact p.mb50 {
    margin: 1rem 0;
}

/* 証明書配置 */
.globalsign {
    display: block;
    text-align: right;
}

.tal {
    text-align: left;
}

.tac {
    text-align: center;
}

.tar {
    text-align: right;
}

.tdn {
    text-decoration: none;
}

.w100 {
    width: 100%;
}

.w40 {
    width: 40%;
}

@media screen and (max-width: 640px) {
    .w100-sp {
        width: 100%;
    }
}

@media screen and (max-width: 640px) {
    .w80-sp {
        width: 80%;
    }
}

.ml5 {
    margin-left: 5px;
}

.pl1em {
    padding-left: 1em;
}

.clearfix {
    zoom: 1;
}

.clearfix::before {
    content: "";
    display: table;
}

.clearfix::after {
    content: "";
    display: table;
    clear: both;
}

.policy-bnr-list {
    line-height: 0;
    font-size: 0;
}

.policy-bnr-list li {
    display: inline-block;
    margin: 2% 2% 2% 0;
    font-size: 100%;
    line-height: 1.5;
    font-size: 14px;
    text-align: center;
}

@media print {
    body {
        width: 1200px;
        transform: scale(0.8);
        -moz-transform: scale(0.8);
        -webkit-transform: scale(0.8);
        -webkit-transform-origin: 0 0;
        transform-origin: 0 0;
    }
}

/* marggin, padding */
.u-mt0 {
  margin-top: 0px !important;
}

.u-mr0 {
  margin-right: 0px !important;
}

.u-mb0 {
  margin-bottom: 0px !important;
}

.u-ml0 {
  margin-left: 0px !important;
}

.u-pt0 {
  padding-top: 0px !important;
}

.u-pr0 {
  padding-right: 0px !important;
}

.u-pb0 {
  padding-bottom: 0px !important;
}

.u-pl0 {
  padding-left: 0px !important;
}

.u-mt10 {
  margin-top: 10px !important;
}

.u-mr10 {
  margin-right: 10px !important;
}

.u-mb10 {
  margin-bottom: 10px !important;
}

.u-ml10 {
  margin-left: 10px !important;
}

.u-pt10 {
  padding-top: 10px !important;
}

.u-pr10 {
  padding-right: 10px !important;
}

.u-pb10 {
  padding-bottom: 10px !important;
}

.u-pl10 {
  padding-left: 10px !important;
}

.u-mt20 {
  margin-top: 20px !important;
}

.u-mr20 {
  margin-right: 20px !important;
}

.u-mb20 {
  margin-bottom: 20px !important;
}

.u-ml20 {
  margin-left: 20px !important;
}

.u-pt20 {
  padding-top: 20px !important;
}

.u-pr20 {
  padding-right: 20px !important;
}

.u-pb20 {
  padding-bottom: 20px !important;
}

.u-pl20 {
  padding-left: 20px !important;
}

.u-mt30 {
  margin-top: 30px !important;
}

.u-mr30 {
  margin-right: 30px !important;
}

.u-mb30 {
  margin-bottom: 30px !important;
}

.u-ml30 {
  margin-left: 30px !important;
}

.u-pt30 {
  padding-top: 30px !important;
}

.u-pr30 {
  padding-right: 30px !important;
}

.u-pb30 {
  padding-bottom: 30px !important;
}

.u-pl30 {
  padding-left: 30px !important;
}

.u-mt40 {
  margin-top: 40px !important;
}

.u-mr40 {
  margin-right: 40px !important;
}

.u-mb40 {
  margin-bottom: 40px !important;
}

.u-ml40 {
  margin-left: 40px !important;
}

.u-pt40 {
  padding-top: 40px !important;
}

.u-pr40 {
  padding-right: 40px !important;
}

.u-pb40 {
  padding-bottom: 40px !important;
}

.u-pl40 {
  padding-left: 40px !important;
}

.u-mt50 {
  margin-top: 50px !important;
}

.u-mr50 {
  margin-right: 50px !important;
}

.u-mb50 {
  margin-bottom: 50px !important;
}

.u-ml50 {
  margin-left: 50px !important;
}

.u-pt50 {
  padding-top: 50px !important;
}

.u-pr50 {
  padding-right: 50px !important;
}

.u-pb50 {
  padding-bottom: 50px !important;
}

.u-pl50 {
  padding-left: 50px !important;
}

.u-mt60 {
  margin-top: 60px !important;
}

.u-mr60 {
  margin-right: 60px !important;
}

.u-mb60 {
  margin-bottom: 60px !important;
}

.u-ml60 {
  margin-left: 60px !important;
}

.u-pt60 {
  padding-top: 60px !important;
}

.u-pr60 {
  padding-right: 60px !important;
}

.u-pb60 {
  padding-bottom: 60px !important;
}

.u-pl60 {
  padding-left: 60px !important;
}

.u-mt70 {
  margin-top: 70px !important;
}

.u-mr70 {
  margin-right: 70px !important;
}

.u-mb70 {
  margin-bottom: 70px !important;
}

.u-ml70 {
  margin-left: 70px !important;
}

.u-pt70 {
  padding-top: 70px !important;
}

.u-pr70 {
  padding-right: 70px !important;
}

.u-pb70 {
  padding-bottom: 70px !important;
}

.u-pl70 {
  padding-left: 70px !important;
}

.u-mt80 {
  margin-top: 80px !important;
}

.u-mr80 {
  margin-right: 80px !important;
}

.u-mb80 {
  margin-bottom: 80px !important;
}

.u-ml80 {
  margin-left: 80px !important;
}

.u-pt80 {
  padding-top: 80px !important;
}

.u-pr80 {
  padding-right: 80px !important;
}

.u-pb80 {
  padding-bottom: 80px !important;
}

.u-pl80 {
  padding-left: 80px !important;
}

.u-mt90 {
  margin-top: 90px !important;
}

.u-mr90 {
  margin-right: 90px !important;
}

.u-mb90 {
  margin-bottom: 90px !important;
}

.u-ml90 {
  margin-left: 90px !important;
}

.u-pt90 {
  padding-top: 90px !important;
}

.u-pr90 {
  padding-right: 90px !important;
}

.u-pb90 {
  padding-bottom: 90px !important;
}

.u-pl90 {
  padding-left: 90px !important;
}

.u-mt100 {
  margin-top: 100px !important;
}

.u-mr100 {
  margin-right: 100px !important;
}

.u-mb100 {
  margin-bottom: 100px !important;
}

.u-ml100 {
  margin-left: 100px !important;
}

.u-pt100 {
  padding-top: 100px !important;
}

.u-pr100 {
  padding-right: 100px !important;
}

.u-pb100 {
  padding-bottom: 100px !important;
}

.u-pl100 {
  padding-left: 100px !important;
}

@media only screen and (min-width: 768px) {
  .u-mt0--pc {
    margin-top: 0px !important;
  }
  .u-mr0--pc {
    margin-right: 0px !important;
  }
  .u-mb0--pc {
    margin-bottom: 0px !important;
  }
  .u-ml0--pc {
    margin-left: 0px !important;
  }
  .u-pt0--pc {
    padding-top: 0px !important;
  }
  .u-pr0--pc {
    padding-right: 0px !important;
  }
  .u-pb0--pc {
    padding-bottom: 0px !important;
  }
  .u-pl0--pc {
    padding-left: 0px !important;
  }
  .u-mt10--pc {
    margin-top: 10px !important;
  }
  .u-mr10--pc {
    margin-right: 10px !important;
  }
  .u-mb10--pc {
    margin-bottom: 10px !important;
  }
  .u-ml10--pc {
    margin-left: 10px !important;
  }
  .u-pt10--pc {
    padding-top: 10px !important;
  }
  .u-pr10--pc {
    padding-right: 10px !important;
  }
  .u-pb10--pc {
    padding-bottom: 10px !important;
  }
  .u-pl10--pc {
    padding-left: 10px !important;
  }
  .u-mt20--pc {
    margin-top: 20px !important;
  }
  .u-mr20--pc {
    margin-right: 20px !important;
  }
  .u-mb20--pc {
    margin-bottom: 20px !important;
  }
  .u-ml20--pc {
    margin-left: 20px !important;
  }
  .u-pt20--pc {
    padding-top: 20px !important;
  }
  .u-pr20--pc {
    padding-right: 20px !important;
  }
  .u-pb20--pc {
    padding-bottom: 20px !important;
  }
  .u-pl20--pc {
    padding-left: 20px !important;
  }
  .u-mt30--pc {
    margin-top: 30px !important;
  }
  .u-mr30--pc {
    margin-right: 30px !important;
  }
  .u-mb30--pc {
    margin-bottom: 30px !important;
  }
  .u-ml30--pc {
    margin-left: 30px !important;
  }
  .u-pt30--pc {
    padding-top: 30px !important;
  }
  .u-pr30--pc {
    padding-right: 30px !important;
  }
  .u-pb30--pc {
    padding-bottom: 30px !important;
  }
  .u-pl30--pc {
    padding-left: 30px !important;
  }
  .u-mt40--pc {
    margin-top: 40px !important;
  }
  .u-mr40--pc {
    margin-right: 40px !important;
  }
  .u-mb40--pc {
    margin-bottom: 40px !important;
  }
  .u-ml40--pc {
    margin-left: 40px !important;
  }
  .u-pt40--pc {
    padding-top: 40px !important;
  }
  .u-pr40--pc {
    padding-right: 40px !important;
  }
  .u-pb40--pc {
    padding-bottom: 40px !important;
  }
  .u-pl40--pc {
    padding-left: 40px !important;
  }
  .u-mt50--pc {
    margin-top: 50px !important;
  }
  .u-mr50--pc {
    margin-right: 50px !important;
  }
  .u-mb50--pc {
    margin-bottom: 50px !important;
  }
  .u-ml50--pc {
    margin-left: 50px !important;
  }
  .u-pt50--pc {
    padding-top: 50px !important;
  }
  .u-pr50--pc {
    padding-right: 50px !important;
  }
  .u-pb50--pc {
    padding-bottom: 50px !important;
  }
  .u-pl50--pc {
    padding-left: 50px !important;
  }
  .u-mt60--pc {
    margin-top: 60px !important;
  }
  .u-mr60--pc {
    margin-right: 60px !important;
  }
  .u-mb60--pc {
    margin-bottom: 60px !important;
  }
  .u-ml60--pc {
    margin-left: 60px !important;
  }
  .u-pt60--pc {
    padding-top: 60px !important;
  }
  .u-pr60--pc {
    padding-right: 60px !important;
  }
  .u-pb60--pc {
    padding-bottom: 60px !important;
  }
  .u-pl60--pc {
    padding-left: 60px !important;
  }
  .u-mt70--pc {
    margin-top: 70px !important;
  }
  .u-mr70--pc {
    margin-right: 70px !important;
  }
  .u-mb70--pc {
    margin-bottom: 70px !important;
  }
  .u-ml70--pc {
    margin-left: 70px !important;
  }
  .u-pt70--pc {
    padding-top: 70px !important;
  }
  .u-pr70--pc {
    padding-right: 70px !important;
  }
  .u-pb70--pc {
    padding-bottom: 70px !important;
  }
  .u-pl70--pc {
    padding-left: 70px !important;
  }
  .u-mt80--pc {
    margin-top: 80px !important;
  }
  .u-mr80--pc {
    margin-right: 80px !important;
  }
  .u-mb80--pc {
    margin-bottom: 80px !important;
  }
  .u-ml80--pc {
    margin-left: 80px !important;
  }
  .u-pt80--pc {
    padding-top: 80px !important;
  }
  .u-pr80--pc {
    padding-right: 80px !important;
  }
  .u-pb80--pc {
    padding-bottom: 80px !important;
  }
  .u-pl80--pc {
    padding-left: 80px !important;
  }
  .u-mt90--pc {
    margin-top: 90px !important;
  }
  .u-mr90--pc {
    margin-right: 90px !important;
  }
  .u-mb90--pc {
    margin-bottom: 90px !important;
  }
  .u-ml90--pc {
    margin-left: 90px !important;
  }
  .u-pt90--pc {
    padding-top: 90px !important;
  }
  .u-pr90--pc {
    padding-right: 90px !important;
  }
  .u-pb90--pc {
    padding-bottom: 90px !important;
  }
  .u-pl90--pc {
    padding-left: 90px !important;
  }
  .u-mt100--pc {
    margin-top: 100px !important;
  }
  .u-mr100--pc {
    margin-right: 100px !important;
  }
  .u-mb100--pc {
    margin-bottom: 100px !important;
  }
  .u-ml100--pc {
    margin-left: 100px !important;
  }
  .u-pt100--pc {
    padding-top: 100px !important;
  }
  .u-pr100--pc {
    padding-right: 100px !important;
  }
  .u-pb100--pc {
    padding-bottom: 100px !important;
  }
  .u-pl100--pc {
    padding-left: 100px !important;
  }
}

.nav-menu ul li a .ico, .nav-menu ul li .gnav-poptxt .ico {
  width: 1em;
}

.reco-sec .reco-ttl {
    font-size: 1.785rem;    /* 25px */
}
.reco-sec .reco-swiper .swiper-slide figure figcaption i {
    font-size: 1.142rem;    /* 16px */
}
.reco-sec .reco-swiper .swiper-slide figure figcaption span {
    font-size: 1.071rem;    /* 15px */
}
.reco-sec .reco-link-btn {
    font-size: 1.428rem;    /* 20px */
}
@media screen and (min-width: 768px) {
    .reco-sec .reco-link-btn {
        font-size: 1.785rem;    /* 25px */
    }
}