@charset "UTF-8";
/* ==========================================================================

TOP

========================================================================== */

/*--------------------------------
ヘッダー
--------------------------------*/
header {
    background-color: rgba(255,255,255,0);
    backdrop-filter: blur(0);
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
}

header.show {
    background-color: rgba(255,255,255,0.95);
    backdrop-filter: blur(3px);
}

/*--------------------------------
基本レイアウト
--------------------------------*/
h2 {
    text-align: center;
    font-size: 3.0rem;
    font-weight: bold;
    font-family: "FOT-セザンヌ Pro DB", "CezannePro-DB", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", Arial, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
    color: #bb0813;
    margin: 0 auto 1.5em;
}

h2 em {
    display: block;
    text-align: center;
    font-size: 1.6rem;
    font-weight: normal;
    margin: 5px auto 0;
}

h2 strong {
    display: block;
    text-align: center;
    font-size: 2.0rem;
    font-weight: normal;
    margin: 0 auto 5px;
}

@media only screen and (max-width: 812px) {
    h2 {
        font-size: 2.2rem;
        /*        margin: 0 auto 1.0em;*/
    }
    h2 em {
        font-size: 1.4rem;
        margin: 2px auto 0;
    }
    h2 strong {
        font-size: 1.4rem;
        margin: 0 auto 2px;
    }
}

/*--------------------------------
メインビジュアル
--------------------------------*/
#MAINVISUAL {
    position: relative;
    width: 100vw;
    height: 100vh;
    text-align: center;
    padding: 0;
    margin: 0 auto;
    -webkit-transition: 0.4s;
    transition: 0.4s;
    overflow: hidden;
}

/* ------ スライドショー ------ */
#MAINVISUAL .slide {
    height: 100vh;
}

#MAINVISUAL .slide .slick-list,
#MAINVISUAL .slide .slick-track,
#MAINVISUAL .slide .slick-slide {
    width: 100%;
    height: 100%;
}

#MAINVISUAL .slide .slick-slide {
    background: no-repeat center center;
    background-size: cover;
}

#MAINVISUAL .slide div.main01 {
    background-image: url(../images/main01.jpg);
}

#MAINVISUAL .slide div.main02 {
    background-image: url(../images/main02.jpg);
}

#MAINVISUAL .slide div.main03 {
    background-image: url(../images/main03.jpg);
}

#MAINVISUAL .slide div.main04 {
    background-image: url(../images/main04.jpg);
}

#MAINVISUAL .slide div.main05 {
    background-image: url(../images/main05.jpg);
}

#MAINVISUAL .slide div.main06 {
    background-image: url(../images/main06.jpg);
}

/* dots */
#MAINVISUAL .slide .slick-dots {
    width: 30px;
    right: 20px;
    /* bottom: 50%;
    -webkit-transform: translate(0, 50%);
    transform: translate(0, 50%); */
    bottom: 20px;
}

#MAINVISUAL .slide .slick-dots li {
    display: block;
}

#MAINVISUAL .slide .slick-dots li:hover button::before,
#MAINVISUAL .slide .slick-dots li.slick-active button::before {
    color: #bb0813;
}

/* メインコピー */
#MAINVISUAL .maincopy strong {
    position: absolute;
    top: 20%;
    left: 10%;
    display: block;
    font-family: "FOT-セザンヌ Pro DB", "CezannePro-DB", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", Arial, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
    font-size: 3.5rem;
    /*
    calc + vwの公式
    font-size: calc(Apx + B * (100vw - Cpx)/D);
    A・・・最小文字サイズ
    B・・・最大文字サイズ – 最小文字サイズ
    C・・・最小文字サイズ時の画面幅
    D・・・最大文字サイズ時の画面幅 – 最小文字サイズ時の画面幅
    画面幅2000pxの時 font-size: 58px
    画面幅812pxの時 font-size: 28px
    */
    font-size: calc(28px + 30 * (100vw - 812px)/1188);
    color: #fff;
    text-align: left;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.4);
    -webkit-animation: fadein 2s ease;
    animation: fadein 2s ease;
}

@-webkit-keyframes fadein {
    0% {
        opacity: 0;
        -webkit-transform: translate(20px, 0);
    }
    50% {
        opacity: 0;
        -webkit-transform: translate(20px, 0);
    }
    100% {
        opacity: 1;
        -webkit-transform: translate(0, 0);
    }
}

@keyframes fadein {
    0% {
        opacity: 0;
        -webkit-transform: translate(20px, 0);
        transform: translate(20px, 0);
    }
    50% {
        opacity: 0;
        -webkit-transform: translate(20px, 0);
        transform: translate(20px, 0);
    }
    100% {
        opacity: 1;
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
    }
}

@media only screen and (max-width: 812px) {
    #MAINVISUAL {
        height: 75vh;
    }
    #MAINVISUAL .slide {
        height: 75vh;
    }
    #MAINVISUAL .slide div.main01 {
        background-image: url(../images/main01_sp.jpg);
    }
    #MAINVISUAL .slide div.main02 {
        background-image: url(../images/main02_sp.jpg);
    }
    #MAINVISUAL .slide div.main03 {
        background-image: url(../images/main03_sp.jpg);
    }
    #MAINVISUAL .slide div.main04 {
        background-image: url(../images/main04_sp.jpg);
    }
    #MAINVISUAL .slide div.main05 {
        background-image: url(../images/main05_sp.jpg);
    }
    #MAINVISUAL .slide div.main06 {
        background-image: url(../images/main06_sp.jpg);
    }
    /* dots */
    #MAINVISUAL .slide .slick-dots {
        display: none !important;
    }
    /* メインコピー */
    #MAINVISUAL .maincopy strong {
        font-size: 28px;
        /*
        calc + vwの公式
        font-size: calc(Apx + B * (100vw - Cpx)/D);
        A・・・最小文字サイズ
        B・・・最大文字サイズ – 最小文字サイズ
        C・・・最小文字サイズ時の画面幅
        D・・・最大文字サイズ時の画面幅 – 最小文字サイズ時の画面幅
        画面幅812pxの時 font-size: 28px
        画面幅320pxの時 font-size: 20px
        */
        font-size: calc(20px + 8 * (100vw - 320px)/492);
        top: 15%;
        left: 30px;
    }
}

/* ------ スクロール ------ */
#MAINVISUAL .btn_scroll {
    display: block;
    position: absolute;
    bottom: 25px;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    font-size: 1.4rem;
}

#MAINVISUAL .btn_scroll a:link,
#MAINVISUAL .btn_scroll a:visited {
    color: #fff;
}

#MAINVISUAL .btn_scroll a:hover,
#MAINVISUAL .btn_scroll a:active {
    color: #bb0813;
}

#MAINVISUAL .btn_scroll svg {
    display: block;
    width: 26px;
    height: 90px;
    fill: #fff;
    margin: 0 auto;
    -webkit-animation: scroll 2s linear infinite;
    animation: scroll 2s linear infinite;
}

#MAINVISUAL .btn_scroll:hover svg {
    fill: #bb0813;
}

@-webkit-keyframes scroll {
    0% {
        opacity: 0;
        -webkit-transform: translate(0, 0);
    }
    50% {
        opacity: 1;
    }
    80% {
        opacity: 1;
        -webkit-transform: translate(0, 18px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translate(0, 18px);
    }
}

@keyframes scroll {
    0% {
        opacity: 0;
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
    }
    50% {
        opacity: 1;
    }
    80% {
        opacity: 1;
        -webkit-transform: translate(0, 18px);
        transform: translate(0, 18px);
    }
    100% {
        opacity: 0;
        -webkit-transform: translate(0, 18px);
        transform: translate(0, 18px);
    }
}

@media only screen and (max-width: 812px) {
    #MAINVISUAL .btn_scroll {
        font-size: 1.0rem;
    }
    #MAINVISUAL .btn_scroll a:link,
    #MAINVISUAL .btn_scroll a:visited {
        color: #fff;
    }
    #MAINVISUAL .btn_scroll a:hover,
    #MAINVISUAL .btn_scroll a:active {
        color: #fff;
    }
    #MAINVISUAL .btn_scroll svg {
        width: 13px;
        height: 45px;
    }
    #MAINVISUAL .btn_scroll:hover svg {
        fill: #fff;
    }
}

/* ------ サイボク園内リンク ------ */
#MAINVISUAL .btn_park {
    display: block;
    width: 170px;
    position: absolute;
    bottom: -30px;
    left: 30px;
    -webkit-transition: 0.2s;
    transition: 0.2s;
}

#MAINVISUAL .btn_park:hover {
    bottom: 0;
}

#MAINVISUAL .btn_park img {
    width: 100%;
}

@media only screen and (max-width: 812px) {
    #MAINVISUAL .btn_park {
        width: 100px;
        bottom: -20px;
        left: 5px;
    }
    #MAINVISUAL .btn_park:hover {
        bottom: -20px;
    }
}

/*--------------------------------
サイボク園内情報ショートカット
--------------------------------*/
/* コンテンツ内のものを通り過ぎてヘッダー側を表示 */
/* ------ トリガー ------ */
header + .nav_parkinfo .nav_parkinfo_btn {
    pointer-events: none;
    -webkit-transform: translate3d(150%, 0, 0);
    transform: translate3d(150%, 0, 0);
    -webkit-transition: 0.4s;
    transition: 0.4s;
}

header + .nav_parkinfo .nav_parkinfo_btn.exist {
    visibility: visible;
    pointer-events: auto;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

/* コンテンツ内に複製したもののスタイル */
/* ------ トリガー ------ */
.nav_parkinfo_wrapper .nav_parkinfo .nav_parkinfo_btn {
    display: none !important;
}

/* ------ リンク ------ */
.nav_parkinfo_wrapper .nav_parkinfo .nav_parkinfo_cont {
    position: static;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
}

.nav_parkinfo_wrapper .nav_parkinfo .nav_parkinfo_btn + .nav_parkinfo_cont li {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

/*--------------------------------
ピックアップ
--------------------------------*/
#PICKUP .slide {
    width: 90%;
    margin: 0 auto;
}

#PICKUP .slide .slidePrev {
    top: calc(50% - 18px);
    left: -40px;
}

#PICKUP .slide .slideNext {
    top: calc(50% - 18px);
    right: -40px;
}

#PICKUP .slide .slidePrev svg,
#PICKUP .slide .slideNext svg {
    fill: #bb0813;
}

#PICKUP .slide .slidePrev:hover svg,
#PICKUP .slide .slideNext:hover svg {
    fill: #eb343f;
}

#PICKUP .slide li {
    margin: 0 20px;
}

#PICKUP .slide li a {
    display: block;
    cursor: pointer;
}

#PICKUP .slide li a .postImg {
    border-radius: 10px;
    overflow: hidden;
    position: relative;
    z-index: 1;
}

#PICKUP .slide li a .postImg img {
    width: 100%;
    height: auto;
    /*for Chorome bug*/
    border-radius: 10px;
}

#PICKUP .slide li a:hover .postImg img {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
}

/*ダミー用*/
#PICKUP .slide li a .postImg img[src*="dummy"] {
    height: 220px;
}

#PICKUP .slide li a .postTitle {
    width: 90%;
    margin: 10px auto 0;
    text-align: left;
}

@media only screen and (max-width: 812px) {
    #PICKUP .slide {
        width: 100%;
    }
    #PICKUP .slide .slidePrev {
        top: calc(50% - 15px);
        left: -10px;
        width: 30px;
        height: 30px;
    }
    #PICKUP .slide .slideNext {
        top: calc(50% - 15px);
        right: -10px;
        width: 30px;
        height: 30px;
    }
    #PICKUP .slide .slidePrev svg,
    #PICKUP .slide .slideNext svg {
        width: 30px;
        height: 30px;
    }
    #PICKUP .slide .slidePrev:hover svg,
    #PICKUP .slide .slideNext:hover svg {
        fill: #bb0813;
    }
    /*ダミー用*/
    #PICKUP .slide li a .postImg img[src*="dummy"] {
        height: 220px;
    }
    #PICKUP .slide li a .postTitle {
        width: 100%;
    }
}

/*--------------------------------
おしらせ　/ メディア情報
--------------------------------*/
/*（メディア情報を移動させるためセレクタが変則）*/
.info .container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.info .container > div {
    width: 48.5%;
    -ms-flex: 0 0 48.5%;
    -webkit-box-flex: 0;
    flex: 0 0 48.5%;
}

.info .container .postList {
    margin: 0 auto 50px;
}

.info .container .postList li {
    border-bottom: 2px dotted #bb0813;
    padding: 15px 0;
}

.info .container .postList li:first-child {
    border-top: 2px dotted #bb0813;
}

.info .container .postList li .postInfo {
    margin: 0 0 10px 0;
}

.info .container .postList li .postInfo span {
    display: inline-block;
    font-size: 1.3rem;
    letter-spacing: 1px;
    margin: 0 20px 0 0;
}

.info .container .postList li .postInfo em {
    display: inline-block;
    font-size: 1.2rem;
    font-weight: normal;
    margin: 0 0 0 10px;
    background-color: #bb0813;
    border-radius: 4px;
    padding: 1px 10px;
}

.info .container .postList li .postInfo em a:link,
.info .container .postList li .postInfo em a:visited {
    color: #fff;
}

.info .container .postList li .postInfo em a:hover,
.info .container .postList li .postInfo em a:active {
    color: #ffc0c4;
}

.info .container .postList li .postTitle {
    font-size: 1.6rem;
    line-height: 1.6;
    text-align: left;
    margin: 0;
}

@media only screen and (max-width: 812px) {
    .info .container {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
    .info .container > div {
        width: 100% !important;
    }
    .info .container > div:nth-of-type(2) {
        margin-top: 60px;
    }
    .info .container .postList {
        margin: 0 auto 30px;
    }
    .info .container .postList li {
        padding: 10px 0;
    }
    .info .container .postList li .postInfo {
        margin: 0 0 5px 0;
    }
    .info .container .postList li .postInfo span {
        font-size: 1.2rem;
        margin: 0 10px 0 0;
    }
    .info .container .postList li .postInfo em {
        font-size: 1.2rem;
    }
    .info .container .postList li .postInfo em a:link,
    .info .container .postList li .postInfo em a:visited {
        color: #fff;
    }
    .info .container .postList li .postInfo em a:hover,
    .info .container .postList li .postInfo em a:active {
        color: #fff;
    }
    .info .container .postList li .postTitle {
        font-size: 1.4rem;
    }
}

/*--------------------------------
サイボクについて
--------------------------------*/
/*--------------------------------
サイボクのブランド豚
--------------------------------*/
/*--------------------------------
サイボクの商品
--------------------------------*/
.main_contents .container {
    max-width: none;
    min-width: 0;
    padding-left: 0;
    padding-right: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.main_contents .container .col_img {
    width: 58%;
    max-width: 58%;
    -ms-flex: 0 1 58%;
    -webkit-box-flex: 0;
    flex: 0 1 58%;
    overflow: hidden;
}

.main_contents .container .col_img img {
    width: 100%;
    max-width: none;
}

.main_contents .container .col_text {
    width: 38%;
    max-width: 38%;
    -ms-flex: 0 1 38%;
    -webkit-box-flex: 0;
    flex: 0 1 38%;
}

.main_contents .container .col_text h3 {
    font-size: 3.0rem;
    /*
    calc + vwの公式
    font-size: calc(Apx + B * (100vw - Cpx)/D);
    A・・・最小文字サイズ
    B・・・最大文字サイズ – 最小文字サイズ
    C・・・最小文字サイズ時の画面幅
    D・・・最大文字サイズ時の画面幅 – 最小文字サイズ時の画面幅
    画面幅1500pxの時 font-size: 30px
    画面幅812pxの時 font-size: 20px
    */
    font-size: calc(20px + 10 * (100vw - 812px)/688);
    font-weight: bold;
    font-family: "FOT-セザンヌ Pro DB", "CezannePro-DB", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", Arial, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
    margin-bottom: 1em;
    color: #444;
    line-height: 1.7;
}

.main_contents .container .col_text p {
    font-size: 1.8rem;
    /*
    calc + vwの公式
    font-size: calc(Apx + B * (100vw - Cpx)/D);
    A・・・最小文字サイズ
    B・・・最大文字サイズ – 最小文字サイズ
    C・・・最小文字サイズ時の画面幅
    D・・・最大文字サイズ時の画面幅 – 最小文字サイズ時の画面幅
    画面幅1500pxの時 font-size: 18px
    画面幅812pxの時 font-size: 14px
    */
    font-size: calc(14px + 4 * (100vw - 812px)/688);
    margin-bottom: 0;
    color: #444;
}

.main_contents .container .col_text p i {
    font-style: normal;
    display: inline-block;
}

.main_contents .container .col_text .link_btn {
    width: 100%;
    max-width: 300px;
    margin: 3em auto 0 0;
}

/* 「ミートピア」を目指して */
#ABOUT.main_contents {
    padding-top: 8vw;
    padding-bottom: 8vw;
}

#ABOUT.main_contents .container .col_img {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    border-radius: 20px 0 0 20px;
    margin-bottom: 8vw;
}

#ABOUT.main_contents .container .col_text {
    padding-left: 4%;
    margin-top: 5vw;
    margin-bottom: 8vw;
}

/* ブランド豚 */
#BRAND.main_contents {
    padding-top: 8vw;
    padding-bottom: 8vw;
}

#BRAND.main_contents .container .col_img {
    border-radius: 0 20px 20px 0;
    position: relative;
    z-index: 3;
    margin-top: -20vw;
    margin-bottom: 8vw;
}

#BRAND.main_contents .container .col_text {
    padding-right: 4%;
    margin-top: 5vw;
    margin-bottom: 8vw;
}

/* プロダクト */
#PRODUCT.main_contents {
    padding-top: 8vw;
    padding-bottom: 8vw;
}

#PRODUCT.main_contents .container .col_img {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    border-radius: 20px 0 0 20px;
    position: relative;
    z-index: 3;
    margin-top: -20vw;
    margin-bottom: 5vw;
}

#PRODUCT.main_contents .container .col_text {
    padding-left: 4%;
    margin-top: 5vw;
}

@media only screen and (max-width: 812px) {
    .main_contents .container {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
    .main_contents .container .col_img {
        width: 95%;
        max-width: none;
        -ms-flex: 0 0 95%;
        -webkit-box-flex: 0;
        flex: 0 0 95%;
    }
    .main_contents .container .col_text {
        width: 100%;
        max-width: none;
        -ms-flex: 0 0 100%;
        -webkit-box-flex: 0;
        flex: 0 0 100%;
    }
    .main_contents .container .col_text h3 {
        font-size: 18px;
        margin-bottom: 0.8em;
    }
    .main_contents .container .col_text p {
        font-size: 14px;
    }
    .main_contents .container .col_text .link_btn {
        margin: 2em auto 0;
    }
    /* 「ミートピア」を目指して */
    #ABOUT.main_contents {
        padding-top: 40px;
        padding-bottom: 40px;
    }
    #ABOUT.main_contents .container .col_img {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
        border-radius: 10px 0 0 10px;
        margin: 0 0 0 auto;
    }
    #ABOUT.main_contents .container .col_text {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
        padding-right: 5%;
        padding-left: 5%;
        margin-top: 30px;
        margin-bottom: 0;
    }
    /* ブランド豚 */
    #BRAND.main_contents {
        padding-top: 40px;
        padding-bottom: 40px;
    }
    #BRAND.main_contents .container .col_img {
        border-radius: 0 10px 10px 0;
        position: static;
        margin: 0 auto 0 0;
    }
    #BRAND.main_contents .container .col_text {
        padding-right: 5%;
        padding-left: 5%;
        margin-top: 30px;
        margin-bottom: 0;
    }
    /* プロダクト */
    #PRODUCT.main_contents {
        padding-top: 40px;
        padding-bottom: 40px;
    }
    #PRODUCT.main_contents .container .col_img {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
        border-radius: 10px 0 0 10px;
        position: static;
        margin: 0 0 0 auto;
    }
    #PRODUCT.main_contents .container .col_text {
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
        padding-right: 5%;
        padding-left: 5%;
        margin-top: 30px;
        margin-bottom: 0;
    }
}

/*--------------------------------
オンラインショップバナー
--------------------------------*/
#ONLINESHOP .container div {
    width: 90%;
    margin: 0 auto;
}

#ONLINESHOP .container div img {
    width: 100%;
}

#ONLINESHOP .container div a {
    display: block;
    position: relative;
}

#ONLINESHOP .container div a::after {
    display: block;
    content: "";
    width: 130px;
    height: 130px;
    background: url(../images/banner_onlineshop_click.svg) no-repeat center center/contain;
    position: absolute;
    z-index: 4;
    top: -40px;
    right: -40px;
    -webkit-transform-origin: bottom left;
    transform-origin: bottom left;
    -webkit-animation: click 3s ease infinite;
    animation: click 3s ease infinite;
    -webkit-transition: 0.4s;
    transition: 0.4s;
}

@-webkit-keyframes click {
    0% {
        -webkit-transform: scale(1);
    }
    80% {
        -webkit-transform: scale(1);
    }
    85% {
        -webkit-transform: scale(1.2);
    }
    100% {
        -webkit-transform: scale(1);
    }
}

@keyframes click {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    80% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    85% {
        -webkit-transform: scale(1.2);
        transform: scale(1.2);
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

#ONLINESHOP .container div a:hover::after {
    -webkit-animation: click2 3s ease infinite;
    animation: click2 3s ease infinite;
}

@-webkit-keyframes click2 {
    0% {
        -webkit-transform: scale(1);
    }
    80% {
        -webkit-transform: scale(1);
    }
    85% {
        -webkit-transform: scale(1.1);
    }
    100% {
        -webkit-transform: scale(1);
    }
}

@keyframes click2 {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    80% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
    85% {
        -webkit-transform: scale(1.1);
        transform: scale(1.1);
    }
    100% {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

#ONLINESHOP .container div a:hover img {
    opacity: 0.8;
}

@media only screen and (max-width: 812px) {
    #ONLINESHOP .container div a::after {
        width: 70px;
        height: 70px;
        top: -10px;
        right: -10px;
    }
    @-webkit-keyframes click {
        0% {
            -webkit-transform: scale(1);
        }
        80% {
            -webkit-transform: scale(1);
        }
        85% {
            -webkit-transform: scale(1.1);
        }
        100% {
            -webkit-transform: scale(1);
        }
    }
    @keyframes click {
        0% {
            -webkit-transform: scale(1);
            transform: scale(1);
        }
        80% {
            -webkit-transform: scale(1);
            transform: scale(1);
        }
        85% {
            -webkit-transform: scale(1.1);
            transform: scale(1.1);
        }
        100% {
            -webkit-transform: scale(1);
            transform: scale(1);
        }
    }
    @-webkit-keyframes click2 {
        0% {
            -webkit-transform: scale(1);
        }
        80% {
            -webkit-transform: scale(1);
        }
        85% {
            -webkit-transform: scale(1);
        }
        100% {
            -webkit-transform: scale(1);
        }
    }
    @keyframes click2 {
        0% {
            -webkit-transform: scale(1);
            transform: scale(1);
        }
        80% {
            -webkit-transform: scale(1);
            transform: scale(1);
        }
        85% {
            -webkit-transform: scale(1);
            transform: scale(1);
        }
        100% {
            -webkit-transform: scale(1);
            transform: scale(1);
        }
    }
    #ONLINESHOP .container div a:hover img {
        opacity: 1;
    }
}

/*--------------------------------
サイボク園内
--------------------------------*/
#PARK .container h2 {
    color: #542100;
}

#PARK .container ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

#PARK .container ul li {
    width: 49%;
    -ms-flex: 0 0 49%;
    -webkit-box-flex: 0;
    flex: 0 0 49%;
}

@media only screen and (max-width: 812px) {
    #PARK .container ul {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
    #PARK .container ul li {
        width: 100% !important;
    }
    #PARK .container ul li + li {
        margin: 1em 0 0 0 !important;
    }
}

/*--------------------------------
お近くのサイボク
--------------------------------*/
#SHOP .container h2 {
    color: #542100;
}

#SHOP .container ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

#SHOP .container ul li:nth-of-type(n+3) {
    margin-top: 20px;
}

#SHOP .container ul li.img-banner {
    width: 49%;
    -ms-flex: 0 0 49%;
    -webkit-box-flex: 0;
    flex: 0 0 49%;
}

/*
#SHOP .container ul li.text-banner {
    width: 23.5%;
    -ms-flex: 0 0 23.5%;
    -webkit-box-flex: 0;
    flex: 0 0 23.5%;
}
*/

#SHOP .container ul li.text-banner {
    width: 49%;
    -ms-flex: 0 0 49%;
    -webkit-box-flex: 0;
    flex: 0 0 49%;
}

#SHOP .container ul li.text-banner a {
    height: 100%;
    padding-top: 10%;
    padding-bottom: 10%;
}

@media only screen and (max-width: 812px) {
    #SHOP .container ul {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
    #SHOP .container ul li {
        width: 100% !important;
    }
    #SHOP .container ul li + li {
        margin: 1em 0 0 0 !important;
    }
    
    #SHOP .container ul li.text-banner a {
        padding:0;
    }
}

/*--------------------------------
みなさまの声をお聞かせください
--------------------------------*/
#VOICE .container {
    position: relative;
    text-align: center;
}

#VOICE .container strong {
    display: block;
    width: 60%;
    font-size: 3.0rem;
    color: #bb0813;
    text-align: center;
    margin: 0 auto 0.8em;
}

#VOICE .container p {
    display: block;
    width: 60%;
    color: #bb0813;
    text-align: center;
    font-size: 1.8rem;
    margin: 0 auto;
    position: relative;
}

#VOICE .container p::before {
    display: block;
    content: "";
    width: 80px;
    height: 120px;
    background: url(../images/voice_left.svg) no-repeat center center/contain;
    position: absolute;
    top: 0;
    right: 100%;
}

#VOICE .container p::after {
    display: block;
    content: "";
    width: 80px;
    height: 120px;
    background: url(../images/voice_right.svg) no-repeat center center/contain;
    position: absolute;
    top: 0;
    left: 100%;
}

#VOICE .container .link_btn {
    margin-top: 5em;
}

#VOICE .container .ton1 {
    width: 70px;
    position: absolute;
    bottom: 10px;
    left: 5%;
}

#VOICE .container .ton2 {
    width: 70px;
    position: absolute;
    bottom: 40px;
    right: 9%;
}

#VOICE .container .ton3 {
    width: 70px;
    position: absolute;
    bottom: 10px;
    right: 0%;
}

#VOICE .container .ton1 img,
#VOICE .container .ton2 img,
#VOICE .container .ton3 img {
    width: 100%;
    -webkit-transition: 0.4s;
    transition: 0.4s;
}

#VOICE .container .ton1 img:hover,
#VOICE .container .ton2 img:hover,
#VOICE .container .ton3 img:hover {
    -webkit-transform: translate(0, -10%);
    transform: translate(0, -10%);
    /* GPU acceleration */
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    will-change: opacity, transform;
}

@media only screen and (max-width: 812px) {
    #VOICE .container {
        position: relative;
    }
    #VOICE .container strong {
        width: 100%;
        font-size: 2.0rem;
        margin: 0 auto 0.8em;
    }
    #VOICE .container p {
        width: 70%;
        font-size: 1.5rem;
        text-align: left;
    }
    #VOICE .container p::before {
        width: 40px;
        height: 60px;
        top: 30%;
        right: 105%;
    }
    #VOICE .container p::after {
        width: 40px;
        height: 60px;
        top: 30%;
        left: 105%;
    }
    #VOICE .container .link_btn {
        margin-top: 3em;
        margin-bottom: 2em;
    }
    #VOICE .container .ton1 {
        display: inline-block;
        vertical-align: top;
        width: 50px;
        position: static;
        margin: 50px 15px 0 0;
    }
    #VOICE .container .ton2 {
        display: inline-block;
        vertical-align: top;
        width: 50px;
        position: static;
        margin: 0 15px;
    }
    #VOICE .container .ton3 {
        display: inline-block;
        vertical-align: top;
        width: 50px;
        position: static;
        margin: 50px 0 0 15px;
    }
    #VOICE .container .ton1 img:hover,
    #VOICE .container .ton2 img:hover,
    #VOICE .container .ton3 img:hover {
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
    }
}

/*--------------------------------
Meatpia Life!
--------------------------------*/
/*---- PC ----*/
#MEATPIALIFE .container h2 {
    display: block;
    width: 60%;
    margin: 0 auto 0.8em;
}

#MEATPIALIFE .container > p {
    display: block;
    width: 60%;
    color: #bb0813;
    text-align: center;
    font-size: 1.8rem;
    margin: 0 auto;
    position: relative;
}

#MEATPIALIFE .container .slide section {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/*---- SP ----*/
@media only screen and (max-width: 812px) {
    #MEATPIALIFE .container h2 {
        width: 80%;
        margin: 0 auto 1em;
    }
    #MEATPIALIFE .container > p {
        width: 90%;
        font-size: 1.5rem;
    }
    #MEATPIALIFE .slide {
        margin: 40px auto;
    }
    #MEATPIALIFE .slide section {
        margin: 0 20px;
    }
    #MEATPIALIFE .slide section a .postTitle {
        width: 100%;
        margin: 20px auto 0;
    }
    #MEATPIALIFE .slide section .postInfo {
        width: 100%;
    }
    #MEATPIALIFE .slide section .postInfo em {
        font-size: 1.3rem;
    }
    /*
    #MEATPIALIFE .slide li .postInfo em a:link,
    #MEATPIALIFE .slide li .postInfo em a:visited	{ color:#444; }
    #MEATPIALIFE .slide li .postInfo em a:hover,
    #MEATPIALIFE .slide li .postInfo em a:active	{ color:#444; }*/
}

/*

#MEATPIALIFE {

}

#MEATPIALIFE .container {

}

#MEATPIALIFE .container h2 {
display: block;
width: 60%;
margin: 0 auto 0.8em;
}

#MEATPIALIFE .container p {
display: block;
width: 60%;
color: #bb0813;
text-align: center;
font-size: 1.8rem;
margin: 0 auto;
position: relative;
}

#MEATPIALIFE .slide {
margin: 60px auto;
}

#MEATPIALIFE .slide .slidePrev {
top: calc(50% - 18px);
}

#MEATPIALIFE .slide .slideNext {
top: calc(50% - 18px);
}

#MEATPIALIFE .slide .slidePrev svg,
#MEATPIALIFE .slide .slideNext svg {
fill:#bb0813;
}

#MEATPIALIFE .slide .slidePrev:hover svg,
#MEATPIALIFE .slide .slideNext:hover svg {
fill:#eb343f;
}

#MEATPIALIFE .slide li {
margin: 0 20px;
}

#MEATPIALIFE .slide li a {
display: block;
cursor: pointer;
}

#MEATPIALIFE .slide li a .postImg {
-webkit-border-radius: 50%;
border-radius: 50%;
overflow: hidden;
position: relative;
z-index: 1;
}

#MEATPIALIFE .slide li a .postImg img {
width: 100%;
height: auto;
}

#MEATPIALIFE .slide li a:hover .postImg img {
-webkit-transform: scale(1.05);
transform: scale(1.05);
}

#MEATPIALIFE .slide li a .postTitle {
width: 90%;
margin: 20px auto 0;
text-align: left;
}

#MEATPIALIFE .slide li .postInfo {
width: 90%;
margin: 20px auto 0;
text-align: center;
}

#MEATPIALIFE .slide li .postInfo em {
display: inline-block;
font-size: 1.4rem;
font-weight: normal;
margin: 0 5px;
border: 1px solid #444;
padding: 1px 10px;
}

#MEATPIALIFE .slide li .postInfo em a:link,
#MEATPIALIFE .slide li .postInfo em a:visited	{ color:#444; }
#MEATPIALIFE .slide li .postInfo em a:hover,
#MEATPIALIFE .slide li .postInfo em a:active	{ color:#666; }

#MEATPIALIFE .slide li .postInfo a::before {
content: "# ";
}

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


#MEATPIALIFE .container h2 {
width: 80%;
margin: 0 auto 1em;
}

#MEATPIALIFE .container p {
width: 90%;
font-size: 1.5rem;
}

#MEATPIALIFE .slide {
margin: 40px auto;
}

#MEATPIALIFE .slide .slidePrev,
#MEATPIALIFE .slide .slideNext {
width:30px;
height:30px;
}

#MEATPIALIFE .slide .slidePrev {
top: auto;
bottom: 30%;
}

#MEATPIALIFE .slide .slideNext {
top: auto;
bottom: 30%;
}

#MEATPIALIFE .slide .slidePrev svg,
#MEATPIALIFE .slide .slideNext svg {
width:30px;
height:30px;
}

#MEATPIALIFE .slide .slidePrev:hover svg,
#MEATPIALIFE .slide .slideNext:hover svg {
fill:#bb0813;
}

#MEATPIALIFE .slide li {
margin: 0 20px;
}

#MEATPIALIFE .slide li a .postTitle {
width: 100%;
margin: 20px auto 0;
}

#MEATPIALIFE .slide li .postInfo {
width: 100%;
}

#MEATPIALIFE .slide li .postInfo em {
font-size: 1.3rem;
}

#MEATPIALIFE .slide li .postInfo em a:link,
#MEATPIALIFE .slide li .postInfo em a:visited	{ color:#444; }
#MEATPIALIFE .slide li .postInfo em a:hover,
#MEATPIALIFE .slide li .postInfo em a:active	{ color:#444; }

}
*/
/*--------------------------------
会社情報
--------------------------------*/
#COMPANY {
    padding-bottom: 180px;
}

#COMPANY .container ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

#COMPANY .container ul li {
    width: 23%;
    -ms-flex: 0 0 23%;
    -webkit-box-flex: 0;
    flex: 0 0 23%;
}

@media only screen and (max-width: 812px) {
    #COMPANY {
        padding-bottom: 40px;
    }
    #COMPANY .container ul {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
    #COMPANY .container ul li {
        width: 100% !important;
    }
    #COMPANY .container ul li + li {
        margin: 1em 0 0 0 !important;
    }
}
/*# sourceMappingURL=../maps/css/style.css.map */
