@charset "UTF-8";

html {
    overflow: auto;
}

body {
    font-family: "Yu Gothic", "游ゴシsック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    font-size: 62.5%;
    overflow: hidden;
    font-weight: 500;
}

img {
    width: 100%;
}

::-moz-selection {
    color: #19923b;
    background-color: #ffe371;
}

::selection {
    color: #19923b;
    background-color: #ffe371;
}



/* =====================

PC

===================== */
.main {
    position: relative;
    width: 100%;
}

.main-list {
    line-height: 0;
}

.slider {
    display: flex;
}

.slider img {
    height: 100%;
    flex-shrink: 0;
}

.slider img:first-child {
    animation: slide1 120s -60s linear infinite;
}

.slider img:last-child {
    animation: slide2 120s linear infinite;
}

@keyframes slide1 {
    0% {
        transform: translateX(100%);
    }

    to {
        transform: translateX(-100%);
    }
}

@keyframes slide2 {
    0% {
        transform: translateX(0);
    }

    to {
        transform: translateX(-200%);
    }
}



.city_logo {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    width: 32%;
    max-width: 450px;
    z-index: 2;
}

.main_slimg {
    width: 30%;
    max-width: 450px;
    position: absolute;
    bottom: -20px;
    left: 0;
    z-index: 0;
}

.contents {
    position: relative;
}


.contents::before {
    content: '';
    position: absolute;
    width: 100%;
    /* 表示画像の高さ ÷ 表示画像の幅 × 100 */
    padding-top: 16.16%;
    top: 0;
    left: 0;
    background: url('/img/promotion/frame-1.png') no-repeat top;
    background-size: cover;
    box-sizing: border-box;
    overflow: hidden;
    height: 0;
}

.contents::after {
    content: '';
    position: absolute;
    top: 120px;
    left: -50;
    background: url('/img/promotion/deco.png') no-repeat;
    width: 292px;
    height: 391px;
    background-size: 292px 391px;
    z-index: 0;
}

nav {
    position: relative;
    z-index: 1;
}

.navArea {
    display: flex;
    position: absolute;
    top: -60px;
    left: 50%;
    margin-left: -540px;
    justify-content: space-between;
    width: 1080px;
    z-index: 1;
}

.nav1 {
    width: 162px;
}

.nav2 {
    width: 165px;
}

.nav3 {
    width: 172px;
}

.nav4 {
    width: 172px;
}

.nav5 {
    width: 171px;
}

.nav6 {
    width: 168px;
}


/*--section01--*/

.section01 {
    position: relative;
    padding: 200px 0 220px 0;
    background: url('/img/promotion/bg_sec1-2.png') repeat-x bottom;
}

.section01::before {
    content: '';
    position: absolute;
    background: url('/img/promotion/bg_sec1.png') no-repeat;
    width: 1800px;
    height: 864px;
    background-size: 1800px 864px;
    z-index: 0;
    margin-left: -900px;
    left: 50%;
}

.section01::after {
    content: '';
    position: absolute;
    background: url('/img/promotion/bg_sec1-3.png') no-repeat;
    width: 1750px;
    height: 650px;
    background-size: 1750px 650px;
    margin-left: -875px;
    left: 50%;
    bottom: 70px;
    z-index: 0;
}

.intro {
    position: relative;
    z-index: 1;
}

.intro::before {
    /* content: ''; */
    /* position: absolute; */
    /* top: -80px; */
    /* left: 50%; */
    /* margin-left: -62px; */
    /* width: 125px; */
    /* height: 25px; */
    /* background: url('/img/promotion/catch_img.png') no-repeat; */
    /* background-size: 125px 25px; */
}

.intro_catch {
    width: 270px;
    margin: 0 auto;
    padding: 0 0 55px 0;
}

.intro_txt {
    color: #1e4c58;
    font-size: 260%;
    font-weight: bold;
    line-height: 2.5;
    text-align: center;
}

.special {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 100px auto 0 auto;
    justify-items: center;
    flex-wrap: wrap;
    /*justify-content: space-between;*/
    justify-content: center;
    width: 980px;
    column-gap: 30px;
}

.special li {
    width: 474px;
    text-align: center;
}

.special img {
    transition: 0.3s;
}

.special a img:hover {
    opacity: 0.6;
}




/*--pr--*/
.pr {
    position: relative;
    margin-top: 200px;
    z-index: 2;
}

.pr_tit {
    margin: 0 auto;
    width: 397px;
}

.movieBox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-items: center;
    justify-content: space-between;
    margin: 0 auto;
    padding-top: 60px;
    width: 980px;
}

.movie_in {
    padding: 20px 20px 0 20px;
    background: url('/img/promotion/movie_bg.jpg');
    border-radius: 10px;
    border: solid 2px #4f352d;
}

.movie {
    width: 750px;
    height: 422px;
}

.youtube {
    display: block;

}

.youtube iframe {
    width: 100% !important;
}


.thumb_slider {
    width: 150px;
    height: 490px;
    overflow: hidden;
}

.thumb_slider .slick-list {
    height: 490px !important;
}

.slick-list,
.draggable {
    padding: 0 !important;
}


.thumb_slider #thumbnail_slider,
.thumb_slider .slick-list,
.thumb_slider img {
    width: 100%;
}


.thumbnail-item {
    margin: 5px 0;
    cursor: pointer;
}


.detail_movie.solo {
    text-align: center;
    margin: 60px auto 40px;
    width: 95%;
    box-sizing: border-box;
}


/*--section02--*/
.section02 {
    position: relative;
    padding: 180px 0;
    background: #f8f4e2;
}

.section02::before {
    content: '';
    position: absolute;
    top: -10px;
    left: 0;
    background: url('/img/promotion/line.png') repeat-x;
    width: 100%;
    height: 38px;
    z-index: 1;
}

.section02-deco {
    position: relative;
}

.section02-deco::before {
    content: '';
    position: absolute;
    bottom: -290px;
    left: -20px;
    background: url('/img/promotion/deco-3.png') no-repeat;
    width: 402px;
    height: 421px;
    background-size: 402px 421px;
    z-index: 4;
}

.section02::after {
    content: '';
    position: absolute;
    top: -140px;
    right: -20px;
    background: url('/img/promotion/deco-2.png') no-repeat;
    width: 269px;
    height: 361px;
    background-size: 269px 361px;
    z-index: 1;
}

.topGallery {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    width: 1100px;
    margin: 0 auto;
    z-index: 3;
}

.topGallery-1 {
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.topGallery-1 img {
    margin-left: -350px;
    min-width: 1000px;
}

.topGallery-2 {
    margin-left: 80px;
    width: 450px;
}

.topGallery_tit {
    margin: 0 auto;
    width: 350px;
    padding: 30px 0 60px 0;
}

.topGallery_txt {
    margin: 0 auto;
    padding-top: 40px;
    font-size: 180%;
    line-height: 1.5;
    color: #1e4c58;
    font-weight: bold;
    text-align: center;
}

.topGallery_btn a {
    display: block;
    margin: 0 auto;
    width: 350px;
}


.section03 {
    position: relative;
    padding: 200px 0 140px 0;
    width: 100%;
    background: url('/img/promotion/bg_sec3.jpg') no-repeat;
    background-size: cover;
    background-position: top;
    box-sizing: border-box;
    overflow: hidden;
}

.section03::before {
    content: '';
    position: absolute;
    top: -10px;
    left: 0;
    background: url('/img/promotion/line.png') repeat-x;
    width: 100%;
    height: 38px;
    z-index: 1;
}

.section03::after {
    position: absolute;
    content: '';
    display: block;
    background: url('/img/promotion/bg_sec3_on.png') repeat;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 0;
}

.topics {
    margin: 0 auto;
    width: 1040px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.topnews,
.topInsta {
    position: relative;
    padding: 35px;
    background: #fff;
    border-radius: 10px;
    box-sizing: border-box;
    z-index: 1;
}

.topnews {
    width: 53%;
}

.topnews .no_data {
    font-size: 16px;
}

.topInsta {
    width: 44%;
}

.topnews_tit {
    position: absolute;
    top: -55px;
    left: -10px;
    width: 257px;
}

.topInsta_tit {
    position: absolute;
    top: -45px;
    left: -10px;
    width: 256px;
}


.topics_box {
    padding-bottom: 20px;
}

.topics_box li {
    padding: 10px 0;
    font-size: 170%;
    line-height: 1.5;
}

.topics_box li a {
    color: #0049a4;
    text-decoration: none;
}

.topics_box li a:hover {
    text-decoration: underline;
}

.p-news_link {
    display: flex;
    padding-top: 30px;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
    width: 420px;
}

.newsDate {}

.newsTit {
    margin-left: 20px;
}

.icon_new {
    margin-left: 5px;
    width: 45px;
    vertical-align: middle;
}

.subNewsList_btn {
    padding-top: 10px;
    text-align: center;
}

.subNewsList_btn a {
    padding: 8px 15px;
    font-size: 160%;
    text-align: center;
    background: #fff;
    color: #0662c9;
    border: solid 1px #0662c9;
    border-radius: 5px;
    text-decoration: none;
}


/* インスタ表示枠 */

.gallery img {
    max-width: 100%;
    height: 225px !important;
    object-fit: cover;
    font-family: 'object-fit: cover;'
}

.gallery {
    display: flex;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
    list-style: none;
}

.gallery-item {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 32%;
    flex: 1 1 32%;
    margin-right: 2%;
    margin-bottom: 2%;
}

.gallery-item:nth-child(3n) {
    margin-right: 0;
}

.gallery-item a {
    width: 100%;
    height: 124px;
    display: block;
    background-size: cover;
    background-position: center;
}

.snsShosai {
    display: flex;
    justify-content: center;
    padding-top: 20px;
}

.snsShosai a {
    padding: 15px;
    font-size: 160%;
    text-align: center;
    background: #fff;
    color: #0662c9;
    border: solid 1px #0662c9;
    border-radius: 5px;
    text-decoration: none;
}



/*--section03--*/

.section04 {
    position: relative;
    padding: 60px 0;
    background: #f8f4e2;
    background: url('/img/promotion/bg_sec4.png') repeat center;
}



.bnArea_in {
    position: relative;
    margin: 0 auto;
    width: 1040px;
    z-index: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    column-gap: 13px;
}

.bnArea_in li {
    width: 19%;
    margin: 10px 0;
}

.bnArea_in a:hover {
    background: #e9f7ff;
}

.bnArea_in img {
    transition: 0.3s;
}

.bnArea_in a img:hover {
    opacity: 0.5;
}


/*--foot--*/

.foot {
    position: relative;
    background: #fff;
    background: url('/img/promotion/frame-2.png') no-repeat top;
    background-size: 100%;
    box-sizing: border-box;
    background-position: bottom;
    z-index: 0;
}

.foot::after {
    content: '';
    position: absolute;
    bottom: 0;
    right: 0;
    background: url('/img/promotion/foot_btm.png') no-repeat top center;
    background-size: 521px 285px;
    width: 521px;
    height: 285px;
    box-sizing: border-box;
    z-index: -1;
}

.footBox {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-items: center;
    justify-content: space-between;
    margin: 0 auto;
    padding: 70px 0 150px 0;
    width: 960px;
    z-index: 2;
}

.footBox::after {
    content: '';
    position: absolute;
    top: 130px;
    right: -130px;
    background: url('/img/promotion/deco-4.png') repeat-x;
    width: 75px;
    height: 78px;
    z-index: 1;
}

.footBox-1 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
}

.foot_date {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-right: 10px;
    justify-items: center;
    box-sizing: border-box;
}

.foot_date dt {
    padding-right: 15px;
    width: 95px;
}

.foot_tit {
    margin: 0 0 10px 0;
    width: 253px;
}

.foot_phone {
    margin: 10px 0 15px 0;
    font-size: 180%;
}

.top_btn {
    margin: 0;
    width: 214px;
}

.foot_access {
    width: 485px;
}

.foot_copy {
    position: relative;
    padding: 5px 0 15px 0;
    font-size: 150%;
    text-align: center;
    z-index: 2;
    text-shadow: 1px 1px 0px #fff, -1px 1px 0px #fff, 1px -1px 2px #fff, -1px -1px 0px #fff;
}

.external_link_text {
    display: none;
}

/* ページトップ */

#top_scroll {
    position: relative;
    z-index: 100;
    margin: 0;
    padding: 0;
}

#page-top {
    display: block;
    position: fixed;
    z-index: 9999;
    bottom: -250px;
    right: 25px;
    width: 55px;
    height: 55px;
    padding: 0;
    color: #222;
    text-align: center;
    text-decoration: none;
    transition: 1s;
    -webkit-transition: 1s;
}

#top_scroll:hover {
    background: #fff;
}


/* =====================

    IE

===================== */


@media all and (-ms-high-contrast: none) {

    body {
        font-family: "メイリオ", Meiryo, sans-serif;
    }

}

/* =====================

Smartphone

===================== */

@media screen and (max-width:767px) {



    .main {
        position: relative;
        width: 100%;
        background-size: cover;
        height: auto;
    }

    .city_logo {
        width: 45%;
    }

    .main_slimg {
        display: none;
    }

    .contents {
        position: relative;
    }


    .contents::before {
        content: '';
        position: absolute;
        width: 100%;
        /* 表示画像の高さ ÷ 表示画像の幅 × 100 */
        padding-top: 16.16%;
        top: 0;
        left: 0;
        background: url('/img/promotion/frame-1.png') no-repeat top;
        background-size: cover;
        box-sizing: border-box;
        overflow: hidden;
        height: 0;
    }

    .contents::after {
        content: none;
    }

    .navArea {
        display: flex;
        position: static;
        margin: 0 auto;
        padding-top: 10px;
        width: 95%;
        z-index: 1;
        flex-wrap: wrap;
    }

    .nav1,
    .nav2,
    .nav3,
    .nav4,
    .nav5,
    .nav6 {
        width: 30%;
        margin: 5px 0;
    }

    /*--section01--*/

    .section01 {
        position: relative;
        padding: 30px 0 80px 0;
        background: url('/img/promotion/bg_sec1-2.png') repeat-x bottom;
    }

    .section01::before {
        content: none;
    }

    .section01::after {
        content: none;
    }


    .intro::before {
        /* content: ''; */
        /* position: absolute; */
        /* top: -70px; */
        /* left: 50%; */
        /* margin-left: -62px; */
        /* width: 125px; */
        /* height: 25px; */
        /* background: url('/img/promotion/catch_img.png') no-repeat; */
        /* background-size: 125px 25px; */
    }

    .intro_catch {
        width: 124px;
        padding: 0 0 30px 0;
    }

    .intro_txt {
        margin: 0 auto;
        font-size: 160%;
        line-height: 2.0;
        text-align: left;
        width: 90%;
    }

    .special {
        display: block;
        margin: 60px auto 0 auto;
        width: 95%;
    }

    .special li {
        margin: 30px 0;
        width: 100%;
    }




    /*--pr--*/
    .pr {
        margin-top: 100px;
    }

    .pr_tit {
        width: 70%;
        max-width: 350px;
    }

    .movieBox {
        display: block;
        width: 95%;
        margin: 0 auto;
    }

    .movie_in {
        width: 100%;
        box-sizing: border-box;
    }

    .movie {
        width: 100%;
        height: auto;
    }

    .youtube {
        position: relative !important;
        display: block !important;
        padding-top: 9.5% !important;
    }

    .youtube iframe {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 100% !important;
    }


    .thumb_slider {
        padding-top: 20px;
        width: 100%;
        height: auto;
    }

    .thumb_slider .slick-list {
        height: auto !important;
    }

    .slick-dotted.slick-slider {
        margin: 0;
    }

    .thumb_slider #thumbnail_slider,
    .thumb_slider .slick-list,
    .thumb_slider img {
        width: 100%;
    }

    .thumbnail-item {
        margin: 0 5px;
    }


    .detail_movie {
        position: relative;
        width: 100%;
        padding-top: 56.25%;
    }

    .detail_movie iframe {
        position: absolute;
        top: 0;
        right: 0;
        width: 100% !important;
        height: 100% !important;
    }

    .detail_movie.solo {
        margin: 30px auto 0px;
    }



    /*--section02--*/
    .section02 {
        position: relative;
        padding: 60px 0;
        background: #f8f4e2;
    }

    .section02::before {
        content: '';
        position: absolute;
        top: -10px;
        left: 0;
        background: url('/img/promotion/line.png') repeat-x;
        width: 100%;
        height: 38px;
        z-index: 1;
    }

    .section02::after,
    .section02-deco::before {
        content: none;
    }

    .topGallery {
        display: block;
        width: 95%;
    }

    .topGallery-1 {}

    .topGallery-1 img {
        margin-left: 0;
        min-width: auto;
    }

    .topGallery-2 {
        margin-left: 0;
        width: 90%;
        margin: 0 auto;
    }

    .topGallery_tit {
        width: 80%;
        max-width: 300px;
        padding: 40px 0 40px 0;
    }

    .topGallery_btn a {
        width: 100%;
    }


    .section03 {
        padding: 110px 0 60px 0;
        width: 100%;
    }

    .topics {
        width: 90%;
        display: block;
    }

    .topnews,
    .topInsta {
        padding: 20px;
        width: 100%;
    }

    .topInsta {
        margin-top: 90px;
    }

    .topnews_tit {
        top: -40px;
        left: -10px;
        width: 200px;
    }

    .topInsta_tit {
        position: absolute;
        top: -35px;
        left: -10px;
        width: 200px;
    }

    .topics_box {
        padding-bottom: 20px;
    }

    .topics_box li {
        padding: 10px 0;
        font-size: 160%;
        line-height: 1.5;
    }

    .p-news_link {
        display: flex;
        padding-top: 30px;
        justify-content: space-between;
        align-items: center;
        margin: 0 auto;
        width: 420px;
    }


    .newsDate {}

    .newsTit {}


    /*--section03--*/

    .section04 {
        padding: 30px 0;
    }

    .bnArea_in {
        margin: 0 auto;
        width: 95%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        justify-items: center;
        justify-content: space-between;
        flex-wrap: wrap;
        column-gap: 0;
    }

    .bnArea_in li {
        width: 48%;
        margin: 5px 0;
    }


    /*--foot--*/

    .foot::after {
        content: '';
        position: absolute;
        bottom: 0;
        right: 0;
        background: url('/img/promotion/foot_btm.png') no-repeat top center;
        background-size: 200px 115px;
        width: 200px;
        height: 115px;
        box-sizing: border-box;
        z-index: -1;
    }

    .footBox {
        position: relative;
        display: block;
        margin: 0 auto;
        padding: 70px 0;
        width: 90%;
    }

    .footBox::after {
        content: none;
    }

    .footBox-1 {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        align-items: center;
    }

    .foot_date {
        padding-right: 0;
        margin: 0 auto;
    }

    .foot_date dt {
        padding-right: 10px;
        width: 85px;
    }

    .foot_tit {
        padding-bottom: 15px;
        width: 100%;
        max-width: 250px;
    }

    .top_btn {
        width: 100%;
        max-width: 200px;
    }

    .foot_access {
        width: 100%;
        padding: 40px 0;
        max-width: 350px;
        margin: 0 auto;
    }



}

/* =====================

Print css

===================== */

@media print {}