a,abbr,acronym,address,applet,big,blockquote,body,caption,cite,code,dd,del,dfn,div,dl,dt,em,fieldset,font,form,h1,h2,h3,h4,h5,h6,html,iframe,img,ins,kbd,label,legend,li,object,ol,p,pre,q,s,samp,small,span,strike,strong,sub,sup,table,tbody,td,tfoot,th,thead,tr,tt,ul,var {
    margin: 0;
    padding: 0;
    border: 0;
    vertical-align: baseline;
    font-family: inherit;
    font-style: inherit;
    font-weight: inherit
}

html {
    font-size: 80%;
    -webkit-text-size-adjust: none
}

img {
    vertical-align: text-bottom;
    -ms-interpolation-mode: bicubic
}

a {
    -webkit-tap-highlight-color: rgba(0,0,0,0);
    text-decoration: none
}

strong {
    font-weight: 700
}

ol,ul {
    list-style: none
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

caption,td,th {
    font-weight: 400;
    text-align: left;
    vertical-align: top
}

blockquote,q {
    quotes: "" ""
}

blockquote:after,blockquote:before,q:after,q:before {
    content: ""
}

a:focus {
    overflow: hidden
}

option {
    padding-right: 10px
}

header,article,aside,section,footer,nav,menu,details,hgroup,summary {
    display: block
}

@font-face {
    font-family: "icomoon";
    src: url("../../media/fonts/icomoon/icomoon.eot?xdj10x");
    src: url("../../media/fonts/icomoon/icomoon.eot?xdj10x#iefix") format("embedded-opentype"),url("../../media/fonts/icomoon/icomoon.ttf?xdj10x") format("truetype"),url("../../media/fonts/icomoon/icomoon.woff?xdj10x") format("woff"),url("../../media/fonts/icomoon/icomoon.svg?xdj10x#icomoon") format("svg");
    font-weight: normal;
    font-style: normal;
    font-display: swap
}

[class^=icon-],[class*=" icon-"] {
    font-family: "icomoon" !important;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.icon-Check:before {
    content: ""
}

.icon-Attention:before {
    content: ""
}

.icon-Car:before {
    content: ""
}

.icon-Enquete:before {
    content: ""
}

.icon-Factory:before {
    content: ""
}

.icon-Mechanic:before {
    content: ""
}

.icon-QA:before {
    content: ""
}

.icon-Sheet:before {
    content: ""
}

.icon-Time:before {
    content: ""
}

.icon-Wallet:before {
    content: ""
}

.icon-iPhone:before {
    content: ""
}

.icon-Call:before {
    content: ""
}

.icon-LapTop:before {
    content: ""
}

.icon-LINE:before {
    content: ""
}

.icon-Ameba:before {
    content: ""
}

.icon-Back:before {
    content: ""
}

.icon-Female:before {
    content: ""
}

.icon-Link:before {
    content: ""
}

.icon-Menu:before {
    content: ""
}

.icon-News:before {
    content: ""
}

.icon-Shop:before {
    content: ""
}

.icon-Booking:before {
    content: ""
}

.icon-Gallery:before {
    content: ""
}

.icon-Facebook:before {
    content: ""
}

.icon-Instagram:before {
    content: ""
}

.icon-Twitter:before {
    content: ""
}

img.obl,video.obl {
    width: auto;
    height: 100%
}

img.ver,video.ver {
    width: 100%;
    height: auto
}

img.load,video.load {
    animation: ImgFade 1s ease 1 normal
}

a {
    color: #c10000
}

@keyframes ImgFade {
    0% {
        opacity: 0
    }

    100% {
        opacity: 1
    }
}

body {
    width: 100%;
    font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","MS PGothic",sans-serif;
    font-size: 1.2rem;
    line-height: 200%
}

.visual--sub {
    width: 100%;
    height: 300px;
    position: relative;
    overflow: hidden
}

.visual--sub__block {
    position: absolute;
    display: block;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    max-width: 768px
}

.visual--sub__block h2 {
    display: block;
    width: 100%;
    padding: 4rem 2rem;
    box-sizing: border-box;
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    line-height: 140%;
    color: #fff;
    text-shadow: 1px 1px 3px rgba(0,0,0,.5)
}

@media screen and (min-width: 400px) {
    .visual--sub__block h2 {
        font-size:6vw
    }
}

@media screen and (min-width: 583.3333333333px) {
    .visual--sub__block h2 {
        font-size:35px
    }
}

@media screen and (min-width: 769px)and (min-height: 769px) {
    .visual--sub__block h2 {
        font-size:240%
    }
}

.visual--sub__block h2 span {
    display: block
}

.visual--sub__block h2 span.icon {
    font-size: 6rem;
    margin-bottom: .5rem
}

.visual--sub__block h2 span.en {
    font-size: .9rem
}

.visual--sub:before {
    content: "";
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0);
    background-image: radial-gradient(rgba(0, 0, 0, 0.2) 30%, transparent 0),radial-gradient(rgba(0, 0, 0, 0.2) 30%, transparent 0);
    background-position: 0 0,2px 2px;
    background-size: 4px 4px;
    z-index: 0
}

.visual--sub img {
    position: absolute;
    display: block;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: -1
}

.contact__box {
    text-align: center
}

.contact__box__title {
    font-weight: bold
}

.contact__box__flex {
    display: flex;
    flex-wrap: wrap
}

.contact__box__flex .web,.contact__box__flex .tel {
    position: relative;
    width: calc(50% - .5rem)
}

.contact__box__flex .web:after,.contact__box__flex .tel:after {
    content: "";
    display: block;
    position: absolute;
    top: 2px;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 1rem;
    background-color: #000;
    box-sizing: border-box;
    z-index: 0;
    transition: .2s ease all
}

.contact__box__flex .web:hover:after,.contact__box__flex .tel:hover:after {
    top: 2px;
    transition: .2s ease all
}

.contact__box__flex .web a,.contact__box__flex .tel a {
    display: block;
    position: relative;
    z-index: 1;
    width: 100%;
    background-color: #29abe2;
    margin-top: -2px;
    margin-bottom: 2px;
    padding: 1rem 1rem .5rem;
    box-sizing: border-box;
    text-align: center;
    color: #000;
    font-weight: bold;
    border-radius: 1rem;
    border: 2px solid #000;
    transition: .2s ease all
}

.contact__box__flex .web a:hover,.contact__box__flex .tel a:hover {
    margin-top: 2px;
    margin-bottom: -2px;
    transition: .2s ease all;
    background-color: #56bde8
}

.contact__box__flex .web a:before,.contact__box__flex .tel a:before {
    font-family: icomoon;
    display: block;
    font-size: 3rem;
    margin-bottom: .5rem;
    color: #fff;
    font-weight: normal
}

.contact__box__flex .web a:before {
    content: ""
}

.contact__box__flex .tel {
    margin-left: 1rem
}

.contact__box__flex .tel a:before {
    content: ""
}

.contact__box__flex--max .web {
    position: relative
}

.contact__box__flex--max .web:after {
    content: "";
    display: block;
    position: absolute;
    top: 2px;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 1rem;
    background-color: #000;
    z-index: 0;
    transition: .2s ease all
}

.contact__box__flex--max .web:hover:after {
    top: 0;
    transition: .2s ease all
}

.contact__box__flex--max .web a {
    display: block;
    position: relative;
    z-index: 1;
    width: 100%;
    background-color: #29abe2;
    margin-top: .5rem;
    margin-bottom: calc(.5rem + 2px);
    padding: 1rem;
    box-sizing: border-box;
    color: #000;
    font-size: 2rem;
    border-radius: 1rem;
    border: 2px solid #000;
    transition: .2s ease all
}

@media(max-height: 768px) {
    .contact__box__flex--max .web a {
        padding:.5rem;
        font-size: 1.5rem
    }
}

.contact__box__flex--max .web a:before {
    font-family: icomoon;
    content: "";
    display: inline-block;
    font-size: 3rem;
    margin-bottom: .5rem;
    color: #fff;
    font-weight: normal;
    vertical-align: middle;
    margin-right: .5rem
}

@media(max-height: 768px) {
    .contact__box__flex--max .web a:before {
        font-size:2rem
    }
}

.contact__box__flex--max .web a:hover {
    margin-top: calc(.5rem + 2px);
    margin-bottom: .5rem;
    transition: .2s ease all;
    background-color: #56bde8
}

.contact__box__flex--max .tel span {
    display: inline-block
}

.contact__box__shop {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center
}

.contact__box__shop__name {
    width: 100%;
    font-size: 1.8rem;
    font-weight: bold
}

.contact__box__shop__info {
    width: 100%
}

.section {
    position: relative;
    z-index: 1;
    background-color: #fff;
    box-sizing: border-box;
    overflow: hidden
}

@media screen and (max-width: 768px) {
    .section {
        margin-top:0
    }
}

.section h2 {
    width: 100%;
    padding: 4rem 2rem;
    box-sizing: border-box;
    text-align: center;
    font-size: 1.8rem;
    line-height: 100%
}

.section h2 span {
    display: block
}

.section h2 span.en {
    font-size: .9rem;
    color: #c10000
}

.section__contents {
    max-width: 980px;
    padding: 0 1rem;
    box-sizing: border-box;
    margin: 0 auto
}

.section__contents__block__element .title {
    padding: 2rem 0
}

.section__contents__block__element .title__icon {
    display: inline-block !important;
    position: relative;
    padding-left: 10%;
    margin-left: 50%;
    transform: translateX(-50%)
}

@media screen and (max-width: 768px) {
    .section__contents__block__element .title__icon {
        padding-left:15%
    }
}

@media screen and (max-width: 640px) {
    .section__contents__block__element .title__icon {
        padding-left:20%
    }
}

.section__contents__block__element .title__icon span {
    display: block;
    word-break: keep-all;
    line-break: strict;
    word-wrap: break-word;
    overflow-wrap: break-word
}

.section__contents__block__element .title__icon .icon {
    position: absolute;
    top: 46%;
    left: 0;
    font-size: 60px;
    color: #fc0;
    transform: translateY(-50%)
}

@media screen and (min-width: 500px) {
    .section__contents__block__element .title__icon .icon {
        font-size:12vw
    }
}

@media screen and (min-width: 666.6666666667px) {
    .section__contents__block__element .title__icon .icon {
        font-size:80px
    }
}

@media screen and (min-width: 769px)and (min-height: 769px) {
    .section__contents__block__element .title__icon .icon {
        top:45%
    }
}

.section__contents__block__element .title__icon .icon--Sheet:before {
    font-family: icomoon;
    content: ""
}

.section__contents__block__element ul.term li {
    padding-left: 1.3rem;
    position: relative;
    line-height: 140%
}

.section__contents__block__element ul.term li:before {
    content: "※";
    position: absolute;
    top: 0;
    left: 0
}

.section__contents__block__element ul.attention {
    counter-reset: Number
}

.section__contents__block__element ul.attention li {
    padding-left: 2.7rem;
    position: relative;
    line-height: 140%
}

.section__contents__block__element ul.attention li:before {
    width: 2.5rem;
    text-align: right;
    counter-increment: Number;
    content: counter(Number) ".";
    position: absolute;
    top: 0;
    left: 0
}

.section__contents__block__element ul.attention li+li {
    margin-top: .5rem
}

.section__contents+.section__contents {
    margin-top: 2.4rem
}

.section.reservation {
    background-color: #fc0;
    padding: 1rem 0 2rem
}

.section.reservation .section__contents__block__element .contact {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

.section.reservation .section__contents__block__element .contact__box {
    width: calc((100% - 2rem)/2);
    background-color: #fff;
    padding: 1rem;
    box-sizing: border-box;
    border-radius: 1rem;
    text-align: center
}

@media screen and (max-width: 640px) {
    .section.reservation .section__contents__block__element .contact__box {
        width:100%;
        margin-top: 2rem
    }

    .section.reservation .section__contents__block__element .contact__box:first-child {
        margin-top: 0
    }
}

.section.reservation .section__contents__block__element .contact__box.single {
    width: 100%;
    max-width: 640px;
    margin: 0 auto
}

.section.reservation .section__contents__block__element .contact__box__title {
    font-weight: bold
}

.section.reservation .section__contents__block__element .contact__box__flex {
    display: flex;
    flex-wrap: wrap
}

.section.reservation .section__contents__block__element .contact__box__flex .web,.section.reservation .section__contents__block__element .contact__box__flex .tel {
    position: relative;
    width: calc(50% - .5rem)
}

.section.reservation .section__contents__block__element .contact__box__flex .web:after,.section.reservation .section__contents__block__element .contact__box__flex .tel:after {
    content: "";
    display: block;
    position: absolute;
    top: 2px;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 1rem;
    background-color: #000;
    box-sizing: border-box;
    z-index: 0;
    transition: .2s ease all
}

.section.reservation .section__contents__block__element .contact__box__flex .web:hover:after,.section.reservation .section__contents__block__element .contact__box__flex .tel:hover:after {
    top: 2px;
    transition: .2s ease all
}

.section.reservation .section__contents__block__element .contact__box__flex .web a,.section.reservation .section__contents__block__element .contact__box__flex .tel a {
    display: block;
    position: relative;
    z-index: 1;
    width: 100%;
    background-color: #29abe2;
    margin-top: -2px;
    margin-bottom: 2px;
    padding: 1rem 1rem .5rem;
    box-sizing: border-box;
    text-align: center;
    color: #000;
    font-weight: bold;
    border-radius: 1rem;
    border: 2px solid #000;
    transition: .2s ease all
}

.section.reservation .section__contents__block__element .contact__box__flex .web a:hover,.section.reservation .section__contents__block__element .contact__box__flex .tel a:hover {
    margin-top: 2px;
    margin-bottom: -2px;
    transition: .2s ease all;
    background-color: #56bde8
}

.section.reservation .section__contents__block__element .contact__box__flex .web a:before,.section.reservation .section__contents__block__element .contact__box__flex .tel a:before {
    font-family: icomoon;
    display: block;
    font-size: 3rem;
    margin-bottom: .5rem;
    color: #fff;
    font-weight: normal
}

.section.reservation .section__contents__block__element .contact__box__flex .web a:before {
    content: ""
}

.section.reservation .section__contents__block__element .contact__box__flex .tel {
    margin-left: 1rem
}

.section.reservation .section__contents__block__element .contact__box__flex .tel a:before {
    content: ""
}

.section.reservation .section__contents__block__element .contact__box__flex--max .web {
    position: relative
}

.section.reservation .section__contents__block__element .contact__box__flex--max .web:after {
    content: "";
    display: block;
    position: absolute;
    top: 2px;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 1rem;
    background-color: #000;
    z-index: 0;
    transition: .2s ease all
}

.section.reservation .section__contents__block__element .contact__box__flex--max .web:hover:after {
    top: 0;
    transition: .2s ease all
}

.section.reservation .section__contents__block__element .contact__box__flex--max .web a {
    display: block;
    position: relative;
    z-index: 1;
    width: 100%;
    background-color: #29abe2;
    margin-top: 1rem;
    margin-bottom: calc(1rem + 2px);
    padding: 1rem;
    box-sizing: border-box;
    color: #000;
    font-size: 2rem;
    border-radius: 1rem;
    border: 2px solid #000;
    transition: .2s ease all
}

.section.reservation .section__contents__block__element .contact__box__flex--max .web a:before {
    font-family: icomoon;
    content: "";
    display: inline-block;
    font-size: 3rem;
    margin-bottom: .5rem;
    color: #fff;
    font-weight: normal;
    vertical-align: middle;
    margin-right: .5rem
}

.section.reservation .section__contents__block__element .contact__box__flex--max .web a:hover {
    margin-top: calc(1rem + 2px);
    margin-bottom: 1rem;
    transition: .2s ease all;
    background-color: #56bde8
}

.section.reservation .section__contents__block__element .contact__box__flex--max .tel span {
    display: inline-block
}

.v--middle {
    vertical-align: middle;
    display: inline-block
}

.h--center {
    text-align: center
}

.text--center {
    text-align: center
}

.padding__all--sm {
    padding: 1rem
}

.padding__all--md {
    padding: 2rem
}

.padding__all--lg {
    padding: 4rem
}

.padding__vertical--sm {
    padding-top: 1rem;
    padding-bottom: 1rem
}

.padding__vertical--md {
    padding-top: 2rem;
    padding-bottom: 2rem
}

.padding__vertical--lg {
    padding-top: 4rem;
    padding-bottom: 4rem
}

.padding__horizontal--sm {
    padding-left: 1rem;
    padding-right: 1rem
}

.padding__horizontal--md {
    padding-left: 2rem;
    padding-right: 2rem
}

.padding__horizontal--lg {
    padding-left: 4rem;
    padding-right: 4rem
}

.padding__top--sm {
    padding-top: 1rem
}

.padding__top--sm--vw {
    padding-top: .75vw
}

.padding__top--md {
    padding-top: 2rem
}

.padding__top--md--vw {
    padding-top: 1.5vw
}

.padding__top--lg {
    padding-top: 4rem
}

.padding__top--lg--vw {
    padding-top: 3vw
}

.padding__bottom--sm {
    padding-bottom: 1rem
}

.padding__bottom--md {
    padding-bottom: 2rem
}

.padding__bottom--lg {
    padding-bottom: 4rem
}

.padding__left--sm {
    padding-left: 1rem
}

.padding__left--md {
    padding-left: 2rem
}

.padding__left--lg {
    padding-left: 4rem
}

.padding__right--sm {
    padding-right: 1rem
}

.padding__right--md {
    padding-right: 2rem
}

.padding__right--lg {
    padding-right: 4rem
}

.margin__all--xs {
    margin: .5rem
}

.margin__all--sm {
    margin: 1rem
}

.margin__all--md {
    margin: 2rem
}

.margin__all--lg {
    margin: 1rem
}

.margin__vertical--xs {
    margin-top: .5rem;
    margin-bottom: .5rem
}

.margin__vertical--sm {
    margin-top: 1rem;
    margin-bottom: 1rem
}

.margin__vertical--md {
    margin-top: 2rem;
    margin-bottom: 2rem
}

.margin__vertical--lg {
    margin-top: 4rem;
    margin-bottom: 1rem
}

.margin__horizontal--xs {
    margin-left: .5rem;
    margin-right: .5rem
}

.margin__horizontal--sm {
    margin-left: 1rem;
    margin-right: 1rem
}

.margin__horizontal--md {
    margin-left: 2rem;
    margin-right: 2rem
}

.margin__horizontal--lg {
    margin-left: 4rem;
    margin-right: 1rem
}

.margin__top--xs {
    margin-top: .5rem
}

.margin__top--sm {
    margin-top: 1rem
}

.margin__top--md {
    margin-top: 2rem
}

.margin__top--lg {
    margin-top: 4rem
}

.margin__bottom--xs {
    margin-bottom: .5rem
}

.margin__bottom--sm {
    margin-bottom: 1rem
}

.margin__bottom--md {
    margin-bottom: 2rem
}

.margin__bottom--lg {
    margin-bottom: 4rem
}

.margin__left--xs {
    margin-left: .5rem
}

.margin__left--sm {
    margin-left: 1rem
}

.margin__left--md {
    margin-left: 2rem
}

.margin__left--lg {
    margin-left: 4rem
}

.margin__right--xs {
    margin-right: .5rem
}

.margin__right--sm {
    margin-right: 1rem
}

.margin__right--md {
    margin-right: 2rem
}

.margin__right--lg {
    margin-right: 4rem
}

.margin__negative__left--xs {
    margin-left: -0.5rem
}

.margin__negative__left--sm {
    margin-left: -1rem
}

.margin__negative__left--md {
    margin-left: -2rem
}

.margin__negative__left--lg {
    margin-left: -4rem
}

.font--bold {
    font-weight: bold
}

.font--sm {
    font-size: 10px
}

@media screen and (min-width: 500px) {
    .font--sm {
        font-size:2vw
    }
}

@media screen and (min-width: 600px) {
    .font--sm {
        font-size:12px
    }
}

.font--md {
    font-size: 14px
}

@media screen and (min-width: 350px) {
    .font--md {
        font-size:4vw
    }
}

@media screen and (min-width: 400px) {
    .font--md {
        font-size:16px
    }
}

.font--lg {
    font-size: 24px
}

@media screen and (min-width: 400px) {
    .font--lg {
        font-size:6vw
    }
}

@media screen and (min-width: 500px) {
    .font--lg {
        font-size:30px
    }
}

.font--xl {
    font-size: 34px
}

@media screen and (min-width: 425px) {
    .font--xl {
        font-size:8vw
    }
}

@media screen and (min-width: 500px) {
    .font--xl {
        font-size:40px
    }
}

.font--xxl {
    font-size: 50px
}

@media screen and (min-width: 625px) {
    .font--xxl {
        font-size:8vw
    }
}

@media screen and (min-width: 875px) {
    .font--xxl {
        font-size:70px
    }
}

.font--strong {
    font-weight: bold;
    color: red
}

.font--strong.black {
    color: #000
}

.font--border {
    text-decoration: underline
}

.font--border--wavy {
    -webkit-text-decoration: underline wavy #f0c000;
    text-decoration: underline wavy #f0c000
}

.font--skew {
    transform: skewX(-10deg)
}

.mark--starburst {
    display: inline-block;
    position: relative;
    width: 13vw;
    height: 13vw;
    max-width: 70px;
    max-height: 70px;
    margin-right: 2rem;
    background-size: contain;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 600'%3E%3Cpath fill='%23f00' d='M300 29l26.2-29 20.9 33.1 30.8-24 14.8 36.2 34.6-18.2 8.2 38.2 37.2-12 1.5 39.1 38.7-5.3-5.3 38.7 39.1 1.5-12 37.2 38.2 8.2-18.2 34.6 36.2 14.8-24 30.8 33.1 20.9-29 26.2 29 26.2-33.1 20.9 24 30.8-36.2 14.8 18.2 34.6-38.2 8.2 12 37.2-39.1 1.5 5.3 38.7-38.7-5.3-1.5 39.1-37.2-12-8.2 38.2-34.6-18.2-14.8 36.2-30.8-24-20.9 33.1-26.2-29-26.2 29-20.9-33.1-30.8 24-14.8-36.2-34.6 18.2-8.2-38.2-37.2 12-1.5-39.1-38.7 5.3 5.3-38.7-39.1-1.5 12-37.2-38.2-8.2 18.2-34.6-36.2-14.8 24-30.8L0 326.2 29 300 0 273.8l33.1-20.9-24-30.8 36.2-14.8-18.2-34.6 38.2-8.2-12-37.2 39.1-1.5-5.3-38.7 38.7 5.3 1.5-39.1 37.2 12 8.2-38.2 34.6 18.2 14.8-36.2 30.8 24L273.8 0z'/%3E%3C/svg%3E")
}

@media screen and (max-width: 768px) {
    .mark--starburst {
        margin-right:.5rem
    }
}

.mark--starburst>span {
    position: absolute;
    display: block;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center
}

.mark--starburst>span .text {
    display: block;
    width: 140%;
    line-height: 110%;
    font-size: 14px;
    font-weight: bold;
    color: #fff;
    margin-left: -20%
}

@media screen and (min-width: 466.6666666667px) {
    .mark--starburst>span .text {
        font-size:3vw
    }
}

@media screen and (min-width: 666.6666666667px) {
    .mark--starburst>span .text {
        font-size:20px
    }
}

.lh__100 {
    line-height: 100%
}

.lh__120 {
    line-height: 120%
}

.lh__140 {
    line-height: 140%
}

.lh__160 {
    line-height: 160%
}

.lh__180 {
    line-height: 180%
}

.lh__200 {
    line-height: 200%
}

@media all and (-ms-high-contrast: none) {
    *::-ms-backdrop,.price--taxin:before {
        transform: translateX(3.5rem) !important
    }

    *::-ms-backdrop,.price--min:after {
        transform: translateX(6rem) !important
    }

    *::-ms-backdrop,.price--just:after {
        transform: translateX(5.5rem) !important
    }

    *::-ms-backdrop,.time--min:after {
        transform: translateX(3rem) !important
    }
}

.price--min:after {
    display: inline-block;
    text-align: left;
    line-height: 100%;
    content: "日元～";
    font-size: 18px;
    position: absolute;
    bottom: 10%;
    right: 0;
    transform: translateX(calc(100% + 0.5rem))
}

@media screen and (min-width: 600px) {
    .price--min:after {
        font-size:3vw
    }
}

@media screen and (min-width: 1166.6666666667px) {
    .price--min:after {
        font-size:35px
    }
}

.price--min--line {
    position: relative
}

.price--min--line:after {
    display: inline-block;
    text-align: left;
    line-height: 100%;
    content: "日元〜";
    font-size: 16px
}

.price--just:after {
    display: inline-block;
    text-align: left;
    line-height: 100%;
    content: "日元";
    font-size: 18px;
    position: absolute;
    bottom: 10%;
    right: 0;
    transform: translateX(calc(100% + 1rem))
}

@media screen and (min-width: 600px) {
    .price--just:after {
        font-size:3vw
    }
}

@media screen and (min-width: 833.3333333333px) {
    .price--just:after {
        font-size:25px
    }
}

.price--just--line {
    position: relative
}

.price--just--line:after {
    display: inline-block;
    text-align: left;
    line-height: 100%;
    content: "日元";
    padding-right: .5rem;
    font-size: 18px
}

@media screen and (min-width: 600px) {
    .price--just--line:after {
        font-size:3vw
    }
}

@media screen and (min-width: 833.3333333333px) {
    .price--just--line:after {
        font-size:25px
    }
}

.price--compact {
    max-width: 100px;
    display: inline-block;
    vertical-align: middle;
    font-size: 13px;
    line-height: 1.2;
}

.price--compact span {
    display: block
}

.price--comment {
    position: relative;
    margin-bottom: -1.5rem
}

.price--comment span.compact:before {
    content: "轻型车";
    display: block;
    position: absolute;
    font-size: 1.5rem;
    top: -1.5rem;
    left: -0.75rem;
    line-height: 1;
    letter-spacing: 1px
}

.discount-comment {
    display: block;
    width: 11rem;
    position: absolute;
    top: -2.1rem;
    left: 4.5rem;
    font-weight: bold;
    font-size: 11px;
    color: red;
    text-align: left
}

.discount-comment--width {
    max-width: 540px;
    margin: 0 auto
}

.discount-comment--lg {
    color: #fff;
    position: absolute;
    top: -5px;
    left: clamp(13rem,24vw,16rem);
    line-height: 1;
    font-size: clamp(10px,1vw,14px);
    text-shadow: 1px 1px 3px rgba(0,0,0,.5);
    transform: skewX(-5deg)
}

.discount-comment--lg.inConent {
    color: red;
    text-shadow: none;
    left: clamp(14rem,47vw,19.5rem)
}

.time--min {
    position: relative
}

.time--min:before {
    display: inline-block;
    text-align: left;
    line-height: 100%;
    content: "最少";
    font-size: 25px;
    margin-right: .5rem
}

@media screen and (min-width: 833.3333333333px) {
    .time--min:before {
        font-size:3vw
    }
}

@media screen and (min-width: 1166.6666666667px) {
    .time--min:before {
        font-size:35px
    }
}

.time--min:after {
    display: inline-block;
    text-align: left;
    line-height: 100%;
    content: "分钟";
    font-size: 25px;
    position: absolute;
    bottom: 10%;
    right: 0;
    transform: translateX(calc(100% + 0.5rem))
}

@media screen and (min-width: 833.3333333333px) {
    .time--min:after {
        font-size:3vw
    }
}

@media screen and (min-width: 1166.6666666667px) {
    .time--min:after {
        font-size:35px
    }
}

.time--min--line {
    position: relative
}

.time--min--line:before {
    color: #000;
    display: inline-block;
    text-align: left;
    vertical-align: middle;
    content: "最少";
    font-size: 16px;
    margin-right: .5rem
}

.time--min--line:after {
    display: inline-block;
    text-align: left;
    content: "分钟！";
    font-size: 16px
}

#Fukidashi {
    display: block;
    max-width: 680px;
    width: 100%;
    margin: 0 auto
}

#Fukidashi .box {
    position: relative;
    display: block;
    width: 100%;
    padding-top: 26.67%
}

#Fukidashi .line {
    position: absolute;
    fill: rgba(0,0,0,0);
    stroke-width: 3;
    stroke: #fff;
    stroke-linecap: round
}

.display__inline-block {
    display: inline-block
}

.display__block {
    display: block
}

.display__block__max--640 {
    width: 100%;
    max-width: 640px;
    margin: 0 auto
}

.position--relative {
    position: relative
}

.background__dotte {
    background-size: 20px 20px;
    margin: 0 auto;
    background-color: #fff;
    background-image: radial-gradient(#fc0 10%, transparent 15%),radial-gradient(#fc0 10%, transparent 15%);
    background-position: 0 0,10px 10px;
    background-position: 0 0,10px 10px
}

.background__bias {
    background-color: #ffeb99;
    background-image: -webkit-gradient(linear, 0 0, 100% 100%, color-stop(0.25, #fff), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, #fff), color-stop(0.75, #fff), color-stop(0.75, transparent), to(transparent));
    background-size: 14px 14px
}

.background__color--yellow {
    background-color: #fc0
}

.background__color--cream {
    background-color: #ffeb99
}

.border__radius--3rem {
    border-radius: 3rem
}

.round__top {
    border-radius: 1rem
}

.round__top {
    border-radius: 1rem 1rem 0 0
}

.round__bottom {
    border-radius: 0 0 1rem 1rem
}

.maxWidth--768 {
    max-width: 768px;
    margin-left: auto;
    margin-right: auto
}

.maxWidth--640 {
    max-width: 640px;
    margin-left: auto;
    margin-right: auto
}

header {
    height: 9rem
}

@media(max-height: 768px),screen and (max-width: 768px) {
    header {
        height:5rem
    }
}

#overlay {
    display: none
}

@media(max-height: 768px),screen and (max-width: 768px) {
    #overlay {
        display:block;
        visibility: hidden;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        background-color: rgba(255,255,255,.8);
        z-index: 997;
        transition: .3s ease all
    }

    #overlay.open {
        visibility: visible;
        cursor: pointer
    }
}

.header {
    position: fixed;
    z-index: 996;
    width: 100%;
    height: 5rem;
    background-color: #ffe100;
    text-align: left
}

.header__block {
    position: relative;
    max-width: 980px;
    width: 100%;
    height: 100%;
    margin: 0 auto
}

.header__block h1 {
    display: block;
    position: absolute;
    top: 50%;
    left: 1rem;
    transform: translate(0, -50%)
}

.header__block h1 _:lang(x)::-ms-backdrop,.header__block h1 a {
    display: flex !important
}

.header__block h1 _:lang(x)::-ms-backdrop,.header__block h1 span.mb {
    width: 30px
}

.header__block h1 _:lang(x)::-ms-backdrop,.header__block h1 span.pc {
    width: 160px
}

.header__block h1 a {
    display: block;
    height: 2rem;
    font-size: 0
}

.header__block h1 a span {
    vertical-align: middle;
    display: inline-block;
    line-height: 1
}

.header__block h1 a span.mb {
    margin-top: -5px;
    margin-right: .5rem;
    height: 100%
}

.header__block h1 a span.pc {
    margin-top: -5px;
    margin-right: .5rem;
    height: 100%
}

@media(max-height: 768px),screen and (max-width: 768px) {
    .header__block h1 a span.pc {
        display:none
    }
}

@media screen and (max-width: 768px) {
    .header__block h1 a span.shop {
        margin-top:-5px
    }
}

.header__block h1 a span.shop__name {
    line-height: 1;
    margin-right: 1rem;
    font-size: 1.5rem;
    font-weight: bold;
    color: #000
}

@media screen and (max-width: 768px) {
    .header__block h1 a span.shop__name {
        display:block;
        font-size: 1rem
    }
}

@media(max-height: 768px),screen and (max-width: 768px) {
    .header__block h1 a span.shop__name.single {
        font-size:1.3rem
    }
}

.header__block h1 a span svg {
    height: 100%
}

.header__block h1 a span svg .st0 {
    fill: #c10000
}

.header__block__links {
    display: block;
    position: absolute;
    top: 50%;
    right: 1rem;
    transform: translateY(-50%);
    font-size: 1rem
}

@media(max-height: 768px),screen and (max-width: 768px) {
    .header__block__links {
        display:none
    }
}

.header__block__links span+span {
    margin-left: 1rem
}

.header__block__links span+span:before {
    content: "|";
    margin-right: 1rem
}

.header__block__links span a {
    color: #c10000;
    transition: .3s ease color
}

.header__block__links span a:hover {
    color: red
}

.humberger {
    display: none
}

@media(max-height: 768px),screen and (max-width: 768px) {
    .humberger {
        display:block;
        position: fixed;
        width: 30px;
        height: 20px;
        top: calc(2.5rem - 10px);
        right: 1rem;
        cursor: pointer;
        z-index: 999
    }
}

.humberger__point {
    display: block;
    position: absolute;
    width: 100%;
    height: 2px;
    background-color: #000;
    transition: .3s ease all
}

.humberger__point.top {
    top: 0
}

.humberger__point.mid {
    top: calc(50% - 1px)
}

.humberger__point.bot {
    bottom: 0
}

.humberger.open .humberger__point.top {
    top: calc(50% - 1px);
    transform: rotate(45deg)
}

.humberger.open .humberger__point.mid {
    opacity: 0
}

.humberger.open .humberger__point.bot {
    top: calc(50% - 1px);
    bottom: auto;
    transform: rotate(-45deg)
}

.navigation {
    position: fixed;
    top: 5rem;
    left: 0;
    width: 100%;
    height: 4rem;
    text-align: left;
    background-color: #000;
    z-index: 998
}

@media(max-height: 768px),screen and (max-width: 768px) {
    .navigation {
        display:fixed;
        width: 300px;
        height: 100vh;
        background-color: #000;
        top: 0;
        left: auto;
        right: -300px;
        box-sizing: border-box;
        transition: .3s ease all
    }

    .navigation.open {
        right: 0;
        transition: .3s ease all
    }
}

.navigation__title {
    display: none
}

@media(max-height: 768px),screen and (max-width: 768px) {
    .navigation__title {
        display:block;
        font-size: 2rem;
        padding: 1.4rem 1rem;
        background-color: #fc0;
        color: #000;
        border-bottom: 3px solid #fff
    }
}

.navigation__list {
    display: flex;
    flex-wrap: nowrap;
    max-width: 980px;
    width: 100%;
    height: 100%;
    margin: 0 auto
}

@media(max-height: 768px),screen and (max-width: 768px) {
    .navigation__list {
        display:block;
        height: calc(100vh - 4rem);
        overflow: scroll
    }
}

.navigation__list__item {
    width: 20%
}
.navigation__list__item.lang_switch {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-size: 14px;
	font-weight: bold;
	color: #fff;
	letter-spacing: 1px;
	padding: 10px 0 9px 25px;
}
.navigation__list__item.lang_switch a{
	color: #ffe100!important;
	transition: .5s;
}
.navigation__list__item.lang_switch a:hover{
	color: #c10000!important;
}
@media(max-height: 768px),screen and (max-width: 768px) {
    .navigation__list__item {
        width:100%;
        height: auto;
        padding: 0;
        position: relative;
        box-sizing: border-box
    }

    .navigation__list__item:last-child {
        padding-bottom: 8rem
    }

    .navigation__list__item+li {
        border-top: 2px solid rgba(255,255,255,.4)
    }

	.navigation__list__item.lang_switch {
		justify-content: center;
		padding: 10px;
	}
}

.navigation__list__item__link {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    font-size: 1.2rem;
    color: #fff
}

@media screen and (min-width: 769px)and (min-height: 769px) {
    .navigation__list__item__link span {
        position:absolute;
        display: block;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 100%;
        text-align: center
    }
}

@media screen and (min-width: 769px)and (min-height: 769px) {
    .navigation__list__item__link:after {
        content:"";
        display: block;
        position: absolute;
        bottom: 0;
        left: 50%;
        width: 0;
        height: 5px;
        background-color: rgba(255,255,255,0);
        transition: .3s ease all;
        transform: translate(-50%, 0)
    }

    .navigation__list__item__link:hover:after,.navigation__list__item__link.active:after {
        width: 100%;
        background-color: rgba(255,255,255,.4)
    }
}

@media(max-height: 768px),screen and (max-width: 768px) {
    .navigation__list__item__link {
        width:calc(100% - 1rem);
        padding: 1rem
    }
}

@media screen and (min-width: 769px)and (min-height: 769px) {
    .navigation__list__item:hover .navigation__list__item__submenu {
        width:100%;
        height: auto;
        background-color: rgba(193,0,0,.9);
        overflow: visible;
        opacity: 1
    }

    .navigation__list__item:hover .navigation__list__item__submenu__block {
        max-width: 980px;
        width: 100%;
        margin: 0 auto;
        padding: 3rem;
        box-sizing: border-box;
        display: flex;
        flex-wrap: nowrap;
        color: #fff
    }

    .navigation__list__item:hover .navigation__list__item__submenu__block__title {
        font-size: 1.5rem;
        margin-right: 2rem
    }

    .navigation__list__item:hover .navigation__list__item__submenu__block__list {
        border-left: 1px solid #fff;
        padding-left: 2rem
    }

    .navigation__list__item:hover .navigation__list__item__submenu__block__list li+li {
        margin-top: .5rem
    }

    .navigation__list__item:hover .navigation__list__item__submenu__block__list li a {
        color: #fff
    }

    .navigation__list__item:hover .navigation__list__item__submenu__block__list li a:hover {
        text-decoration: underline
    }
}

@media screen and (min-width: 769px)and (min-height: 769px) {
    .navigation__list__item__submenu {
        display:block;
        position: absolute;
        top: 4rem;
        left: 0;
        width: 0;
        height: 0;
        overflow: hidden;
        opacity: 0;
        transition: .3s ease opacity
    }
}

@media(max-height: 768px),screen and (max-width: 768px) {
    .navigation__list__item__submenu {
        width:100%
    }

    .navigation__list__item__submenu__block__title {
        display: none
    }

    .navigation__list__item__submenu__block__list li {
        border-top: 1px dashed rgba(255,255,255,.4)
    }

    .navigation__list__item__submenu__block__list li a {
        display: block;
        padding: 1rem 1rem 1rem 2em;
        background-color: #333;
        color: #fff;
        font-size: 1rem
    }
}

#pagetop {
    display: none;
    width: 6rem;
    height: 6rem;
    border-radius: 50%;
    background-color: #e6b800;
    position: fixed;
    right: 20px;
    z-index: 998;
    cursor: pointer
}

#pagetop:before {
    content: "返回顶部";
    font-size: 1rem;
    display: block;
    position: absolute;
    width: 100%;
    text-align: center;
    top: 50%;
    left: 50%;
    color: #fff;
    transform: translate(-50%, -50%)
}

@keyframes Load {
    0%,80%,100% {
        box-shadow: 0 0;
        height: 2rem
    }

    40% {
        box-shadow: 0 -2rem;
        height: 3rem
    }
}

#loading {
    width: 100%;
    height: 100vh;
    background-color: #fff;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99999
}

#loading svg {
    position: absolute;
    width: 280px;
    top: calc(50% - 40px);
    left: 50%;
    transform: translate(-50%, -50%)
}

#loading svg .st0 {
    fill: red
}

#loading svg .st1 {
    fill: #000
}

#loading #loader {
    background: #ff2828;
    width: .7rem;
    height: 1rem;
    color: #ff2828;
    text-indent: -9999rem;
    margin: 0 auto;
    position: absolute;
    top: calc(50% + 80px);
    left: 50%;
    transform: translate(-50%, -50%);
    animation: Load 1s infinite ease-in-out;
    animation-delay: -0.16s
}

#loading #loader:before,#loading #loader:after {
    position: absolute;
    top: 0;
    content: "";
    background: #ff2828;
    width: .7rem;
    height: 1rem;
    animation: Load 1s infinite ease-in-out
}

#loading #loader:before {
    left: -1rem;
    animation-delay: -0.32s
}

#loading #loader:after {
    left: 1rem
}

footer {
    position: relative;
    z-index: 1;
    width: 100%;
    padding: 1rem 2rem;
    box-sizing: border-box;
    background-color: #c10000;
    color: #fff;
    text-align: center
}

@media screen and (min-width: 769px) {
    footer {
        padding-bottom:240px
    }
}

@media screen and (max-width: 768px) {
    footer {
        padding-bottom:260px
    }
}

@media screen and (max-width: 640px) {
    footer {
        padding-bottom:200px
    }
}

footer .linkMap {
    width: 100%;
    max-width: 620px;
    margin: 0 auto;
    text-align: left;
    display: flex;
    flex-wrap: wrap
}

footer .linkMap__block {
    float: left;
    margin-right: 1.5rem;
    margin-top: 1rem;
    font-size: 1rem
}

footer .linkMap__block a {
    display: block;
    color: #fff;
    line-height: 180%
}

footer .linkMap__block a:hover {
    text-decoration: underline
}

footer .linkMap__block__main {
    font-weight: bold
}

footer .linkMap__block__sub {
    padding: 0 .9rem
}

footer .linkMap__block__sub:nth-child(2) {
    padding-top: .5rem;
    margin-top: .5rem;
    border-top: 1px solid #fff
}

footer .linkMap:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    clear: both
}

footer #pmark {
    max-width: 400px;
    margin: 4rem auto 2rem;
    display: flex;
    flex-wrap: nowrap;
    align-items: center
}

footer #pmark .image {
    width: 50px;
    height: 50px
}

footer #pmark .text {
    width: calc(100% - 50px - 1rem);
    font-size: .9rem;
    text-align: left;
    margin-left: 1rem;
    line-height: 140%
}

footer #copyright {
    font-size: .8rem;
    padding-top: 2rem
}

#footer__fix {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 99;
    box-sizing: border-box;
    padding: 1rem;
    background-color: #ffe100
}

@media screen and (min-width: 769px) {
    #footer__fix {
        padding-top:.5rem
    }
}

#footer__fix .contact {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-content: center
}

#footer__fix .contact__box {
    padding-bottom: 0;
    width: calc(50% - 1rem);
    max-width: 360px
}

#footer__fix .contact__box:nth-child(2n) {
    margin-left: 2rem
}

@media screen and (max-width: 768px) {
    #footer__fix .contact__box__title {
        width:200%;
        transform: scale(0.8) translateX(-30%)
    }
}

#footer__fix .contact__box__flex a {
    line-height: 150%
}

@media screen and (max-width: 768px) {
    #footer__fix .contact__box__flex a span.txt {
        display:block;
        width: 200%;
        transform: scale(0.6) translate(-40%, 40%)
    }
}

#footer__fix .contact.single .contact__box {
    width: 100%
}

@media screen and (min-width: 769px) {
    #footer__fix .contact.single .contact__box {
        display:flex;
        max-width: 980px
    }

    #footer__fix .contact.single .contact__box>div:first-child {
        width: 50%;
        margin: 0 auto
    }

    #footer__fix .contact.single .contact__box>div:nth-child(2) {
        width: 45%;
        margin-left: 5%
    }
}

@media screen and (max-width: 768px) {
    #footer__fix .contact.single .contact__box__flex a:before {
        display:inline-block;
        font-size: 2rem;
        vertical-align: middle;
        margin-top: -0.5rem;
        margin-bottom: 0;
        margin-left: -1rem
    }

    #footer__fix .contact.single .contact__box__flex a span.txt {
        display: inline-block;
        vertical-align: middle;
        width: auto;
        transform: none;
        margin-top: -0.5rem;
        margin-left: .5rem
    }
}

#Privacy .section h2+.section__contents .section__contents__message {
    margin-top: 0
}

#Privacy .section__contents__message {
    margin-top: 4rem
}

#Privacy .section__contents__message__title {
    font-size: 1.8rem;
    margin-bottom: 2rem
}

@media screen and (max-width: 640px) {
    #Privacy .section__contents__message__comment p {
        line-height:140%
    }
}

#Privacy .section__contents__message__comment p+p {
    margin-top: 2rem
}

@media screen and (max-width: 640px) {
    #Privacy .section__contents__message__comment p+p {
        margin-top:1rem
    }
}

#Privacy .section__contents__cover {
    border: 1px solid #c10000;
    box-sizing: border-box
}

#Privacy .section__contents__cover h3 {
    font-size: 2rem;
    text-align: center;
    padding: 1rem;
    border-bottom: 1px solid #c10000;
    background-color: #c10000;
    color: #fff
}

#Privacy .section__contents__cover+.section__contents__cover {
    margin-top: 4rem
}

#Privacy .section__contents__cover__block {
    padding: 2rem
}

#Privacy .section__contents__cover__block h4 {
    font-size: 1.7rem;
    margin-bottom: 1.5rem
}

#Privacy .section__contents__cover__block__data__element {
    line-height: 160%
}

#Privacy .section__contents__cover__block__data__element p.right {
    text-align: right
}

#Privacy .section__contents__cover__block__data__element p.right span {
    display: block
}

#Privacy .section__contents__cover__block__data__element p span {
    display: inline-block
}

#Privacy .section__contents__cover__block__data__element p+p,#Privacy .section__contents__cover__block__data__element p+ul {
    margin-top: 1rem
}

#Privacy .section__contents__cover__block__data__element table {
    max-width: 640px;
    width: 100%;
    margin: 2rem auto 0
}

#Privacy .section__contents__cover__block__data__element table thead tr th {
    background-color: rgba(0,0,0,.3);
    text-align: center;
    padding: .5rem;
    border: 1px solid gray;
    box-sizing: border-box
}

#Privacy .section__contents__cover__block__data__element table tbody tr td {
    padding: .5rem;
    border: 1px solid gray;
    box-sizing: border-box
}

#Privacy .section__contents__cover__block__data__element table tbody tr td:first-child {
    text-align: center
}

#Privacy .section__contents__cover__block__data__element table tbody tr td span {
    font-size: .8rem;
    margin-right: .5rem;
    display: inline-block
}

#Privacy .section__contents__cover__block__data__element+.section__contents__cover__block__data__element {
    border-top: 1px dashed #b3b3b3;
    margin-top: 2rem
}

#Privacy .section__contents__cover__block__data__element__list {
    counter-reset: Num
}

#Privacy .section__contents__cover__block__data__element__list__item {
    position: relative;
    padding-left: 2rem;
    counter-increment: Num
}

#Privacy .section__contents__cover__block__data__element__list__item:before {
    display: block;
    content: counter(Num) ".";
    position: absolute;
    top: 0;
    left: 0
}

#Privacy .section__contents__cover__block__data__element__list__item+li {
    margin-top: 1.5rem
}

#Privacy .section__contents__cover__block__data__element__list__item ul li {
    position: relative;
    padding-left: 1rem
}

#Privacy .section__contents__cover__block__data__element__list__item ul li:before {
    display: block;
    content: "・";
    position: absolute;
    top: 0;
    left: -0.5rem
}

#Privacy .section__contents__cover__block+.section__contents__cover__block {
    margin-top: 1rem;
    padding-top: 2rem;
    border-top: 1px dotted #c10000
}

#Top .section.dropShadow {
    box-shadow: 0px 8px 8px -8px rgba(0,0,0,.6);
    z-index: 2
}

#Top .section.triangle {
    position: relative;
    background-color: #fc0
}

#Top .section.triangle:before {
    content: "";
    display: block;
    background-color: #fc0;
    width: 8vw;
    height: 8vw;
    position: absolute;
    z-index: -2;
    bottom: -4vw;
    left: 50%;
    transform: translateX(-50%) rotate(135deg) skew(15deg, 15deg);
    box-shadow: 0px 0px 8px 0px rgba(0,0,0,.4)
}

@media screen and (min-width: 1024px) {
    #Top .section.triangle:before {
        width:80px;
        height: 80px;
        bottom: -40px
    }
}

#Top .section.triangle:after {
    content: "";
    display: block;
    background-color: #fc0;
    width: 16vw;
    height: 8vw;
    position: absolute;
    z-index: -1;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%)
}

@media screen and (min-width: 1024px) {
    #Top .section.triangle:after {
        width:160px;
        height: 80px
    }
}

#Top .section__contents__block.dropShadow {
    background-color: #fff;
    box-shadow: 0px 3px 9px 3px rgba(0,0,0,.2);
    border-radius: 1rem
}

#Top .section__contents__block h3 {
    border-radius: 3rem
}

#Top .section__contents__block h3 span {
    display: inline-block
}

#Top .section__contents__block__element {
    counter-reset: item
}

#Top .section__contents__block__element--flex {
    display: flex;
    flex-wrap: wrap
}

#Top .section__contents__block__element--flex.single .block {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0
}

#Top .section__contents__block__element--flex.single .block .image {
    display: block;
    position: relative;
    overflow: hidden
}

#Top .section__contents__block__element--flex.single .block .image:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 50%
}

#Top .section__contents__block__element--flex.single .block .image img,#Top .section__contents__block__element--flex.single .block .image video {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

#Top .section__contents__block__element--flex .block {
    width: calc((100% - 2rem)/2);
    background-color: #fff;
    box-sizing: border-box;
    margin-left: 2rem;
    position: relative;
    overflow: hidden;
    margin-top: 4rem
}

@media screen and (min-width: 769px) {
    #Top .section__contents__block__element--flex .block:nth-child(2n+1) {
        margin-left:0
    }

    #Top .section__contents__block__element--flex .block:first-child,#Top .section__contents__block__element--flex .block:nth-child(2) {
        margin-top: 0
    }
}

@media screen and (max-width: 768px) {
    #Top .section__contents__block__element--flex .block {
        width:100%;
        margin-left: 0
    }

    #Top .section__contents__block__element--flex .block:first-child {
        margin-top: 0
    }
}

#Top .section__contents__block__element--flex .block .image {
    display: block;
    position: relative;
    overflow: hidden
}

#Top .section__contents__block__element--flex .block .image:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 60%
}

#Top .section__contents__block__element--flex .block .image img,#Top .section__contents__block__element--flex .block .image video {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

#Top .section__contents__block__element--flex .block .comment p.attention {
    font-size: 80%
}

#Top .section__contents__block__element--flex .block .comment p+p {
    margin-top: 1rem
}

#Top .section__contents__block__element--flex .block a.link {
    display: block;
    width: 100%;
    max-width: 480px;
    margin: 0 auto;
    padding: 1rem;
    background-color: #fc0;
    text-align: center;
    box-sizing: border-box;
    color: #000;
    font-size: 120%;
    font-weight: bold;
    transition: .3s ease all;
    border-radius: 2.5rem;
    border-bottom: 5px solid #997a00
}

#Top .section__contents__block__element--flex .block a.link:hover {
    margin-top: 3px;
    transition: .3s ease all;
    background-color: #ffd633;
    border-bottom: 2px solid #997a00
}

#Top .section__contents__block__element.discount {
    width: calc(100% - 2rem);
    max-width: 768px;
    margin: 0 auto;
    background-color: #fc0;
    border-radius: 1rem;
    box-shadow: 0 3px 3px 3px rgba(0,0,0,.3)
}

#Top .section__contents__block__element.discount .title {
    border-bottom: 5px solid red;
    padding: 2rem;
    line-height: 140%
}

#Top .section__contents__block__element.discount .title span {
    display: inline-block
}

#Top .section__contents__block__element.discount .title .figure {
    position: relative
}

@media screen and (max-width: 768px) {
    #Top .section__contents__block__element.discount .title .figure {
        margin-bottom:1rem;
        padding-bottom: 1rem
    }
}

@media screen and (max-width: 768px) {
    #Top .section__contents__block__element.discount .title .figure:before {
        content:"";
        position: absolute;
        width: calc(100% + 4rem);
        bottom: 0;
        left: -2rem;
        border-bottom: 2px solid red
    }
}

#Top .section__contents__block__element.discount .title .figure__data {
    position: absolute;
    right: -2rem
}

#Top .section__contents__block__element.discount .title .figure__data img {
    width: 100%
}

@media screen and (min-width: 769px) {
    #Top .section__contents__block__element.discount .title .figure__data {
        width:240px;
        bottom: -160%
    }
}

@media screen and (max-width: 768px) {
    #Top .section__contents__block__element.discount .title .figure__data {
        width:220px;
        bottom: 0
    }
}

@media screen and (max-width: 640px) {
    #Top .section__contents__block__element.discount .title .figure__data {
        width:160px
    }
}

#Top .section__contents__block__element.discount .title .price--taxin {
    font-size: 150%;
    vertical-align: bottom
}

#Top .section__contents__block__element.discount .title .price--taxin:before {
    font-size: 100%;
    transform: scale(0.25) translate(120%, -100%)
}

#Top .section__contents__block__element.discount .title .price--taxin:after {
    content: "円";
    display: inline-block;
    transform: scale(0.5) translate(-30%, 30%)
}

#Top .section__contents__block__element.discount .title .font--block {
    font-size: 80%;
    display: inline-block
}

#Top .section__contents__block__element.discount ul.term {
    width: calc(100% - 4rem);
    max-width: 640px;
    margin: 0 auto;
    padding: 2rem 0
}

#Top .section__contents__block__element.discount .category {
    margin: 2rem auto 0;
    width: calc(100% - 2rem);
    max-width: 640px;
    border: 2px solid red;
    border-radius: 1rem;
    background-color: #fff
}

#Top .section__contents__block__element.discount .category .name {
    padding: 2rem 1rem;
    text-align: center;
    background-color: red;
    color: #fc0;
    border-radius: .8rem .8rem 0 0
}

#Top .section__contents__block__element.discount .category .group {
    padding: 1rem;
    text-align: center
}

#Top .section__contents__block__element.discount .category .group__block .price {
    margin-top: .5rem;
    font-size: 150%
}

#Top .section__contents__block__element.discount .category .group__block .price .price--taxin:before {
    transform: scale(0.25) translate(120%, -100%)
}

#Top .section__contents__block__element.discount .category .group__block .text {
    margin-top: .5rem;
    font-size: 150%
}

#Top .section__contents__block__element.discount .category .group__block+.group__block {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px dashed red
}

#Top .section__contents__block__element.information .holiday {
    width: 240px;
    margin: 0 auto
}

#Top .section__contents__block__element.information .holiday svg .st0 {
    fill: red
}

#Top .section__contents__block__element.information .address {
    max-width: 480px;
    box-sizing: border-box;
    margin: 0 auto;
    line-height: 140%;
    padding-top: .5rem;
    margin-top: .5rem
}

@media screen and (min-width: 641px) {
    #Top .section__contents__block__element.information .address {
        position:relative;
        padding-left: 6rem
    }
}

#Top .section__contents__block__element.information .address:before {
    display: block;
    content: "地点";
    font-weight: bold
}

@media screen and (min-width: 641px) {
    #Top .section__contents__block__element.information .address:before {
        position:absolute;
        top: .6rem;
        left: 0
    }
}

#Top .section__contents__block__element.information .address span {
    display: inline-block
}

#Top .section__contents__block__element.information .address span.zip:before {
    content: "〒"
}

#Top .section__contents__block__element.information .open {
    max-width: 480px;
    box-sizing: border-box;
    margin: 0 auto;
    line-height: 140%;
    border-top: 1px dashed #e6e6e6;
    padding-top: .5rem;
    margin-top: .5rem
}

@media screen and (min-width: 641px) {
    #Top .section__contents__block__element.information .open {
        position:relative;
        padding-left: 6rem
    }
}

#Top .section__contents__block__element.information .open:before {
    display: block;
    content: "营业时间";
    font-weight: bold
}

@media screen and (min-width: 641px) {
    #Top .section__contents__block__element.information .open:before {
        position:absolute;
        top: .6rem;
        left: 0
    }
}

#Top .section__contents__block__element.information .close {
    max-width: 480px;
    box-sizing: border-box;
    margin: 0 auto;
    line-height: 140%;
    border-top: 1px dashed #e6e6e6;
    padding-top: .5rem;
    margin-top: .5rem
}

@media screen and (min-width: 641px) {
    #Top .section__contents__block__element.information .close {
        position:relative;
        padding-left: 6rem
    }
}

#Top .section__contents__block__element.information .close:before {
    display: block;
    content: "定期休息日";
    font-weight: bold
}

@media screen and (min-width: 641px) {
    #Top .section__contents__block__element.information .close:before {
        position:absolute;
        top: .6rem;
        left: 0
    }
}

#Top .section__contents__block__element.information .map {
    margin-top: 2rem
}

#Top .section__contents__block__element.information .map iframe {
    width: 100%
}

#Top .section__contents__block__element h3 {
    position: relative
}

#Top .section__contents__block__element h3 .text {
    position: absolute;
    display: block;
    top: 30%;
    left: 50%;
    transform: translate(-50%, -50%);
    line-height: 130%;
    text-align: center;
    width: 100%;
    font-size: 24px
}

@media screen and (min-width: 400px) {
    #Top .section__contents__block__element h3 .text {
        font-size:6vw
    }
}

@media screen and (min-width: 583.3333333333px) {
    #Top .section__contents__block__element h3 .text {
        font-size:35px
    }
}

@media screen and (min-width: 769px)and (min-height: 769px) {
    #Top .section__contents__block__element h3 .text {
        font-size:240%
    }
}

#Top .section__contents__block__element h3 #Fukidashi {
    max-width: 480px;
    width: 100%;
    margin: 0 auto
}

#Top .section__contents__block__element h3 #Fukidashi .line {
    stroke: #000
}

#Top .section__contents__block__element .message p+p {
    margin-top: 1rem
}

#Top .section__contents__block__element .box__label--flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

#Top .section__contents__block__element .box__label--flex__title {
    position: relative
}

@media screen and (min-width: 769px) {
    #Top .section__contents__block__element .box__label--flex__title {
        width:calc(70% - 1rem)
    }
}

@media screen and (max-width: 768px) {
    #Top .section__contents__block__element .box__label--flex__title {
        width:100%
    }
}

#Top .section__contents__block__element .box__label--flex__title .circle {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    background-color: #fc0;
    border-radius: 50%;
    box-sizing: border-box;
    z-index: 2
}

@media screen and (min-width: 641px) {
    #Top .section__contents__block__element .box__label--flex__title .circle {
        width:150px;
        height: 150px;
        border: 4px solid #000
    }
}

@media screen and (max-width: 640px) {
    #Top .section__contents__block__element .box__label--flex__title .circle {
        width:80px;
        height: 80px;
        border: 2px solid #000
    }
}

#Top .section__contents__block__element .box__label--flex__title .circle:before {
    content: "";
    display: block;
    position: absolute;
    top: 10%;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    font-weight: bold;
    text-align: center
}

@media screen and (min-width: 641px) {
    #Top .section__contents__block__element .box__label--flex__title .circle:before {
        font-size:1.5rem
    }
}

@media screen and (max-width: 640px) {
    #Top .section__contents__block__element .box__label--flex__title .circle:before {
        font-size:1rem
    }
}

#Top .section__contents__block__element .box__label--flex__title .circle:after {
    counter-increment: item;
    content: counter(item);
    display: block;
    position: absolute;
    top: 62%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    font-weight: bold;
    text-align: center;
    color: #fff
}

@media screen and (min-width: 641px) {
    #Top .section__contents__block__element .box__label--flex__title .circle:after {
        font-size:5rem
    }
}

@media screen and (max-width: 640px) {
    #Top .section__contents__block__element .box__label--flex__title .circle:after {
        font-size:3rem
    }
}

#Top .section__contents__block__element .box__label--flex__title .circle.reason:before {
    content: "理 由"
}

#Top .section__contents__block__element .box__label--flex__title .circle.point:before {
    content: "ポイント"
}

#Top .section__contents__block__element .box__label--flex__title .circle.merit:before {
    content: "メリット"
}

#Top .section__contents__block__element .box__label--flex__title .text {
    position: absolute;
    display: block;
    top: 50%;
    transform: translateY(-50%);
    box-sizing: border-box;
    background-color: #fff
}

@media screen and (min-width: 641px) {
    #Top .section__contents__block__element .box__label--flex__title .text {
        left:75px;
        width: calc(100% - 75px);
        height: 140px;
        border: 4px solid #000;
        border-radius: 2rem
    }
}

@media screen and (max-width: 640px) {
    #Top .section__contents__block__element .box__label--flex__title .text {
        left:40px;
        width: calc(100% - 40px);
        height: 70px;
        border: 2px solid #000;
        border-radius: 1.5rem
    }
}

#Top .section__contents__block__element .box__label--flex__title .text span {
    display: inline-block;
    line-height: 1
}

#Top .section__contents__block__element .box__label--flex__title .text span.letter {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    font-weight: bold
}

@media screen and (min-width: 641px) {
    #Top .section__contents__block__element .box__label--flex__title .text span.letter {
        left:85px;
        width: calc(100% - 85px - 1rem);
        font-size: 2.5rem
    }
}

@media screen and (max-width: 640px) {
    #Top .section__contents__block__element .box__label--flex__title .text span.letter {
        left:50px;
        width: calc(100% - 50px - .5rem);
        font-size: 1.5rem
    }
}

#Top .section__contents__block__element .box__label--flex__title .text.double {
    background-color: rgba(0,0,0,0);
    border: none
}

#Top .section__contents__block__element .box__label--flex__title .text.double .top {
    display: block;
    position: absolute;
    width: 100%;
    background-color: #000;
    color: #ffe100;
    box-sizing: border-box;
    top: 0;
    left: 0
}

@media screen and (min-width: 641px) {
    #Top .section__contents__block__element .box__label--flex__title .text.double .top {
        height:50px;
        border: 4px solid #000;
        border-radius: 2rem 2rem 0 0
    }
}

@media screen and (max-width: 640px) {
    #Top .section__contents__block__element .box__label--flex__title .text.double .top {
        height:25px;
        border: 2px solid #000;
        border-radius: 1.5rem 1.5rem 0 0
    }
}

#Top .section__contents__block__element .box__label--flex__title .text.double .top span.letter {
    font-weight: normal
}

@media screen and (min-width: 641px) {
    #Top .section__contents__block__element .box__label--flex__title .text.double .top span.letter {
        font-size:1.5rem
    }
}

@media screen and (max-width: 640px) {
    #Top .section__contents__block__element .box__label--flex__title .text.double .top span.letter {
        font-size:.9rem
    }
}

#Top .section__contents__block__element .box__label--flex__title .text.double .bottom {
    display: block;
    position: absolute;
    width: 100%;
    background-color: #fff;
    font-size: 90%;
    box-sizing: border-box;
    left: 0;
    bottom: 0
}

@media screen and (min-width: 641px) {
    #Top .section__contents__block__element .box__label--flex__title .text.double .bottom {
        height:90px;
        border: 4px solid #000;
        border-radius: 0 0 2rem 2rem
    }
}

@media screen and (max-width: 640px) {
    #Top .section__contents__block__element .box__label--flex__title .text.double .bottom {
        height:45px;
        border: 2px solid #000;
        border-radius: 0 0 1.5rem 1.5rem
    }
}

@media screen and (min-width: 641px) {
    #Top .section__contents__block__element .box__label--flex__title .text.double .bottom span.letter {
        font-size:2.3rem
    }
}

@media screen and (max-width: 640px) {
    #Top .section__contents__block__element .box__label--flex__title .text.double .bottom span.letter {
        font-size:1.1rem
    }
}

#Top .section__contents__block__element .box__label--flex__title img {
    width: 100%;
    height: auto
}

@media screen and (min-width: 769px) {
    #Top .section__contents__block__element .box__label--flex__image {
        width:calc(30% - 1rem)
    }
}

@media screen and (max-width: 768px) {
    #Top .section__contents__block__element .box__label--flex__image {
        width:calc(100% - 6rem);
        margin-top: 1rem;
        margin-left: auto;
        margin-right: auto
    }
}

#Top .section__contents__block__element .box__label--flex__image img {
    width: 100%;
    height: auto
}

#Top .section__contents__block__element .box__label__title {
    position: relative
}

#Top .section__contents__block__element .box__label__title .circle {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    background-color: #fc0;
    border-radius: 50%;
    box-sizing: border-box;
    z-index: 2
}

@media screen and (min-width: 641px) {
    #Top .section__contents__block__element .box__label__title .circle {
        width:150px;
        height: 150px;
        border: 4px solid #000
    }
}

@media screen and (max-width: 640px) {
    #Top .section__contents__block__element .box__label__title .circle {
        width:80px;
        height: 80px;
        border: 2px solid #000
    }
}

#Top .section__contents__block__element .box__label__title .circle:before {
    content: "";
    display: block;
    position: absolute;
    top: 10%;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    font-weight: bold;
    text-align: center
}

@media screen and (min-width: 641px) {
    #Top .section__contents__block__element .box__label__title .circle:before {
        font-size:1.5rem
    }
}

@media screen and (max-width: 640px) {
    #Top .section__contents__block__element .box__label__title .circle:before {
        font-size:1rem
    }
}

#Top .section__contents__block__element .box__label__title .circle:after {
    counter-increment: item;
    content: counter(item);
    display: block;
    position: absolute;
    top: 62%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    font-weight: bold;
    text-align: center;
    color: #fff
}

@media screen and (min-width: 641px) {
    #Top .section__contents__block__element .box__label__title .circle:after {
        font-size:5rem
    }
}

@media screen and (max-width: 640px) {
    #Top .section__contents__block__element .box__label__title .circle:after {
        font-size:3rem
    }
}

#Top .section__contents__block__element .box__label__title .circle.reason:before {
    content: "理 由"
}

#Top .section__contents__block__element .box__label__title .circle.point:before {
    content: "ポイント"
}

#Top .section__contents__block__element .box__label__title .circle.merit:before {
    content: "メリット"
}

#Top .section__contents__block__element .box__label__title .text {
    position: absolute;
    display: block;
    top: 50%;
    transform: translateY(-50%);
    box-sizing: border-box;
    background-color: #fff
}

@media screen and (min-width: 641px) {
    #Top .section__contents__block__element .box__label__title .text {
        left:75px;
        width: calc(100% - 75px);
        height: 140px;
        border: 4px solid #000;
        border-radius: 2rem
    }
}

@media screen and (max-width: 640px) {
    #Top .section__contents__block__element .box__label__title .text {
        left:40px;
        width: calc(100% - 40px);
        height: 70px;
        border: 2px solid #000;
        border-radius: 1.5rem
    }
}

#Top .section__contents__block__element .box__label__title .text span {
    display: inline-block;
    line-height: 1
}

#Top .section__contents__block__element .box__label__title .text span.letter {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    font-weight: bold
}

@media screen and (min-width: 641px) {
    #Top .section__contents__block__element .box__label__title .text span.letter {
        left:85px;
        width: calc(100% - 85px - 1rem);
        font-size: 2.5rem
    }
}

@media screen and (max-width: 640px) {
    #Top .section__contents__block__element .box__label__title .text span.letter {
        left:50px;
        width: calc(100% - 50px - .5rem);
        font-size: 1.5rem
    }
}

#Top .section__contents__block__element .box__label__title .text.double {
    background-color: rgba(0,0,0,0)
}

#Top .section__contents__block__element .box__label__title .text.double .top {
    background-color: #000;
    color: #ffe100;
    font-size: 80%
}

@media screen and (min-width: 641px) {
    #Top .section__contents__block__element .box__label__title .text.double .top {
        left:75px;
        width: calc(100% - 75px);
        height: 65px;
        border: 4px solid #000;
        border-radius: 2rem 2rem 0 0
    }
}

@media screen and (max-width: 640px) {
    #Top .section__contents__block__element .box__label__title .text.double .top {
        left:40px;
        width: calc(100% - 40px);
        height: 30px;
        border: 2px solid #000;
        border-radius: 1.5rem
    }
}

#Top .section__contents__block__element .box__label__title .text.double .bottom {
    background-color: #fff
}

@media screen and (min-width: 641px) {
    #Top .section__contents__block__element .box__label__title .text.double .bottom {
        left:75px;
        width: calc(100% - 75px);
        height: 75px;
        border: 4px solid #000;
        border-radius: 2rem 2rem 0 0
    }
}

@media screen and (max-width: 640px) {
    #Top .section__contents__block__element .box__label__title .text.double .bottom {
        left:40px;
        width: calc(100% - 40px);
        height: 40px;
        border: 2px solid #000;
        border-radius: 1.5rem
    }
}

#Top .section__contents__block__element .box__label__title img {
    width: 100%;
    height: auto
}

#Top .section__contents__block__element .box__text {
    line-height: 160%;
    padding: 1rem
}

#Top .section__contents__block__element .box__link {
    position: relative;
    text-align: center;
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
    transition: .2s ease all
}

#Top .section__contents__block__element .box__link:after {
    content: "";
    display: block;
    position: absolute;
    top: 2px;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 1rem;
    background-color: #000;
    z-index: 0;
    transition: .2s ease all
}

#Top .section__contents__block__element .box__link:hover {
    padding-top: 2px
}

#Top .section__contents__block__element .box__link:hover:after {
    height: calc(100% - 2px);
    transition: .2s ease all
}

#Top .section__contents__block__element .box__link a {
    display: block;
    position: relative;
    z-index: 1;
    width: 100%;
    background-color: #fff;
    margin-top: 0;
    margin-bottom: 2px;
    padding: 1rem;
    box-sizing: border-box;
    color: #000;
    font-size: 2rem;
    border-radius: 1rem;
    border: 2px solid #000;
    transition: .2s ease all
}

#Top .section__contents__block__element .box__link a:hover {
    margin-top: 0;
    margin-bottom: 0;
    transition: .2s ease all;
    background-color: #f2f2f2
}

#Top .section__contents__block__element.triangle {
    position: relative
}

#Top .section__contents__block__element.triangle:before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-top: 4rem solid #fff;
    border-bottom: none;
    border-left: 6rem solid rgba(0,0,0,0);
    border-right: 6rem solid rgba(0,0,0,0);
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%)
}

#Top .section__contents__block .image {
    padding: 0;
    margin: 0;
    font-size: 0;
    line-height: 0
}

#Top .section__contents__block .image img {
    width: 100%;
    height: auto
}

#Top .section .comic {
    background-color: #fff;
    padding: 1rem;
    border-radius: 1rem
}

#Top .section .comic.yellow {
    background-color: #ffe100
}

#Top .section .comic .intro {
    line-height: 0;
    font-size: 0
}

#Top .section .comic .intro img {
    width: 100%;
    height: auto
}

#Top .section .comic .intro .close {
    opacity: 1;
    height: auto
}

#Top .section .comic .intro .open {
    opacity: 0;
    height: 0
}

#Top .section .comic .body {
    width: 100%;
    overflow: hidden;
    transition: .1s ease all
}

#Top .section .comic .body img {
    padding-top: 2rem;
    width: 100%;
    height: auto
}

@media screen and (min-width: 641px) {
    #Top .section .comic .body img.pc {
        display:visible
    }
}

@media screen and (max-width: 640px) {
    #Top .section .comic .body img.pc {
        display:none
    }
}

@media screen and (min-width: 641px) {
    #Top .section .comic .body img.sp {
        display:none
    }
}

@media screen and (max-width: 640px) {
    #Top .section .comic .body img.sp {
        display:block;
        width: 280px;
        height: auto;
        margin: 0 auto
    }
}

#Top .section .comic.active .intro .close {
    opacity: 0;
    height: 0
}

#Top .section .comic.active .intro .open {
    opacity: 1;
    height: auto
}

#Price .section h3 {
    position: relative
}

#Price .section h3 .text {
    position: absolute;
    display: block;
    top: 30%;
    left: 50%;
    transform: translate(-50%, -50%);
    line-height: 130%;
    text-align: center;
    width: 100%;
    font-size: 6vw
}

@media screen and (min-width: 769px) {
    #Price .section h3 .text {
        font-size:240%
    }
}

#Price .section.dropShadow {
    box-shadow: 0px 8px 8px -8px rgba(0,0,0,.6);
    z-index: 2
}

#Price .section.triangle {
    position: relative
}

#Price .section.triangle:before {
    content: "";
    display: block;
    background-color: #fff;
    width: 8vw;
    height: 8vw;
    position: absolute;
    z-index: -2;
    bottom: -4vw;
    left: 50%;
    transform: translateX(-50%) rotate(135deg) skew(15deg, 15deg);
    box-shadow: 0px 0px 8px 0px rgba(0,0,0,.4)
}

@media screen and (min-width: 1024px) {
    #Price .section.triangle:before {
        width:80px;
        height: 80px;
        bottom: -40px
    }
}

#Price .section.triangle:after {
    content: "";
    display: block;
    background-color: #fff;
    width: 16vw;
    height: 8vw;
    position: absolute;
    z-index: -1;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%)
}

@media screen and (min-width: 1024px) {
    #Price .section.triangle:after {
        width:160px;
        height: 80px
    }
}

#Price .section ul.box__white--round {
    display: flex;
    flex-wrap: wrap
}

#Price .section ul.box__white--round li {
    display: block;
    width: calc((100% - 4rem)/3 - 1px);
    background-color: #fff;
    border-radius: 1rem;
    padding: 2rem;
    box-sizing: border-box;
    margin-left: 2rem
}

#Price .section ul.box__white--round li:nth-child(3n+1) {
    margin-left: 0
}

@media screen and (max-width: 980px) {
    #Price .section ul.box__white--round li {
        width:100%;
        margin-left: 0;
        margin-top: 2rem
    }

    #Price .section ul.box__white--round li:first-child {
        margin-top: 0
    }
}

#Price .section ul.box__white--round li p {
    line-height: 150%
}

#Price .section ul.box__white--round li p.title {
    font-size: 150%;
    font-weight: bold;
    text-align: center;
    margin-bottom: 2rem
}

#Price .section ul.box__white--round li p.title span {
    display: inline-block
}

#Price .section__contents__block__element--flex {
    display: flex;
    flex-wrap: wrap
}

#Price .section__contents__block__element--flex .block {
    width: calc((100% - 2rem)/2);
    background-color: #fff;
    box-sizing: border-box;
    margin-left: 2rem;
    position: relative;
    overflow: hidden;
    margin-top: 4rem
}

@media screen and (min-width: 769px) {
    #Price .section__contents__block__element--flex .block:nth-child(2n+1) {
        margin-left:0
    }

    #Price .section__contents__block__element--flex .block:first-child,#Price .section__contents__block__element--flex .block:nth-child(2) {
        margin-top: 0
    }
}

@media screen and (max-width: 768px) {
    #Price .section__contents__block__element--flex .block {
        width:100%;
        margin-left: 0
    }

    #Price .section__contents__block__element--flex .block:first-child {
        margin-top: 0
    }
}

#Price .section__contents__block__element--flex .block__title {
    font-size: 0;
    text-align: center
}

#Price .section__contents__block__element--flex .block__title .name {
    display: inline-block;
    font-size: 2rem;
    font-weight: bold;
    margin: .2rem
}

#Price .section__contents__block__element--flex .block__title .class {
    display: inline-block;
    font-size: 1rem;
    margin: .2rem
}

#Price .section__contents__block__element--flex .block__image img {
    width: 100%
}

#Price .section__contents__block__element--flex .block__list {
    word-break: keep-all;
    line-break: strict;
    word-wrap: break-word;
    overflow-wrap: break-word;
    text-align: center;
    margin: .5rem auto;
    min-height: 60px;
    display: flex;
    align-items: center;
    justify-content: center
}

#Price .section__contents__block__element--flex .block__list span {
    display: inline-block
}

#Price .section__contents__block__element--flex .block__list span.red {
    color: red
}

#Price .section__contents__block__element--flex .block__list span.bold {
    font-weight: bold
}

#Price .section__contents__block__element--flex .block__public,#Price .section__contents__block__element--flex .block__inspection,#Price .section__contents__block__element--flex .block__hajimete {
    border: 1px solid
}

#Price .section__contents__block__element--flex .block__public .title,#Price .section__contents__block__element--flex .block__inspection .title,#Price .section__contents__block__element--flex .block__hajimete .title {
    text-align: center;
    font-size: 130%;
    font-weight: bold;
    padding: .5rem
}

#Price .section__contents__block__element--flex .block__public .element,#Price .section__contents__block__element--flex .block__inspection .element,#Price .section__contents__block__element--flex .block__hajimete .element {
    display: flex;
    justify-content: space-between
}

#Price .section__contents__block__element--flex .block__public .element .data:after,#Price .section__contents__block__element--flex .block__inspection .element .data:after,#Price .section__contents__block__element--flex .block__hajimete .element .data:after {
    content: "日元";
    font-size: 80%
}

#Price .section__contents__block__element--flex .block__public ul li.element,#Price .section__contents__block__element--flex .block__inspection ul li.element,#Price .section__contents__block__element--flex .block__hajimete ul li.element {
    padding: .5rem 1rem .25rem
}

#Price .section__contents__block__element--flex .block__public ul li.element+.element,#Price .section__contents__block__element--flex .block__inspection ul li.element+.element,#Price .section__contents__block__element--flex .block__hajimete ul li.element+.element {
    margin-top: .25rem;
    border-top: 1px dashed
}

#Price .section__contents__block__element--flex .block__public .sum,#Price .section__contents__block__element--flex .block__inspection .sum,#Price .section__contents__block__element--flex .block__hajimete .sum {
    margin-top: .25rem;
    padding: 1rem;
    display: flex;
    border-top: 1px solid coral;
    font-weight: bold
}

#Price .section__contents__block__element--flex .block__public .total .element,#Price .section__contents__block__element--flex .block__inspection .total .element,#Price .section__contents__block__element--flex .block__hajimete .total .element {
    font-size: 120%;
    font-weight: bold
}

#Price .section__contents__block__element--flex .block__public {
    border-color: coral
}

#Price .section__contents__block__element--flex .block__public .title {
    background-color: coral;
    color: #fff;
    position: relative
}

#Price .section__contents__block__element--flex .block__public .title a {
    display: block;
    position: absolute;
    top: 50%;
    left: auto;
    right: 1rem;
    transform: translateY(-50%);
    width: 1.5rem;
    height: 1.5rem
}

#Price .section__contents__block__element--flex .block__public .title a:before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 1.5rem;
    height: 1.5rem;
    background-color: #e93f00;
    border-radius: 50%;
    z-index: 0
}

#Price .section__contents__block__element--flex .block__public .title a:after {
    content: "?";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 1rem;
    height: 1rem;
    line-height: 100%;
    font-size: 80%;
    font-weight: normal;
    color: #fff
}

#Price .section__contents__block__element--flex .block__public ul li.element+.element {
    border-top-color: coral
}

#Price .section__contents__block__element--flex .block__public .sum {
    border-top-color: coral
}

#Price .section__contents__block__element--flex .block__inspection {
    border-color: #fc0;
    margin-top: .25rem
}

#Price .section__contents__block__element--flex .block__inspection .title {
    background-color: #fc0;
    color: red;
    position: relative
}

#Price .section__contents__block__element--flex .block__inspection .title:before {
    content: "";
    display: block;
    position: absolute;
    top: 1.2rem;
    left: .4rem;
    width: 60px;
    height: 10px;
    background-image: url(../../../asset/media/image/price/logo_s.png);
    background-repeat: no-repeat;
    background-size: contain
}

#Price .section__contents__block__element--flex .block__inspection .title a {
    display: block;
    position: absolute;
    top: 50%;
    left: auto;
    right: 1rem;
    transform: translateY(-50%);
    width: 1.5rem;
    height: 1.5rem
}

#Price .section__contents__block__element--flex .block__inspection .title a:before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 1.5rem;
    height: 1.5rem;
    background-color: #cca300;
    border-radius: 50%;
    z-index: 0
}

#Price .section__contents__block__element--flex .block__inspection .title a:after {
    content: "?";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 1rem;
    height: 1rem;
    line-height: 100%;
    font-size: 80%;
    font-weight: normal;
    color: #fff
}

#Price .section__contents__block__element--flex .block__inspection ul li.element+.element {
    border-top-color: #fc0
}

#Price .section__contents__block__element--flex .block__inspection .sum {
    border-top-color: #fc0
}

#Price .section__contents__block__element--flex .block__inspection .total {
    background-color: #ffeb99
}

#Price .section__contents__block__element--flex .block__inspection .total .data.font--strong {
    font-size: 150%;
    transform: skewX(-10deg)
}

#Price .section__contents__block__element--flex .block__hajimete {
    border-color: #78bc6e;
    margin-top: .25rem
}

#Price .section__contents__block__element--flex .block__hajimete .title {
    background-color: #78bc6e;
    color: #fff;
    position: relative
}

#Price .section__contents__block__element--flex .block__hajimete .title:before {
    content: "";
    display: block;
    position: absolute;
    top: .3rem;
    left: .4rem;
    width: 60px;
    height: 27.5px;
    background-image: url(../../../asset/media/image/price/logo_hajimete.png);
    background-repeat: no-repeat;
    background-size: contain
}

#Price .section__contents__block__element--flex .block__hajimete .title a {
    display: block;
    position: absolute;
    top: 50%;
    left: auto;
    right: 1rem;
    transform: translateY(-50%);
    width: 1.5rem;
    height: 1.5rem
}

#Price .section__contents__block__element--flex .block__hajimete .title a:before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 1.5rem;
    height: 1.5rem;
    background-color: #47863e;
    border-radius: 50%;
    z-index: 0
}

#Price .section__contents__block__element--flex .block__hajimete .title a:after {
    content: "?";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 1rem;
    height: 1rem;
    line-height: 100%;
    font-size: 80%;
    font-weight: normal;
    color: #fff
}

#Price .section__contents__block__element--flex .block__hajimete ul li.element+.element {
    border-top-color: #78bc6e
}

#Price .section__contents__block__element--flex .block__hajimete .sum {
    border-top-color: #78bc6e;
    margin-top: 0
}

#Price .section__contents__block__element--flex .block__hajimete .total {
    background-color: #d9ecd7
}

#Price .section__contents__block__element--flex .block__hajimete .total .data.font--strong {
    font-size: 150%;
    transform: skewX(-10deg)
}

#Price .section__contents__block__element--flex .block__hajimete .comment p {
    padding: .5rem;
    font-size: 90%;
    line-height: 140%
}

#Price .section__contents__block__element--flex .block__description {
    margin-top: .25rem;
    padding: 1rem;
    line-height: 1.6;
    font-size: 90%;
    background-color: #f5f5f5;
    border-radius: .5rem
}

#Price .section__contents__block__element--flex .block__description span {
    display: inline-block
}

#Price .section__contents__block__element--flex .block__description span.red {
    color: red
}

#Price .section__contents__block__element--flex .block__description span.bold {
    font-weight: bold
}

#Price .section__contents__block__element--flex .block a {
    position: absolute;
    display: block;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    z-index: 4
}

#Price .section__contents__block__element--flex .block .link {
    position: absolute;
    display: block;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    width: 100%;
    padding: 2rem;
    box-sizing: border-box;
    color: #fff;
    font-size: 120%;
    font-weight: bold;
    text-shadow: 1px 1px 1px 1px;
    z-index: 3;
    background-color: rgba(0,0,0,.5)
}

#Price .section__contents__block__element--flex .block .link span {
    display: inline-block
}

#Price .section__contents__block__element--flex .block .image {
    display: block;
    position: relative;
    overflow: hidden;
    z-index: 1
}

#Price .section__contents__block__element--flex .block .image:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 60%
}

#Price .section__contents__block__element--flex .block .image img,#Price .section__contents__block__element--flex .block .image video {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

#Price .section__contents__block__element--flex .block .image img {
    transition: .3s ease all
}

#Price .section__contents__block__element--flex .block:hover .image img {
    transition: .3s ease all;
    transform: scale(1.1) translate(-45%, -45%)
}

#Price .section__contents__block__element .title {
    display: block;
    line-height: 140%
}

#Price .section__contents__block__element .title span {
    display: inline-block
}

#Price .section__contents__block__element .title span.logo {
    display: block;
    width: 200px;
    height: auto;
    margin-left: auto;
    margin-right: auto
}

#Price .section__contents__block__element .title span.logo img {
    width: 100%;
    height: auto
}

#Price .section__contents__block__element .image img {
    width: 100%
}

#Price .section__contents__block__element.discount {
    width: calc(100% - 2rem);
    max-width: 768px;
    margin: 4rem auto;
    background-color: #fff;
    border-radius: 1rem;
    box-shadow: 0 3px 3px 3px rgba(0,0,0,.3)
}

#Price .section__contents__block__element.discount .title {
    border-bottom: 5px solid red;
    padding: 2rem
}

#Price .section__contents__block__element.discount .title span {
    display: inline-block
}

#Price .section__contents__block__element.discount .title .figure {
    position: relative
}

@media screen and (max-width: 768px) {
    #Price .section__contents__block__element.discount .title .figure {
        margin-bottom:1rem;
        padding-bottom: 1rem
    }
}

@media screen and (max-width: 768px) {
    #Price .section__contents__block__element.discount .title .figure:before {
        content:"";
        position: absolute;
        width: calc(100% + 4rem);
        bottom: 0;
        left: -2rem;
        border-bottom: 2px solid red
    }
}

@media screen and (min-width: 641px) {
    #Price .section__contents__block__element.discount .title .figure.adjust {
        padding-top:2rem;
        padding-bottom: 2rem
    }
}

@media screen and (max-width: 768px) {
    #Price .section__contents__block__element.discount .title .figure.adjust:before {
        content:none
    }
}

@media screen and (max-width: 640px) {
    #Price .section__contents__block__element.discount .title .figure.adjust {
        margin-bottom:0;
        padding-bottom: 0
    }
}

@media screen and (min-width: 769px) {
    #Price .section__contents__block__element.discount .title .figure.adjust .figure__data {
        width:240px;
        bottom: -30%
    }
}

@media screen and (max-width: 768px) {
    #Price .section__contents__block__element.discount .title .figure.adjust .figure__data {
        width:220px;
        bottom: -41%
    }
}

@media screen and (max-width: 640px) {
    #Price .section__contents__block__element.discount .title .figure.adjust .figure__data {
        width:160px;
        bottom: -76%
    }
}

#Price .section__contents__block__element.discount .title .figure__data {
    position: absolute;
    right: -2rem
}

#Price .section__contents__block__element.discount .title .figure__data img {
    width: 100%
}

@media screen and (min-width: 769px) {
    #Price .section__contents__block__element.discount .title .figure__data {
        width:240px;
        bottom: -230%
    }
}

@media screen and (max-width: 768px) {
    #Price .section__contents__block__element.discount .title .figure__data {
        width:220px;
        bottom: 0
    }
}

@media screen and (max-width: 640px) {
    #Price .section__contents__block__element.discount .title .figure__data {
        width:140px
    }
}

#Price .section__contents__block__element.discount .title .price--taxin {
    font-size: 150%;
    vertical-align: bottom
}

#Price .section__contents__block__element.discount .title .price--taxin:before {
    font-size: 100%;
    transform: scale(0.25) translate(120%, -100%)
}

#Price .section__contents__block__element.discount .title .price--taxin:after {
    content: "円";
    display: inline-block;
    transform: scale(0.5) translate(-30%, 30%)
}

#Price .section__contents__block__element.discount .title .font--block {
    font-size: 80%;
    display: inline-block
}

#Price .section__contents__block__element.discount ul.term {
    width: calc(100% - 4rem);
    max-width: 640px;
    margin: 0 auto;
    padding: 2rem 0
}

#Price .section__contents__block__element.discount .category {
    margin: 2rem auto 0;
    width: calc(100% - 2rem);
    max-width: 640px;
    border: 2px solid red;
    border-radius: 1rem
}

#Price .section__contents__block__element.discount .category .name {
    padding: 2rem 1rem;
    text-align: center;
    background-color: red;
    color: #fc0;
    border-radius: .8rem .8rem 0 0
}

#Price .section__contents__block__element.discount .category .group {
    padding: 1rem;
    text-align: center
}

#Price .section__contents__block__element.discount .category .group__block .price {
    margin-top: .5rem;
    font-size: 150%
}

#Price .section__contents__block__element.discount .category .group__block .price .price--taxin:before {
    transform: scale(0.25) translate(120%, -100%)
}

#Price .section__contents__block__element.discount .category .group__block .text {
    margin-top: .5rem;
    font-size: 150%
}

#Price .section__contents__block__element.discount .category .group__block+.group__block {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px dashed red
}

#Price .section__contents__block__element .flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

#Price .section__contents__block__element .flex__block {
    width: calc(50% - 1rem)
}

@media screen and (max-width: 640px) {
    #Price .section__contents__block__element .flex__block {
        width:100%;
        margin-top: 2rem
    }

    #Price .section__contents__block__element .flex__block:first-child {
        margin-top: 0
    }
}

#Price .section__contents__block__element .flex__block__title {
    text-align: center;
    padding: .5rem;
    border-radius: 1rem 1rem 0 0;
    color: #fff
}

#Price .section__contents__block__element .flex__block__title.public {
    background-color: coral
}

#Price .section__contents__block__element .flex__block__title.inspection {
    background-color: #fc0;
    color: #c10000
}

#Price .section__contents__block__element .flex__block__element {
    padding: 1rem
}

#Price .section__contents__block__element .flex__block__element__title {
    font-weight: bold
}

#Price .section__contents__block__element .flex__block__element__text {
    line-height: 140%
}

#Price .section__contents__block__element .flex__block__element+.flex__block__element {
    border-top: 1px dashed gray
}

#Shop .section.dropShadow {
    box-shadow: 0px 8px 8px -8px rgba(0,0,0,.6);
    z-index: 2
}

#Shop .section.triangle {
    position: relative
}

#Shop .section.triangle:before {
    content: "";
    display: block;
    background-color: #fff;
    width: 8vw;
    height: 8vw;
    position: absolute;
    z-index: -2;
    bottom: -4vw;
    left: 50%;
    transform: translateX(-50%) rotate(135deg) skew(15deg, 15deg);
    box-shadow: 0px 0px 8px 0px rgba(0,0,0,.4)
}

@media screen and (min-width: 1024px) {
    #Shop .section.triangle:before {
        width:80px;
        height: 80px;
        bottom: -40px
    }
}

#Shop .section.triangle:after {
    content: "";
    display: block;
    background-color: #fff;
    width: 16vw;
    height: 8vw;
    position: absolute;
    z-index: -1;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%)
}

@media screen and (min-width: 1024px) {
    #Shop .section.triangle:after {
        width:160px;
        height: 80px
    }
}

#Shop .section__contents__block h3 {
    border-radius: 3rem
}

#Shop .section__contents__block h3 span {
    display: inline-block
}

#Shop .section__contents__block__element--flex {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem
}

#Shop .section__contents__block__element--flex.gallery .section__contents__block__element--flex__block {
    width: calc((100% - 2rem)/2);
    background-color: #fff;
    box-sizing: border-box;
    position: relative;
    overflow: hidden
}

@media screen and (max-width: 768px) {
    #Shop .section__contents__block__element--flex.gallery .section__contents__block__element--flex__block {
        width:100%
    }
}

#Shop .section__contents__block__element--flex.gallery .section__contents__block__element--flex__block .image {
    width: 100%;
    height: auto;
    aspect-ratio: 5/3
}

#Shop .section__contents__block__element--flex.gallery .section__contents__block__element--flex__block .image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

#Shop .section__contents__block__element--flex.gallery .section__contents__block__element--flex__block .image iframe,#Shop .section__contents__block__element--flex.gallery .section__contents__block__element--flex__block .image video {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

#Shop .section__contents__block__element--flex.gallery .section__contents__block__element--flex__block .image:has(iframe,video) {
    aspect-ratio: 16/9
}

#Shop .section__contents__block__element--flex.gallery .section__contents__block__element--flex__block .description {
    text-align: center
}

#Shop .section__contents__block__element--flex .block {
    width: calc((100% - 2rem)/2);
    background-color: #fff;
    box-sizing: border-box;
    margin-left: 2rem;
    position: relative;
    overflow: hidden;
    margin-top: 4rem
}

@media screen and (min-width: 769px) {
    #Shop .section__contents__block__element--flex .block:nth-child(2n+1) {
        margin-left:0
    }

    #Shop .section__contents__block__element--flex .block:first-child,#Shop .section__contents__block__element--flex .block:nth-child(2) {
        margin-top: 0
    }
}

@media screen and (max-width: 768px) {
    #Shop .section__contents__block__element--flex .block {
        width:100%;
        margin-left: 0
    }

    #Shop .section__contents__block__element--flex .block:first-child {
        margin-top: 0
    }
}

#Shop .section__contents__block__element--flex .block .image {
    display: block;
    position: relative;
    overflow: hidden
}

#Shop .section__contents__block__element--flex .block .image:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 60%
}

#Shop .section__contents__block__element--flex .block .image img,#Shop .section__contents__block__element--flex .block .image video {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

#Shop .section__contents__block__element--flex .block .comment p.attention {
    font-size: 80%
}

#Shop .section__contents__block__element--flex .block .comment p+p {
    margin-top: 1rem
}

#Shop .section__contents__block__element--flex .block a.link {
    display: block;
    width: 100%;
    max-width: 480px;
    margin: 0 auto;
    padding: 1rem;
    background-color: #fc0;
    text-align: center;
    box-sizing: border-box;
    color: #000;
    font-size: 120%;
    font-weight: bold;
    transition: .3s ease all;
    border-radius: 2.5rem;
    border-bottom: 5px solid #997a00
}

#Shop .section__contents__block__element--flex .block a.link:hover {
    margin-top: 3px;
    transition: .3s ease all;
    background-color: #ffd633;
    border-bottom: 2px solid #997a00
}

#Shop .section__contents__block__element.discount {
    width: calc(100% - 2rem);
    max-width: 768px;
    margin: 0 auto;
    background-color: #fc0;
    border-radius: 1rem;
    box-shadow: 0 3px 3px 3px rgba(0,0,0,.3)
}

#Shop .section__contents__block__element.discount .title {
    border-bottom: 5px solid red;
    padding: 2rem;
    line-height: 140%
}

#Shop .section__contents__block__element.discount .title span {
    display: inline-block
}

#Shop .section__contents__block__element.discount .title .figure {
    position: relative
}

@media screen and (max-width: 768px) {
    #Shop .section__contents__block__element.discount .title .figure {
        margin-bottom:1rem;
        padding-bottom: 1rem
    }
}

@media screen and (max-width: 768px) {
    #Shop .section__contents__block__element.discount .title .figure:before {
        content:"";
        position: absolute;
        width: calc(100% + 4rem);
        bottom: 0;
        left: -2rem;
        border-bottom: 2px solid red
    }
}

@media screen and (min-width: 641px) {
    #Shop .section__contents__block__element.discount .title .figure.adjust {
        padding-top:2rem;
        padding-bottom: 2rem
    }
}

@media screen and (max-width: 768px) {
    #Shop .section__contents__block__element.discount .title .figure.adjust:before {
        content:none
    }
}

@media screen and (max-width: 640px) {
    #Shop .section__contents__block__element.discount .title .figure.adjust {
        margin-bottom:0;
        padding-bottom: 0
    }
}

@media screen and (min-width: 769px) {
    #Shop .section__contents__block__element.discount .title .figure.adjust .figure__data {
        width:240px;
        bottom: -30%
    }
}

@media screen and (max-width: 768px) {
    #Shop .section__contents__block__element.discount .title .figure.adjust .figure__data {
        width:220px;
        bottom: -41%
    }
}

@media screen and (max-width: 640px) {
    #Shop .section__contents__block__element.discount .title .figure.adjust .figure__data {
        width:160px;
        bottom: -76%
    }
}

#Shop .section__contents__block__element.discount .title .figure__data {
    position: absolute;
    right: -2rem
}

#Shop .section__contents__block__element.discount .title .figure__data img {
    width: 100%
}

@media screen and (min-width: 769px) {
    #Shop .section__contents__block__element.discount .title .figure__data {
        width:240px;
        bottom: -230%
    }
}

@media screen and (max-width: 768px) {
    #Shop .section__contents__block__element.discount .title .figure__data {
        width:220px;
        bottom: 0
    }
}

@media screen and (max-width: 640px) {
    #Shop .section__contents__block__element.discount .title .figure__data {
        width:160px
    }
}

#Shop .section__contents__block__element.discount .title .price--taxin {
    font-size: 150%;
    vertical-align: bottom
}

#Shop .section__contents__block__element.discount .title .price--taxin:before {
    font-size: 100%;
    transform: scale(0.25) translate(120%, -100%)
}

#Shop .section__contents__block__element.discount .title .price--taxin:after {
    content: "円";
    display: inline-block;
    transform: scale(0.5) translate(-30%, 30%)
}

#Shop .section__contents__block__element.discount .title .font--block {
    font-size: 80%;
    display: inline-block
}

#Shop .section__contents__block__element.discount ul.term {
    width: calc(100% - 4rem);
    max-width: 640px;
    margin: 0 auto;
    padding: 2rem 0
}

#Shop .section__contents__block__element.discount .category {
    margin: 2rem auto 0;
    width: calc(100% - 2rem);
    max-width: 640px;
    border: 2px solid red;
    border-radius: 1rem;
    background-color: #fff
}

#Shop .section__contents__block__element.discount .category .name {
    padding: 2rem 1rem;
    text-align: center;
    background-color: red;
    color: #fc0;
    border-radius: .8rem .8rem 0 0
}

#Shop .section__contents__block__element.discount .category .group {
    padding: 1rem;
    text-align: center
}

#Shop .section__contents__block__element.discount .category .group__block .price {
    margin-top: .5rem;
    font-size: 150%
}

#Shop .section__contents__block__element.discount .category .group__block .price .price--taxin:before {
    transform: scale(0.25) translate(120%, -100%)
}

#Shop .section__contents__block__element.discount .category .group__block .text {
    margin-top: .5rem;
    font-size: 150%
}

#Shop .section__contents__block__element.discount .category .group__block+.group__block {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px dashed red
}

#Shop .section__contents__block__element.information .holiday {
    width: 240px;
    margin: 0 auto
}

#Shop .section__contents__block__element.information .holiday svg .st0 {
    fill: red
}

#Shop .section__contents__block__element.information .address {
    max-width: 480px;
    box-sizing: border-box;
    margin: 0 auto;
    line-height: 140%;
    padding-top: .5rem;
    margin-top: .5rem
}

@media screen and (min-width: 641px) {
    #Shop .section__contents__block__element.information .address {
        position:relative;
        padding-left: 7rem
    }
}

#Shop .section__contents__block__element.information .address:before {
    display: block;
    content: "地点";
    font-weight: bold
}

@media screen and (min-width: 641px) {
    #Shop .section__contents__block__element.information .address:before {
        position:absolute;
        top: .6rem;
        left: 0
    }
}

#Shop .section__contents__block__element.information .address span {
    display: inline-block
}

#Shop .section__contents__block__element.information .address span.zip:before {
    content: "〒"
}

#Shop .section__contents__block__element.information .open {
    max-width: 480px;
    box-sizing: border-box;
    margin: 0 auto;
    line-height: 140%;
    border-top: 1px dashed #e6e6e6;
    padding-top: .5rem;
    margin-top: .5rem
}

@media screen and (min-width: 641px) {
    #Shop .section__contents__block__element.information .open {
        position:relative;
        padding-left: 7rem
    }
}

#Shop .section__contents__block__element.information .open:before {
    display: block;
    content: "营业时间";
    font-weight: bold
}

@media screen and (min-width: 641px) {
    #Shop .section__contents__block__element.information .open:before {
        position:absolute;
        top: .6rem;
        left: 0
    }
}

#Shop .section__contents__block__element.information .close {
    max-width: 480px;
    box-sizing: border-box;
    margin: 0 auto;
    line-height: 140%;
    border-top: 1px dashed #e6e6e6;
    padding-top: .5rem;
    margin-top: .5rem
}

@media screen and (min-width: 641px) {
    #Shop .section__contents__block__element.information .close {
        position:relative;
        padding-left: 7rem
    }
}

#Shop .section__contents__block__element.information .close:before {
    display: block;
    content: "定期休息日";
    font-weight: bold
}

@media screen and (min-width: 641px) {
    #Shop .section__contents__block__element.information .close:before {
        position:absolute;
        top: .6rem;
        left: 0
    }
}

#Shop .section__contents__block__element.information .map {
    margin-top: 2rem
}

#Shop .section__contents__block__element.information .map iframe {
    width: 100%
}

#Shop .section__contents__block__element .message p+p {
    margin-top: 1rem
}

#Shop .section__contents__block__element ul.status {
    font-size: 4vw;
    line-height: 140%
}

@media screen and (min-width: 641px) {
    #Shop .section__contents__block__element ul.status {
        font-size:120%
    }
}

@media screen and (min-width: 641px) {
    #Shop .section__contents__block__element ul.status li {
        position:relative;
        padding-left: 20%
    }
}

#Shop .section__contents__block__element ul.status li:before {
    display: block;
    font-weight: bold
}

@media screen and (min-width: 641px) {
    #Shop .section__contents__block__element ul.status li:before {
        position:absolute;
        top: 50%;
        left: 0
    }
}

#Shop .section__contents__block__element ul.status li.shop_name:before {
    content: "店铺名称"
}

@media screen and (min-width: 641px) {
    #Shop .section__contents__block__element ul.status li.shop_name:before {
        top:3%
    }
}

#Shop .section__contents__block__element ul.status li.corp_name:before {
    content: "公司名称"
}

#Shop .section__contents__block__element ul.status li.address:before {
    content: "地点"
}

#Shop .section__contents__block__element ul.status li.address .zip:before {
    content: "〒"
}

#Shop .section__contents__block__element ul.status li.free_dial:before {
    content: "免费电话号码"
}

#Shop .section__contents__block__element ul.status li.tel:before {
    content: "TEL"
}

#Shop .section__contents__block__element ul.status li.fax:before {
    content: "FAX"
}

#Shop .section__contents__block__element ul.status li.mail:before {
    content: "Email"
}

#Shop .section__contents__block__element ul.status li.open:before {
    content: "营业时间"
}

#Shop .section__contents__block__element ul.status li.close:before {
    content: "定期休息日"
}

#Shop .section__contents__block__element ul.status li.pay:before {
    content: "付款方式"
}

#Shop .section__contents__block__element ul.status li.service:before {
    content: "办理服务"
}

#Shop .section__contents__block__element ul.status li+li {
    padding-top: 3%;
    margin-top: 3%;
    border-top: 1px dashed #e6e6e6
}

#Shop .section__contents__block--service {
    padding: 0 1rem
}

#Shop .section__contents__block--service+.section__contents__block--service {
    margin-top: 3rem;
    padding-top: 2rem
}

#Shop .section__contents__block--service a.button {
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    display: inline-block;
    margin: 1rem auto;
    padding: 1rem 1.5rem;
    border-radius: 5rem;
    background-color: #c10000;
    color: #fff;
    text-align: center;
    transition: .3s ease all;
    line-height: 1.4
}

#Shop .section__contents__block--service a.button:hover {
    background-color: #f40000
}

#Shop .section__contents__block--service a.button span {
    display: inline-block
}

#Shop .section__contents__block--service h4 {
    margin-bottom: 2rem;
    padding: 1rem 0 1rem 1rem;
    border-bottom: 3px solid #ffe100;
    font-size: 160%;
    line-height: 100%
}

#Shop .section__contents__block--service h4 img {
    width: auto;
    height: 4rem
}

@media screen and (max-width: 768px) {
    #Shop .section__contents__block--service h4 img {
        width:100%;
        height: auto
    }
}

#Shop .section__contents__block--service__catchcopy {
    text-align: center;
    font-size: 140%;
    font-weight: 500;
    margin: 2rem auto
}

#Shop .section__contents__block--service__catchcopy span {
    display: inline-block
}

#Shop .section__contents__block--service__keyvisual {
    width: 100%;
    position: relative
}

#Shop .section__contents__block--service__keyvisual img {
    width: 100%;
    height: auto
}

#Shop .section__contents__block--service__description .menu {
    margin: 1rem auto;
    display: flex;
    flex-wrap: wrap
}

#Shop .section__contents__block--service__description .menu li {
    position: relative;
    padding-left: 1.5rem;
    margin-right: 2rem
}

#Shop .section__contents__block--service__description .menu li:before {
    content: "●";
    display: block;
    position: absolute;
    top: 0;
    left: 0
}

#Shop .section__contents__block--service__detail .Add__Block {
    margin-top: 4rem
}

#Shop .section__contents__block--service__detail .Add__Block .Image {
    width: 95%;
    margin: 0 auto
}

#Shop .section__contents__block--service__detail .Add__Block .Image img {
    width: 100%;
    height: auto
}

#Shop .section__contents__block--service__detail .Add__Block .Image+.Text {
    margin-top: 2rem
}

#Shop .section__contents__block--service__detail .Add__Flex {
    margin-top: 4rem;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between
}

@media screen and (min-width: 641px) {
    #Shop .section__contents__block--service__detail .Add__Flex {
        flex-direction:row-reverse
    }
}

#Shop .section__contents__block--service__detail .Add__Flex .Text {
    width: calc(100% - 350px - 2rem)
}

@media screen and (max-width: 640px) {
    #Shop .section__contents__block--service__detail .Add__Flex .Text {
        width:100%;
        margin-top: 2rem
    }
}

#Shop .section__contents__block--service__detail .Add__Flex .Image {
    width: 350px;
    display: block;
    position: relative;
    overflow: hidden
}

#Shop .section__contents__block--service__detail .Add__Flex .Image:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 100%
}

#Shop .section__contents__block--service__detail .Add__Flex .Image img,#Shop .section__contents__block--service__detail .Add__Flex .Image video {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

@media screen and (max-width: 640px) {
    #Shop .section__contents__block--service__detail .Add__Flex .Image {
        width:80%;
        margin: 0 auto
    }
}

#Shop .section__contents__block--service__detail .caution {
    font-size: 90%;
    margin: 1rem 0
}

#Shop .section__contents__block--service__detail .caution li {
    position: relative;
    padding-left: 1.5rem
}

#Shop .section__contents__block--service__detail .caution li:before {
    content: "※";
    display: block;
    position: absolute;
    top: 0;
    left: 0
}

#Flow .section__contents__block__element {
    counter-reset: flow-num
}

#Flow .section__contents__block__element__box {
    counter-increment: flow-num;
    background-color: #fff;
    border-radius: 1rem;
    box-shadow: 0 3px 3px 3px rgba(0,0,0,.3);
    position: relative
}

#Flow .section__contents__block__element__box.noCount .title {
    background-color: #ffeb99
}

#Flow .section__contents__block__element__box.noCount .title:before {
    content: none
}

#Flow .section__contents__block__element__box .title {
    border-radius: 1rem 1rem 0 0;
    background-color: #f0c000;
    text-align: center
}

#Flow .section__contents__block__element__box .title:before {
    content: counter(flow-num);
    line-height: 0;
    padding: .7% 2%;
    margin-right: 1%;
    background-color: #fff;
    border-radius: 50%
}

@media screen and (max-width: 768px) {
    #Flow .section__contents__block__element__box .title:before {
        padding:.5% 3%
    }
}

#Flow .section__contents__block__element__box .contents {
    padding: 2rem
}

#Flow .section__contents__block__element__box .contents__copy {
    line-height: 140%
}

#Flow .section__contents__block__element__box .contents__copy span {
    display: inline-block
}

#Flow .section__contents__block__element__box .contents__text {
    max-width: 640px;
    margin-left: auto;
    margin-right: auto
}

#Flow .section__contents__block__element__box .contents__flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

#Flow .section__contents__block__element__box .contents__flex__box {
    padding-bottom: 0;
    width: 100%
}

@media screen and (min-width: 769px) {
    #Flow .section__contents__block__element__box .contents__flex__box {
        width:calc(50% - 1rem)
    }
}

@media screen and (max-width: 768px) {
    #Flow .section__contents__block__element__box .contents__flex__box:not(:first-child) {
        margin-top:2rem
    }
}

#Flow .section__contents__block__element__box .contents__flex__box .image img {
    width: 100%
}

#Flow .section__contents__block__element__box .contents__reserve {
    max-width: 640px;
    box-sizing: border-box;
    margin: 0 auto
}

#Flow .section__contents__block__element__box .contents__reserve .contact {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

#Flow .section__contents__block__element__box .contents__reserve .contact__box {
    padding-bottom: 0;
    width: 100%
}

@media screen and (min-width: 769px) {
    #Flow .section__contents__block__element__box .contents__reserve .contact__box {
        width:calc(50% - 1rem)
    }
}

@media screen and (max-width: 768px) {
    #Flow .section__contents__block__element__box .contents__reserve .contact__box:not(:first-child) {
        margin-top:3rem
    }
}

#Flow .section__contents__block__element__box .contents__reserve .contact.single .contact__box {
    width: 100% !important
}

#Flow .section__contents__block__element__box .contents__attention {
    background-color: #ffe066;
    padding: 2rem
}

#Flow .section__contents__block__element__box .contents__attention .item span {
    vertical-align: middle
}

#Flow .section__contents__block__element__box .contents__attention .item span.icon {
    font-size: 180%;
    margin-right: 1rem
}

#Flow .section__contents__block__element__box .contents__attention .item span.words span {
    display: inline-block
}

#Flow .section__contents__block__element__box.arrow__down {
    margin-top: 5rem
}

#Flow .section__contents__block__element__box.arrow__down:before {
    content: "";
    display: block;
    position: absolute;
    top: -4rem;
    left: 50%;
    width: 3rem;
    height: 3rem;
    border-bottom: 1rem solid #fc0;
    border-right: 1rem solid #fc0;
    transform: rotate(45deg) translateX(-50%)
}

#Flow .section__contents__block__element__box.dotte__down {
    margin-top: 10rem
}

#Flow .section__contents__block__element__box.dotte__down:before {
    content: "●●●";
    display: block;
    position: absolute;
    top: -6rem;
    left: 50%;
    font-size: 3rem;
    transform: rotate(90deg) translateY(200%);
    color: #fc0
}

#Flow .section .border__round {
    border: 3px solid #000;
    border-radius: 1rem;
    padding: 1rem;
    counter-increment: tNumber;
    max-width: 768px;
    box-sizing: border-box;
    margin-left: auto;
    margin-right: auto
}

#Flow .section .border__round__title {
    font-weight: bold
}

#Flow .section .border__round__title:before {
    content: counter(tNumber) ".";
    margin-right: .5rem;
    color: #fc0
}

#Flow .section .border__round__title span {
    display: inline-block
}

#Flow .section .border__round .contents__flex__box {
    padding-bottom: 0;
    width: 100%
}

@media screen and (min-width: 769px) {
    #Flow .section .border__round .contents__flex__box:nth-child(2n+1) {
        width:calc(65% - 1rem)
    }

    #Flow .section .border__round .contents__flex__box:nth-child(2n) {
        width: calc(35% - 1rem)
    }
}

@media screen and (max-width: 768px) {
    #Flow .section .border__round .contents__flex__box:not(:first-child) {
        margin-top:2rem
    }
}

#Flow .section .border__round .contents__description p.attention {
    position: relative;
    padding-left: 1rem
}

#Flow .section .border__round .contents__description p.attention:before {
    content: "※";
    position: absolute;
    top: 0;
    left: 0
}

#Flow .section .check {
    counter-reset: Numer
}

#Flow .section .check__title {
    background-color: #fc0;
    text-align: center;
    padding: 1rem
}

#Flow .section .check__title:before {
    font-family: icomoon;
    content: "";
    color: #c10000;
    margin-right: .5rem
}

#Flow .section .check__list {
    padding: 1rem
}

#Flow .section .check__list li {
    counter-increment: Number
}

#Flow .section .check__list li:before {
    content: counter(Number) ".";
    margin-right: .5rem
}

#QA .section__contents__block__element .border__round {
    background-color: #fff;
    border: 3px solid #000;
    border-radius: 1rem;
    padding: 2rem 1rem;
    counter-increment: FAQ_Num;
    max-width: 768px;
    box-sizing: border-box;
    margin-left: auto;
    margin-right: auto
}

#QA .section__contents__block__element .border__round__question {
    font-weight: bold;
    position: relative;
    padding-left: 14%
}

@media screen and (max-width: 768px) {
    #QA .section__contents__block__element .border__round__question {
        padding-left:18vw
    }
}

#QA .section__contents__block__element .border__round__question.double {
    padding-left: 20%
}

@media screen and (max-width: 768px) {
    #QA .section__contents__block__element .border__round__question.double {
        padding-left:24vw
    }
}

#QA .section__contents__block__element .border__round__question:before {
    font-size: 200%;
    content: "Q" counter(FAQ_Num) ".";
    margin-right: 1rem;
    color: #fc0;
    display: block;
    transform: scaleX(0.7);
    position: absolute;
    top: 0;
    left: -1rem
}

@media screen and (max-width: 768px) {
    #QA .section__contents__block__element .border__round__question:before {
        top:50%;
        transform: scaleX(0.7) translateY(-50%)
    }
}

#QA .section__contents__block__element .border__round__question span {
    display: inline-block
}

#QA .section__contents__block__element .border__round__answer {
    margin-top: 2rem
}

#QA .section__contents__block__element .border__round__answer p+p {
    margin-top: 1rem
}

#Voice .section__contents__block__element--flex {
    display: flex;
    flex-wrap: wrap
}

#Voice .section__contents__block__element--flex .block {
    width: calc((100% - 2rem)/2);
    background-color: #fff;
    box-sizing: border-box;
    margin-left: 2rem;
    position: relative;
    overflow: hidden;
    margin-top: 4rem
}

@media screen and (min-width: 769px) {
    #Voice .section__contents__block__element--flex .block:nth-child(2n+1) {
        margin-left:0
    }

    #Voice .section__contents__block__element--flex .block:first-child,#Voice .section__contents__block__element--flex .block:nth-child(2) {
        margin-top: 0
    }
}

@media screen and (max-width: 768px) {
    #Voice .section__contents__block__element--flex .block {
        width:100%;
        margin-left: 0
    }

    #Voice .section__contents__block__element--flex .block:first-child {
        margin-top: 0
    }
}

#Voice .section__contents__block__element--flex .block .image {
    display: block;
    position: relative;
    overflow: hidden
}

#Voice .section__contents__block__element--flex .block .image:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 60%
}

#Voice .section__contents__block__element--flex .block .image img,#Voice .section__contents__block__element--flex .block .image video {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

#Voice .section__contents__block__element--flex .block .comment p.attention {
    font-size: 80%
}

#Voice .section__contents__block__element--flex .block .comment p+p {
    margin-top: 1rem
}

#Voice .section__contents__block__element--flex .block a.link {
    display: block;
    width: 100%;
    max-width: 480px;
    margin: 0 auto;
    padding: 1rem;
    background-color: #fc0;
    text-align: center;
    box-sizing: border-box;
    color: #000;
    font-size: 120%;
    font-weight: bold;
    transition: .3s ease all;
    border-radius: 2.5rem;
    border-bottom: 5px solid #997a00
}

#Voice .section__contents__block__element--flex .block a.link:hover {
    margin-top: 3px;
    transition: .3s ease all;
    background-color: #ffd633;
    border-bottom: 2px solid #997a00
}

#Voice .section__contents__block__element .shadowBox {
    background-color: #fff;
    box-shadow: 0 3px 3px 3px rgba(0,0,0,.3);
    padding: 2rem;
    max-width: 768px;
    box-sizing: border-box;
    margin-left: auto;
    margin-right: auto
}

#Voice .section__contents__block__element .shadowBox__text {
    line-height: 160%;
    background-image: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 50%, #fff 0%, #fff 100%),linear-gradient(180deg, rgba(80, 80, 80, 0) 0%, rgba(80, 80, 80, 0) 95%, #808080 100%);
    background-size: 8px 100%,100% 1.85rem
}

#Voice .section__contents__block__element .shadowBox__image {
    margin-top: 2rem
}

#Voice .section__contents__block__element .shadowBox__image img {
    width: 100%
}

#Sitemap .section__contents__map {
    width: 100%;
    max-width: 980px;
    margin: -4rem auto 0;
    text-align: left;
    display: flex;
    flex-wrap: wrap
}

#Sitemap .section__contents__map__block {
    float: left;
    margin-right: 4rem;
    margin-top: 4rem
}

#Sitemap .section__contents__map__block a {
    display: block;
    line-height: 180%
}

#Sitemap .section__contents__map__block a:hover {
    text-decoration: underline
}

#Sitemap .section__contents__map__block__main {
    font-weight: bold
}

#Sitemap .section__contents__map__block__sub {
    padding: 0 .9rem
}

#Sitemap .section__contents__map__block__sub:nth-child(2) {
    padding-top: .5rem;
    margin-top: .5rem;
    border-top: 1px solid #c10000
}

#Sitemap .section__contents__map:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    clear: both
}

#Error {
    box-sizing: border-box;
    min-height: 400px
}

@media screen and (max-width: 768px) {
    #Error {
        padding-top:9rem
    }
}

#Error h2 {
    text-decoration: none;
    color: #c10000
}

#Error h2 .status {
    font-weight: bold;
    margin-bottom: 3rem
}

#Error h2 .status span {
    display: block;
    font-size: 5em;
    line-height: 1em
}

#Error .section__contents .block {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

#Error .section__contents .message {
    text-align: left;
    max-width: 320px;
    margin: 0 auto 2rem
}

#Error .section__contents ul {
    width: 300px;
    margin: 0 auto 2rem;
    font-size: 90%
}

#Error .section__contents ul.dott {
    list-style: circle;
    box-sizing: border-box;
    padding-left: 2rem
}

#Error .section__contents .back {
    text-align: center
}

svg.waves {
    position: absolute;
    top: -40px;
    left: 0;
    width: 100%;
    height: 40px;
    margin-bottom: -7px;
    z-index: -1
}

@media(max-height: 768px),screen and (max-width: 768px) {
    svg.waves {
        height:25px;
        top: -25px
    }
}

svg.waves .parallax use {
    animation: move-forever 25s cubic-bezier(0.55, 0.5, 0.45, 0.5) infinite
}

svg.waves .parallax use:nth-child(1) {
    fill: rgba(255,225,0,.7);
    animation-delay: -2s;
    animation-duration: 7s
}

svg.waves .parallax use:nth-child(2) {
    fill: rgba(255,225,0,.5);
    animation-delay: -3s;
    animation-duration: 10s
}

svg.waves .parallax use:nth-child(3) {
    fill: rgba(255,225,0,.3);
    animation-delay: -4s;
    animation-duration: 13s
}

svg.waves .parallax use:nth-child(4) {
    fill: #ffe100;
    animation-delay: -5s;
    animation-duration: 20s
}

@keyframes move-forever {
    0% {
        transform: translate3d(-90px, 0, 0)
    }

    100% {
        transform: translate3d(85px, 0, 0)
    }
}

#slider {
    width: 100%;
    height: calc(50vh + 30px);
    min-height: 410px;
    position: relative;
    margin-bottom: 3rem;
    overflow: hidden
}

#slider .SalesPoint {
    width: 100%;
    position: absolute;
    bottom: calc(30px + 3.5rem);
    left: 0;
    z-index: 1
}

@media screen and (min-width: 769px) {
    #slider .SalesPoint {
        left:20%
    }
}

@media screen and (max-height: 768px) {
    #slider .SalesPoint {
        bottom:50px
    }
}

#slider .SalesPoint .font--strong {
    color: #fff;
    text-shadow: 1px 1px 3px rgba(0,0,0,.5)
}

#slider .SalesPoint__time {
    margin-bottom: 3rem;
    padding-left: 2rem
}

#slider .SalesPoint__price {
    padding-left: 2rem;
    position: relative
}

#slider .swiper-container {
    width: 100%;
    height: 50vh;
    min-height: 380px;
    position: relative
}

#slider .swiper-container:before {
    content: "";
    display: block;
    width: 100%;
    height: 50%;
    background-color: rgba(0,0,0,.3);
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 2
}

#slider .swiper-container .swiper-slide .media {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 0;
    overflow: hidden
}

#slider .swiper-container .swiper-slide .media a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: .3s ease all
}

#slider .swiper-container .swiper-slide .media a:hover {
    background-color: rgba(0,0,0,.2)
}

#slider .swiper-container .swiper-slide .media img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: -1
}

#slider .swiper-container .swiper-slide .media img.obl {
    width: auto;
    height: 100%
}

#slider .swiper-container .swiper-slide .media img.ver {
    width: 100%;
    height: auto
}

@media screen and (min-width: 641px) {
    #slider .swiper-container .swiper-slide .media img.pc {
        display:block
    }
}

@media screen and (max-width: 640px) {
    #slider .swiper-container .swiper-slide .media img.pc {
        display:none
    }
}

@media screen and (min-width: 641px) {
    #slider .swiper-container .swiper-slide .media img.sp {
        display:none
    }
}

@media screen and (max-width: 640px) {
    #slider .swiper-container .swiper-slide .media img.sp {
        display:block
    }
}

#slider .swiper-control {
    width: 100%;
    max-width: 980px;
    height: 100%;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
    pointer-events: none
}

#slider .swiper-control .swiper-button-prev,#slider .swiper-control .swiper-button-next {
    outline: none;
    color: #c10000;
    pointer-events: all;
    filter: drop-shadow(2px 2px 5px rgba(0, 0, 0, 0.4));
    top: auto;
    bottom: 40px;
    width: 14px;
    height: 24px;
    margin-top: -12px;
    background-size: 14px 24px
}

#slider .swiper-control .swiper-pagination {
    pointer-events: all;
    bottom: -0.5rem;
    left: 50%;
    transform: translateX(-50%)
}

#slider .swiper-control .swiper-pagination .swiper-pagination-bullet {
    outline: none;
    width: 12px;
    height: 12px
}

#slider .swiper-control .swiper-pagination .swiper-pagination-bullet+.swiper-pagination-bullet {
    margin-left: .5rem
}

.swiper-container {
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1
}

.swiper-container-no-flexbox .swiper-slide {
    float: left
}

.swiper-container-vertical>.swiper-wrapper {
    flex-direction: column
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    box-sizing: content-box
}

.swiper-container-android .swiper-slide,.swiper-wrapper {
    transform: translate3d(0px, 0, 0)
}

.swiper-container-multirow>.swiper-wrapper {
    flex-wrap: wrap
}

.swiper-container-free-mode>.swiper-wrapper {
    transition-timing-function: ease-out;
    margin: 0 auto
}

.swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: transform
}

.swiper-slide-invisible-blank {
    visibility: hidden
}

.swiper-container-autoheight,.swiper-container-autoheight .swiper-slide {
    height: auto
}

.swiper-container-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform,height
}

.swiper-container-3d {
    perspective: 1200px
}

.swiper-container-3d .swiper-wrapper,.swiper-container-3d .swiper-slide,.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top,.swiper-container-3d .swiper-slide-shadow-bottom,.swiper-container-3d .swiper-cube-shadow {
    transform-style: preserve-3d
}

.swiper-container-3d .swiper-slide-shadow-left,.swiper-container-3d .swiper-slide-shadow-right,.swiper-container-3d .swiper-slide-shadow-top,.swiper-container-3d .swiper-slide-shadow-bottom {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10
}

.swiper-container-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))
}

.swiper-container-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))
}

.swiper-container-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))
}

.swiper-container-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))
}

.swiper-container-wp8-horizontal,.swiper-container-wp8-horizontal>.swiper-wrapper {
    touch-action: pan-y
}

.swiper-container-wp8-vertical,.swiper-container-wp8-vertical>.swiper-wrapper {
    touch-action: pan-x
}

.swiper-button-prev,.swiper-button-next {
    position: absolute;
    top: 50%;
    width: 27px;
    height: 44px;
    margin-top: -22px;
    z-index: 10;
    cursor: pointer;
    background-size: 27px 44px;
    background-position: center;
    background-repeat: no-repeat
}

.swiper-button-prev.swiper-button-disabled,.swiper-button-next.swiper-button-disabled {
    opacity: .35;
    cursor: auto;
    pointer-events: none
}

.swiper-button-prev,.swiper-container-rtl .swiper-button-next {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
    left: 10px;
    right: auto
}

.swiper-button-next,.swiper-container-rtl .swiper-button-prev {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
    right: 10px;
    left: auto
}

.swiper-button-prev.swiper-button-white,.swiper-container-rtl .swiper-button-next.swiper-button-white {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E")
}

.swiper-button-next.swiper-button-white,.swiper-container-rtl .swiper-button-prev.swiper-button-white {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E")
}

.swiper-button-prev.swiper-button-black,.swiper-container-rtl .swiper-button-next.swiper-button-black {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E")
}

.swiper-button-next.swiper-button-black,.swiper-container-rtl .swiper-button-prev.swiper-button-black {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E")
}

.swiper-button-lock {
    display: none
}

.swiper-pagination {
    position: absolute;
    text-align: center;
    transition: 300ms opacity;
    transform: translate3d(0, 0, 0);
    z-index: 10
}

.swiper-pagination.swiper-pagination-hidden {
    opacity: 0
}

.swiper-pagination-fraction,.swiper-pagination-custom,.swiper-container-horizontal>.swiper-pagination-bullets {
    bottom: 10px;
    left: 0;
    width: 100%
}

.swiper-pagination-bullets-dynamic {
    overflow: hidden;
    font-size: 0
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transform: scale(0.33);
    position: relative
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
    transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
    transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
    transform: scale(0.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
    transform: scale(0.33)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
    transform: scale(0.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
    transform: scale(0.33)
}

.swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    display: inline-block;
    border-radius: 100%;
    background: #000;
    opacity: .2
}

button.swiper-pagination-bullet {
    border: none;
    margin: 0;
    padding: 0;
    box-shadow: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer
}

.swiper-pagination-bullet-active {
    opacity: 1;
    background: #c10000
}

.swiper-container-vertical>.swiper-pagination-bullets {
    right: 10px;
    top: 50%;
    transform: translate3d(0px, -50%, 0)
}

.swiper-container-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 6px 0;
    display: block
}

.swiper-container-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    top: 50%;
    transform: translateY(-50%);
    width: 8px
}

.swiper-container-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    display: inline-block;
    transition: 200ms transform,200ms top
}

.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 4px
}

.swiper-container-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap
}

.swiper-container-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: 200ms transform,200ms left
}

.swiper-container-horizontal.swiper-container-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: 200ms transform,200ms right
}

.swiper-pagination-progressbar {
    background: rgba(0,0,0,.25);
    position: absolute
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: #007aff;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: left top
}

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    transform-origin: right top
}

.swiper-container-horizontal>.swiper-pagination-progressbar,.swiper-container-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: 4px;
    left: 0;
    top: 0
}

.swiper-container-vertical>.swiper-pagination-progressbar,.swiper-container-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 4px;
    height: 100%;
    left: 0;
    top: 0
}

.swiper-pagination-white .swiper-pagination-bullet-active {
    background: #fff
}

.swiper-pagination-progressbar.swiper-pagination-white {
    background: rgba(255,255,255,.25)
}

.swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill {
    background: #fff
}

.swiper-pagination-black .swiper-pagination-bullet-active {
    background: #000
}

.swiper-pagination-progressbar.swiper-pagination-black {
    background: rgba(0,0,0,.25)
}

.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill {
    background: #000
}

.swiper-pagination-lock {
    display: none
}

.swiper-scrollbar {
    border-radius: 10px;
    position: relative;
    background: rgba(0,0,0,.1)
}

.swiper-container-horizontal>.swiper-scrollbar {
    position: absolute;
    left: 1%;
    bottom: 3px;
    z-index: 50;
    height: 5px;
    width: 98%
}

.swiper-container-vertical>.swiper-scrollbar {
    position: absolute;
    right: 3px;
    top: 1%;
    z-index: 50;
    width: 5px;
    height: 98%
}

.swiper-scrollbar-drag {
    height: 100%;
    width: 100%;
    position: relative;
    background: rgba(0,0,0,.5);
    border-radius: 10px;
    left: 0;
    top: 0
}

.swiper-scrollbar-cursor-drag {
    cursor: move
}

.swiper-scrollbar-lock {
    display: none
}

.swiper-zoom-container {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center
}

.swiper-zoom-container>img,.swiper-zoom-container>svg,.swiper-zoom-container>canvas {
    max-width: 100%;
    max-height: 100%;
    -o-object-fit: contain;
    object-fit: contain
}

.swiper-slide-zoomed {
    cursor: move
}

.swiper-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    transform-origin: 50%;
    animation: swiper-preloader-spin 1s steps(12, end) infinite
}

.swiper-lazy-preloader:after {
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
    background-position: 50%;
    background-size: 100%;
    background-repeat: no-repeat
}

.swiper-lazy-preloader-white:after {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E")
}

@keyframes swiper-preloader-spin {
    100% {
        transform: rotate(360deg)
    }
}

.swiper-container .swiper-notification {
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
    opacity: 0;
    z-index: -1000
}

.swiper-container-fade.swiper-container-free-mode .swiper-slide {
    transition-timing-function: ease-out
}

.swiper-container-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity
}

.swiper-container-fade .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-container-fade .swiper-slide-active,.swiper-container-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-container-cube {
    overflow: visible
}

.swiper-container-cube .swiper-slide {
    pointer-events: none;
    backface-visibility: hidden;
    z-index: 1;
    visibility: hidden;
    transform-origin: 0 0;
    width: 100%;
    height: 100%
}

.swiper-container-cube .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-container-cube.swiper-container-rtl .swiper-slide {
    transform-origin: 100% 0
}

.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-container-cube .swiper-slide-active,.swiper-container-cube .swiper-slide-next,.swiper-container-cube .swiper-slide-prev,.swiper-container-cube .swiper-slide-next+.swiper-slide {
    pointer-events: auto;
    visibility: visible
}

.swiper-container-cube .swiper-slide-shadow-top,.swiper-container-cube .swiper-slide-shadow-bottom,.swiper-container-cube .swiper-slide-shadow-left,.swiper-container-cube .swiper-slide-shadow-right {
    z-index: 0;
    backface-visibility: hidden
}

.swiper-container-cube .swiper-cube-shadow {
    position: absolute;
    left: 0;
    bottom: 0px;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: .6;
    filter: blur(50px);
    z-index: 0
}

.swiper-container-flip {
    overflow: visible
}

.swiper-container-flip .swiper-slide {
    pointer-events: none;
    backface-visibility: hidden;
    z-index: 1
}

.swiper-container-flip .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-container-flip .swiper-slide-active,.swiper-container-flip .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-container-flip .swiper-slide-shadow-top,.swiper-container-flip .swiper-slide-shadow-bottom,.swiper-container-flip .swiper-slide-shadow-left,.swiper-container-flip .swiper-slide-shadow-right {
    z-index: 0;
    backface-visibility: hidden
}
