.slick-slider {
    box-sizing: border-box;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent
}

.slick-list,
.slick-slider {
    position: relative;
    display: block
}

.slick-list {
    overflow: hidden;
    margin: 0;
    padding: 0
}

.slick-list:focus {
    outline: none
}

.slick-list.dragging {
    cursor: pointer;
    cursor: hand
}

.slick-slider .slick-list,
.slick-slider .slick-track {
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.slick-track {
    position: relative;
    left: 0;
    top: 0;
    display: block;
    margin-left: auto;
    margin-right: auto
}

.slick-track:after,
.slick-track:before {
    content: "";
    display: table
}

.slick-track:after {
    clear: both
}

.slick-loading .slick-track {
    visibility: hidden
}

.slick-slide {
    float: left;
    height: 100%;
    min-height: 1px;
    display: none
}

[dir=rtl] .slick-slide {
    float: right
}

.slick-slide img {
    display: block
}

.slick-slide.slick-loading img {
    display: none
}

.slick-slide.dragging img {
    pointer-events: none
}

.slick-initialized .slick-slide {
    display: block
}

.slick-loading .slick-slide {
    visibility: hidden
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent
}

.slick-arrow.slick-hidden {
    display: none
}

@font-face {
    font-family: Montserrat;
    font-weight: 700;
    src: url("../font/Montserrat/Montserrat-Bold.eot");
    src: url("../font/Montserrat/Montserrat-Bold-.eot#iefix") format("embedded-opentype"), url("../font/Montserrat/Montserrat-Bold.woff2") format("woff2"), url("../font/Montserrat/Montserrat-Bold.woff") format("woff"), url("../font/Montserrat/Montserrat-Bold.ttf") format("truetype");
    font-display: swap
}

@font-face {
    font-family: Noto Sans Japanese;
    font-weight: 400;
    font-style: normal;
    src: url("../font/NotoSans/NotoSansCJKjp-Regular.eot");
    src: url("../font/NotoSans/NotoSansCJKjp-Regular-.eot#iefix") format("embedded-opentype"), url("../font/NotoSans/NotoSansCJKjp-Regular.woff2") format("woff2"), url("../font/NotoSans/NotoSansCJKjp-Regular.woff") format("woff"), url("../font/NotoSans/NotoSansCJKjp-Regular.ttf.html") format("truetype");
    font-display: swap
}

@font-face {
    font-family: Noto Sans Japanese;
    font-weight: 700;
    font-style: bold;
    src: url("../font/NotoSans/NotoSansCJKjp-Bold.eot");
    src: url("../font/NotoSans/NotoSansCJKjp-Bold-.eot#iefix") format("embedded-opentype"), url("../font/NotoSans/NotoSansCJKjp-Bold.woff2") format("woff2"), url("../font/NotoSans/NotoSansCJKjp-Bold.woff") format("woff"), url("../font/NotoSans/NotoSansCJKjp-Bold.ttf.html") format("truetype");
    font-display: swap
}

@font-face {
    font-family: iconfont;
    src: url("../font/iconfont-1616427656479.eot");
    src: url("../font/iconfont-1616427656479.eot#iefix") format("eot"), url("../font/iconfont-1616427656479.woff2") format("woff2"), url("../font/iconfont-1616427656479.woff") format("woff"), url("../font/iconfont-1616427656479.ttf") format("truetype"), url("../font/iconfont-1616427656479.svg#iconfont") format("svg")
}

.c-breadcrumb_link:after,
.c-button--arrowBottom a:before,
.c-button--arrowBottom button:before,
.c-button--arrowLeft a:before,
.c-button--arrowLeft button:before,
.c-button--arrowRight a:after,
.c-button--arrowRight button:after,
.c-button--searchLeft span:before,
.c-formCheckbox label:after,
.c-formDrag p:before,
.c-formImageItem_preview:after,
.c-formRadio label:after,
.c-formSelect:before,
.c-formSteps_step:after,
.c-formText_pseudo:after,
.c-pagenation_link--next a:after,
.c-pagenation_link--prev a:before,
.c-pagenation_link .nextpostslink:after,
.c-pagenation_link .previouspostslink:before,
.c-paging_link--next a:after,
.c-paging_link--prev a:before,
.c-share--facebook span:before,
.c-share--line span:before,
.c-share--twitter span:before,
.gm-style-iw>button:after,
.is-active .p-action_text span:before,
.is-all_counts .p-tonttuHistoryItem_headline:before,
.is-basis .p-tonttuHistoryItem_headline:before,
.is-bath_relax_chair .p-tonttuHistoryItem_headline:before,
.is-bath_relax_space .p-tonttuHistoryItem_headline:before,
.is-birth_month .p-tonttuHistoryItem_headline:before,
.is-comment .p-mytonttuHistoryItem_title:before,
.is-content .p-tonttuHistoryItem_headline:before,
.is-copy .c-shareCircle_icon:after,
.is-facility_counts .p-tonttuHistoryItem_headline:before,
.is-facility_num .p-tonttuHistoryItem_headline:before,
.is-give .p-mytonttuHistoryItem_title:before,
.is-home_sauna_bonus .p-tonttuHistoryItem_headline:before,
.is-item1 .uq-3rdBeginnerItem_headline i:before,
.is-item2 .uq-3rdBeginnerItem_headline i:before,
.is-item3 .uq-3rdBeginnerItem_headline i:before,
.is-item4 .uq-3rdBeginnerItem_headline i:before,
.is-item5 .uq-3rdBeginnerItem_headline i:before,
.is-line .c-shareCircle_icon:after,
.is-lottery .p-mytonttuHistoryItem_title:before,
.is-loyly .p-tonttuHistoryItem_headline:before,
.is-monthly_counts_1 .p-tonttuHistoryItem_headline:before,
.is-monthly_counts_2 .p-tonttuHistoryItem_headline:before,
.is-monthly_counts_3 .p-tonttuHistoryItem_headline:before,
.is-montly .p-reportCardRanking_headline:before,
.is-order .p-mytonttuHistoryItem_title:before,
.is-photo .p-tonttuHistoryItem_headline:before,
.is-post .p-mytonttuHistoryItem_title:before,
.is-receive .p-mytonttuHistoryItem_title:before,
.is-sauna_room .p-tonttuHistoryItem_headline:before,
.is-searchOpen .p-actionNavSearch_icon:after,
.is-spec .p-postDataItem_content:after,
.is-spec .p-postDataItem_icon:before,
.is-tag .p-postDataItem_icon:before,
.is-temperature_report .p-tonttuHistoryItem_headline:before,
.is-ticket .p-postDataItem_icon:before,
.is-tweet .c-shareCircle_icon:after,
.is-upload .p-postImage_label:before,
.is-water_bath .p-tonttuHistoryItem_headline:before,
.is-weekly_counts_1 .p-tonttuHistoryItem_headline:before,
.is-weekly_counts_2 .p-tonttuHistoryItem_headline:before,
.is-weekly_counts_3 .p-tonttuHistoryItem_headline:before,
.l-footerSns_button--facebook:after,
.l-footerSns_button--instagram:after,
.l-footerSns_button--twitter:after,
.l-headerShare_button--facebook:after,
.l-headerShare_button--twitter:after,
.p-action--ikitai .p-action_text span:before,
.p-action--post .p-action_text span:before,
.p-actionNavNotification_icon:after,
.p-actionNavSearch_icon:after,
.p-commentAction_item.is-delete:before,
.p-commentAction_item.is-like.is-active:before,
.p-commentAction_item.is-like:before,
.p-commentAction_item.is-tonttu:before,
.p-commentAction_item:before,
.p-commentReaction_like:before,
.p-comments_more:after,
.p-dialog_list.is-mute[data-type=mute]:before,
.p-dialog_list[data-type=mute]:before,
.p-dialog_list[data-type=report]:before,
.p-filterItem--area:after,
.p-filterItem--conditions:after,
.p-filterItem--submit button span:before,
.p-filterItem_select:before,
.p-filterMore span:after,
.p-filterResult_tag:after,
.p-gallery_arrow.is-next:before,
.p-gallery_arrow.is-prev:before,
.p-gifttonttuTransfer_clear:after,
.p-globalNavAccount:after,
.p-goodsDetail_image .slick-arrow.slick-next:after,
.p-goodsDetail_image .slick-arrow.slick-prev:after,
.p-goodsList_pagetop a:after,
.p-localNav_arrow:after,
.p-localNav_link.is-favorited .p-localNav_icon:after,
.p-localNav_link.is-favorites .p-localNav_icon:after,
.p-mapRootButton a.is-sakatsu strong:before,
.p-mapRootButton a.is-tweet strong:before,
.p-mapRootButton button.is-sakatsu strong:before,
.p-mapRootButton button.is-tweet strong:before,
.p-mapRootClose:after,
.p-mapRootHeader_destination:before,
.p-mapRootHeader_distance:before,
.p-menu_close:after,
.p-modal_close:after,
.p-mypageHeaderUser_official:before,
.p-mypageHeaderUserAction_dialog:after,
.p-mypageHeaderUserAction_mute:after,
.p-mypageProfile_reportmore a:after,
.p-myTicketBack a:before,
.p-myTicketSlide_arrow:after,
.p-myTicketSlide_success:after,
.p-mytonttuHistoryItem_arrow:after,
.p-mytonttuHistoryItem_title:before,
.p-mytonttuHistoryYear_next a:after,
.p-mytonttuHistoryYear_prev a:before,
.p-post_status label:after,
.p-post_tweet label:after,
.p-postCard_checkin:before,
.p-postCard_official:before,
.p-postCard_readmore span:after,
.p-postCardAction_item.is-like.is-active:before,
.p-postCardAction_item.is-like:before,
.p-postCardAction_item.is-tonttu:before,
.p-postCardAction_item:before,
.p-postCardList_more a:after,
.p-postCardUser_dialog:after,
.p-postCardUser_tonttu:after,
.p-postDataInput_headline.is-private:before,
.p-postDataItem_close:before,
.p-postImage_label:before,
.p-postOfficialTags_tag.is-select:after,
.p-postRanking_headline:before,
.p-reportCard_more:after,
.p-reportCardRanking_headline:before,
.p-reportCardTemperature_headline:before,
.p-resultNew_button:before,
.p-saunaDetailMeta_updateText:after,
.p-saunaDetailStayButton_reserve:after,
.p-saunaItem_attention:before,
.p-saunaItemRakuten_reserve:after,
.p-saunaSpecItem--mizuburo .p-saunaSpecItem_name span:before,
.p-saunaSpecItem--sauna .p-saunaSpecItem_name span:before,
.p-saunaSpecTable_name--autoloyly:before,
.p-saunaSpecTable_name--chair:before,
.p-saunaSpecTable_name--gaikiyoku:before,
.p-saunaSpecTable_name--loyly:before,
.p-saunaSpecTable_name--selfloyly:before,
.p-search_icon:after,
.p-searchButton_icon:after,
.p-shoutCard_header:before,
.p-ticketCard_title:before,
.p-ticketDetail_header a:before,
.p-ticketDetailItem a[target=_blank]:after,
.p-ticketDetailMore_close:after,
.p-ticketDetailMore_open:after,
.p-ticketList_headline:after,
.p-ticketListExpireSoon_headline:before,
.p-ticketOrder_date:after,
.p-ticketPayment_back a:before,
.p-tonttuHistory_more a:after,
.p-tonttuHistoryItem_headline:before,
.p-tonttuHistoryItem_more:after,
.uq-3rdShare_button button i:before,
.uq-loginSns .c-button.is-facebook a span:before,
.uq-loginSns .c-button.is-line a span:before,
.uq-loginSns .c-button.is-twitter a span:before,
.uq-sspNav_arrow:after,
.uq-steamOfLifeShare .uq-steamOfLifeButton.is-facebook span:before,
.uq-steamOfLifeShare .uq-steamOfLifeButton.is-twitter span:before,
.uq-tonttuLotteryNav_list a:after,
.uq-tonttuNav_arrow:after,
.uq-tonttuSakatsuMore_close:after,
.uq-tonttuSakatsuMore_open:after,
.uq-topGps span:before,
.uq-topRandom_q:before {
    font-family: iconfont;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-style: normal;
    font-variant: normal;
    font-weight: 400;
    text-decoration: none;
    text-transform: none
}

abbr,
address,
article,
aside,
audio,
b,
blockquote,
body,
canvas,
caption,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
p,
pre,
q,
samp,
section,
small,
span,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
ul,
var,
video {
    border: 0;
    background: transparent;
    font-size: 100%;
    vertical-align: baseline;
    margin: 0;
    padding: 0;
    outline: 0;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-smoothing: antialiased
}

blockquote,
q {
    quotes: none
}

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

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

[hidden],
command,
datalist,
menu[type=context],
rp,
source {
    display: none
}

html {
    overflow-y: scroll
}

body {
    line-height: 1;
    color: #000
}

a {
    background: transparent;
    font-size: 100%;
    vertical-align: baseline;
    text-decoration: none;
    outline: none
}

img {
    border: none;
    vertical-align: bottom
}

p {
    line-height: 1.8
}

table {
    border-collapse: collapse;
    border-spacing: 0;
    font-size: inherit
}

caption,
th {
    text-align: left
}

input,
select,
textarea {
    vertical-align: middle
}

pre {
    border: 1px solid #bfbfbf;
    padding: 5px
}

li {
    list-style-type: none
}

body {
    background: #f3f3f3;
    font-family: Noto Sans Japanese, ヒラギノ角ゴ Pro W3, Hiragino Kaku Gothic Pro, メイリオ, Meiryo, ＭＳ Ｐゴシック, Osaka, sans-serif;
    font-size: 16px;
    line-height: 1.65;
    color: #111;
    width: 100%
}

@media only screen and (max-width:799px) {
    body {
        position: relative;
        background: none;
        background: #fff;
        font-size: 14px
    }
}

@media only screen and (max-width:799px) {
    body:before {
        position: absolute;
        left: 50%;
        background-image: url("../img/character/yadare_mizu.png");
        background-size: cover;
        box-sizing: border-box;
        content: url("../img/character/yadare_mizu.png");
        content: "";
        font-size: 20px;
        font-weight: 700;
        color: #ea4c89;
        text-align: center;
        width: 100%;
        width: 50px;
        height: 50px;
        margin: auto;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%)
    }
}

:placeholder-shown {
    color: #bbb
}

::-webkit-input-placeholder {
    color: #bbb
}

:-moz-placeholder,
::-moz-placeholder {
    color: #bbb;
    opacity: 1
}

:-ms-input-placeholder {
    color: #bbb
}

.is-scrollLock,
.is-scrollLock body {
    overflow: hidden
}

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

    .is-scrollLock,
    .is-scrollLock body {
        height: 100%
    }
}

a,
a:visited {
    color: #222;
    cursor: pointer
}

a:hover {
    text-decoration: underline
}

@-webkit-keyframes fadeInTitle {
    0% {
        opacity: 0;
        -webkit-transform: translateY(10px);
        transform: translateY(10px)
    }

    to {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes fadeInTitle {
    0% {
        opacity: 0;
        -webkit-transform: translateY(10px);
        transform: translateY(10px)
    }

    to {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@-webkit-keyframes animation {
    0% {
        -webkit-transform: matrix(0, 0, 0, 0, 0, 0);
        transform: matrix(0, 0, 0, 0, 0, 0)
    }

    4.7% {
        -webkit-transform: matrix(.45, 0, 0, .45, 0, 0);
        transform: matrix(.45, 0, 0, .45, 0, 0)
    }

    9.41% {
        -webkit-transform: matrix(.883, 0, 0, .883, 0, 0);
        transform: matrix(.883, 0, 0, .883, 0, 0)
    }

    14.11% {
        -webkit-transform: matrix(1.141, 0, 0, 1.141, 0, 0);
        transform: matrix(1.141, 0, 0, 1.141, 0, 0)
    }

    18.72% {
        -webkit-transform: matrix(1.212, 0, 0, 1.212, 0, 0);
        transform: matrix(1.212, 0, 0, 1.212, 0, 0)
    }

    24.32% {
        -webkit-transform: matrix(1.151, 0, 0, 1.151, 0, 0);
        transform: matrix(1.151, 0, 0, 1.151, 0, 0)
    }

    29.93% {
        -webkit-transform: matrix(1.048, 0, 0, 1.048, 0, 0);
        transform: matrix(1.048, 0, 0, 1.048, 0, 0)
    }

    35.54% {
        -webkit-transform: matrix(.979, 0, 0, .979, 0, 0);
        transform: matrix(.979, 0, 0, .979, 0, 0)
    }

    41.04% {
        -webkit-transform: matrix(.961, 0, 0, .961, 0, 0);
        transform: matrix(.961, 0, 0, .961, 0, 0)
    }

    52.15% {
        -webkit-transform: matrix(.991, 0, 0, .991, 0, 0);
        transform: matrix(.991, 0, 0, .991, 0, 0)
    }

    63.26% {
        -webkit-transform: matrix(1.007, 0, 0, 1.007, 0, 0);
        transform: matrix(1.007, 0, 0, 1.007, 0, 0)
    }

    85.49% {
        -webkit-transform: matrix(.999, 0, 0, .999, 0, 0);
        transform: matrix(.999, 0, 0, .999, 0, 0)
    }

    to {
        -webkit-transform: matrix(1, 0, 0, 1, 0, 0);
        transform: matrix(1, 0, 0, 1, 0, 0)
    }
}

@keyframes animation {
    0% {
        -webkit-transform: matrix(0, 0, 0, 0, 0, 0);
        transform: matrix(0, 0, 0, 0, 0, 0)
    }

    4.7% {
        -webkit-transform: matrix(.45, 0, 0, .45, 0, 0);
        transform: matrix(.45, 0, 0, .45, 0, 0)
    }

    9.41% {
        -webkit-transform: matrix(.883, 0, 0, .883, 0, 0);
        transform: matrix(.883, 0, 0, .883, 0, 0)
    }

    14.11% {
        -webkit-transform: matrix(1.141, 0, 0, 1.141, 0, 0);
        transform: matrix(1.141, 0, 0, 1.141, 0, 0)
    }

    18.72% {
        -webkit-transform: matrix(1.212, 0, 0, 1.212, 0, 0);
        transform: matrix(1.212, 0, 0, 1.212, 0, 0)
    }

    24.32% {
        -webkit-transform: matrix(1.151, 0, 0, 1.151, 0, 0);
        transform: matrix(1.151, 0, 0, 1.151, 0, 0)
    }

    29.93% {
        -webkit-transform: matrix(1.048, 0, 0, 1.048, 0, 0);
        transform: matrix(1.048, 0, 0, 1.048, 0, 0)
    }

    35.54% {
        -webkit-transform: matrix(.979, 0, 0, .979, 0, 0);
        transform: matrix(.979, 0, 0, .979, 0, 0)
    }

    41.04% {
        -webkit-transform: matrix(.961, 0, 0, .961, 0, 0);
        transform: matrix(.961, 0, 0, .961, 0, 0)
    }

    52.15% {
        -webkit-transform: matrix(.991, 0, 0, .991, 0, 0);
        transform: matrix(.991, 0, 0, .991, 0, 0)
    }

    63.26% {
        -webkit-transform: matrix(1.007, 0, 0, 1.007, 0, 0);
        transform: matrix(1.007, 0, 0, 1.007, 0, 0)
    }

    85.49% {
        -webkit-transform: matrix(.999, 0, 0, .999, 0, 0);
        transform: matrix(.999, 0, 0, .999, 0, 0)
    }

    to {
        -webkit-transform: matrix(1, 0, 0, 1, 0, 0);
        transform: matrix(1, 0, 0, 1, 0, 0)
    }
}

@-webkit-keyframes fuwafuwa {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    50% {
        -webkit-transform: translateY(-10px);
        transform: translateY(-10px)
    }

    to {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

.l-page {
    position: relative;
    z-index: 1;
    overflow: hidden;
    min-width: 1100px;
    margin: auto
}

@media only screen and (max-width:799px) {
    .l-page {
        overflow: hidden;
        width: 100%;
        min-width: 100%
    }
}

.l-containers {
    min-height: 80vh;
    margin-bottom: 80px;
    width: 1100px;
    margin-right: auto;
    margin-left: auto
}

@media only screen and (max-width:799px) {
    .l-containers {
        width: 100%;
        box-sizing: border-box;
        min-height: auto;
        margin-bottom: 0
    }
}

[data-page-id=top] .l-containers {
    width: 100%
}

.l-containers_container {
    display: flex;
    justify-content: space-between;
    width: 1100px;
    margin-right: auto;
    margin-left: auto
}

@media only screen and (max-width:799px) {
    .l-containers_container {
        width: 100%;
        display: block
    }
}

.l-containers_main {
    width: 760px
}

@media only screen and (max-width:799px) {
    .l-containers_main {
        width: 100%
    }
}

.l-containers_main[data-width="600"] {
    width: 600px
}

@media only screen and (max-width:799px) {
    .l-containers_main[data-width="600"] {
        width: 100%
    }
}

.l-containers_main.is-center {
    border-radius: 12px;
    background: #fff;
    margin: auto
}

.l-containers_main.is-padding {
    box-sizing: border-box;
    padding: 80px
}

@media only screen and (max-width:799px) {
    .l-containers_main.is-padding {
        padding: 0 20px
    }
}

.l-containers_main .l-content {
    padding: 20px 0
}

@media only screen and (max-width:799px) {
    .l-containers_main .l-content {
        padding: 0 20px 20px
    }
}

.l-containers_sub {
    width: 320px
}

@media only screen and (max-width:799px) {
    .l-containers_sub {
        width: calc(100% - 40px);
        margin: auto
    }
}

.l-content {
    border-radius: 16px;
    background: #fff;
    box-sizing: border-box;
    margin: 0 0 60px;
    padding: 80px
}

@media only screen and (max-width:799px) {
    .l-content {
        margin: 0 0 30px;
        padding: 20px;
        box-shadow: none
    }
}

.l-content.is-onlyMobilePadding {
    background: none;
    padding: 0
}

@media only screen and (max-width:799px) {
    .l-content.is-onlyMobilePadding {
        margin-bottom: 0;
        padding: 20px
    }
}

.l-content.is-noPaddingBottom {
    margin-bottom: 20px;
    padding-bottom: 0
}

@media only screen and (max-width:799px) {
    .l-content.is-noPaddingBottom {
        margin-bottom: 0
    }
}

.l-content--md {
    margin-right: auto;
    margin-left: auto
}

@media only screen and (max-width:799px) {
    .l-content--md {
        width: 100%
    }
}

.l-content--smMargin {
    margin: 0 0 60px
}

@media only screen and (max-width:799px) {
    .l-content--smMargin {
        margin: 0 0 20px
    }
}

.l-content--notPadding {
    padding: 0
}

.l-content.is-half {
    margin: 0 0 30px;
    padding: 40px
}

@media only screen and (max-width:799px) {
    .l-content.is-half {
        margin: 0 0 30px;
        padding: 20px 15px 40px;
        box-shadow: none
    }
}

.l-content a {
    text-decoration: underline
}

.desktop .l-content a:hover {
    text-decoration: none;
    opacity: .7
}

@media only screen and (max-width:799px) {
    .l-footer {
        background: #f3f3f3;
        overflow: hidden;
        width: 100%;
        padding-top: 20px
    }
}

.l-footer_content {
    width: 1100px;
    margin-right: auto;
    margin-left: auto
}

@media only screen and (max-width:799px) {
    .l-footer_content {
        width: 100%;
        box-sizing: border-box;
        padding: 30px 20px 10px
    }
}

.l-footer_logo {
    width: 120px;
    margin: 0 auto;
    padding: 40px 0 20px
}

.l-footer_logo .svgLogo {
    fill: #fff
}

.l-footer_bottom {
    background: #405061;
    color: #fff;
    text-align: center;
    height: 150px
}

@media only screen and (max-width:799px) {
    .l-footer_bottom {
        height: auto;
        padding-bottom: 50px
    }
}

.l-footer_bottom small {
    font-family: Montserrat;
    font-size: 10px;
    letter-spacing: .1em
}

.l-footerSearch {
    margin-bottom: 80px
}

@media only screen and (max-width:799px) {
    .l-footerSearch {
        margin-bottom: 0
    }
}

.l-footerSearch_content {
    box-sizing: border-box;
    margin-bottom: 60px
}

@media only screen and (max-width:799px) {
    .l-footerSearch_content {
        margin-bottom: 30px
    }
}

.l-footerSearch_content--area {
    flex-basis: 65%
}

.l-footerSearch_content--conditions {
    flex-basis: 30%
}

.l-footerSearch_headline {
    font-size: 20px;
    line-height: 1;
    color: #ea4c89;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .l-footerSearch_headline {
        font-size: 16px;
        margin-bottom: 15px
    }
}

.l-footerSearch_area {
    display: flex
}

@media only screen and (max-width:799px) {
    .l-footerSearch_area {
        display: block;
        margin-bottom: 20px
    }
}

.l-footerSearch_areaname {
    flex-basis: 12%
}

.l-footerSearch_pref {
    flex-basis: 88%
}

.l-footerSearch_link {
    display: inline-block;
    margin: 0 10px 5px 0;
    list-style-type: none
}

.l-footerSearch_link--headline {
    font-size: 14px;
    font-weight: 700;
    width: 100px
}

@media only screen and (max-width:799px) {
    .l-footerSearch_link--headline {
        display: block;
        margin-top: 20px
    }
}

.l-footerSearch_link a {
    font-size: 14px;
    text-decoration: underline
}

@media only screen and (max-width:799px) {
    .l-footerSearch_link a {
        font-size: 13px
    }
}

.l-footerSearch_link a:hover {
    text-decoration: none;
    opacity: .7
}

.l-footerNav {
    text-align: center;
    padding: 20px 0
}

@media only screen and (max-width:799px) {
    .l-footerNav {
        overflow: hidden;
        padding-top: 0
    }
}

.l-footerNav_link {
    display: inline-block;
    margin: 0 0 0 20px
}

@media only screen and (max-width:799px) {
    .l-footerNav_link {
        display: block;
        text-align: left;
        float: left;
        width: 50%;
        margin: 0
    }
}

.l-footerNav_link:first-child:before {
    display: none
}

.l-footerNav_link:before {
    position: relative;
    top: 3px;
    background: #fff;
    display: inline-block;
    content: "";
    width: 1px;
    height: 14px;
    margin: 0 20px 0 0
}

@media only screen and (max-width:799px) {
    .l-footerNav_link:before {
        display: none
    }
}

.l-footerNav_link a {
    font-size: 14px;
    color: #fff
}

@media only screen and (max-width:799px) {
    .l-footerNav_link a {
        border-right: 1px solid #5b6772;
        border-bottom: 1px solid #5b6772;
        display: block;
        font-size: 13px;
        padding: 10px 0 10px 20px
    }
}

.l-footerSns {
    margin: 40px 0 20px
}

.l-footerSns_headline {
    font-size: 14px;
    letter-spacing: .1em;
    margin-bottom: 20px
}

.l-footerSns_content {
    display: flex;
    align-items: center;
    justify-content: center
}

.l-footerSns_button {
    position: relative;
    border: 1px solid #fff;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    margin: auto 10px
}

.l-footerSns_button a {
    display: block;
    width: 100%;
    height: 100%
}

.desktop .l-footerSns_button:hover {
    opacity: .5
}

.l-footerSns_button:after {
    position: absolute;
    top: 6px;
    left: 12px;
    font-size: 18px;
    color: #fff;
    pointer-events: none
}

.l-footerSns_button--twitter:after {
    content: ""
}

.l-footerSns_button--instagram:after {
    content: "";
    left: 11px
}

.l-footerSns_button--facebook:after {
    content: "";
    left: 12px
}

.l-header {
    position: relative;
    z-index: 1000;
    width: 100%;
    height: 80px;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .l-header {
        top: 0;
        left: 0;
        height: auto;
        min-height: 50px;
        margin-bottom: 0
    }
}

[data-page-id=top] .l-header {
    position: absolute;
    opacity: 0;
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px)
}

@media only screen and (max-width:799px) {
    [data-page-id=top] .l-header {
        border-bottom: none;
        background: none;
        box-shadow: none
    }
}

.is-introEnd [data-page-id=top] .l-header {
    opacity: 1;
    transition-delay: .45s;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .6s;
    transition-property: opacity transform;
    -webkit-transform: translateY(0);
    transform: translateY(0)
}

.is-introSkip .l-header {
    opacity: 1;
    transition-delay: 0;
    transition-duration: 0s;
    -webkit-transform: translateY(0);
    transform: translateY(0)
}

.l-header_content {
    position: relative
}

@media only screen and (max-width:799px) {
    .l-header_content {
        position: fixed;
        top: 0;
        background: #fff;
        z-index: 1000;
        overflow-y: visible;
        width: 100%;
        min-height: 50px;
        box-shadow: 0 0 5px 1px rgba(0, 0, 0, .05)
    }

    [data-page-id=top] .l-header_content {
        background: none
    }
}

@media only screen and (max-width:799px) {
    .is-simple .l-header_content {
        box-shadow: none
    }
}

@media only screen and (max-width:799px) {
    .l-header_inner {
        position: relative;
        background: #fff;
        z-index: 1000;
        width: 100%;
        min-height: 50px
    }
}

.l-header_inner_logo {
    display: block;
    width: 115px;
    height: auto;

    text-decoration: none;
}




[data-page-id=top] .l-header_inner {
    background: none
}

.l-header_logo {
    position: absolute;
    top: 12px;
    left: 20px;
    width: 200px;
}

@media only screen and (max-width:799px) {
    .l-header_logo {
        top: 10px;
        left: 20px;
        left: 50%;
        width: 170px;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
    }

}

.is-simple .l-header_logo {
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.l-header_logo path,
.l-header_logo svg {
    fill: #ea4c89
}

.is-headerWhite .l-header_logo path,
.is-headerWhite .l-header_logo svg {
    fill: #fff
}

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

    .is-headerWhite .l-header_logo path,
    .is-headerWhite .l-header_logo svg {
        fill: #ea4c89
    }
}

@media only screen and (max-width:799px) {
    .l-header_logo img {
        width: 100%;
        height: auto
    }
}


.l-header_logo img {
    width: 100%;
}

.l-headerShare {
    position: absolute;
    top: 15px;
    left: 30px;
    display: flex
}

@media only screen and (max-width:799px) {
    .l-headerShare {
        left: 50%;
        display: none;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%)
    }
}

.l-headerShare_string {
    font-family: Montserrat;
    font-size: 14px;
    color: #fff;
    margin: 8px 10px 0 0
}

@media only screen and (max-width:799px) {
    .l-headerShare_string {
        display: none;
        font-size: 12px;
        margin-top: 10px
    }
}

.l-headerShare_button {
    position: relative;
    top: 6px;
    margin-right: 6px
}

.l-headerShare_button a {
    border-radius: 50%;
    background: #ea4c89;
    background: #fff;
    display: block;
    width: 25px;
    height: 25px;
    cursor: pointer
}

.l-headerShare_button:after {
    position: absolute;
    top: 2px;
    left: 6px;
    font-size: 13px;
    color: #fff;
    color: #ea4c89;
    pointer-events: none
}

.l-headerShare_button--twitter:after {
    content: ""
}

.l-headerShare_button--facebook:after {
    content: "";
    left: 6px
}

.c-button {
    position: relative;
    border: none;
    border-radius: 12px;
    display: inline-block;
    box-sizing: border-box;
    font-weight: 700;
    text-align: center;
    text-decoration: none;
    margin: 0 auto;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .25s;
    transition-property: all
}

@media only screen and (max-width:799px) {
    .c-button {
        display: block
    }
}

.c-button--searchLeft>a:hover:before {
    -webkit-transform: translateX(0) !important;
    transform: translateX(0) !important
}

.c-button a,
.c-button button {
    position: relative;
    border: none;
    border-radius: 8px;
    background: -webkit-gradient(linear, left top, right top, color-stop(20%, #ea4c89), to(#f86960));
    background: -webkit-linear-gradient(left, #ea4c89 20%, #f86960);
    background: linear-gradient(to right, #ea4c89 20%, #f86960);
    display: block;
    box-sizing: border-box;
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    text-decoration: none;
    width: 100%;
    padding: 14px 54px;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: opacity transform height
}

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

    .c-button a,
    .c-button button {
        font-size: 14px;
        padding: 14px 0
    }
}

.c-button a:after,
.c-button a:before,
.c-button button:after,
.c-button button:before {
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .25s;
    transition-property: all
}

.c-button a:hover:before,
.c-button button:hover:before {
    -webkit-transform: translateX(-7px);
    transform: translateX(-7px)
}

.c-button a:hover:after,
.c-button button:hover:after {
    -webkit-transform: translateY(-50%) translateX(7px);
    transform: translateY(-50%) translateX(7px)
}

.c-button:visited {
    color: #fff
}

.desktop .c-button a:hover,
.desktop .c-button button:hover {
    text-decoration: none;
    opacity: .8;
    cursor: pointer
}

.c-button--center,
.c-button--full {
    width: 100%
}

.c-button--center a,
.c-button--center button {
    display: inline-block;
    margin: auto
}

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

    .c-button--center a,
    .c-button--center button {
        display: block;
        width: 100%
    }
}

.c-button--black a,
.c-button--black button {
    background: #333
}

.c-button--border a,
.c-button--border button {
    border: 2px solid #ea4c89;
    background: #fff;
    color: #ea4c89
}

.c-button--blackBorder a,
.c-button--blackBorder button {
    border: 2px solid #333;
    background: #fff;
    color: #333
}

.c-button--whiteBorder a,
.c-button--whiteBorder button {
    border: 3px solid #eee;
    background: #fff;
    color: #333
}

.c-button--gray a,
.c-button--gray button {
    background: #888;
    color: #fff
}

.c-button--white a,
.c-button--white button {
    background: #fff;
    color: #ea4c89
}

.c-button--grayBorder a,
.c-button--grayBorder button {
    border: 3px solid #eee;
    background: #fff;
    color: #333
}

.c-button--back a,
.c-button--back button {
    background: #ddd;
    color: #888
}

.c-button--red a,
.c-button--red button {
    background: #ef0d0d;
    color: #fff
}

.c-button.is-disabled {
    width: 100%
}

.c-button.is-disabled a,
.c-button.is-disabled button {
    background: #888;
    pointer-events: none
}

.c-button--searchLeft a,
.c-button--searchLeft button {
    padding-right: 20px;
    padding-left: 20px
}

.c-button--searchLeft span {
    position: relative;
    padding-left: 30px
}

.c-button--searchLeft span:before {
    content: "";
    position: absolute;
    left: -5px;
    font-size: 30px;
    margin-top: -2px
}

.c-button--arrowRight a,
.c-button--arrowRight button {
    position: relative;
    display: block
}

.c-button--arrowRight a:after,
.c-button--arrowRight button:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 20px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.c-button--arrowLeft a:before,
.c-button--arrowLeft button:before {
    content: "";
    position: absolute;
    left: 20px
}

.c-button--arrowBottom a:before,
.c-button--arrowBottom button:before {
    content: "";
    position: relative;
    top: 2px;
    margin-right: 20px
}

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

    .c-button--primary a,
    .c-button--primary button {
        font-size: 16px;
        padding: 20px 0
    }
}

.c-button--s {
    font-size: 12px
}

.c-button--wide {
    display: block;
    text-align: center;
    width: 100%
}

.c-button--sm,
.c-button--xs {
    width: 40%
}

.c-button--md {
    width: 50%
}

.c-button--edit {
    border-right: 6px
}

.c-button--edit a,
.c-button--edit button {
    background: #f3f3f3;
    color: #ea4c89;
    padding: 5px 40px
}

.c-button--delete {
    border-right: 6px
}

.c-button--delete a,
.c-button--delete button {
    background: #ffefef;
    color: #ef0d0d
}

.c-form {
    position: relative
}

[data-page-id=saunaRegister] .c-form {
    background: none
}

@media only screen and (max-width:799px) {
    [data-page-id=saunaRegister] .c-form .l-content {
        border-bottom: 1px dotted #ddd;
        padding-bottom: 30px
    }
}

@media only screen and (max-width:799px) {
    [data-page-id=saunaRegister] .c-form .c-headline--lv3 {
        margin-bottom: -5px;
        margin-left: 20px
    }
}

.c-form_hidden {
    display: none
}

.c-form_advice {
    display: block;
    font-size: 18px;
    font-weight: 700;
    color: #ea4c89;
    margin: 0 0 30px
}

@media only screen and (max-width:799px) {
    .c-form_advice {
        font-size: 14px;
        margin: 0 0 20px
    }
}

.c-form_helpText {
    font-size: 14px;
    margin-bottom: 10px
}

.c-form_helpText.is-bottom {
    margin-top: 10px;
    margin-bottom: 0
}

.c-form_helpIcon {
    border-radius: 50%;
    background: #f1f1f1;
    display: inline-block;
    font-family: Montserrat;
    font-size: 16px;
    font-weight: 700;
    line-height: 24px;
    color: #888;
    text-align: center;
    width: 24px;
    height: 24px;
    margin-left: 10px;
    cursor: pointer
}

.c-form_allCheck {
    display: block;
    font-weight: 700;
    margin: 0 0 30px
}

@media only screen and (max-width:799px) {
    .c-form .c-headline--lv3 {
        margin-left: 20px
    }
}

.c-form_thanksMessage {
    margin: 0 0 60px
}

@media only screen and (max-width:799px) {
    .c-form_thanksMessage {
        margin-bottom: 40px
    }
}

.c-form_share {
    border-radius: 8px;
    background: #f2f2f2;
    text-align: center;
    width: 400px;
    margin: 0 auto 20px;
    padding: 20px 0
}

@media only screen and (max-width:799px) {
    .c-form_share {
        width: 100%
    }
}

.c-form_share strong {
    display: block;
    margin-bottom: 10px
}

.c-form_button {
    position: relative;
    box-sizing: border-box;
    width: 1100px;
    margin-right: auto;
    margin-left: auto
}

@media only screen and (max-width:799px) {
    .c-form_button {
        width: 100%;
        padding: 0 20px
    }
}

.c-form_button--full {
    width: 100%
}

.c-form_button .c-button {
    display: block;
    width: 400px;
    height: 70px;
    margin: 0 auto 10px
}

@media only screen and (max-width:799px) {
    .c-form_button .c-button {
        width: 100%
    }
}

.c-form_button .c-button a {
    font-size: 18px;
    line-height: 70px;
    padding: 0
}

.c-form_button .c-button--back {
    position: absolute;
    top: 0;
    left: 0;
    width: 100px;
    height: 50px
}

@media only screen and (max-width:799px) {
    .c-form_button .c-button--back {
        position: relative;
        width: 100%;
        margin: 20px 0 0
    }
}

.c-form_button .c-button--back a {
    line-height: 50px
}

.c-form_text {
    margin-bottom: 2em
}

.c-form_close {
    font-weight: 700;
    text-align: center;
    padding-top: 20px
}

.c-form_close a {
    color: #888
}

.c-form_placeSearch {
    margin-top: 10px
}

.c-form_placeSearch button {
    font-size: 14px;
    font-weight: 700;
    padding: 5px 15px
}

.c-formTable {
    width: 100%
}

.c-formTable.is-clone {
    display: none
}

.c-formTable.is-addForm {
    margin: 20px 0
}

.c-formTable.is-addForm tr:first-child .c-formTable_td,
.c-formTable.is-addForm tr:first-child .c-formTable_th {
    border-top: 1px solid #f1f1f1;
    padding-top: 20px
}

.c-formTable.is-addForm:first-of-type tr:first-child .c-formTable_td,
.c-formTable.is-addForm:first-of-type tr:first-child .c-formTable_th {
    border-top: none;
    padding-top: 0
}

.c-formTable.has-border tr:first-child .c-formTable_td,
.c-formTable.has-border tr:first-child .c-formTable_th {
    border-top: 5px solid #ddd;
    padding-top: 20px
}

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

    .c-formTable.has-border tr:first-child .c-formTable_td,
    .c-formTable.has-border tr:first-child .c-formTable_th {
        border-top: none
    }
}

@media only screen and (max-width:799px) {
    .c-formTable.has-border tr:first-child .c-formTable_th:first-of-type {
        border-top: 5px solid #ddd
    }
}

.c-formTable_thLabel {
    position: relative;
    top: 5px;
    border-radius: 2px;
    font-size: 10px;
    line-height: 1;
    float: right;
    margin-left: 20px;
    padding: 3px 6px
}

@media only screen and (max-width:799px) {
    .c-formTable_thLabel {
        top: 0;
        float: none;
        margin-left: 10px;
        padding: 1px 4px
    }
}

.c-formTable_thLabel--blue {
    background: #ea4c89;
    color: #fff
}

.c-formTable_thLabel--red {
    background: #ef0d0d;
    color: #fff
}

.c-formTable_thLabel--gray {
    background: #888;
    color: #fff
}

.c-formTable_thLabel.is-favorite {
    top: -6px
}

@media only screen and (max-width:799px) {
    .c-formTable_thLabel.is-favorite {
        top: 0
    }
}

.c-formTable tr:first-child .c-formTable_td,
.c-formTable tr:first-child .c-formTable_th {
    padding-top: 0
}

.c-formTable tr:last-child .c-formTable_td,
.c-formTable tr:last-child .c-formTable_th {
    border-bottom: none
}

tr.is-grouping+tr .c-formTable_td,
tr.is-grouping+tr .c-formTable_th {
    padding-top: 10px
}

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

    .c-formTable tbody,
    .c-formTable tr {
        display: block;
        width: 100%
    }
}

.c-formTable_td,
.c-formTable_th {
    position: relative;
    border-bottom: 1px solid #f1f1f1;
    font-size: 16px;
    vertical-align: top;
    vertical-align: middle;
    padding: 20px 0
}

.c-formTable_td:after,
.c-formTable_th:after {
    display: block;
    content: "";
    visibility: hidden;
    clear: both;
    height: 0
}

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

    .c-formTable_td,
    .c-formTable_th {
        display: block;
        font-size: 14px;
        width: 100%
    }
}

.is-grouping .c-formTable_td,
.is-grouping .c-formTable_th {
    border-bottom: none;
    padding-bottom: 0
}

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

    .c-formTable_td.is-stove .c-formRadio,
    .c-formTable_th.is-stove .c-formRadio {
        margin-top: 10px
    }
}

.c-formTable_td.is-stove .c-formRadio:last-of-type,
.c-formTable_th.is-stove .c-formRadio:last-of-type {
    margin-top: 20px
}

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

    .c-formTable_td.is-stove .c-formRadio:last-of-type,
    .c-formTable_th.is-stove .c-formRadio:last-of-type {
        margin-top: 10px
    }
}

.c-formTable_th {
    width: 180px
}

@media only screen and (max-width:799px) {
    .c-formTable_th {
        border-bottom: none;
        width: 100%;
        padding-bottom: 5px
    }
}

.c-formTable_th small {
    font-size: 12px
}

.c-formTable_th--sub {
    font-weight: 700;
    color: #888;
    width: 100px
}

@media only screen and (max-width:799px) {
    .c-formTable_th--sub {
        width: 100%
    }
}

@media only screen and (max-width:799px) {
    .is-grouping .c-formTable_th {
        padding-bottom: 15px
    }
}

@media only screen and (max-width:799px) {
    .c-formTable_th.is-empty {
        display: none
    }
}

@media only screen and (max-width:799px) {
    .c-formTable--sub+.c-formTable_td {
        border: none
    }
}

.c-formTable_td {
    font-weight: 400;
    padding-left: 25px
}

@media only screen and (max-width:799px) {
    .c-formTable_td {
        border-bottom: 1px solid #f1f1f1;
        padding-top: 5px;
        padding-left: 0
    }
}

.c-formTable_td.is-noPadding {
    padding-left: 0
}

.c-formTable_td.is-button {
    width: calc(100% - 180px);
    padding-right: 0;
    padding-left: 0
}

@media only screen and (max-width:799px) {
    .c-formTable_td.is-button {
        width: 100%
    }
}

.c-formAttention {
    margin: 0 0 70px
}

.c-formAttention_headline {
    font-size: 24px;
    font-weight: 700;
    line-height: 1;
    margin: 0 0 40px
}

.c-formAttention_lists {
    margin: 0 0 25px
}

.c-formAttention_list {
    font-size: 16px;
    text-indent: -1em;
    padding-left: 1em
}

.c-formAttention_text {
    font-size: 16px;
    margin: 0 0 25px
}

.c-formSteps {
    text-align: center;
    overflow: hidden;
    padding: 20px 0
}

.c-formSteps_step {
    position: relative;
    display: inline-block;
    font-weight: 700;
    margin: 0 30px;
    padding: 2px 0
}

.c-formSteps_step:after {
    content: ""
}

@media only screen and (max-width:799px) {
    .c-formSteps_step {
        font-size: 14px;
        margin: 0 10px
    }
}

.c-formSteps_step.is-active {
    color: #ea4c89
}

.c-formSteps_step.is-active:before {
    display: block
}

.c-formSteps_step:before {
    position: absolute;
    bottom: 0;
    left: 0;
    background: #ea4c89;
    display: none;
    content: "";
    width: 100%;
    height: 2px
}

.c-formSteps_step:after {
    position: absolute;
    top: 1px;
    right: -40px;
    font-size: 20px;
    color: #888
}

@media only screen and (max-width:799px) {
    .c-formSteps_step:after {
        top: 8px;
        right: -20px;
        font-size: 12px
    }
}

.c-formSteps_step:last-child:after {
    display: none
}

@media only screen and (max-width:799px) {
    .c-formSteps_number {
        display: block;
        font-size: 18px
    }
}

.c-formSteps_number:after {
    content: "."
}

@media only screen and (max-width:799px) {
    .c-formSteps_number:after {
        display: none
    }
}

.c-formThanksMessage {
    text-align: center;
    margin: 20px 0 0
}

.c-formThanksMessage_headline {
    font-size: 24px;
    font-weight: 700;
    line-height: 1;
    margin: 0 0 35px
}

.c-formThanksMessage_text {
    font-size: 16px;
    margin: 0 0 55px
}

.c-formThanksMessage .button a {
    width: 220px;
    padding-right: 0;
    padding-left: 0
}

.c-formError,
p.c-formError {
    font-weight: 700;
    color: #ef0d0d;
    margin: 0 0 10px
}

.c-formText {
    position: relative;
    border: 3px solid #eee;
    border-radius: 8px
}

.c-formText,
.c-formText.is-required {
    background: #fff
}

.c-formText.is-required--clear {
    border: 2px solid #dedede !important;
    background: #fff !important
}

.c-formText.is-error {
    border-color: #ef0d0d;
    background: #fff4f4
}

.c-formText--inlineBlock {
    display: inline-block
}

.c-formText--postcode {
    width: 200px
}

.c-formText--ss {
    width: 80px;
    margin-right: 10px
}

@media only screen and (max-width:799px) {
    .c-formText--ss {
        width: 60px
    }
}

.c-formText--sm {
    width: 100px;
    margin-right: 10px
}

.c-formText--md {
    width: 200px;
    margin-right: 10px
}

.c-formText--lg {
    width: 400px;
    margin-right: 10px
}

@media only screen and (max-width:799px) {
    .c-formText--lg {
        width: 100%;
        margin-bottom: 20px
    }
}

.c-formText--half {
    width: calc(50% - 10px)
}

.c-formText--after {
    padding-right: 20px
}

.c-formText_pseudo {
    position: relative;
    box-sizing: border-box;
    font-size: 16px;
    line-height: 18px;
    z-index: 1000;
    height: 46px;
    padding: 14px
}

.c-formText_pseudo:after {
    content: "";
    position: absolute;
    top: 13px;
    right: 5px;
    font-size: 35px
}

@media only screen and (max-width:799px) {
    .c-formText_pseudo:after {
        top: 11px;
        font-size: 32px
    }
}

.c-formText--hidden input {
    position: absolute;
    top: 0
}

.c-formText input {
    border: none;
    background: none;
    display: inline-block;
    box-sizing: border-box;
    font-size: 16px;
    vertical-align: middle;
    width: 100%;
    padding: 14px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none
}

@media only screen and (max-width:799px) {
    .c-formText input {
        font-size: 14px
    }
}

.c-formText_after {
    position: absolute;
    top: 9px;
    right: 12px
}

.c-formTextGroup {
    display: flex
}

.c-formTextGroup_headline {
    margin-right: 10px
}

.c-formTextGroup_form {
    display: flex;
    align-items: center
}

.c-formTextGroup_item {
    margin-right: 20px
}

@media only screen and (max-width:799px) {
    .c-formTextGroup_item {
        margin-right: 10px
    }
}

.c-formTextGroup_item:last-of-type {
    margin-right: 0
}

.c-formTextarea {
    border: 3px solid #eee;
    border-radius: 8px;
    background: #fff;
    display: inline-block;
    box-sizing: border-box;
    line-height: 1.75;
    width: 100%;
    padding: 10px
}

.c-formTextarea.is-required {
    background: #fff
}

.c-formTextarea.is-required--clear {
    border: 2px solid #dedede !important;
    background: #fff !important
}

.c-formTextarea.is-error,
.is-error .c-formTextarea {
    border-color: red
}

.c-formTextarea.has-marginTop {
    margin-top: 15px
}

.c-formTextarea.has-marginBottom {
    margin-bottom: 15px
}

.c-formTextarea textarea {
    border: none;
    background: #fff;
    box-sizing: border-box;
    font-size: 16px;
    vertical-align: middle;
    width: 100%;
    height: 100px;
    min-height: 120px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none
}

@media only screen and (max-width:799px) {
    .c-formTextarea textarea {
        font-size: 14px
    }
}

.c-formSelect {
    position: relative;
    border: 3px solid #eee;
    border-radius: 8px;
    background: #fff;
    display: inline-block;
    box-sizing: border-box;
    font-size: 0;
    vertical-align: middle;
    opacity: 1;
    overflow: hidden;
    margin-right: 15px;
    padding: 3px 0;
    transition: border .2s ease-out
}

.c-formSelect:before {
    content: ""
}

.c-formSelect.is-required {
    background: #fff
}

.c-formSelect.is-required--clear {
    border: 2px solid #dedede !important;
    background: #fff !important
}

.c-formSelect.is-error,
.is-error .c-formSelect {
    border-color: red
}

.c-formSelect.has-marginTop {
    margin-top: 15px
}

.c-formSelect.has-marginBottom {
    margin-bottom: 15px
}

.c-formSelect--year.c-formSelect {
    width: 150px
}

@media only screen and (max-width:799px) {
    .c-formSelect--year.c-formSelect {
        width: 24%
    }

    .c-formSelect--year.c-formSelect:before {
        right: 8px
    }

    .c-formSelect--year.c-formSelect select {
        padding: 0 20px 0 10px
    }
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .c-formSelect--year.c-formSelect {
        margin-right: 5px;
        margin-left: 5px
    }
}

.c-formSelect--day.c-formSelect,
.c-formSelect--month.c-formSelect {
    width: 100px;
    margin-left: 20px
}

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

    .c-formSelect--day.c-formSelect,
    .c-formSelect--month.c-formSelect {
        width: 17%;
        margin-left: 10px
    }

    .c-formSelect--day.c-formSelect select,
    .c-formSelect--month.c-formSelect select {
        padding: 0 20px 0 10px
    }
}

@media only screen and (min-width:320px) and (max-width:374px) {

    .c-formSelect--day.c-formSelect,
    .c-formSelect--month.c-formSelect {
        margin-right: 5px;
        margin-left: 5px
    }
}

.c-formSelect:hover {
    border-color: #aaa
}

.c-formSelect_content {
    position: relative;
    z-index: 1
}

.c-formSelect select {
    border: 0;
    border-radius: 0;
    background: none transparent;
    box-sizing: content-box;
    font-size: 16px;
    line-height: 1;
    color: inherit;
    vertical-align: middle;
    width: 100%;
    height: 40px;
    margin: 0;
    padding: 0 40px 0 14px;
    cursor: pointer;
    appearance: none;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none
}

.ie9 .c-formSelect select {
    width: 100%;
    padding: 0
}

.c-formSelect select::-ms-value {
    background: none transparent;
    color: #000
}

.c-formSelect select::-ms-expand {
    display: none
}

.c-formSelect select option {
    background: #fff;
    color: #000
}

.c-formSelect:before {
    position: absolute;
    top: 15px;
    right: 16px;
    display: block;
    font-size: 12px;
    z-index: 0;
    pointer-events: none;
    width: 10px;
    height: 10px
}

.c-formCheckbox {
    display: inline-block;
    margin: 0 0 0 30px
}

.c-formCheckbox.is-required {
    background: #fff
}

.c-formCheckbox.is-required--clear {
    border: 2px solid #dedede !important;
    background: #fff !important
}

.c-formCheckbox.is-error,
.is-error .c-formCheckbox {
    border-color: red
}

.c-formCheckbox.has-marginTop {
    margin-top: 15px
}

.c-formCheckbox.has-marginBottom {
    margin-bottom: 15px
}

.c-formCheckbox:first-of-type {
    margin-left: 0
}

.desktop .c-formCheckbox:hover input+label:after {
    color: #dedede
}

.c-formCheckbox input {
    display: none;
    vertical-align: middle
}

.c-formCheckbox label {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    padding-left: 45px;
    cursor: pointer
}

.c-formCheckbox label:after {
    content: ""
}

.c-formCheckbox label:after,
.c-formCheckbox label:before {
    position: absolute;
    top: 0;
    left: 0;
    border: 3px solid #eee;
    border-radius: 8px;
    background: #f7f7f7;
    display: block;
    box-sizing: border-box;
    width: 30px;
    height: 30px
}

.c-formCheckbox label:before {
    content: ""
}

.c-formCheckbox label:after {
    top: 0;
    left: 0;
    border: none;
    background: none;
    font-weight: 700;
    line-height: 30px;
    color: hsla(0, 0%, 100%, 0);
    text-align: center;
    width: 30px;
    transition: color .2s ease-out
}

.c-formCheckbox input:checked+label:after {
    background: #ea4c89;
    color: #fff
}

.c-formRadios {
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .c-formRadios {
        margin-top: 5px;
        margin-bottom: 5px
    }
}

.c-formRadio {
    display: inline-block;
    padding-bottom: 5px
}

@media only screen and (max-width:799px) {
    .c-formRadio {
        margin: 0 0 10px
    }
}

.c-formRadio.is-required {
    background: #faeef0
}

.c-formRadio.is-required--clear {
    border: 2px solid #dedede !important;
    background: #fff !important
}

.c-formRadio.is-error,
.is-error .c-formRadio {
    border-color: red
}

.c-formRadio input {
    display: none
}

.c-formRadio:hover input[type=radio]+label:after {
    color: #dedede
}

.c-formRadio label {
    position: relative;
    display: inline-block;
    font-size: 16px;
    line-height: 16px;
    text-align: center;
    vertical-align: middle;
    padding: 0 0 0 40px;
    cursor: pointer
}

.c-formRadio label:after {
    content: ""
}

.c-formRadio label:before {
    position: absolute;
    top: 9px;
    left: 0;
    border: 3px solid #eee;
    border-radius: 50%;
    background: #f7f7f7;
    box-sizing: border-box;
    content: "";
    width: 30px;
    height: 30px;
    margin-top: -15px
}

.c-formRadio label:nth-child(2) {
    margin-right: 20px
}

.c-formRadio input[type=radio]+label:after {
    position: absolute;
    top: 9px;
    left: 0;
    border: 3px solid #eee;
    border-radius: 50%;
    background: #f7f7f7;
    box-sizing: border-box;
    font-size: 16px;
    line-height: 25px;
    color: transparent;
    width: 30px;
    height: 30px;
    margin-top: -15px;
    transition: all .1s ease-out
}

.c-formRadio input[type=radio]:checked+label:after {
    border: 3px solid #ea4c89;
    background: #ea4c89;
    color: #ffffff;
}

.c-formSwitch {
    position: relative;
    border-radius: 4px;
    background: #eee;
    display: inline-block;
    width: 60px;
    height: 30px
}

.c-formSwitch.is-required {
    background: #fff
}

.c-formSwitch.is-required--clear {
    border: 2px solid #dedede !important;
    background: #fff !important
}

.c-formSwitch.is-error,
.is-error .c-formSwitch {
    border-color: red
}

.c-formSwitch.has-marginTop {
    margin-top: 15px
}

.c-formSwitch.has-marginBottom {
    margin-bottom: 15px
}

.c-formSwitch:first-of-type {
    margin-left: 0
}

.c-formSwitch:hover input+label:after {
    color: #dedede
}

.c-formSwitch input {
    display: none;
    vertical-align: middle
}

.c-formSwitch label {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    width: 100%;
    height: 30px;
    cursor: pointer
}

.c-formSwitch label:after,
.c-formSwitch label:before {
    position: absolute;
    top: 0;
    right: 0;
    border-radius: 0 4px 4px 0;
    background: #888;
    display: block;
    box-sizing: border-box;
    content: "";
    width: 30px;
    height: 30px
}

.c-formSwitch label:before {
    top: -1px;
    transition-timing-function: ease-out;
    transition-duration: .15s;
    transition-property: left background tansform
}

.c-formSwitch label:after {
    top: 50%;
    right: 8px;
    background: #fff;
    display: block;
    box-sizing: border-box;
    content: "";
    width: 15px;
    height: 2px;
    transition: left opacity .2s ease-out;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.c-formSwitch input:checked+label:before {
    border-radius: 4px 0 0 4px;
    background: #ea4c89;
    -webkit-transform: translateX(-30px);
    transform: translateX(-30px)
}

.c-formSwitch input:checked+label:after {
    left: 8px;
    border: 2px solid #fff;
    border-radius: 50%;
    background: none;
    width: 15px;
    height: 15px
}

.c-formSwitches_content {
    display: flex;
    flex-wrap: wrap;
    width: calc(100% + 50px)
}

@media only screen and (max-width:799px) {
    .c-formSwitches_content {
        width: calc(100% + 30px)
    }
}

.c-formSwitcheItem {
    border-bottom: 1px solid #f1f1f1;
    display: flex;
    justify-content: space-between;
    box-sizing: border-box;
    width: 33.3333%;
    margin-bottom: 20px;
    padding-right: 50px;
    padding-bottom: 20px;
    cursor: pointer
}

@media only screen and (max-width:799px) {
    .c-formSwitcheItem {
        width: 100%;
        margin-bottom: 10px;
        padding-right: 30px;
        padding-bottom: 10px
    }
}

.c-formSwitcheItem.is-toggleText {
    border-bottom: none;
    display: inline-block;
    width: 100%;
    margin-bottom: 10px;
    padding-bottom: 10px
}

.c-formSwitcheItem.is-toggleText:after {
    display: block;
    content: "";
    visibility: hidden;
    clear: both;
    height: 0
}

@media only screen and (max-width:799px) {
    .c-formSwitcheItem:last-child {
        border-bottom: none;
        margin-bottom: 0;
        padding-bottom: 0
    }
}

.c-formSwitcheItem:hover input+label:before {
    background: #a0a0a0
}

.c-formSwitcheItem:hover input:checked+label:before {
    background: #ea4c89
}

.c-formSwitcheItem_new {
    position: absolute;
    top: -12px;
    left: 0;
    font-size: 10px;
    color: #ef0d0d
}

@media only screen and (max-width:799px) {
    .c-formSwitcheItem_new {
        top: -7px;
        font-size: 7px
    }
}

.is-toggleText .c-formSwitcheItem_value {
    float: left;
    margin-right: 20px
}

.c-formSwitcheItem_key {
    position: relative;
    display: block;
    padding-right: 10px
}

.c-formSwitcheItem_key small {
    display: block;
    font-size: .8em;
    margin-left: -6px
}

.c-formDrag {
    border: 3px dashed #ddd;
    height: 320px;
    margin: 0 0 40px
}

.c-formDrag_content {
    position: relative;
    height: 100%
}

.c-formDrag_content input {
    display: none
}

.c-formDrag p {
    position: absolute;
    top: 50%;
    left: 50%;
    font-weight: 700;
    color: #888;
    text-align: center;
    margin: 40px 0 0;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.c-formDrag p:before {
    content: "";
    position: absolute;
    top: -110px;
    left: 50%;
    font-size: 80px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.c-formImages {
    display: flex;
    width: calc(100% + 30px);
    margin-left: -15px;
    flex-flow: wrap
}

.c-formImageItem {
    position: relative;
    width: 292px;
    margin: 0 15px 40px
}

@media only screen and (max-width:799px) {
    .c-formImageItem {
        width: 100%
    }
}

.c-formImageItem_headline {
    font-size: 16px;
    color: #888;
    margin: 0 0 5px
}

.c-formImageItem_preview {
    position: relative;
    background: #f2f2f2;
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: contain;
    width: 292px;
    height: 219px;
    margin: 0 0 10px
}

.c-formImageItem_preview:after {
    content: ""
}

@media only screen and (max-width:799px) {
    .c-formImageItem_preview {
        width: 100%;
        height: auto
    }
}

.is-current .c-formImageItem_preview:after {
    display: none
}

.c-formImageItem_preview img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain
}

@media only screen and (max-width:799px) {
    .c-formImageItem_preview:before {
        display: block;
        content: "";
        width: 100%;
        padding-top: 68.49315%
    }
}

.c-formImageItem_preview:after {
    position: absolute;
    top: 50%;
    left: 50%;
    font-size: 80px;
    color: #888;
    margin-top: 10px;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.is-upload .c-formImageItem_preview:after {
    display: none
}

.c-formImageItem_button {
    font-size: 0;
    width: 292px
}

@media only screen and (max-width:799px) {
    .c-formImageItem_button {
        width: 100%
    }
}

.c-formImageItem_button .c-button {
    width: 100%
}

.c-formImageItem_button .c-button a {
    font-size: 14px;
    padding: 7px 40px
}

@media only screen and (max-width:799px) {
    .c-formImageItem_button .c-button a {
        padding: 15px 40px
    }
}

.c-formImageItem_button .c-button--select {
    display: block
}

.is-upload .c-formImageItem_button .c-button--select {
    display: none
}

.c-formImageItem_button .c-button--delete {
    display: none;
    width: 100%
}

.is-upload .c-formImageItem_button .c-button--delete {
    display: block
}

.is-current .c-formImageItem_button .c-button--delete {
    margin-top: 10px
}

.c-formImageItem_caption {
    margin: 20px 0 0
}

@media only screen and (max-width:799px) {
    .c-formImageItem_caption {
        margin: 10px 0 0
    }
}

.c-formImageItem_caption>p {
    font-size: 12px;
    line-height: 1;
    margin-bottom: 5px
}

@media only screen and (max-width:799px) {
    .c-formImageItem_caption>p {
        font-size: 10px
    }
}

.c-formImageItem_caption input {
    font-size: 12px
}

.c-formImageItem>input {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 0;
    opacity: 0;
    width: 100%;
    height: 34px
}

.c-formImageItem.is-upload input {
    width: 48%
}

.c-headline+p.c-lead {
    margin-top: -20px;
    margin-bottom: 30px
}

@media only screen and (max-width:799px) {
    .c-headline+p.c-lead {
        margin-top: 0;
        margin-bottom: 20px
    }
}

.c-headline--lv1 {
    margin: 0 0 30px
}

@media only screen and (max-width:799px) {
    .c-headline--lv1 {
        margin: 0 0 10px
    }
}

.c-headline--lv2 {
    margin: 0 0 25px
}

@media only screen and (max-width:799px) {
    .c-headline--lv2 {
        margin-bottom: 20px
    }
}

.c-headline--lv2.is-simple:before {
    display: none
}

.c-headline--lv2:before {
    /*background: #ea4c89;*/
    display: block;
    content: "";
    width: 45px;
    height: 3px;
    margin-bottom: 18px
}

@media only screen and (max-width:799px) {
    .c-headline--lv2:before {
        width: 25px;
        margin-bottom: 10px
    }
}

.c-headline--lv3 {
    margin: 0 0 10px
}

@media only screen and (max-width:799px) {
    .c-headline--lv3 {
        margin-bottom: 5px
    }
}

.c-headline--lv3:before {
    position: relative;
    top: 2px;
    border-right: 2px;
    border-radius: 3px;
    background: #ea4c89;
    display: inline-block;
    content: "";
    width: 18px;
    height: 18px;
    margin: 0 15px 0 0
}

@media only screen and (max-width:799px) {
    .c-headline--lv3:before {
        top: 1px;
        width: 13px;
        height: 13px;
        margin-right: 10px
    }
}

.c-headline--lv4 {
    display: block;
    margin: 0 0 15px
}

.c-headline--lv1 .c-headline_string {
    font-size: 34px;
    line-height: 1.5
}

@media only screen and (max-width:799px) {
    .c-headline--lv1 .c-headline_string {
        font-size: 24px;
        line-height: 1.25
    }
}

.c-headline--lv2 .c-headline_string {
    font-size: 26px
}

@media only screen and (max-width:799px) {
    .c-headline--lv2 .c-headline_string {
        font-size: 20px
    }
}

.c-headline--lv3 .c-headline_string {
    font-size: 20px
}

@media only screen and (max-width:799px) {
    .c-headline--lv3 .c-headline_string {
        font-size: 15px
    }
}

.c-lead {
    margin-bottom: 20px;
    line-height: 1.6;
    font-size: 16px
}

@media only screen and (max-width:799px) {
    .c-lead {
        font-size: 13px
    }
}

@media only screen and (max-width:799px) {
    .c-lead br {
        display: none
    }
}

.c-lead a {
    text-decoration: underline
}

.c-lead a:hover {
    text-decoration: none
}

.c-pagenation {
    position: relative;
    font-size: 0;
    text-align: center
}

.c-pagenation_link {
    position: relative;
    display: inline-block;
    line-height: 1;
    line-height: 40px;
    color: #222;
    width: 40px;
    height: 40px;
    margin: 0 5px 5px
}

@media only screen and (max-width:799px) {
    .c-pagenation_link {
        margin: 0 2px 5px
    }
}

.c-pagenation_link:first-child {
    margin-left: 0
}

.c-pagenation_link:last-child {
    margin-right: 0
}

.c-pagenation_link.is-current a,
.c-pagenation_link.is-current span {
    background: #222;
    color: #fff
}

.c-pagenation_link.is-current a,
.c-pagenation_link.is-current span,
.c-pagenation_link a {
    border-radius: 50%;
    display: block;
    font-size: 16px;
    font-weight: 700;
    line-height: 38px;
    width: 40px;
    height: 40px
}

.c-pagenation_link a {
    box-sizing: border-box;
    color: #888;
    text-align: center;
    text-decoration: none;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .2s;
    transition-property: all
}

@media only screen and (max-width:799px) {
    .c-pagenation_link a {
        font-size: 14px
    }
}

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

    .c-pagenation_link a:after,
    .c-pagenation_link a:before {
        font-size: 10px
    }
}

.c-pagenation_link a:hover {
    background: #222;
    color: #fff;
    text-decoration: none
}

.c-pagenation_link--prev {
    position: relative;
    top: 2px
}

.c-pagenation_link--prev a {
    border: 2px solid #222;
    color: #222
}

.c-pagenation_link--prev a:before {
    content: "";
    position: relative;
    top: -1px;
    left: -1px
}

.c-pagenation_link .previouspostslink {
    position: relative;
    top: 2px;
    border: 2px solid #222;
    color: #222
}

.c-pagenation_link .previouspostslink:before {
    content: "";
    position: relative;
    top: -1px;
    left: -1px
}

.c-pagenation_link--next {
    position: relative;
    top: 2px
}

.c-pagenation_link--next a {
    border: 2px solid #222;
    box-sizing: border-box;
    color: #222
}

.c-pagenation_link--next a:after {
    content: "";
    position: relative;
    top: -1px;
    right: -1px
}

.c-pagenation_link .nextpostslink {
    position: relative;
    top: 2px;
    border: 2px solid #222;
    color: #222
}

.c-pagenation_link .nextpostslink:after {
    content: "";
    position: relative;
    top: -1px;
    right: -1px
}

.c-paging {
    text-align: center;
    margin: 0 0 30px;
    position: relative
}

.c-paging_link {
    display: inline-block;
    position: relative;
    color: #1da1f2
}

.c-paging_link a {
    display: block;
    font-size: 16px
}

@media only screen and (max-width:799px) {
    .c-paging_link a {
        font-size: 12px
    }
}

.c-paging_link a:hover {
    text-decoration: none
}

.c-paging_link--prev {
    position: absolute;
    top: 10px;
    left: 0
}

.c-paging_link--prev a {
    padding-left: 15px
}

.c-paging_link--prev a:before {
    content: "";
    position: relative;
    top: 3px;
    left: -15px;
    transition: all .6s cubic-bezier(.19, 1, .22, 1);
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1
}

.c-paging_link--prev a:hover:before {
    color: #999;
    left: -18px
}

.c-paging_link--next {
    position: absolute;
    top: 10px;
    right: 0
}

.c-paging_link--next a {
    padding-right: 15px
}

.c-paging_link--next a:after {
    content: "";
    position: relative;
    top: 3px;
    right: -17px;
    transition: all .6s cubic-bezier(.19, 1, .22, 1);
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1
}

.c-paging_link--next a:hover:after {
    color: #999;
    right: -20px
}

.c-paging_link--list a {
    padding: 10px 50px 10px 80px;
    border: 1px solid #000
}

@media only screen and (max-width:799px) {
    .c-paging_link--list a {
        padding: 10px 20px 10px 40px
    }
}

.c-paging_link--list a:hover .c-nextPrev_link_icon--1 {
    -webkit-transform: translate(-3px, 4px);
    transform: translate(-3px, 4px);
    background: #999
}

.c-paging_link--list a:hover .c-nextPrev_link_icon--2 {
    -webkit-transform: translate(-6px, -1px);
    transform: translate(-6px, -1px);
    background: #999
}

.c-paging_link--list a:hover .c-nextPrev_link_icon--3 {
    -webkit-transform: translate(-3px, -4px);
    transform: translate(-3px, -4px);
    background: #999
}

.c-paging_link--list a:hover .c-nextPrev_link_icon--4 {
    -webkit-transform: translate(-6px, 1px);
    transform: translate(-6px, 1px);
    background: #999
}

.c-paging_link_icons {
    position: absolute;
    margin: 7px 0 0 -25px
}

@media only screen and (max-width:799px) {
    .c-paging_link_icons {
        margin: 3px 0 0 -25px
    }
}

.c-paging_link_icon {
    display: block;
    width: 5px;
    height: 5px;
    background: #000;
    position: absolute;
    transition: all .6s cubic-bezier(.19, 1, .22, 1)
}

.c-paging_link_icon--2 {
    top: 0;
    left: 8px
}

.c-paging_link_icon--3 {
    top: 8px
}

.c-paging_link_icon--4 {
    top: 8px;
    left: 8px
}

.c-shareButtons {
    display: flex
}

@media only screen and (max-width:799px) {
    .c-shareButtons {
        display: block
    }
}

.c-share {
    display: inline-block;
    margin: 0 10px 0 0
}

@media only screen and (max-width:799px) {
    .c-share {
        height: 28px;
        margin-bottom: 10px
    }
}

.c-share:last-child {
    margin-right: 0
}

.c-share.c-share--wide {
    display: block;
    width: 50%
}

.c-share.c-share--wide.c-share--facebook a {
    background: #2f5cad
}

.c-share.c-share--wide>a {
    border: none;
    background: #ea4c89;
    background: #00a2f9;
    display: block;
    box-sizing: border-box;
    font-size: 16px;
    line-height: 50px;
    color: #fff;
    text-align: center;
    width: 100%;
    height: 50px
}

@media only screen and (max-width:799px) {
    .c-share.c-share--wide>a {
        font-size: 14px
    }
}

.c-share.c-share--wide>a span {
    position: relative;
    top: -3px;
    padding-left: 25px
}

@media only screen and (max-width:799px) {
    .c-share.c-share--wide>a span {
        top: -4px
    }
}

.c-share.c-share--wide>a span:before {
    top: 0;
    font-size: 20px;
    line-height: 24px;
    color: #fff;
    height: 24px
}

@media only screen and (max-width:799px) {
    .c-share.c-share--wide>a span:before {
        font-size: 18px;
        line-height: 20px;
        height: 20px
    }
}

.c-share a {
    border: 1px solid #ddd;
    border-radius: 6px;
    background: #fff;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    color: #333;
    text-decoration: none;
    padding: 4px 12px;
    cursor: pointer;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .25s;
    transition-property: all
}

@media only screen and (max-width:799px) {
    .c-share a {
        font-size: 13px;
        padding: 4px 8px
    }
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .c-share a {
        font-size: 12px
    }
}

.desktop .c-share a:hover {
    border: 1px solid #ea4c89;
    background: #ea4c89;
    color: #fff;
    text-decoration: none
}

.desktop .c-share a:hover span:before {
    color: #fff;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .25s;
    transition-property: all
}

.c-share a span {
    position: relative;
    padding-left: 20px
}

@media only screen and (max-width:799px) {
    .c-share a span {
        padding-left: 17px
    }
}

.c-share a span:before {
    position: absolute;
    top: 3px;
    left: 0;
    margin: 0 5px 0 0
}

.c-share--twitter span:before {
    content: "";
    color: #00a2f9
}

.c-share--facebook span:before {
    content: "";
    color: #2f5cad
}

.c-share--line span:before {
    content: "";
    color: #23cb57
}

.c-shareCircle_content {
    display: flex;
    justify-content: center
}

.c-shareCircle_item {
    color: #fff;
    text-align: center;
    margin: 0 10px
}

.c-shareCircle_item span {
    font-size: 12px
}

.c-shareCircle_item a {
    display: block;
    pointer-events: all;
    cursor: pointer
}

.c-shareCircle_item a>textarea {
    position: absolute;
    top: 0;
    left: 0;
    pointer-events: none;
    opacity: 0
}

.c-shareCircle_item a:hover {
    text-decoration: none
}

.c-shareCircle_icon {
    position: relative;
    border-radius: 100%;
    background: #ddd;
    display: flex;
    align-content: center;
    justify-content: center;
    width: 60px;
    height: 60px;
    margin: auto auto 5px
}

.is-tweet .c-shareCircle_icon {
    background: #00a2f9
}

.is-tweet .c-shareCircle_icon:after {
    content: ""
}

.is-line .c-shareCircle_icon {
    background: #23cb57
}

.is-line .c-shareCircle_icon:after {
    content: ""
}

.is-copy .c-shareCircle_icon {
    background: #ea4c89
}

.is-copy .c-shareCircle_icon:after {
    content: ""
}

.c-shareCircle_icon:after {
    position: absolute;
    top: 50%;
    left: 50%;
    font-size: 22px;
    color: #fff;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.c-table_td,
.c-table_th {
    border-top: 1px solid #eee;
    font-size: 16px;
    padding: 15px 0
}

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

    .c-table_td,
    .c-table_th {
        font-size: 14px;
        padding: 10px 15px 10px 0
    }
}

.c-table_th {
    width: 130px
}

@media only screen and (max-width:799px) {
    .c-table_th {
        width: 85px
    }
}

.c-table_td a {
    text-decoration: underline
}

.desktop .c-table_td a:hover {
    text-decoration: none;
    opacity: .7
}

.c-tableCompany_name {
    display: block;
    margin-top: 20px
}

@media only screen and (max-width:799px) {
    .c-tableCompany_name {
        margin-top: 0
    }
}

.c-tableCompany p:first-of-type>strong {
    margin-top: 0
}

.c-breadcrumb {
    box-sizing: border-box;
    width: 1100px;
    margin: 40px auto
}

@media only screen and (max-width:799px) {
    .c-breadcrumb {
        width: 100%;
        overflow-x: auto;
        overflow-y: hidden;
        margin: 0 auto;
        padding: 20px 0 20px 20px;
        -webkit-overflow-scrolling: touch
    }
}

@media only screen and (max-width:799px) {
    .c-breadcrumb_links {
        white-space: nowrap;
        padding-right: 20px
    }
}

.c-breadcrumb_link {
    display: inline-block;
    font-size: 12px;
    font-weight: 300;
    padding: 0 10px 0 0
}

@media only screen and (max-width:799px) {
    .c-breadcrumb_link {
        padding: 0 0 0 5px
    }
}

.c-breadcrumb_link:after {
    content: ""
}

@media only screen and (max-width:799px) {
    .c-breadcrumb_link:first-of-type {
        padding-left: 0
    }
}

@media only screen and (max-width:799px) {
    .c-breadcrumb_link:last-of-type {
        padding-right: 20px
    }
}

.c-breadcrumb_link a:hover {
    text-decoration: none;
    opacity: .7
}

.c-breadcrumb_link:last-child:after {
    display: none
}

.c-breadcrumb_link:after {
    position: relative;
    top: 1px;
    font-size: 10px;
    margin: 0 0 0 12px
}

@media only screen and (max-width:799px) {
    .c-breadcrumb_link:after {
        font-size: 8px;
        margin-left: 8px
    }
}

.c-tab_hidden {
    display: none
}

.c-tab_action {
    margin: 0 0 20px;
    position: relative;
    z-index: 10;
    background: #fff
}

.c-tab_buttons {
    display: flex;
    border: 1px solid #ddd;
    border-radius: 8px
}

@media only screen and (max-width:799px) {
    .c-tab_buttons {
        border-radius: 6px
    }
}

.c-tab_button {
    width: 50%;
    text-align: center;
    list-style-type: none;
    border-right: 1px solid #eee
}

.c-tab--1 .c-tab_button {
    width: 100%
}

.c-tab--1 .c-tab_button a {
    border-radius: 8px !important
}

@media only screen and (max-width:799px) {
    .c-tab_button small {
        font-size: 11px;
        margin-left: -5px
    }
}

.c-tab--3 .c-tab_button:nth-of-type(2) a.is-active {
    border-radius: 0
}

@media only screen and (max-width:799px) {
    .c-tab--3 .c-tab_button:nth-of-type(2) a.is-active {
        border-radius: 0
    }
}

.c-tab_button:last-of-type {
    border-right: none
}

.c-tab_button:last-of-type a.is-active {
    border-radius: 0 8px 8px 0
}

@media only screen and (max-width:799px) {
    .c-tab_button:last-of-type a.is-active {
        border-radius: 0 6px 6px 0
    }
}

.c-tab_button a {
    font-size: 16px;
    display: block;
    padding: 7px 0;
    font-weight: 700;
    color: #999;
    position: relative;
    cursor: pointer;
    text-decoration: none
}

@media only screen and (max-width:799px) {
    .c-tab_button a {
        padding: 5px 0;
        font-size: 14px
    }
}

.desktop .c-tab_button a:hover {
    text-decoration: none;
    opacity: .7
}

.c-tab_button a.is-active {
    color: #fff;
    background: #333;
    border-radius: 8px 0 0 8px
}

@media only screen and (max-width:799px) {
    .c-tab_button a.is-active {
        border-radius: 6px 0 0 6px
    }
}

.c-tab_button a.is-active:after {
    position: absolute;
    bottom: -5px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    content: "";
    width: 0;
    height: 0;
    border-color: #222 transparent transparent;
    border-style: solid;
    border-width: 5px 6px 0 5px;
    display: none
}

@media only screen and (max-width:799px) {
    .c-tab_button a.is-active:after {
        bottom: -6px;
        border-width: 6px 7px 0
    }
}

.c-loading {
    position: fixed;
    top: 0;
    left: 0;
    background: hsla(0, 0%, 100%, .9);
    z-index: 0;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    width: 100vw;
    height: 100vh;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .35s;
    transition-property: all
}

.is-loading .c-loading,
[data-page-id=saunaSearch] .c-loading {
    z-index: 1001;
    opacity: 1;
    visibility: visible
}

.is-loadingHide .c-loading {
    opacity: 0;
    visibility: hidden
}

.c-loading_content {
    position: absolute;
    top: 50%;
    left: 50%;
    font-size: 40px;
    font-weight: 700;
    text-align: center;
    width: 100%;
    margin-top: 30px;
    margin-left: 0;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

@media only screen and (max-width:799px) {
    .c-loading_content {
        margin-top: -40px;
        margin-left: 0
    }
}

.c-loading_icon {
    width: 140px;
    height: 140px;
    margin: auto
}

@media only screen and (max-width:799px) {
    .c-loading_icon {
        width: 100px;
        height: 100px
    }
}

.c-loading_icon span {
    font-size: 18px
}

.c-loading_icon img {
    width: 140px;
    height: auto;
    margin-bottom: -20px
}

@media only screen and (max-width:799px) {
    .c-loading_icon img {
        width: 100px;
        margin-left: 0
    }
}

.c-loading_spin {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 140px;
    height: 140px;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

@media only screen and (max-width:799px) {
    .c-loading_spin {
        width: 60px;
        height: 60px
    }
}

.c-loading_spin svg {
    width: 60px;
    height: 60px
}

.c-loading_spin .border {
    stroke: #ea4c89;
    stroke-dasharray: 251;
    stroke-dashoffset: 62.75;
    transition: stroke-dashoffset .35s cubic-bezier(.165, .84, .44, 1);
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-animation: spin 1s linear infinite;
    animation: spin 1s linear infinite
}

.c-flash {
    position: fixed;
    width: 100%;
    min-width: 600px;
    margin: 0 auto;
    top: 0;
    left: 0;
    right: 0;
    padding: 20px;
    text-align: center;
    z-index: 10000;
    color: #fff;
    transition: all .3s ease;
    opacity: 0;
    -webkit-transform: translateY(-80px);
    transform: translateY(-80px);
    -webkit-animation-name: flasFadeInOut;
    animation-name: flasFadeInOut;
    -webkit-animation-duration: 3s;
    animation-duration: 3s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -webkit-animation-timing-function: ease;
    animation-timing-function: ease
}

@media only screen and (max-width:799px) {
    .c-flash {
        min-width: 100%;
        padding: 15px
    }
}

.c-flash--error {
    background: rgba(239, 13, 13, .9);
    color: #fff
}

.c-flash--success {
    background: rgba(1, 81, 225, .9);
    color: #fff
}

.c-flash--draft {
    background: hsla(0, 0%, 86.7%, .9);
    color: #333
}

@-webkit-keyframes flasFadeInOut {
    0% {
        -webkit-transform: translateY(-80px);
        transform: translateY(-80px);
        opacity: 0
    }

    15% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }

    80% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }

    to {
        -webkit-transform: translateY(-60px);
        transform: translateY(-60px);
        opacity: 0
    }
}

@keyframes flasFadeInOut {
    0% {
        -webkit-transform: translateY(-80px);
        transform: translateY(-80px);
        opacity: 0
    }

    15% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }

    80% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }

    to {
        -webkit-transform: translateY(-60px);
        transform: translateY(-60px);
        opacity: 0
    }
}

.xdsoft_datetimepicker {
    border: 1px solid;
    border-color: #ccc #ccc #bbb;
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    padding: 2px 8px 8px 0
}

.xdsoft_datetimepicker .xdsoft_next,
.xdsoft_datetimepicker .xdsoft_prev,
.xdsoft_datetimepicker .xdsoft_today_button {
    opacity: .5
}

.xdsoft_datetimepicker .xdsoft_next:hover,
.xdsoft_datetimepicker .xdsoft_prev:hover,
.xdsoft_datetimepicker .xdsoft_today_button:hover {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"
}

.xdsoft_datetimepicker .xdsoft_label>.xdsoft_select>div>.xdsoft_option.xdsoft_current {
    background: #3af
}

.xdsoft_datetimepicker .xdsoft_month {
    width: 100px
}

.xdsoft_datetimepicker .xdsoft_year {
    width: 48px
}

.xdsoft_datetimepicker .xdsoft_calendar td>div {
    padding-right: 5px
}

.xdsoft_datetimepicker .xdsoft_calendar td,
.xdsoft_datetimepicker .xdsoft_calendar th {
    background: #f5f5f5;
    border: 1px solid #ddd;
    font-size: 12px;
    height: 25px
}

.xdsoft_datetimepicker .xdsoft_calendar th {
    background: #f1f1f1
}

.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_today {
    color: #3af
}

.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_current,
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_default,
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box>div>div.xdsoft_current {
    background: #3af
}

.xdsoft_datetimepicker .xdsoft_calendar td:hover,
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box>div>div:hover {
    background: #ff8000 !important
}

.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_current.xdsoft_disabled:hover,
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box>div>div.xdsoft_current.xdsoft_disabled:hover {
    box-shadow: inset 0 1px 3px 0 #178fe5 !important
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_label>.xdsoft_select>div>.xdsoft_option.xdsoft_current {
    background: #c50;
    box-shadow: inset 0 1px 3px 0 #b03e00
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td.xdsoft_current,
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td.xdsoft_default,
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_timepicker .xdsoft_time_box>div>div.xdsoft_current {
    background: #c50
}

.xdsoft_datetimepicker {
    box-shadow: 0 5px 15px -5px rgba(0, 0, 0, .506);
    background: #fff;
    border: 2px solid #dedede;
    border-radius: 6px;
    color: #333;
    font-family: Noto Sans Japanese, ヒラギノ角ゴ Pro W3, Hiragino Kaku Gothic Pro, メイリオ, Meiryo, ＭＳ Ｐゴシック, Osaka, sans-serif;
    padding: 2px 12px 12px 0;
    position: absolute;
    z-index: 9999;
    box-sizing: border-box;
    display: none;
    -webkit-transform: translate(-3px, 10px);
    transform: translate(-3px, 10px)
}

@media only screen and (max-width:799px) {
    .xdsoft_datetimepicker {
        width: 89.5% !important;
        -webkit-transform: translate(-3px, 10px);
        transform: translate(-3px, 10px)
    }
}

.xdsoft_datetimepicker.xdsoft_rtl {
    padding: 8px 0 8px 8px
}

.xdsoft_datetimepicker iframe {
    position: absolute;
    left: 0;
    top: 0;
    width: 75px;
    height: 210px;
    background: transparent;
    border: none
}

.xdsoft_datetimepicker button {
    border: none !important
}

.xdsoft_noselect {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    -o-user-select: none;
    user-select: none
}

.xdsoft_noselect::selection {
    background: transparent
}

.xdsoft_noselect::-moz-selection {
    background: transparent
}

.xdsoft_datetimepicker.xdsoft_inline {
    display: inline-block;
    position: static;
    box-shadow: none
}

.xdsoft_datetimepicker * {
    box-sizing: border-box;
    padding: 0;
    margin: 0
}

.xdsoft_datetimepicker .xdsoft_datepicker,
.xdsoft_datetimepicker .xdsoft_timepicker {
    display: none
}

.xdsoft_datetimepicker .xdsoft_datepicker.active,
.xdsoft_datetimepicker .xdsoft_timepicker.active {
    display: block
}

.xdsoft_datetimepicker .xdsoft_datepicker {
    width: 224px;
    float: left;
    margin-left: 8px
}

@media only screen and (max-width:799px) {
    .xdsoft_datetimepicker .xdsoft_datepicker {
        width: 100%
    }
}

.xdsoft_datetimepicker.xdsoft_rtl .xdsoft_datepicker {
    float: right;
    margin-right: 8px;
    margin-left: 0
}

.xdsoft_datetimepicker.xdsoft_showweeks .xdsoft_datepicker {
    width: 256px
}

.xdsoft_datetimepicker .xdsoft_timepicker {
    width: 58px;
    float: left;
    text-align: center;
    margin-left: 8px;
    margin-top: 0
}

.xdsoft_datetimepicker.xdsoft_rtl .xdsoft_timepicker {
    float: right;
    margin-right: 8px;
    margin-left: 0
}

.xdsoft_datetimepicker .xdsoft_datepicker.active+.xdsoft_timepicker {
    margin-top: 8px;
    margin-bottom: 3px
}

.xdsoft_datetimepicker .xdsoft_mounthpicker {
    position: relative;
    text-align: center
}

.xdsoft_datetimepicker .xdsoft_label i,
.xdsoft_datetimepicker .xdsoft_next,
.xdsoft_datetimepicker .xdsoft_prev,
.xdsoft_datetimepicker .xdsoft_today_button {
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAAAeCAYAAADaW7vzAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6Q0NBRjI1NjM0M0UwMTFFNDk4NkFGMzJFQkQzQjEwRUIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6Q0NBRjI1NjQ0M0UwMTFFNDk4NkFGMzJFQkQzQjEwRUIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpDQ0FGMjU2MTQzRTAxMUU0OTg2QUYzMkVCRDNCMTBFQiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpDQ0FGMjU2MjQzRTAxMUU0OTg2QUYzMkVCRDNCMTBFQiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PoNEP54AAAIOSURBVHja7Jq9TsMwEMcxrZD4WpBYeKUCe+kTMCACHZh4BFfHO/AAIHZGFhYkBBsSEqxsLCAgXKhbXYOTxh9pfJVP+qutnZ5s/5Lz2Y5I03QhWji2GIcgAokWgfCxNvcOCCGKqiSqhUp0laHOne05vdEyGMfkdxJDVjgwDlEQgYQBgx+ULJaWSXXS6r/ER5FBVR8VfGftTKcITNs+a1XpcFoExREIDF14AVIFxgQUS+h520cdud6wNkC0UBw6BCO/HoCYwBhD8QCkQ/x1mwDyD4plh4D6DDV0TAGyo4HcawLIBBSLDkHeH0Mg2yVP3l4TQMZQDDsEOl/MgHQqhMNuE0D+oBh0CIr8MAKyazBH9WyBuKxDWgbXfjNf32TZ1KWm/Ap1oSk/R53UtQ5xTh3LUlMmT8gt6g51Q9p+SobxgJQ/qmsfZhWywGFSl0yBjCLJCMgXail3b7+rumdVJ2YRss4cN+r6qAHDkPWjPjdJCF4n9RmAD/V9A/Wp4NQassDjwlB6XBiCxcJQWmZZb8THFilfy/lfrTvLghq2TqTHrRMTKNJ0sIhdo15RT+RpyWwFdY96UZ/LdQKBGjcXpcc1AlSFEfLmouD+1knuxBDUVrvOBmoOC/rEcN7OQxKVeJTCiAdUzUJhA2Oez9QTkp72OTVcxDcXY8iKNkxGAJXmJCOQwOa6dhyXsOa6XwEGAKdeb5ET3rQdAAAAAElFTkSuQmCC);
    transition-property: opacity;
    transition-duration: .15s;
    transition-timing-function: cubic-bezier(.645, .045, .355, 1)
}

.xdsoft_datetimepicker .xdsoft_label i {
    opacity: .5;
    background-position: -92px -19px;
    display: inline-block;
    width: 9px;
    height: 20px;
    vertical-align: middle
}

.xdsoft_datetimepicker .xdsoft_prev {
    float: left;
    background-position: -20px 0
}

.xdsoft_datetimepicker .xdsoft_today_button {
    float: left;
    background-position: -70px 0;
    margin-left: 5px
}

.xdsoft_datetimepicker .xdsoft_next {
    float: right;
    background-position: 0 0
}

.xdsoft_datetimepicker .xdsoft_next,
.xdsoft_datetimepicker .xdsoft_prev,
.xdsoft_datetimepicker .xdsoft_today_button {
    background-color: transparent;
    background-repeat: no-repeat;
    border: 0;
    cursor: pointer;
    display: block;
    height: 30px;
    opacity: .8;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
    outline: medium none;
    overflow: hidden;
    padding: 0;
    position: relative;
    text-indent: 100%;
    white-space: nowrap;
    width: 20px;
    min-width: 0
}

.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_next,
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_prev {
    float: none;
    background-position: -40px -15px;
    height: 15px;
    width: 30px;
    display: block;
    margin-left: 14px;
    margin-top: 7px
}

.xdsoft_datetimepicker.xdsoft_rtl .xdsoft_timepicker .xdsoft_next,
.xdsoft_datetimepicker.xdsoft_rtl .xdsoft_timepicker .xdsoft_prev {
    float: none;
    margin-left: 0;
    margin-right: 14px
}

.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_prev {
    background-position: -40px 0;
    margin-bottom: 7px;
    margin-top: 0
}

.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box {
    height: 151px;
    overflow: hidden;
    border-bottom: 1px solid #ddd
}

.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box>div>div {
    background: #f5f5f5;
    border-top: 1px solid #ddd;
    color: #666;
    font-size: 12px;
    text-align: center;
    border-collapse: collapse;
    cursor: pointer;
    border-bottom-width: 0;
    height: 25px;
    line-height: 25px
}

.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box>div>div:first-child {
    border-top-width: 0
}

.xdsoft_datetimepicker .xdsoft_next:hover,
.xdsoft_datetimepicker .xdsoft_prev:hover,
.xdsoft_datetimepicker .xdsoft_today_button:hover {
    opacity: .5;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"
}

.xdsoft_datetimepicker .xdsoft_label {
    display: inline;
    position: relative;
    z-index: 9999;
    margin: 0;
    padding: 5px 3px;
    font-size: 14px;
    line-height: 20px;
    font-weight: 700;
    background-color: #fff;
    float: left;
    width: 182px;
    text-align: center;
    cursor: pointer
}

.xdsoft_datetimepicker .xdsoft_label:hover>span {
    text-decoration: underline
}

.xdsoft_datetimepicker .xdsoft_label:hover i {
    opacity: 1
}

.xdsoft_datetimepicker .xdsoft_label>.xdsoft_select {
    border: 1px solid #ccc;
    position: absolute;
    right: 0;
    top: 30px;
    z-index: 101;
    display: none;
    background: #fff;
    max-height: 160px;
    overflow-y: hidden
}

.xdsoft_datetimepicker .xdsoft_label>.xdsoft_select.xdsoft_monthselect {
    right: -7px
}

.xdsoft_datetimepicker .xdsoft_label>.xdsoft_select.xdsoft_yearselect {
    right: 2px
}

.xdsoft_datetimepicker .xdsoft_label>.xdsoft_select>div>.xdsoft_option:hover {
    color: #fff;
    background: #ff8000
}

.xdsoft_datetimepicker .xdsoft_label>.xdsoft_select>div>.xdsoft_option {
    padding: 2px 10px 2px 5px;
    text-decoration: none !important
}

.xdsoft_datetimepicker .xdsoft_label>.xdsoft_select>div>.xdsoft_option.xdsoft_current {
    background: #ea4c89;
    box-shadow: inset 0 1px 3px 0 #178fe5;
    color: #fff;
    font-weight: 700
}

.xdsoft_datetimepicker .xdsoft_month {
    width: auto;
    text-align: right;
    pointer-events: none !important;
    cursor: default !important;
    position: absolute;
    left: 125px
}

@media only screen and (max-width:799px) {
    .xdsoft_datetimepicker .xdsoft_month {
        position: absolute;
        left: 50%;
        text-align: right;
        width: auto
    }
}

.xdsoft_datetimepicker .xdsoft_month .xdsoft_label,
.xdsoft_datetimepicker .xdsoft_month .xdsoft_label span {
    pointer-events: none !important;
    cursor: default !important
}

.xdsoft_datetimepicker .xdsoft_month .xdsoft_scroller_box,
.xdsoft_datetimepicker .xdsoft_month i {
    display: none !important
}

.xdsoft_datetimepicker .xdsoft_calendar {
    clear: both
}

.xdsoft_datetimepicker .xdsoft_year {
    width: auto;
    float: left;
    margin-left: 5px;
    pointer-events: none !important;
    cursor: default !important;
    position: absolute;
    left: 68px
}

@media only screen and (max-width:799px) {
    .xdsoft_datetimepicker .xdsoft_year {
        position: absolute;
        left: 50%;
        float: left;
        width: auto;
        margin-left: -50px
    }
}

.xdsoft_datetimepicker .xdsoft_year span:after {
    content: "年"
}

.xdsoft_datetimepicker .xdsoft_year .xdsoft_label,
.xdsoft_datetimepicker .xdsoft_year .xdsoft_label span {
    pointer-events: none !important;
    cursor: default !important
}

.xdsoft_datetimepicker .xdsoft_year .xdsoft_scroller_box,
.xdsoft_datetimepicker .xdsoft_year i {
    display: none !important
}

.xdsoft_datetimepicker .xdsoft_calendar table {
    border-collapse: collapse;
    width: 100%
}

.xdsoft_datetimepicker .xdsoft_calendar td>div {
    padding-right: 0
}

.xdsoft_datetimepicker .xdsoft_calendar th {
    height: 25px
}

.xdsoft_datetimepicker .xdsoft_calendar td,
.xdsoft_datetimepicker .xdsoft_calendar th {
    width: 14.2857142%;
    background: #fff;
    border: none;
    color: #666;
    font-size: 14px;
    text-align: right;
    vertical-align: middle;
    padding: 0;
    border-collapse: collapse;
    cursor: pointer;
    height: 32px;
    text-align: center;
    transition-property: color background;
    transition-duration: .15s;
    transition-timing-function: cubic-bezier(.645, .045, .355, 1);
    border-radius: 8px
}

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

    .xdsoft_datetimepicker .xdsoft_calendar td,
    .xdsoft_datetimepicker .xdsoft_calendar th {
        border-radius: 8px
    }
}

.xdsoft_datetimepicker.xdsoft_showweeks .xdsoft_calendar td,
.xdsoft_datetimepicker.xdsoft_showweeks .xdsoft_calendar th {
    width: 12.5%
}

.xdsoft_datetimepicker .xdsoft_calendar th {
    background: #fff;
    color: #333 !important;
    border-bottom: 1px solid #ddd
}

.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_today {
    color: #f89800
}

.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_highlighted_default {
    background: #ffe9d2;
    box-shadow: inset 0 1px 4px 0 #ffb871;
    color: #000;
    border-radius: 50%
}

.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_highlighted_mint {
    background: #c1ffc9;
    box-shadow: inset 0 1px 4px 0 #00dd1c;
    color: #000;
    border-radius: 50%
}

.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_day_of_week0 {
    color: #ef0d0d
}

.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_day_of_week6 {
    color: #ea4c89
}

.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_current,
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_default,
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box>div>div.xdsoft_current {
    background: #ea4c89;
    box-shadow: inset 0 1px 3px 0 #178fe5;
    color: #fff;
    font-weight: 700
}

.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_disabled,
.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_other_month,
.xdsoft_datetimepicker .xdsoft_time_box>div>div.xdsoft_disabled {
    opacity: .5;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
    cursor: default
}

.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_other_month.xdsoft_disabled {
    opacity: .2;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=20)"
}

.xdsoft_datetimepicker .xdsoft_calendar td:hover,
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box>div>div:hover {
    color: #fff !important;
    background: #ea4c89 !important;
    box-shadow: none !important
}

.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_current.xdsoft_disabled:hover,
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box>div>div.xdsoft_current.xdsoft_disabled:hover {
    background: #3af !important;
    box-shadow: inset 0 1px 3px 0 #ea4c89 !important;
    color: #fff !important
}

.xdsoft_datetimepicker .xdsoft_calendar td.xdsoft_disabled:hover,
.xdsoft_datetimepicker .xdsoft_timepicker .xdsoft_time_box>div>div.xdsoft_disabled:hover {
    color: inherit !important;
    background: inherit !important;
    box-shadow: inherit !important
}

.xdsoft_datetimepicker .xdsoft_calendar th {
    font-weight: 700;
    text-align: center;
    color: #999;
    cursor: default
}

.xdsoft_datetimepicker .xdsoft_copyright {
    color: #ccc !important;
    font-size: 10px;
    clear: both;
    float: none;
    margin-left: 8px
}

.xdsoft_datetimepicker .xdsoft_copyright a {
    color: #eee !important
}

.xdsoft_datetimepicker .xdsoft_copyright a:hover {
    color: #aaa !important
}

.xdsoft_time_box {
    position: relative;
    border: 1px solid #ccc
}

.xdsoft_scrollbar>.xdsoft_scroller {
    background: #ccc !important;
    height: 20px;
    border-radius: 3px
}

.xdsoft_scrollbar {
    position: absolute;
    width: 7px;
    right: 0;
    top: 0;
    bottom: 0;
    cursor: pointer
}

.xdsoft_datetimepicker.xdsoft_rtl .xdsoft_scrollbar {
    left: 0;
    right: auto
}

.xdsoft_scroller_box {
    position: relative
}

.xdsoft_datetimepicker.xdsoft_dark {
    box-shadow: 0 5px 15px -5px hsla(0, 0%, 100%, .506);
    background: #000;
    border: 1px solid;
    border-color: #333 #333 #444;
    color: #ccc
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_timepicker .xdsoft_time_box {
    border-bottom: 1px solid #222
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_timepicker .xdsoft_time_box>div>div {
    background: #0a0a0a;
    border-top: 1px solid #222;
    color: #999
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_label {
    background-color: #000
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_label>.xdsoft_select {
    border: 1px solid #333;
    background: #000
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_label>.xdsoft_select>div>.xdsoft_option:hover {
    color: #000;
    background: #007fff
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_label>.xdsoft_select>div>.xdsoft_option.xdsoft_current {
    background: #ea4c89;
    box-shadow: inset 0 1px 3px 0 #ea4c89;
    color: #000
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_label i,
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_next,
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_prev,
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_today_button {
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAAAeCAYAAADaW7vzAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QUExQUUzOTA0M0UyMTFFNDlBM0FFQTJENTExRDVBODYiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QUExQUUzOTE0M0UyMTFFNDlBM0FFQTJENTExRDVBODYiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpBQTFBRTM4RTQzRTIxMUU0OUEzQUVBMkQ1MTFENUE4NiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpBQTFBRTM4RjQzRTIxMUU0OUEzQUVBMkQ1MTFENUE4NiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pp0VxGEAAAIASURBVHja7JrNSgMxEMebtgh+3MSLr1T1Xn2CHoSKB08+QmR8Bx9A8e7RixdB9CKCoNdexIugxFlJa7rNZneTbLIpM/CnNLsdMvNjM8l0mRCiQ9Ye61IKCAgZAUnH+mU3MMZaHYChBnJUDzWOFZdVfc5+ZFLbrWDeXPwbxIqrLLfaeS0hEBVGIRQCEiZoHQwtlGSByCCdYBl8g8egTTAWoKQMRBRBcZxYlhzhKegqMOageErsCHVkk3hXIFooDgHB1KkHIHVgzKB4ADJQ/A1jAFmAYhkQqA5TOBtocrKrgXwQA8gcFIuAIO8sQSA7hidvPwaQGZSaAYHOUWJABhWWw2EMIH9QagQERU4SArJXo0ZZL18uvaxejXt/Em8xjVBXmvFr1KVm/AJ10tRe2XnraNqaJvKE3KHuUbfK1E+VHB0q40/y3sdQSxY4FHWeKJCunP8UyDdqJZenT3ntVV5jIYCAh20vT7ioP8tpf6E2lfEMwERe+whV1MHjwZB7PBiCxcGQWwKZKD62lfGNnP/1poFAA60T7rF1UgcKd2id3KDeUS+oLWV8DfWAepOfq00CgQabi9zjcgJVYVD7PVzQUAUGAQkbNJTBICDhgwYTjDYD6XeW08ZKh+A4pYkzenOxXUbvZcWz7E8ykRMnIHGX1XPl+1m2vPYpL+2qdb8CDAARlKFEz/ZVkAAAAABJRU5ErkJggg==)
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td,
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar th {
    background: #0a0a0a;
    border: 1px solid #222;
    color: #999
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar th {
    background: #0e0e0e
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td.xdsoft_today {
    color: #c50
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td.xdsoft_highlighted_default {
    background: #ffe9d2;
    box-shadow: inset 0 1px 4px 0 #ffb871;
    color: #000
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td.xdsoft_highlighted_mint {
    background: #c1ffc9;
    box-shadow: inset 0 1px 4px 0 #00dd1c;
    color: #000
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td.xdsoft_current,
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td.xdsoft_default,
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_timepicker .xdsoft_time_box>div>div.xdsoft_current {
    background: #ea4c89;
    box-shadow: inset 0 1px 3px 0 #b03e00;
    color: #000
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar td:hover,
.xdsoft_datetimepicker.xdsoft_dark .xdsoft_timepicker .xdsoft_time_box>div>div:hover {
    color: #000 !important;
    background: #007fff !important
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_calendar th {
    color: #666
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_copyright {
    color: #333 !important
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_copyright a {
    color: #111 !important
}

.xdsoft_datetimepicker.xdsoft_dark .xdsoft_copyright a:hover {
    color: #555 !important
}

.xdsoft_dark .xdsoft_time_box {
    border: 1px solid #333
}

.xdsoft_dark .xdsoft_scrollbar>.xdsoft_scroller {
    background: #333 !important
}

.xdsoft_datetimepicker .xdsoft_save_selected {
    display: block;
    border: 1px solid #ddd !important;
    margin-top: 5px;
    width: 100%;
    color: #454551;
    font-size: 13px
}

.xdsoft_datetimepicker .blue-gradient-button {
    font-family: museo-sans, Book Antiqua, sans-serif;
    font-size: 12px;
    font-weight: 300;
    color: #82878c;
    height: 28px;
    position: relative;
    padding: 4px 17px 4px 33px;
    border: 1px solid #d7d8da;
    background: linear-gradient(180deg, #fff 0, #f4f8fa 73%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#fff", endColorstr="#f4f8fa", GradientType=0)
}

.xdsoft_datetimepicker .blue-gradient-button:focus,
.xdsoft_datetimepicker .blue-gradient-button:focus span,
.xdsoft_datetimepicker .blue-gradient-button:hover,
.xdsoft_datetimepicker .blue-gradient-button:hover span {
    color: #454551;
    background: linear-gradient(180deg, #f4f8fa 0, #fff 73%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#f4f8fa", endColorstr="#FFF", GradientType=0)
}

.xdsoft_unspecified {
    text-align: center;
    font-size: 14px;
    margin-top: 15px;
    border-radius: 8px;
    height: 44px;
    line-height: 44px;
    cursor: pointer;
    transition-property: all;
    transition-duration: .35s;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    margin-bottom: -5px;
    pointer-events: all;
    position: relative;
    z-index: 100
}

.xdsoft_unspecified:before {
    position: relative;
    top: -10px;
    width: 100%;
    height: 1px;
    display: block;
    content: "";
    background: #ddd
}

.xdsoft_unspecified:hover {
    background: #ea4c89;
    color: #fff
}

.c-listTab_content {
    display: flex
}

.c-listTab_item {
    border-bottom: 1px solid #eee;
    width: 50%
}

.c-listTab_item a {
    display: block;
    font-weight: 700;
    line-height: 60px;
    text-align: center;
    text-decoration: none;
    height: 60px;
    cursor: pointer
}

@media only screen and (max-width:799px) {
    .c-listTab_item a {
        line-height: 50px;
        height: 50px
    }
}

.c-listTab_item a.is-active {
    border-bottom: 2px solid #ea4c89;
    color: #ea4c89
}

.c-listTab_string {
    position: relative;
    display: inline;
    display: flex;
    align-items: center;
    justify-content: center
}

.c-listTab_count {
    position: relative;
    top: 1px;
    border-radius: 8px;
    background: #ef0d0d;
    display: block;
    box-sizing: border-box;
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    color: #fff;
    text-align: center;
    min-width: 16px;
    height: 16px;
    margin-left: 5px;
    padding: 2px 4px 3px
}

@media only screen and (max-width:799px) {
    .c-listTab_count {
        top: 1px
    }
}

.u-mb2em {
    margin-bottom: 2em
}

.u-mb10 {
    margin-bottom: 10px
}

.u-mb20 {
    margin-bottom: 20px
}

.u-mt20 {
    margin-top: 20px
}

.u-w5 {
    width: 5px !important
}

.u-w10 {
    width: 10px !important
}

.u-w15 {
    width: 15px !important
}

.u-w20 {
    width: 20px !important
}

.u-w25 {
    width: 25px !important
}

.u-w30 {
    width: 30px !important
}

.u-w35 {
    width: 35px !important
}

.u-w40 {
    width: 40px !important
}

.u-w45 {
    width: 45px !important
}

.u-w50 {
    width: 50px !important
}

.u-w55 {
    width: 55px !important
}

.u-w60 {
    width: 60px !important
}

.u-w65 {
    width: 65px !important
}

.u-w70 {
    width: 70px !important
}

.u-w75 {
    width: 75px !important
}

.u-w80 {
    width: 80px !important
}

.u-w85 {
    width: 85px !important
}

.u-w90 {
    width: 90px !important
}

.u-w95 {
    width: 95px !important
}

.u-w100 {
    width: 100px !important
}

.u-w105 {
    width: 105px !important
}

.u-w110 {
    width: 110px !important
}

.u-w115 {
    width: 115px !important
}

.u-w120 {
    width: 120px !important
}

.u-w125 {
    width: 125px !important
}

.u-w130 {
    width: 130px !important
}

.u-w135 {
    width: 135px !important
}

.u-w140 {
    width: 140px !important
}

.u-w145 {
    width: 145px !important
}

.u-w150 {
    width: 150px !important
}

.u-w155 {
    width: 155px !important
}

.u-w160 {
    width: 160px !important
}

.u-w165 {
    width: 165px !important
}

.u-w170 {
    width: 170px !important
}

.u-w175 {
    width: 175px !important
}

.u-w180 {
    width: 180px !important
}

.u-w185 {
    width: 185px !important
}

.u-w190 {
    width: 190px !important
}

.u-w195 {
    width: 195px !important
}

.u-w200 {
    width: 200px !important
}

.u-w205 {
    width: 205px !important
}

.u-w210 {
    width: 210px !important
}

.u-w215 {
    width: 215px !important
}

.u-w220 {
    width: 220px !important
}

.u-w225 {
    width: 225px !important
}

.u-w230 {
    width: 230px !important
}

.u-w235 {
    width: 235px !important
}

.u-w240 {
    width: 240px !important
}

.u-w245 {
    width: 245px !important
}

.u-w250 {
    width: 250px !important
}

.u-w255 {
    width: 255px !important
}

.u-w260 {
    width: 260px !important
}

.u-w265 {
    width: 265px !important
}

.u-w270 {
    width: 270px !important
}

.u-w275 {
    width: 275px !important
}

.u-w280 {
    width: 280px !important
}

.u-w285 {
    width: 285px !important
}

.u-w290 {
    width: 290px !important
}

.u-w295 {
    width: 295px !important
}

.u-w300 {
    width: 300px !important
}

.u-w305 {
    width: 305px !important
}

.u-w310 {
    width: 310px !important
}

.u-w315 {
    width: 315px !important
}

.u-w320 {
    width: 320px !important
}

.u-w325 {
    width: 325px !important
}

.u-w330 {
    width: 330px !important
}

.u-w335 {
    width: 335px !important
}

.u-w340 {
    width: 340px !important
}

.u-w345 {
    width: 345px !important
}

.u-w350 {
    width: 350px !important
}

.u-w355 {
    width: 355px !important
}

.u-w360 {
    width: 360px !important
}

.u-w365 {
    width: 365px !important
}

.u-w370 {
    width: 370px !important
}

.u-w375 {
    width: 375px !important
}

.u-w380 {
    width: 380px !important
}

.u-w385 {
    width: 385px !important
}

.u-w390 {
    width: 390px !important
}

.u-w395 {
    width: 395px !important
}

.u-w400 {
    width: 400px !important
}

.u-w405 {
    width: 405px !important
}

.u-w410 {
    width: 410px !important
}

.u-w415 {
    width: 415px !important
}

.u-w420 {
    width: 420px !important
}

.u-w425 {
    width: 425px !important
}

.u-w430 {
    width: 430px !important
}

.u-w435 {
    width: 435px !important
}

.u-w440 {
    width: 440px !important
}

.u-w445 {
    width: 445px !important
}

.u-w450 {
    width: 450px !important
}

.u-w455 {
    width: 455px !important
}

.u-w460 {
    width: 460px !important
}

.u-w465 {
    width: 465px !important
}

.u-w470 {
    width: 470px !important
}

.u-w475 {
    width: 475px !important
}

.u-w480 {
    width: 480px !important
}

.u-w485 {
    width: 485px !important
}

.u-w490 {
    width: 490px !important
}

.u-w495 {
    width: 495px !important
}

.u-w500 {
    width: 500px !important
}

.u-w505 {
    width: 505px !important
}

.u-w510 {
    width: 510px !important
}

.u-w515 {
    width: 515px !important
}

.u-w520 {
    width: 520px !important
}

.u-w525 {
    width: 525px !important
}

.u-w530 {
    width: 530px !important
}

.u-w535 {
    width: 535px !important
}

.u-w540 {
    width: 540px !important
}

.u-w545 {
    width: 545px !important
}

.u-w550 {
    width: 550px !important
}

.u-w555 {
    width: 555px !important
}

.u-w560 {
    width: 560px !important
}

.u-w565 {
    width: 565px !important
}

.u-w570 {
    width: 570px !important
}

.u-w575 {
    width: 575px !important
}

.u-w580 {
    width: 580px !important
}

.u-w585 {
    width: 585px !important
}

.u-w590 {
    width: 590px !important
}

.u-w595 {
    width: 595px !important
}

.u-w600 {
    width: 600px !important
}

.u-w605 {
    width: 605px !important
}

.u-w610 {
    width: 610px !important
}

.u-w615 {
    width: 615px !important
}

.u-w620 {
    width: 620px !important
}

.u-w625 {
    width: 625px !important
}

.u-w630 {
    width: 630px !important
}

.u-w635 {
    width: 635px !important
}

.u-w640 {
    width: 640px !important
}

.u-w645 {
    width: 645px !important
}

.u-w650 {
    width: 650px !important
}

.u-w655 {
    width: 655px !important
}

.u-w660 {
    width: 660px !important
}

.u-w665 {
    width: 665px !important
}

.u-w670 {
    width: 670px !important
}

.u-w675 {
    width: 675px !important
}

.u-w680 {
    width: 680px !important
}

.u-w685 {
    width: 685px !important
}

.u-w690 {
    width: 690px !important
}

.u-w695 {
    width: 695px !important
}

.u-w700 {
    width: 700px !important
}

.u-w705 {
    width: 705px !important
}

.u-w710 {
    width: 710px !important
}

.u-w715 {
    width: 715px !important
}

.u-w720 {
    width: 720px !important
}

.u-w725 {
    width: 725px !important
}

.u-w730 {
    width: 730px !important
}

.u-w735 {
    width: 735px !important
}

.u-w740 {
    width: 740px !important
}

.u-w745 {
    width: 745px !important
}

.u-w750 {
    width: 750px !important
}

.u-w755 {
    width: 755px !important
}

.u-w760 {
    width: 760px !important
}

.u-w765 {
    width: 765px !important
}

.u-w770 {
    width: 770px !important
}

.u-w775 {
    width: 775px !important
}

.u-w780 {
    width: 780px !important
}

.u-w785 {
    width: 785px !important
}

.u-w790 {
    width: 790px !important
}

.u-w795 {
    width: 795px !important
}

.u-w800 {
    width: 800px !important
}

.u-w805 {
    width: 805px !important
}

.u-w810 {
    width: 810px !important
}

.u-w815 {
    width: 815px !important
}

.u-w820 {
    width: 820px !important
}

.u-w825 {
    width: 825px !important
}

.u-w830 {
    width: 830px !important
}

.u-w835 {
    width: 835px !important
}

.u-w840 {
    width: 840px !important
}

.u-w845 {
    width: 845px !important
}

.u-w850 {
    width: 850px !important
}

.u-w855 {
    width: 855px !important
}

.u-w860 {
    width: 860px !important
}

.u-w865 {
    width: 865px !important
}

.u-w870 {
    width: 870px !important
}

.u-w875 {
    width: 875px !important
}

.u-w880 {
    width: 880px !important
}

.u-w885 {
    width: 885px !important
}

.u-w890 {
    width: 890px !important
}

.u-w895 {
    width: 895px !important
}

.u-w900 {
    width: 900px !important
}

.u-w905 {
    width: 905px !important
}

.u-w910 {
    width: 910px !important
}

.u-w915 {
    width: 915px !important
}

.u-w920 {
    width: 920px !important
}

.u-w925 {
    width: 925px !important
}

.u-w930 {
    width: 930px !important
}

.u-w935 {
    width: 935px !important
}

.u-w940 {
    width: 940px !important
}

.u-w945 {
    width: 945px !important
}

.u-w950 {
    width: 950px !important
}

.u-w955 {
    width: 955px !important
}

.u-w960 {
    width: 960px !important
}

.u-w965 {
    width: 965px !important
}

.u-w970 {
    width: 970px !important
}

.u-w975 {
    width: 975px !important
}

.u-w980 {
    width: 980px !important
}

.u-w985 {
    width: 985px !important
}

.u-w990 {
    width: 990px !important
}

.u-w995 {
    width: 995px !important
}

.u-w1000 {
    width: 1000px !important
}

.u-w1005 {
    width: 1005px !important
}

.u-w1010 {
    width: 1010px !important
}

.u-w1015 {
    width: 1015px !important
}

.u-w1020 {
    width: 1020px !important
}

.u-w1025 {
    width: 1025px !important
}

.u-w1030 {
    width: 1030px !important
}

.u-w1035 {
    width: 1035px !important
}

.u-w1040 {
    width: 1040px !important
}

.u-w1045 {
    width: 1045px !important
}

.u-w1050 {
    width: 1050px !important
}

.u-w1055 {
    width: 1055px !important
}

.u-w1060 {
    width: 1060px !important
}

.u-w1065 {
    width: 1065px !important
}

.u-w1070 {
    width: 1070px !important
}

.u-w1075 {
    width: 1075px !important
}

.u-w1080 {
    width: 1080px !important
}

.u-w1085 {
    width: 1085px !important
}

.u-w1090 {
    width: 1090px !important
}

.u-w1095 {
    width: 1095px !important
}

.u-w1100 {
    width: 1100px !important
}

.u-w1105 {
    width: 1105px !important
}

.u-w1110 {
    width: 1110px !important
}

.u-w1115 {
    width: 1115px !important
}

.u-w1120 {
    width: 1120px !important
}

.u-w1125 {
    width: 1125px !important
}

.u-w1130 {
    width: 1130px !important
}

.u-w1135 {
    width: 1135px !important
}

.u-w1140 {
    width: 1140px !important
}

.u-w1145 {
    width: 1145px !important
}

.u-w1150 {
    width: 1150px !important
}

.u-w1155 {
    width: 1155px !important
}

.u-w1160 {
    width: 1160px !important
}

.u-w1165 {
    width: 1165px !important
}

.u-w1170 {
    width: 1170px !important
}

.u-w1175 {
    width: 1175px !important
}

.u-w1180 {
    width: 1180px !important
}

.u-w1185 {
    width: 1185px !important
}

.u-w1190 {
    width: 1190px !important
}

.u-w1195 {
    width: 1195px !important
}

.u-w1200 {
    width: 1200px !important
}

.u-w1205 {
    width: 1205px !important
}

.u-w1210 {
    width: 1210px !important
}

.u-w1215 {
    width: 1215px !important
}

.u-w1220 {
    width: 1220px !important
}

.u-w1225 {
    width: 1225px !important
}

.u-w1230 {
    width: 1230px !important
}

.u-w1235 {
    width: 1235px !important
}

.u-w1240 {
    width: 1240px !important
}

.u-w1245 {
    width: 1245px !important
}

.u-w1250 {
    width: 1250px !important
}

.u-w1255 {
    width: 1255px !important
}

.u-w1260 {
    width: 1260px !important
}

.u-w1265 {
    width: 1265px !important
}

.u-w1270 {
    width: 1270px !important
}

.u-w1275 {
    width: 1275px !important
}

.u-w1280 {
    width: 1280px !important
}

.u-w1285 {
    width: 1285px !important
}

.u-w1290 {
    width: 1290px !important
}

.u-w1295 {
    width: 1295px !important
}

.u-w1300 {
    width: 1300px !important
}

.u-w1305 {
    width: 1305px !important
}

.u-w1310 {
    width: 1310px !important
}

.u-w1315 {
    width: 1315px !important
}

.u-w1320 {
    width: 1320px !important
}

.u-w1325 {
    width: 1325px !important
}

.u-w1330 {
    width: 1330px !important
}

.u-w1335 {
    width: 1335px !important
}

.u-w1340 {
    width: 1340px !important
}

.u-w1345 {
    width: 1345px !important
}

.u-w1350 {
    width: 1350px !important
}

.u-w1355 {
    width: 1355px !important
}

.u-w1360 {
    width: 1360px !important
}

.u-w1365 {
    width: 1365px !important
}

.u-w1370 {
    width: 1370px !important
}

.u-w1375 {
    width: 1375px !important
}

.u-w1380 {
    width: 1380px !important
}

.u-w1385 {
    width: 1385px !important
}

.u-w1390 {
    width: 1390px !important
}

.u-w1395 {
    width: 1395px !important
}

.u-w1400 {
    width: 1400px !important
}

.u-w1405 {
    width: 1405px !important
}

.u-w1410 {
    width: 1410px !important
}

.u-w1415 {
    width: 1415px !important
}

.u-w1420 {
    width: 1420px !important
}

.u-w1425 {
    width: 1425px !important
}

.u-w1430 {
    width: 1430px !important
}

.u-w1435 {
    width: 1435px !important
}

.u-w1440 {
    width: 1440px !important
}

.u-w1445 {
    width: 1445px !important
}

.u-w1450 {
    width: 1450px !important
}

.u-w1455 {
    width: 1455px !important
}

.u-w1460 {
    width: 1460px !important
}

.u-w1465 {
    width: 1465px !important
}

.u-w1470 {
    width: 1470px !important
}

.u-w1475 {
    width: 1475px !important
}

.u-w1480 {
    width: 1480px !important
}

.u-w1485 {
    width: 1485px !important
}

.u-w1490 {
    width: 1490px !important
}

.u-w1495 {
    width: 1495px !important
}

.u-w1500 {
    width: 1500px !important
}

.u-desktopBlock {
    display: block
}

@media only screen and (max-width:799px) {
    .u-desktopBlock {
        display: none
    }
}

.u-mobileBlock {
    display: none
}

@media only screen and (max-width:799px) {
    .u-mobileBlock {
        display: block
    }
}

.u-displayNone {
    display: none
}

.u-iframe {
    overflow: hidden
}

.u-iframe-700 {
    width: 700px
}

@media only screen and (max-width:799px) {
    .u-iframe-700 {
        width: 100%
    }
}

.p-globalNav {
    position: absolute;
    top: 12px;
    left: 130px
}

@media only screen and (max-width:799px) {
    .p-globalNav {
        top: 17px;
        right: 20px
    }
}

[data-page-id=top] .p-globalNav {
    left: 30px
}


.p-globalNav_link--login {
    top: 2px
}

@media only screen and (max-width:799px) {
    .p-globalNav_link--login {
        top: 0;
        display: block
    }
}

.p-globalNav_link--button a {
    border-radius: 8px;
    background: #000;
    color: #fff;
    padding: 5px 20px;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .25s;
    transition-property: all
}

@media only screen and (max-width:799px) {
    .p-globalNav_link--button a {
        font-size: 12px;
        padding: 3px 15px
    }
}

.p-globalNav_link--button a:hover {
    background: #555
}

.p-globalNav_link--button a:hover:after {
    display: none
}

.p-globalNavAccount {
    position: relative;
    top: 10px;
    border-radius: 8px;
    background: #fff;
    width: 70px;
    height: 34px;
    cursor: pointer;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .25s;
    transition-property: all
}

.p-globalNavAccount:after {
    content: ""
}

.p-globalNavAccount:hover {
    opacity: .7
}

.p-globalNavAccount:after {
    position: absolute;
    top: 10px;
    right: 14px;
    font-size: 10px
}

.p-globalNavAccount_icon {
    position: absolute;
    top: 4px;
    left: 10px;
    border-radius: 50%;
    background-size: cover;
    display: block;
    width: 26px;
    height: 26px
}

.p-actionNav {
    position: absolute;
    top: 17px;
    right: 30px
}

@media only screen and (max-width:799px) {
    .p-actionNav {
        top: 18px;
        right: 10px;
        left: 0
    }
}

@media only screen and (max-width:799px) {
    [data-page-id=top] .p-actionNav {
        right: 16px
    }
}

.p-actionNav_links {
    font-size: 0
}

.p-actionNav_link {
    font-size: 15px;
    float: left;
    margin: 0 0 0 25px;
    list-style-type: none
}

@media only screen and (max-width:799px) {
    .p-actionNav_link {
        margin-left: 10px
    }
}

.p-actionNav_link--button a {
    position: relative;
    border-radius: 8px;
    background: #000;
    background: #ea4c89;
    display: block;
    box-sizing: border-box;
    font-weight: 700;
    line-height: 32px;
    color: #fff;
    height: 34px;
    padding: 0 15px;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .25s;
    transition-property: all
}

@media only screen and (max-width:799px) {
    .p-actionNav_link--button a {
        border-radius: 6px;
        font-size: 10px;
        line-height: 24px;
        text-align: center;
        width: 60px;
        height: 26px;
        padding: 0
    }
}

[data-page-id=top] .p-actionNav_link--button a {
    border: 1px solid #fff;
    background: none
}

.p-actionNav_link--button a:after {
    position: absolute;
    top: -2px;
    left: 2px;
    font-size: 16px
}

.desktop [data-page-id=top] .p-actionNav_link--button a:hover {
    background: #ea4c89;
    color: #fff
}

.desktop .p-actionNav_link--button a:hover {
    background: #ea4c89;
    text-decoration: none
}

@media only screen and (max-width:799px) {
    .desktop .p-actionNav_link--button a:hover {
        background: none
    }
}

.desktop .p-actionNav_link--button a:hover:after {
    display: none
}

@media only screen and (max-width:799px) {
    .desktop .p-actionNav_link--button a:hover:after {
        display: block
    }
}

.p-actionNav_link--login {
    position: relative
}

@media only screen and (max-width:799px) {
    .p-actionNav_link--login {
        position: absolute;
        top: -1px;
        right: 60px;
        display: none
    }

    [data-page-id=top] .p-actionNav_link--login {
        display: block
    }
}

.p-actionNav_link--login a {
    position: relative;
    border: 1px solid #ea4c89;
    background: none;
    font-weight: 700;
    color: #ea4c89;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .25s;
    transition-property: all
}

@media only screen and (max-width:799px) {
    .p-actionNav_link--login a {
        top: 0;
        top: -4px
    }
}

.is-headerWhite .p-actionNav_link--login a {
    border: 1px solid #fff;
    color: #fff
}

.p-actionNav_link--login a:hover {
    color: #fff;
    text-decoration: none;
    opacity: .7
}

[data-page-id=top] .p-actionNav_link--login a {
    border: none;
    color: #fff
}

.p-actionNav_link--register {
    position: relative;
    margin-left: 10px
}

@media only screen and (max-width:799px) {
    .p-actionNav_link--register {
        position: absolute;
        top: -5px;
        right: 0;
        display: none
    }
}

@media only screen and (max-width:799px) {
    [data-page-id=top] .p-actionNav_link--register {
        display: block
    }
}

.is-headerWhite .p-actionNav_link--register>a,
[data-page-id=top] .p-actionNav_link--register>a {
    background: #fff;
    color: #ea4c89
}

.p-actionNavSearch {
    position: relative;
    top: 0;
    height: 34px;
    margin-left: 10px
}

@media only screen and (max-width:799px) {
    .p-actionNavSearch {
        position: absolute;
        top: -8px;
        right: 1px;
        width: 40px
    }
}

[data-page-id=top] .p-actionNavSearch {
    display: none
}

@media only screen and (max-width:799px) {
    [data-page-id=top] .p-actionNavSearch {
        display: block
    }
}

.p-actionNavSearch_string {
    position: absolute;
    left: 0;
    display: block;
    display: none;
    font-size: 8px;
    font-weight: 700;
    text-align: center;
    width: 40px;
    padding-top: 31px
}

@media only screen and (max-width:799px) {
    .p-actionNavSearch_string {
        display: block
    }
}

.p-actionNavSearch_string--open {
    opacity: 1;
    visibility: visible
}

.is-searchOpen .p-actionNavSearch_string--open,
.p-actionNavSearch_string--close {
    opacity: 0;
    visibility: hidden
}

.is-searchOpen .p-actionNavSearch_string--close {
    opacity: 1;
    visibility: visible
}

.p-actionNavSearch_icon {
    position: absolute;
    top: 0;
    right: 0;
    border: none;
    border-radius: 0 8px 8px 0;
    background: none;
    display: block;
    z-index: 2;
    width: 40px;
    height: 40px;
    cursor: pointer;
    outline: none;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .25s;
    transition-property: all
}

.p-actionNavSearch_icon:after {
    content: ""
}

@media only screen and (max-width:799px) {
    .p-actionNavSearch_icon {
        border-radius: 0;
        background: none;
        color: #ea4c89;
        color: #222;
        padding: 0
    }

    [data-page-id=top] .p-actionNavSearch_icon {
        color: #fff
    }
}

@media only screen and (max-width:799px) {
    .is-searchOpen .p-actionNavSearch_icon:after {
        content: ""
    }
}

@media only screen and (max-width:799px) {
    .desktop .p-actionNavSearch_icon:hover {
        background: none
    }
}

.p-actionNavSearch_icon:after {
    position: absolute;
    top: 1px;
    left: 2px;
    font-size: 32px;
    line-height: 32px;
    height: 32px
}

@media only screen and (max-width:799px) {
    .p-actionNavSearch_icon:after {
        top: -1px;
        left: 0;
        font-size: 38px
    }

    .is-searchOpen .p-actionNavSearch_icon:after {
        left: 10px;
        font-size: 16px
    }
}

.p-actionNavSearch input {
    border: none;
    border-radius: 8px;
    box-sizing: border-box;
    font-size: 14px;
    width: 0;
    width: 210px;
    height: 34px;
    padding: 10px;
    outline: none;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .25s;
    transition-property: width opacity
}

@media only screen and (max-width:799px) {
    .p-actionNavSearch input {
        display: none
    }
}

.p-actionNavSearch input:focus {
    box-shadow: 0 0 15px 2px rgba(0, 0, 0, .05)
}

.p-actionNavAccount {
    position: relative;
    top: 0;
    border-radius: 100%;
    background: #fff;
    overflow: hidden;
    width: 30px;
    height: 30px;
    cursor: pointer;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .25s;
    transition-property: all
}

@media only screen and (max-width:799px) {
    .p-actionNavAccount {
        position: absolute;
        top: -5px;
        right: 5px;
        background: none;
        display: none;
        width: 40px
    }
}

@media only screen and (max-width:799px) {
    [data-page-id=top] .p-actionNavAccount {
        right: 40px
    }

    .is-login [data-page-id=top] .p-actionNavAccount {
        right: 0
    }
}

.p-actionNavAccount:hover {
    opacity: .7
}

.p-actionNavAccount:after {
    position: absolute;
    top: 10px;
    right: 14px;
    font-size: 10px
}

@media only screen and (max-width:799px) {
    .p-actionNavAccount:after {
        display: none
    }
}

.p-actionNavAccount_icon {
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 50%;
    background-color: #ddd;
    background-size: cover;
    display: block;
    width: 30px;
    height: 30px
}

@media only screen and (max-width:799px) {
    .p-actionNavAccount_icon {
        left: 0;
        width: 28px;
        height: 28px
    }
}

.p-actionNavNotification {
    position: relative;
    top: 0;
    width: 34px;
    height: 34px;
    cursor: pointer
}

@media only screen and (max-width:799px) {
    .p-actionNavNotification {
        position: absolute;
        top: -5px;
        right: inherit;
        right: 65px;
        background: none;
        width: 40px
    }
}

.desktop .p-actionNavNotification:hover a,
.p-actionNavNotification:hover a {
    text-decoration: none
}

.desktop .p-actionNavNotification:hover a .p-actionNavNotification_icon:after {
    color: #777
}

.p-actionNavNotification_icon {
    text-align: center;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .25s;
    transition-property: all
}

.p-actionNavNotification_icon:after {
    content: ""
}

.is-headerWhite .p-actionNavNotification_icon,
[data-page-id=top] .p-actionNavNotification_icon {
    color: #fff
}

@media only screen and (max-width:799px) {
    .is-headerWhite .p-actionNavNotification_icon {
        color: #111
    }
}

.p-actionNavNotification_icon:after {
    position: relative;
    top: -10px;
    display: block;
    font-size: 33px;
    margin: auto
}

@media only screen and (max-width:799px) {
    .p-actionNavNotification_icon:after {
        top: -14px;
        font-size: 32px
    }
}

.p-actionNavNotification_number {
    position: absolute;
    top: 1px;
    right: 1px;
    border-radius: 8px;
    background: #ef0d0d;
    display: block;
    box-sizing: border-box;
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    color: #fff;
    text-align: center;
    min-width: 16px;
    padding: 2px 4px 3px
}

@media only screen and (max-width:799px) {
    .p-actionNavNotification_number {
        top: -1px;
        right: 3px
    }
}

.p-localNav {
    position: relative;
    overflow: hidden;
    margin: 0 0 1px
}

@media only screen and (max-width:799px) {
    .p-localNav {
        left: -20px;
        box-sizing: border-box;
        width: calc(100% + 20px);
        width: calc(100% + 40px);
        margin: 0 0 1px;
        padding-left: 20px
    }
}

.p-localNav.is-single {
    border-radius: 12px;
    background: #fff;
    box-sizing: border-box;
    width: 760px;
    margin: auto auto 20px;
    padding: 0 40px
}

@media only screen and (max-width:799px) {
    .p-localNav.is-single {
        left: 0;
        width: 100%;
        margin-bottom: 0;
        padding: 0 20px
    }
}

@media only screen and (max-width:799px) {
    .p-localNav:after {
        position: absolute;
        bottom: 0;
        left: -20px;
        background: #eee;
        display: block;
        content: "";
        width: calc(100% + 40px);
        height: 1px
    }
}

.p-localNav.has-border {
    border-top: 1px solid #eee
}

@media only screen and (max-width:799px) {
    .p-localNav.has-border {
        border-top: none
    }

    .p-localNav.has-border:before {
        position: absolute;
        top: 0;
        left: -20px;
        background: #eee;
        display: block;
        content: "";
        width: calc(100% + 40px);
        height: 1px
    }
}

@media only screen and (max-width:799px) {
    .p-localNav_content {
        position: relative;
        overflow-x: auto;
        overflow-y: hidden;
        width: 100%;
        margin-left: -10px;
        -webkit-overflow-scrolling: touch
    }
}

.p-localNav_arrow {
    position: absolute;
    top: 5px;
    right: 0;
    display: none;
    z-index: 100;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: all
}

.p-localNav_arrow:after {
    content: ""
}

@media only screen and (max-width:799px) {
    .p-localNav_arrow {
        display: block
    }
}

.is-touch .p-localNav_arrow {
    opacity: 0
}

.p-localNav_arrow:before {
    position: absolute;
    top: 1px;
    background: #fff;
    display: block;
    content: "";
    width: 44px;
    height: 44px
}

.p-localNav_arrow:after {
    position: relative;
    display: block;
    line-height: 44px;
    z-index: 1;
    color: #ea4c89;
    text-align: center;
    width: 44px;
    height: 44px;
    -webkit-animation-name: localNavArrow;
    animation-name: localNavArrow;
    -webkit-animation-duration: .9s;
    animation-duration: .9s;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

@-webkit-keyframes localNavArrow {
    0% {
        -webkit-transform: translatex(-3px);
        transform: translatex(-3px)
    }

    50% {
        -webkit-transform: translatex(3px);
        transform: translatex(3px)
    }

    to {
        -webkit-transform: translatex(-3px);
        transform: translatex(-3px)
    }
}

.p-localNav_links {
    border-bottom: 1px solid #eee;
    display: flex
}

/*
@media only screen and (max-width:799px) {
    .p-localNav_links {
        width: 200vw
    }
}
*/

.p-localNav_links.is-noborder {
    border-bottom: none
}

@media only screen and (max-width:799px) {
    .is-full .p-localNav_links {
        width: 100% !important
    }
}

.p-localNav_link {
    position: relative;
    box-sizing: border-box;
    overflow: hidden;
    list-style: none
}

@media only screen and (max-width:799px) {
    .p-localNav_link {
        white-space: nowrap
    }
}

.p-localNav_link:first-child {
    margin-left: 0
}

.p-localNav_link.is-comingsoon:after {
    position: absolute;
    top: 4px;
    font-size: 8px;
    font-weight: 700;
    color: #ccc;
    text-align: center;
    width: 100%
}

.p-localNav_link.is-comingsoon a {
    color: #ccc;
    pointer-events: none
}

.p-localNav_link.is-comingsoon a:hover {
    background: none
}

.p-localNav_link.is-comingsoon a span {
    position: relative
}

.desktop .p-localNav_link a:hover {
    border-radius: 8px;
    text-decoration: none;
    opacity: 1
}

.p-localNav_link a:hover>h2,
.p-localNav_link a:hover>span {
    position: relative
}

.p-localNav_link a:hover>h2:after,
.p-localNav_link a:hover>span:after {
    position: absolute;
    bottom: -20px;
    background: #ea4c89;
    display: block;
    content: "";
    width: 100%;
    height: 2px
}

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

    .p-localNav_link a:hover>h2:after,
    .p-localNav_link a:hover>span:after {
        bottom: -18px
    }
}

.p-localNav_link.is-active a {
    color: #ea4c89
}

.p-localNav_link.is-active a>h2,
.p-localNav_link.is-active a>span {
    position: relative
}

.p-localNav_link.is-active a>h2:after,
.p-localNav_link.is-active a>span:after {
    position: absolute;
    bottom: -20px;
    background: #ea4c89;
    display: block;
    content: "";
    width: 100%;
    height: 2px
}

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

    .p-localNav_link.is-active a>h2:after,
    .p-localNav_link.is-active a>span:after {
        bottom: -18px
    }
}

.p-localNav_link:last-child {
    border-right: none
}

@media only screen and (max-width:799px) {
    .p-localNav_link:last-child a {
        border-right: none
    }
}

.p-localNav_link.is-favorited .p-localNav_icon,
.p-localNav_link.is-favorites .p-localNav_icon {
    padding: 4px
}

.p-localNav_link.is-favorited .p-localNav_icon:after,
.p-localNav_link.is-favorites .p-localNav_icon:after {
    content: "";
    position: relative;
    top: 1px;
    color: #888
}

.p-localNav_link a {
    display: block;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    font-weight: 700;
    line-height: 1.3;
    text-align: center;
    text-decoration: none;
    width: 100%;
    height: 100%;
    padding: 20px 10px;
    cursor: pointer
}

@media only screen and (max-width:799px) {
    .p-localNav_link a {
        font-size: 14px;
        overflow: hidden;
        width: auto;
        height: auto;
        padding: 18px 10px
    }
}

.p-localNav_link span {
    position: relative
}

.p-localNav_count {
    border-radius: 4px;
    background: #f3f3f3;
    box-sizing: border-box;
    min-width: 25px;
    margin-left: 10px;
    padding: 4px 8px
}

.p-localNav_brackets {
    letter-spacing: .05em;
    margin-left: 3px
}

.p-search {
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
    position: absolute;
    top: 0;
    z-index: 1000;
    background: #f3f3f3;
    transition-property: all;
    transition-duration: .35s;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 0;
    visibility: hidden;
    z-index: 100
}

[data-page-id=top] .p-search {
    background: none;
    display: none
}

@media only screen and (max-width:799px) {
    [data-page-id=top] .p-search {
        display: block
    }
}

@media only screen and (max-width:799px) {
    .is-searchOpen .p-search {
        -webkit-transform: translateY(50px);
        transform: translateY(50px);
        opacity: 1;
        visibility: visible
    }
}

@-webkit-keyframes searchOpen {
    0% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px);
        opacity: 0;
        visibility: hidden;
        z-index: 0
    }

    60% {
        z-index: 0;
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
        visibility: visible
    }

    to {
        z-index: 100;
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
        visibility: visible
    }
}

@keyframes searchOpen {
    0% {
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px);
        opacity: 0;
        visibility: hidden;
        z-index: 0
    }

    60% {
        z-index: 0;
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
        visibility: visible
    }

    to {
        z-index: 100;
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1;
        visibility: visible
    }
}

.p-search_input {
    position: relative
}

.p-search_icon {
    width: 40px;
    height: 44px;
    display: block;
    position: absolute;
    top: 0;
    right: 12px;
    background: none;
    border: none;
    z-index: 2;
    cursor: pointer;
    border-radius: 0 8px 8px 0;
    transition-property: all;
    transition-duration: .25s;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1)
}

.p-search_icon:after {
    content: "";
    position: absolute;
    top: 2px;
    left: 4px;
    font-size: 30px;
    height: 30px;
    line-height: 30px
}

@media only screen and (max-width:799px) {
    .p-search_icon:after {
        font-size: 32px;
        top: 6px;
        left: 4px
    }
}

.p-search input {
    border: none;
    padding: 14px 12px;
    border-radius: 8px;
    transition-property: width opacity;
    transition-duration: .3s;
    box-sizing: border-box;
    outline: none;
    font-size: 14px;
    height: 44px
}

.p-menu,
.p-search input {
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    width: 100%
}

.p-menu {
    position: absolute;
    top: 0;
    z-index: 1001;
    opacity: 0;
    visibility: hidden;
    overflow: hidden;
    height: 100vh;
    transition-duration: .25s;
    transition-property: all
}

.is-menuOpen--globalNav .p-menu--globalNav {
    pointer-events: all;
    opacity: 1;
    visibility: visible
}

.p-menu--userMenu {
    position: absolute;
    top: 60px;
    right: 20px;
    z-index: 1;
    z-index: 1000;
    width: 250px
}

.is-menuOpen--userMenu .p-menu--userMenu {
    pointer-events: all;
    opacity: 1;
    visibility: visible
}

.p-menu--notification {
    position: absolute;
    top: 60px;
    right: 30px;
    width: 400px
}

@media only screen and (max-width:799px) {
    .p-menu--notification {
        top: 51px;
        right: 0;
        width: 100%
    }
}

.is-menuOpen--notification .p-menu--notification {
    pointer-events: all;
    opacity: 1;
    visibility: visible
}

.p-menu_overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh
}

@media only screen and (max-width:799px) {
    .p-menu_overlay {
        background: rgba(0, 0, 0, .5)
    }
}

.p-menu_close {
    position: absolute;
    top: 10px;
    right: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
    width: 60px;
    height: 50px;
    cursor: pointer
}

.p-menu_close:after {
    content: ""
}

@media only screen and (max-width:799px) {
    .p-menu_close {
        top: 0;
        right: -5px
    }
}

.p-menu--globalNav .p-menu_close {
    right: inherit;
    left: 0
}

.p-menu_close:after {
    font-size: 30px
}

@media only screen and (max-width:799px) {
    .p-menu_close:after {
        font-size: 18px
    }
}

.p-menu_content {
    position: relative
}

@media only screen and (max-width:799px) {
    .p-menu_content {
        position: absolute;
        top: 0;
        left: 0;
        background: #fff;
        pointer-events: none;
        width: 300px;
        height: 100vh;
        transition-timing-function: cubic-bezier(.215, .61, .355, 1);
        transition-duration: .4s;
        transition-property: all;
        -webkit-transform: translateX(-300px);
        transform: translateX(-300px)
    }
}

@media only screen and (max-width:799px) {
    [data-type=userMenu] .p-menu_content {
        right: 20px;
        left: auto;
        height: calc(100vh - 120px)
    }
}

.is-menuOpen .p-menu_content {
    -webkit-transform: translateX(0);
    transform: translateX(0)
}

.is-menuOpened .p-menu_content {
    pointer-events: all
}

.p-menuNav {
    border: 1px solid #efefef;
    border-radius: 12px;
    background: #fff;
    box-sizing: border-box;
    overflow: hidden;
    overflow-y: auto;
    padding: 10px 30px 10px 20px;
    box-shadow: 0 0 15px 2px rgba(0, 0, 0, .05);
    -webkit-overflow-scrolling: touch
}

@media only screen and (max-width:799px) {
    .p-menuNav {
        position: relative;
        top: 0;
        right: 0;
        border-radius: 0;
        background: none;
        overflow-y: auto;
        width: 100%;
        height: 100%;
        padding: 40px 0 0;
        box-shadow: none;
        -webkit-overflow-scrolling: touch
    }
}

.p-menuNav_headline {
    background: #f3f3f3;
    display: block;
    font-size: 11px;
    padding: 2px 16px
}

.p-menuNav_links {
    position: relative;
    border-bottom: 1px solid #eee;
    overflow: hidden;
    padding-top: 5px;
    padding-bottom: 5px
}

@media only screen and (max-width:799px) {
    .p-menuNav_links {
        padding: 10px
    }
}

.p-menuNav_links:first-of-type,
.p-menuNav_links:last-of-type {
    border-bottom: none
}

@media only screen and (max-width:799px) {
    .p-menuNav_links:first-of-type {
        border-top: 1px solid #eee;
        border-bottom: 1px solid #eee
    }
}

.p-menuNav_links.is-mypage {
    border-bottom: 1px solid #eee;
    padding: 5px 0
}

@media only screen and (max-width:799px) {
    .p-menuNav_links.is-mypage {
        padding: 0 20px 5px
    }
}

.p-menuNav_links.is-login {
    border-bottom: 1px solid #eee;
    display: flex;
    justify-content: space-between;
    padding: 0 20px 20px
}

@media only screen and (max-width:799px) {
    .p-menuNav_links.is-login {
        padding-top: 15px
    }
}

@media only screen and (max-width:799px) {
    .p-menuNav_links.is-footer {
        padding-top: 10px;
        padding-bottom: 10px
    }
}

.p-menuNav_link {
    list-style: none
}

.p-menuNav_link.is-userMenu {
    margin-left: -10px
}

.p-menuNav_link a {
    display: block;
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
    padding: 10px;
    cursor: pointer
}

@media only screen and (max-width:799px) {
    .p-menuNav_link a {
        font-size: 16px;
        padding: 10px
    }
}

.is-mypage .p-menuNav_link a {
    font-weight: 700
}

@media only screen and (max-width:799px) {
    .is-footer .p-menuNav_link a {
        font-size: 14px;
        font-weight: 400;
        padding: 10px
    }
}

.p-menuNav_link a:hover {
    text-decoration: none;
    opacity: .6
}

.p-menuNav_link--button {
    text-align: center;
    width: calc(50% - 5px)
}

.p-menuNav_link--button>a {
    border-radius: 8px;
    background: #ea4c89;
    font-size: 14px;
    color: #fff;
    padding: 8px 0
}

@media only screen and (max-width:799px) {
    .p-menuNav_link--button>a {
        padding: 12px 0
    }
}

.p-menuNav_link--login>a {
    border: 1px solid #ea4c89;
    background: none;
    color: #ea4c89;
    padding: 8px 0
}

@media only screen and (max-width:799px) {
    .p-menuNav_link--login>a {
        padding: 12px 0
    }
}

.p-menuNav_mypage {
    display: block;
    font-size: 12px;
    font-weight: 400;
    color: #888;
    margin-top: 5px
}

.p-menuNav_mytonttu {
    position: relative;
    display: flex;
    align-items: center;
    font-family: Helvetica Neue, Helvetica, sans-serif;
    font-size: 16px;
    font-weight: 700;
    margin-top: 7px
}

@media only screen and (max-width:799px) {
    .p-menuNav_mytonttu {
        margin-top: 5px
    }
}

.p-menuNav_mytonttu:before {
    position: relative;
    top: 2px;
    right: 0;
    background: url("../img/global/tonttu.svg");
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    content: "";
    width: 14px;
    height: 20px;
    margin-right: 7px
}

@media only screen and (max-width:799px) {
    .p-menuNav_mytonttu:before {
        top: 3px;
        width: 12px;
        height: 20px
    }
}

.p-menuUser {
    line-height: 1;
    padding-bottom: 5px
}

.p-menuUser_body {
    font-weight: 700
}

.p-menuUser_mypage a {
    display: flex;
    align-items: center;
    padding: 10px 20px
}

.p-menuUser_mypage a:hover {
    text-decoration: none
}

.p-menuUser_icon {
    border-radius: 100%;
    background-size: cover;
    width: 40px;
    height: 40px;
    margin-right: 10px
}

.p-menuUserLinks {
    display: flex;
    font-weight: 700;
    padding: 0 20px
}

.p-menuUserLinks_link {
    width: 50%
}

.p-menuUserLinks_link.is-ticket a {
    position: relative;
    padding-left: 26px
}

.p-menuUserLinks_link.is-ticket a img {
    position: absolute;
    left: 0;
    width: 20px;
    margin-top: 1px;
    margin-right: 3px
}

.p-menuUserLinks_link.is-ticket a:before {
    position: relative;
    top: 1px;
    font-size: 18px;
    margin-right: 7px
}

.p-menuUserLinks_link.is-tonttu a {
    position: relative;
    padding-left: 20px
}

.p-menuUserLinks_link.is-tonttu a img {
    position: absolute;
    left: 0;
    width: 19px;
    margin-right: 3px;
    margin-left: -2px
}

.p-menuUserLinks_link.is-tonttu a:before {
    font-size: 18px;
    margin-right: 5px
}

.p-menuUserLinks_link a {
    display: flex;
    align-items: center;
    line-height: 1;
    padding: 15px 0
}

.p-menuUserLinks_link a:hover {
    text-decoration: none
}

.p-menuButton {
    position: absolute;
    top: 0;
    left: 0;
    width: 60px;
    height: 50px;
    display: none;
    text-align: center;
    cursor: pointer;
    justify-content: center;
    align-items: center;
    z-index: 1002
}

@media only screen and (max-width:799px) {
    .p-menuButton {
        display: flex
    }
}

.p-menuButton_line {
    display: block;
    width: 20px;
    height: 2px;
    background: #ea4c89;
    background: #222;
    margin: 0 auto 6px;
    transition-property: all;
    transition-duration: .4s;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    -webkit-animation-duration: .35s;
    animation-duration: .35s;
    -webkit-animation-direction: alternate;
    animation-direction: alternate;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

[data-page-id=top] .p-menuButton_line {
    background: #fff
}

.is-menuOpen [data-page-id=top] .p-menuButton_line {
    background: #222
}

.is-menuOpen .p-menuButton_line--1 {
    -webkit-animation-name: menu1In;
    animation-name: menu1In
}

.is-menuClose .p-menuButton_line--1 {
    -webkit-animation-name: menu1Out;
    animation-name: menu1Out
}

@-webkit-keyframes menu1In {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    50% {
        -webkit-transform: translateY(7px);
        transform: translateY(7px)
    }

    to {
        -webkit-transform: translateY(7px) rotate(-45deg);
        transform: translateY(7px) rotate(-45deg)
    }
}

@keyframes menu1In {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    50% {
        -webkit-transform: translateY(7px);
        transform: translateY(7px)
    }

    to {
        -webkit-transform: translateY(7px) rotate(-45deg);
        transform: translateY(7px) rotate(-45deg)
    }
}

@-webkit-keyframes menu1Out {
    0% {
        -webkit-transform: translateY(7px) rotate(-45deg);
        transform: translateY(7px) rotate(-45deg)
    }

    50% {
        -webkit-transform: translateY(7px);
        transform: translateY(7px)
    }

    to {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes menu1Out {
    0% {
        -webkit-transform: translateY(7px) rotate(-45deg);
        transform: translateY(7px) rotate(-45deg)
    }

    50% {
        -webkit-transform: translateY(7px);
        transform: translateY(7px)
    }

    to {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

.is-menuOpen .p-menuButton_line--2 {
    -webkit-animation-name: menu2In;
    animation-name: menu2In
}

.is-menuClose .p-menuButton_line--2 {
    -webkit-animation-name: menu2Out;
    animation-name: menu2Out
}

@-webkit-keyframes menu2In {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }

    to {
        opacity: 0
    }
}

@keyframes menu2In {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        opacity: 1
    }

    to {
        opacity: 0
    }
}

@-webkit-keyframes menu2Out {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes menu2Out {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

.p-menuButton_line--3 {
    margin-bottom: 0
}

.is-menuOpen .p-menuButton_line--3 {
    -webkit-animation-name: menu3In;
    animation-name: menu3In
}

.is-menuClose .p-menuButton_line--3 {
    -webkit-animation-name: menu3Out;
    animation-name: menu3Out
}

@-webkit-keyframes menu3In {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    50% {
        -webkit-transform: translateY(-9px);
        transform: translateY(-9px)
    }

    to {
        -webkit-transform: translateY(-9px) rotate(45deg);
        transform: translateY(-9px) rotate(45deg)
    }
}

@keyframes menu3In {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    50% {
        -webkit-transform: translateY(-9px);
        transform: translateY(-9px)
    }

    to {
        -webkit-transform: translateY(-9px) rotate(45deg);
        transform: translateY(-9px) rotate(45deg)
    }
}

@-webkit-keyframes menu3Out {
    0% {
        -webkit-transform: translateY(-9px) rotate(45deg);
        transform: translateY(-9px) rotate(45deg)
    }

    50% {
        -webkit-transform: translateY(-9px);
        transform: translateY(-9px)
    }

    to {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes menu3Out {
    0% {
        -webkit-transform: translateY(-9px) rotate(45deg);
        transform: translateY(-9px) rotate(45deg)
    }

    50% {
        -webkit-transform: translateY(-9px);
        transform: translateY(-9px)
    }

    to {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

.p-menuButton_string {
    font-size: 8px;
    width: 40px;
    height: 10px;
    line-height: 1;
    font-weight: 700;
    overflow: hidden;
    position: relative;
    display: block;
    position: absolute;
    left: -8px;
    bottom: -12px;
    text-align: center;
    transition-property: all;
    transition-duration: .4s;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1)
}

.p-menuButton_string--open {
    visibility: visible;
    opacity: 1
}

.is-spOpen .p-menuButton_string--open,
.p-menuButton_string--close {
    visibility: hidden;
    opacity: 0
}

.is-spOpen .p-menuButton_string--close {
    visibility: visible;
    opacity: 1
}

.p-menuButtonUser {
    position: absolute;
    top: 6px;
    right: 5px;
    width: 30px;
    height: 30px;
    background-size: cover;
    border-radius: 100%;
    display: none
}

.p-searchButton {
    position: absolute;
    top: 15px;
    right: 50px;
    text-align: center
}

@media only screen and (max-width:799px) {
    .p-searchButton {
        top: 16px;
        right: 120px;
        display: block
    }
}

@media only screen and (max-width:799px) {
    .is-logged .p-searchButton {
        right: 70px
    }
}

.p-searchButton_icon {
    width: 30px;
    height: 30px;
    display: block;
    position: relative;
    color: #ea4c89;
    z-index: 2;
    background: #fff;
    cursor: pointer
}

.p-searchButton_icon:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    font-size: 36px;
    height: 30px;
    line-height: 30px
}

.p-searchButton_input {
    position: absolute;
    top: -3px;
    right: -10px;
    z-index: 1;
    transition-property: width opacity;
    transition-duration: .3s;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    box-sizing: border-box;
    visibility: hidden;
    opacity: 0
}

.is-searchOpen .p-searchButton_input {
    visibility: visible;
    opacity: 1
}

.is-searchOut .p-searchButton_input {
    transition-delay: .1s
}

.p-searchButton_input input {
    border: 1px solid #ddd;
    padding: 10px;
    border-radius: 8px;
    transition-property: width opacity;
    transition-duration: .3s;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    box-sizing: border-box;
    width: 0;
    outline: none
}

.is-searchOpen .p-searchButton_input input {
    width: 200px
}

.p-action {
    position: relative;
    border-radius: 6px;
    display: inline-block;
    box-sizing: border-box;
    font-size: 14px;
    font-weight: 700;
    color: #ea4c89;
    height: 30px;
    margin-left: 10px;
    cursor: pointer;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .25s;
    transition-property: all
}

@media only screen and (max-width:799px) {
    .p-action {
        bottom: 0;
        left: 0;
        background: hsla(0, 0%, 100%, .8);
        box-sizing: border-box;
        font-size: 16px;
        z-index: 1000;
        width: 100%;
        min-width: auto;
        height: 44px;
        margin-left: 0;
        padding: 0
    }
}

.p-action.is-disabled {
    background: #ccc;
    pointer-events: none
}

.p-action.is-comingsoon {
    width: 159px
}

@media only screen and (max-width:799px) {
    .p-action.is-comingsoon {
        width: calc(50% - 5px)
    }
}

.p-action.is-comingsoon .p-action_text {
    opacity: .3
}

.p-action.is-comingsoon .p-action_number {
    font-size: 12px;
    color: #ccc;
    width: 60px
}

@media only screen and (max-width:799px) {
    .p-action.is-comingsoon .p-action_number {
        font-size: 10px;
        width: 50px
    }
}

.p-action--itta {
    margin-left: 0
}

.p-action--itta:hover .p-action_text {
    background: red
}

.p-action--ikitai {
    border: 1px solid #ea4c89;
    background: #fff;
    box-sizing: border-box;
    min-width: 120px
}

@media only screen and (max-width:799px) {
    .p-action--ikitai {
        border: 2px solid #ea4c89;
        width: calc(50% - 10px)
    }
}

.desktop .p-action--ikitai:hover {
    background: #ea4c89;
    color: #fff
}

.p-action--ikitai.is-active {
    background: #ea4c89;
    color: #fff
}

.p-action--post {
    background: #333;
    color: #fff;
    width: 150px
}

@media only screen and (max-width:799px) {
    .p-action--post {
        float: right;
        width: calc(50% - 5px)
    }
}

.p-action--post a {
    display: block;
    color: #fff
}

.p-action--post:hover {
    background: #555;
    color: #fff
}

.p-action_text {
    position: relative;
    top: -1px;
    border-right: none;
    box-sizing: border-box;
    font-weight: 700;
    line-height: 30px;
    z-index: 1;
    text-align: center;
    width: 100px;
    height: 30px
}

@media only screen and (max-width:799px) {
    .p-action_text {
        font-size: 14px;
        line-height: 44px;
        width: calc(100% - 40px);
        height: 44px;
        padding-left: 15px
    }
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .p-action_text {
        width: calc(100% - 30px)
    }
}

.p-action--ikitai .p-action_text {
    padding-left: 30px
}

@media only screen and (max-width:799px) {
    .p-action--ikitai .p-action_text {
        top: -3px;
        padding-left: 50px
    }
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .p-action--ikitai .p-action_text {
        padding-left: 30px
    }
}

.p-action--ikitai.is-active .p-action_text {
    border-radius: 6px 0 0 6px
}

.p-action--post .p-action_text {
    border-radius: 6px;
    width: 100%;
    padding-left: 15px
}

.p-action--itta .p-action_text {
    background: #ef0d0d
}

.p-action_text span {
    position: relative;
    display: inline-block;
    line-height: 30px;
    height: 30px
}

@media only screen and (max-width:799px) {
    .p-action_text span {
        line-height: 40px;
        height: 40px
    }
}

.p-action--ikitai .p-action_text span:before {
    content: ""
}

.p-action--post .p-action_text span:before {
    content: ""
}

.is-active .p-action_text span:before {
    content: ""
}

.p-action_text span:before {
    position: absolute;
    top: 0;
    left: -25px;
    font-size: 21px;
    line-height: 31px
}

@media only screen and (max-width:799px) {
    .p-action_text span:before {
        top: -4px;
        left: -22px;
        font-size: 14px;
        line-height: 50px
    }
}

@media only screen and (max-width:799px) {
    .is-active .p-action_text span:before {
        top: -4px;
        left: -24px
    }
}

.p-action--ikitai .p-action_text span:before {
    left: -21px;
    font-size: 19px
}

@media only screen and (max-width:799px) {
    .p-action--ikitai .p-action_text span:before {
        font-size: 22px
    }
}

.p-action--post .p-action_text span:before {
    left: -30px;
    font-size: 24px
}

@media only screen and (max-width:799px) {
    .p-action--post .p-action_text span:before {
        top: -5px;
        font-size: 26px
    }
}

.is-active .p-action_text span:before {
    font-size: 17px
}

@media only screen and (max-width:799px) {
    .is-active .p-action_text span:before {
        font-size: 16px;
        opacity: 1
    }
}

.p-action_number {
    position: absolute;
    top: 0;
    right: 0;
    border-radius: 0 6px 6px 0;
    box-sizing: border-box;
    line-height: 29px;
    text-align: center;
    width: 40px;
    height: 30px;
    -webkit-animation-duration: .28s;
    animation-duration: .28s;
    -webkit-animation-timing-function: cubic-bezier(.25, .25, .75, .75);
    animation-timing-function: cubic-bezier(.25, .25, .75, .75);
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

@media only screen and (max-width:799px) {
    .p-action_number {
        top: 0;
        font-size: 12px;
        line-height: 39px;
        width: 50px;
        height: 44px
    }
}

.is-active .p-action_number {
    -webkit-animation-name: countUp;
    animation-name: countUp
}

@-webkit-keyframes countUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(0) rotateY(0deg);
        transform: translateY(0) rotateY(0deg)
    }

    50% {
        opacity: 1;
        -webkit-transform: translateY(-10px) rotateY(180deg);
        transform: translateY(-10px) rotateY(180deg)
    }

    to {
        opacity: 1;
        -webkit-transform: translateY(0) rotateY(1turn);
        transform: translateY(0) rotateY(1turn)
    }
}

@keyframes countUp {
    0% {
        opacity: 0;
        -webkit-transform: translateY(0) rotateY(0deg);
        transform: translateY(0) rotateY(0deg)
    }

    50% {
        opacity: 1;
        -webkit-transform: translateY(-10px) rotateY(180deg);
        transform: translateY(-10px) rotateY(180deg)
    }

    to {
        opacity: 1;
        -webkit-transform: translateY(0) rotateY(1turn);
        transform: translateY(0) rotateY(1turn)
    }
}

.p-action_select {
    display: none
}

.p-action_animation {
    position: absolute;
    display: none
}

.p-action_animation span {
    display: inline-block;
    color: #ea4c89
}

.p-action_animation span:first-child {
    -webkit-transform: translateY(-50px);
    transform: translateY(-50px)
}

.p-tags {
    position: relative;
    font-size: 0
}

.p-tags_tag {
    display: inline-block;
    list-style: none;
    font-size: 12px;
    line-height: 1;
    padding: 4px 8px;
    background: #888;
    color: #fff;
    border-radius: 6px;
    font-weight: 700;
    margin: 0 2px 4px
}

@media only screen and (max-width:799px) {
    .p-tags_tag {
        padding: 4px 6px;
        border-radius: 2px;
        font-size: 10px
    }
}

@media only screen and (max-width:799px) {
    .p-filter {
        background: #f3f3f3;
        box-sizing: border-box;
        width: calc(100% + 40px);
        margin-top: -20px;
        margin-bottom: 10px;
        margin-left: -20px;
        padding: 20px
    }
}

.p-filter_hidden {
    display: none
}

.p-filter_content,
.p-filter_detail {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

.p-filter_detail {
    width: 100%
}

@media only screen and (max-width:799px) {
    .p-filter_detail {
        display: none;
        transition-timing-function: cubic-bezier(.215, .61, .355, 1);
        transition-duration: .5s;
        transition-property: opacity transform height
    }
}

@media only screen and (max-width:799px) {
    .is-open .p-filter_detail {
        display: block
    }
}

.p-filter.is-simple .p-filterItem {
    flex-basis: calc(29.33333% - 16px)
}

@media only screen and (max-width:799px) {
    .p-filter.is-simple .p-filterItem {
        flex-basis: 49.5%
    }
}

@media only screen and (max-width:799px) {
    .p-filter.is-simple .p-filterItem--keyword {
        flex-basis: 100%
    }
}

.p-filter.is-simple .p-filterItem--submit {
    height: 51px;
    flex-basis: 12%
}

@media only screen and (max-width:799px) {
    .p-filter.is-simple .p-filterItem--submit {
        flex-basis: 100%
    }
}

.p-filterItem {
       position: relative;
    border: 3px solid #eee;
    border-radius: 8px;
    background: #fff;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    font-size: 16px;
    margin: 0 9px 10px;
    padding: 0 10px;
    flex-basis: 28.09524%;
    flex-basis: 22.8%;
    height: 50px;
}

@media only screen and (max-width:799px) {
    .p-filterItem {
        font-size: 14px;
        overflow: hidden;
        margin-right: 0;
        margin-bottom: 5px;
        flex-basis: 100%
    }
}


.p-filterItem--area,
.p-filterItem--conditions {
    cursor: pointer;
     margin-right: 0;
}

.p-filterItem--area:after,
.p-filterItem--conditions:after {
    content: ""
}

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

    .p-filterItem--area,
    .p-filterItem--conditions {
        flex-basis: 49.5%
    }
}

.p-filterItem--area:hover:before,
.p-filterItem--conditions:hover:before {
    border: 1px solid #ea4c89;
    background: #fff
}

.p-filterItem--area:hover:after,
.p-filterItem--conditions:hover:after {
    color: #ea4c89
}

.p-filterItem--area:before,
.p-filterItem--conditions:before {
    position: absolute;
    top: 14px;
    right: 10px;
    border-radius: 50%;
    background: #ea4c89;
    display: block;
    box-sizing: border-box;
    content: "";
    width: 20px;
    height: 20px;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .25s;
    transition-property: all
}

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

    .p-filterItem--area:before,
    .p-filterItem--conditions:before {
        top: 15px
    }
}

.p-filterItem--area:after,
.p-filterItem--conditions:after {
    position: absolute;
    top: 16px;
    right: 15px;
    font-size: 10px;
    color: #fff;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .25s;
    transition-property: all
}

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

    .p-filterItem--area:after,
    .p-filterItem--conditions:after {
        top: 17px;
        right: 15px
    }
}

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

    .p-filterItem--area .p-filterItem_name,
    .p-filterItem--conditions .p-filterItem_name {
        min-width: 2.5em
    }
}

.p-filterItem--action {
    display: flex;
    flex-basis: 39.28571%
}

.p-filterItem--keyword {
    margin-right: 0;
    flex-basis: 42%
}

@media only screen and (max-width:799px) {
    .p-filterItem--keyword {
        flex-basis: 100%
    }
}

.p-filterItem--keyword input {
    position: relative;
    top: 0;
    border: none;
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
    width: 200px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: 0
}

@media only screen and (max-width:799px) {
    .p-filterItem--keyword input {
        top: 1px;
        font-size: 14px
    }
}

.p-filterItem--mizuburo,
.p-filterItem--sauna {
    margin-bottom: 0;
    padding-top: 0;
    padding-bottom: 0
}

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

    .p-filterItem--mizuburo,
    .p-filterItem--sauna {
        display: none;
        margin-bottom: 5px
    }
}

.p-filterItem--mizuburo span,
.p-filterItem--sauna span {
    position: relative;
    top: 12px;
    font-size: 12px;
    margin-right: 10px
}

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

    .p-filterItem--mizuburo span,
    .p-filterItem--sauna span {
        margin: 0 15px 0 10px
    }
}

@media only screen and (max-width:799px) {
    .p-filterItem--mizuburo {
        margin-left: 0
    }
}

.p-filterItem--gender {
    border: none;
    margin-bottom: 0;
    padding: 0;
    flex-basis: 22.85714%
}

@media only screen and (max-width:799px) {
    .p-filterItem--gender {
        border: 3px solid #eee;
        padding: 7px 10px 14px;
        display: none;
        margin-bottom: 10px;
        flex-basis: 100%
    }
}

.p-filterItem--gender .c-formCheckbox {
    margin-left: 20px
}

.p-filterItem--gender .c-formCheckbox:first-of-type {
    margin-left: 0
}

.p-filterItem--checkbox {
    border: none;
    padding: 2px 0 8px
}

@media only screen and (max-width:799px) {
    .p-filterItem--checkbox {
        border: none;
        background: none;
        padding: 2px 0 6px
    }
}

@media only screen and (max-width:799px) {
    .p-filterItem--checkbox .c-formCheckbox label {
        top: -2px
    }
}

.p-filterItem--submit {
    border: none;
    background: #ea4c89;
    margin-right: 0;
    margin-bottom: 0;
    padding: 0;
    flex-basis: 9.28571%;
    height: 50px;
}

@media only screen and (max-width:799px) {
    .p-filterItem--submit {
        flex-basis: 100%
    }
}

.p-filterItem--submit button {
    border: none;
    border-radius: 8px;
    background: none;
    display: block;
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    text-align: center;
    width: 100%;
    padding: 12px 0 12px 20px;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none
}

.p-filterItem--submit button span {
    position: relative
}

.p-filterItem--submit button span:before {
    content: "";
    position: absolute;
    top: -5px;
    left: -30px;
    font-size: 28px;
    font-weight: 700
}

.p-filterItem--submit button:hover {
    background: #ea4c89;
    text-decoration: none
}

.p-filterItem_content {
    position: relative;
    display: flex
}

@media only screen and (max-width:799px) {
    .p-filterItem_content {
        width: 100%
    }
}

.p-filterItem_name {
    font-size: 12px;
    font-weight: 700;
    color: #ea4c89;
min-width: 2em;
    margin: 0 10px 0 0
}

@media only screen and (max-width:799px) {
    .p-filterItem_name {
        font-size: 14px;
        min-width: 5em
    }
}

.p-filterItem_result {
    display: block;
    font-weight: 700;
    line-height: 1;
    color: #757575;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    width: 130px
}

@media only screen and (max-width:799px) {
    .p-filterItem_result {
        width: 80%
    }
}

.p-filterItem_select {
    position: relative;
    top: -1px;
    display: inline-block;
    box-sizing: border-box;
    font-size: 0;
    vertical-align: middle;
    opacity: 1;
    overflow: hidden;
    width: 60px;
    margin-right: 10px;
    padding: 3px 0;
    transition: border .2s ease-out
}

.p-filterItem_select:before {
    content: ""
}

@media only screen and (max-width:799px) {
    .p-filterItem_select {
        font-size: 14px;
        width: 70px
    }
}

.p-filterItem_select.is-placeholder,
.p-filterItem_select.is-placeholder select {
    color: #bbb
}

.p-filterItem--order .p-filterItem_select {
    width: 110px
}

@media only screen and (max-width:799px) {
    .p-filterItem--order .p-filterItem_select {
        width: 95%
    }
}

.p-filterItem_select:last-of-type {
    margin-right: 0
}

.p-filterItem_select:before {
    position: absolute;
    top: 15px;
    right: 0;
    display: block;
    font-size: 12px;
    font-size: 10px;
    z-index: 0;
    color: #ea4c89;
    pointer-events: none;
    width: 10px;
    height: 10px;
    -webkit-transform: scale(.8);
    transform: scale(.8)
}

.p-filterItem--mizuburo .p-filterItem_select:after,
.p-filterItem--sauna .p-filterItem_select:after {
    position: absolute;
    top: 12px;
    right: 18px;
    display: block;
    content: "度";
    font-size: 14px;
    pointer-events: none;
    width: 14px;
    height: 14px
}

.p-filterItem_select select {
    border: 0;
    border-radius: 0;
    background: none transparent;
    box-sizing: content-box;
    font-size: 16px;
    line-height: 1;
    color: inherit;
    vertical-align: middle;
    width: 100%;
    height: 39px;
    margin: 0;
    padding: 0 35px 0 0;
    cursor: pointer;
    appearance: none;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none
}

.p-filterMore {
    display: none;
    text-align: center;
    width: 100%
}

@media only screen and (max-width:799px) {
    .p-filterMore {
        display: block
    }
}

.p-filterMore span {
    display: inline-block;
    font-weight: 700;
    color: #888;
    padding: 15px 0 20px;
    cursor: pointer
}

.p-filterMore span:after {
    content: "";
    padding-left: 10px
}

.p-filterResult_tags {
    font-size: 0
}

.p-filterResult_tags.is-active {
    margin: 10px 0 0
}

.p-filterResult_tag {
    position: relative;
    border-radius: 6px;
    background: #888;
    display: inline-block;
    font-size: 13px;
    font-weight: 700;
    color: #fff;
    margin: 0 5px 5px 0;
    padding: 3px 25px 3px 10px;
    cursor: pointer
}

.p-filterResult_tag:after {
    content: "";
    position: absolute;
    top: 6px;
    right: 10px;
    font-size: 10px
}

.p-filterResult_tag:hover {
    background: #555
}

.p-filterModal {
    overflow-y: auto
}

.p-filterModal,
.p-filterModal_content {
    position: relative;
    height: 100%
}

@media only screen and (max-width:799px) {
    .p-filterModal_content {
        box-sizing: border-box;
        overflow-y: auto;
        height: 100%;
        padding: 0 20px;
        -webkit-overflow-scrolling: touch
    }
}

.p-filterModal .c-button {
    position: fixed;
    bottom: 0;
    left: 0;
    border-radius: 0 0 8px 8px
}

@media only screen and (max-width:799px) {
    .p-filterModal .c-button {
        border-radius: 0
    }
}

.p-filterModal .c-button:hover {
    background: #ea4c89;
    opacity: 1
}

.p-filterModal .c-button a {
    border-radius: 0 0 4px 4px
}

@media only screen and (max-width:799px) {
    .p-filterModal .c-button a {
        border-radius: 0
    }
}

.p-filterModalItem {
    border-bottom: 1px solid #eee;
    display: flex;
    padding: 15px 0 20px
}

@media only screen and (max-width:799px) {
    .p-filterModalItem {
        display: block;
        padding-bottom: 25px
    }
}

.p-filterModalItem:first-of-type {
    padding-top: 0
}

.p-filterModalItem:last-of-type {
    border-bottom: none;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .p-filterModalItem:last-of-type {
        margin-bottom: 40px
    }
}

.p-filterModalItem_headline {
    flex-basis: 15%
}

@media only screen and (max-width:799px) {
    .p-filterModalItem_headline {
        margin-bottom: -5px
    }
}

@media only screen and (max-width:799px) {
    .p-filterModalItem--stove .p-filterModalItem_headline {
        display: none
    }
}

.p-filterModalItem_body {
    display: flex;
    flex-wrap: wrap;
    padding: 0 0 0 20px;
    flex-basis: 85%
}

@media only screen and (max-width:799px) {
    .p-filterModalItem_body {
        display: flex;
        padding: 0
    }
}

.p-filterModalItem_body .c-formCheckbox {
    display: flex;
    margin: 15px 0 0
}

.p-filterModal--area .p-filterModalItem_body .c-formCheckbox {
    flex-basis: 20%
}

@media only screen and (max-width:799px) {
    .p-filterModal--area .p-filterModalItem_body .c-formCheckbox {
        flex-basis: 50%
    }
}

.p-filterModal--conditions .p-filterModalItem_body .c-formCheckbox {
    flex-basis: 33.3333%
}

@media only screen and (max-width:799px) {
    .p-filterModal--conditions .p-filterModalItem_body .c-formCheckbox {
        flex-basis: 50%
    }
}

.p-filterModal--area .p-filterModalItem_body .c-formCheckbox:nth-of-type(-n+5) {
    margin-top: 0
}

@media only screen and (max-width:799px) {
    .p-filterModal--area .p-filterModalItem_body .c-formCheckbox:nth-of-type(-n+5) {
        margin-top: 15px;
        flex-basis: 50%
    }
}

.p-filterModal--conditions .p-filterModalItem_body .c-formCheckbox:nth-of-type(-n+3) {
    margin-top: 0
}

@media only screen and (max-width:799px) {
    .p-filterModal--conditions .p-filterModalItem_body .c-formCheckbox:nth-of-type(-n+3) {
        margin-top: 15px
    }
}

.p-filterModalItem--stove .p-filterModalItem_body .c-formCheckbox {
    margin-top: 0
}

@media only screen and (max-width:799px) {
    .p-filterModalItem--stove .p-filterModalItem_body .c-formCheckbox {
        margin-top: 15px
    }
}

.p-filterModalItem_body .c-formCheckbox small {
    display: block;
    font-size: 12px;
    margin-left: -7px
}

@media only screen and (max-width:799px) {
    .p-filterModalItem_body .c-formCheckbox small {
        font-size: 7px;
        margin-left: -3px
    }
}

.p-filterModalItem_headlineLv2 {
    margin-bottom: 10px;
    flex-basis: 100%
}

@media only screen and (max-width:799px) {
    .p-filterModalItem--stove .p-filterModalItem_headlineLv2:nth-of-type(2) {
        border-top: 1px solid #eee;
        margin-top: 20px;
        padding-top: 15px
    }
}

.p-filterModalItem .c-formCheckbox label {
    width: 100%
}

.p-result {
    position: relative;
    margin-bottom: 40px
}

@media only screen and (max-width:799px) {
    .p-result {
        margin-bottom: 20px
    }
}

.p-result+.c-pagenation {
    margin-top: 20px
}

.p-result_header {
    overflow: hidden;
    margin: 0 0 10px
}

@media only screen and (max-width:799px) {
    .p-result_header {
        margin-top: -50px;
        margin-bottom: 0;
        padding: 0 20px
    }
}

.p-result_header.is-sakatsu {
    border-bottom: none;
    margin-top: 0;
    margin-bottom: 0;
    padding: 10px 40px
}

@media only screen and (max-width:799px) {
    .p-result_header.is-sakatsu {
        margin-top: 10px;
        padding: 0 20px
    }
}

.p-result_noresult {
    padding: 10px 40px
}

@media only screen and (max-width:799px) {
    .p-result_noresult {
        padding: 0 20px
    }
}

.p-result_headline {
    position: relative;
    top: 5px;
    font-size: 20px;
    float: left
}

@media only screen and (max-width:799px) {
    .p-result_headline {
   
        float: none;
        margin-bottom: 10px
    }
}

.p-result_description {
    font-size: 14px;
    clear: both
}

.p-result_order {
    position: relative;
    top: -1px;
    border-radius: 8px;
    float: right;
    margin: 0 20px 0 0;
    padding: 0 10px
}

@media only screen and (max-width:799px) {
    .p-result_order {
        border: 3px solid #eee;
        float: left;
        float: none;
        margin: 10px 0 20px;
        padding: 2px 10px 0
    }
}

.p-result_order p {
    display: inline-block;
    font-size: 14px
}

.p-result_order .p-filterItem_select {
    width: 140px
}

@media only screen and (max-width:799px) {
    .p-result_order .p-filterItem_select {
        width: calc(100% - 70px)
    }
}

.p-result_order select {
    font-size: 14px
}

.p-result_number {
    font-size: 14px;
    float: right
}

@media only screen and (max-width:799px) {
    .p-result_number {
        float: none
    }
}

.p-result_number span {
    font-family: Montserrat;
    font-size: 22px;
    font-size: 20px;
    color: #ef0d0d;
    padding: 0 5px;
}

.p-result .p-saunaList {
    margin-top: -20px
}

.p-resultNew {
    margin-top: 10px;
    margin-bottom: 0
}

@media only screen and (max-width:799px) {
    .p-resultNew {
        margin-top: 15px;
        margin-bottom: 15px
    }
}

.p-resultNew a {
    position: relative;
    border-radius: 6px;
    border-radius: 8px;
    background: #f7f7f7;
    display: flex;
    align-items: center;
    text-decoration: none;
    padding: 14px 12px
}

@media only screen and (max-width:799px) {
    .p-resultNew a {
        background: #fff;
        padding: 14px 12px
    }
}

.p-resultNew_label {
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    color: #ef0d0d;
    margin-right: 10px
}

@media only screen and (max-width:799px) {
    .p-resultNew_label {
        font-size: 10px
    }
}

.p-resultNew_button,
.p-resultNew_text {
    position: relative;
    display: inline-block;
    line-height: 1
}

.p-resultNew_button {
    font-size: 14px;
    font-weight: 700;
    margin-left: 10px
}

@media only screen and (max-width:799px) {
    .p-resultNew_button {
        position: absolute;
        top: 50%;
        right: 30px;
        display: block;
        font-size: 12px;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%)
    }
}

.p-resultNew_button:before {
    content: "";
    position: absolute;
    top: -3px;
    right: -20px;
    font-size: 20px;
    font-weight: 700
}

@media only screen and (max-width:799px) {
    .p-resultNew_button:before {
        font-size: 18px;
        font-size: 20px
    }
}

.p-modal {
    position: fixed;
    top: 0;
    left: 0;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    overflow: hidden;
    width: 100%;
    height: 100vh;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: 0s;
    transition-property: all
}

@media only screen and (max-width:799px) {
    .p-modal {
        height: 100%;
        -webkit-animation-duration: .3s;
        animation-duration: .3s;
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        -webkit-animation-delay: .2s;
        animation-delay: .2s;
        -webkit-animation-fill-mode: forwards;
        animation-fill-mode: forwards
    }
}

.is-modalOpen .p-modal.is-show {
    z-index: 1001;
    pointer-events: all;
    opacity: 1;
    visibility: visible
}

@media only screen and (max-width:799px) {
    .is-modalOpen .p-modal.is-show {
        opacity: 1;
        visibility: visible
    }
}

.is-modalClose .p-modal.is-show {
    z-index: 1001;
    transition-duration: .5s
}

.p-modal_overlay {
    position: fixed;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, .6);
    opacity: 0;
    visibility: hidden;
    overflow: hidden;
    width: 100%;
    height: 100%;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .2s;
    transition-property: all
}

.is-modalOpen .p-modal_overlay {
    opacity: 1;
    visibility: visible
}

.is-modalClose .p-modal_overlay {
    opacity: 0;
    visibility: hidden
}

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

    .p-modal[data-modal-type=filterArea] .p-modal_overlay,
    .p-modal[data-modal-type=filterConditions] .p-modal_overlay,
    .p-modal[data-modal-type=post] .p-modal_overlay {
        display: none
    }
}

.p-modal_wrapper {
    pointer-events: none;
    opacity: 0;
    height: 100%;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: 0s;
    transition-property: all;
    -webkit-animation-duration: .26s;
    animation-duration: .26s;
    -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    -webkit-animation-delay: .1s;
    animation-delay: .1s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

.is-modalOpen .p-modal[data-modal-type=confirm].is-show .p-modal_wrapper,
.is-modalOpen .p-modal[data-modal-type=gallery].is-show .p-modal_wrapper {
    opacity: 1;
    -webkit-animation-name: none;
    animation-name: none
}

.is-modalClose .p-modal[data-modal-type=confirm].is-show .p-modal_wrapper,
.is-modalClose .p-modal[data-modal-type=gallery].is-show .p-modal_wrapper {
    opacity: 0;
    -webkit-animation-name: none;
    animation-name: none
}

.is-modalOpen .is-show .p-modal_wrapper {
    -webkit-animation-name: modalIn;
    animation-name: modalIn
}

@media only screen and (max-width:799px) {
    .is-modalOpen .is-show .p-modal_wrapper {
        -webkit-animation-name: modalInSp;
        animation-name: modalInSp
    }
}

.is-modalClose .is-show .p-modal_wrapper {
    -webkit-animation-name: modalOut;
    animation-name: modalOut;
    -webkit-animation-delay: 0s;
    animation-delay: 0s
}

@media only screen and (max-width:799px) {
    .is-modalClose .is-show .p-modal_wrapper {
        -webkit-animation-name: modalOutSp;
        animation-name: modalOutSp;
        -webkit-animation-duration: .5s;
        animation-duration: .5s
    }
}

@-webkit-keyframes modalIn {
    0% {
        opacity: 1;
        visibility: visible;
        -webkit-transform: translateY(10vh);
        transform: translateY(10vh)
    }

    to {
        opacity: 1;
        visibility: visible;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes modalIn {
    0% {
        opacity: 1;
        visibility: visible;
        -webkit-transform: translateY(10vh);
        transform: translateY(10vh)
    }

    to {
        opacity: 1;
        visibility: visible;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@-webkit-keyframes modalInSp {
    0% {
        opacity: 1;
        visibility: visible;
        -webkit-transform: translateY(95vh);
        transform: translateY(95vh)
    }

    to {
        opacity: 1;
        visibility: visible;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes modalInSp {
    0% {
        opacity: 1;
        visibility: visible;
        -webkit-transform: translateY(95vh);
        transform: translateY(95vh)
    }

    to {
        opacity: 1;
        visibility: visible;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@-webkit-keyframes modalOut {
    0% {
        opacity: 1;
        visibility: visible;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    to {
        opacity: 0;
        visibility: hidden;
        -webkit-transform: translateY(10vh);
        transform: translateY(10vh)
    }
}

@keyframes modalOut {
    0% {
        opacity: 1;
        visibility: visible;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    to {
        opacity: 0;
        visibility: hidden;
        -webkit-transform: translateY(10vh);
        transform: translateY(10vh)
    }
}

@-webkit-keyframes modalOutSp {
    0% {
        opacity: 1;
        visibility: visible;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    to {
        opacity: 1;
        visibility: visible;
        -webkit-transform: translateY(100vh);
        transform: translateY(100vh)
    }
}

@keyframes modalOutSp {
    0% {
        opacity: 1;
        visibility: visible;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    to {
        opacity: 1;
        visibility: visible;
        -webkit-transform: translateY(100vh);
        transform: translateY(100vh)
    }
}

.p-modal_close {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1000;
    color: #333;
    opacity: 0;
    visibility: hidden;
    width: 50px;
    height: 50px;
    cursor: pointer;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .4s;
    transition-property: all;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.p-modal_close:after {
    content: ""
}

@media only screen and (max-width:799px) {
    .p-modal_close {
        position: fixed;
        top: 0;
        right: 0;
        transition-delay: .15s
    }

    .p-modal[data-modal-type=confirm] .p-modal_close {
        transition-delay: 0s
    }
}

[data-modal-type=gallery] .p-modal_close {
    top: -50px;
    right: -15px;
    color: #fff
}

@media only screen and (max-width:799px) {
    [data-modal-type=gallery] .p-modal_close {
        right: 0
    }
}

[data-modal-type=lotteryApply] .p-modal_close {
    top: 20px;
    right: 20px;
    border-radius: 100%;
    background: hsla(0, 0%, 100%, .85);
    width: 40px;
    height: 40px
}

@media only screen and (max-width:799px) {
    [data-modal-type=lotteryApply] .p-modal_close {
        top: 10px;
        right: 10px
    }
}

[data-modal-type=lotteryApply] .p-modal_close:after {
    font-size: 14px
}

.is-modalOpen .p-modal_close {
    opacity: 1;
    visibility: visible
}

.is-modalOpen .p-modal_close:hover {
    opacity: .5
}

.is-modalClose .p-modal_close {
    transition-delay: 0
}

.p-modal_close:after {
    position: absolute;
    top: 50%;
    left: 50%;
    font-size: 16px;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.p-modal_header {
    position: absolute;
    top: 0;
    left: 0;
    border-bottom: 1px solid #eee;
    background: #fff;
    z-index: 2;
    width: 100%;
    height: 50px
}

@media only screen and (max-width:799px) {
    .p-modal_header {
        display: block;
        pointer-events: none
    }
}

.p-modal[data-modal-type=lotteryApply] .p-modal_header,
.p-modal[data-modal-type=ticketConfirm] .p-modal_header {
    border: none
}

.p-modal_headline {
    display: block;
    font-size: 18px;
    line-height: 50px;
    text-align: center;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    width: calc(100% - 100px);
    margin: auto
}

@media only screen and (max-width:799px) {
    .p-modal_headline {
        font-size: 16px
    }
}

.p-modal_inner {
    position: absolute;
    top: 50%;
    left: 50%;
    border-radius: 8px;
    background: #fff;
    box-sizing: border-box;
    z-index: 1;
    opacity: 0;
    overflow: hidden;
    width: 860px;
    height: 80vh;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .35s;
    transition-property: all;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

@media only screen and (max-width:799px) {
    .p-modal_inner {
        border-radius: 0;
        width: 100%;
        height: 100%;
        transition-delay: 0s;
        transition-duration: 0s
    }
}

[data-modal-type=basic] .p-modal_inner,
[data-modal-type=confirm] .p-modal_inner,
[data-modal-type=postComplete] .p-modal_inner {
    height: auto
}

[data-modal-type=image] .p-modal_inner {
    background: none;
    overflow: visible;
    width: auto;
    height: auto
}

@media only screen and (max-width:799px) {
    [data-modal-type=image] .p-modal_inner {
        height: auto;
        margin-top: -30px
    }
}

[data-modal-type=gallery] .p-modal_inner {
    background: none;
    overflow: visible;
    height: 85vh
}

@media only screen and (max-width:799px) {
    [data-modal-type=gallery] .p-modal_inner {
        height: auto;
        margin-top: -30px
    }
}

.is-modalOpen .p-modal.is-show .p-modal_inner {
    pointer-events: all;
    opacity: 1;
    visibility: visible;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.p-modal[data-modal-type=filterArea] .p-modal_inner,
.p-modal[data-modal-type=filterConditions] .p-modal_inner {
    width: 1000px;
    padding-top: 50px
}

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

    .p-modal[data-modal-type=filterArea] .p-modal_inner,
    .p-modal[data-modal-type=filterConditions] .p-modal_inner {
        width: 100%;
        padding-top: 60px
    }
}

.p-modal[data-modal-type=depth] .p-modal_inner {
    background: #caf0ff;
    padding: 0
}

@media only screen and (max-width:799px) {
    .p-modal[data-modal-type=depth] .p-modal_inner {
        height: 300px
    }
}

.p-modal[data-modal-type=comment] .p-modal_inner,
.p-modal[data-modal-type=post] .p-modal_inner,
.p-modal[data-modal-type=supportMessage] .p-modal_inner {
    width: 720px;
    padding-top: 50px
}

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

    .p-modal[data-modal-type=comment] .p-modal_inner,
    .p-modal[data-modal-type=post] .p-modal_inner,
    .p-modal[data-modal-type=supportMessage] .p-modal_inner {
        width: 100%
    }
}

.p-modal.is-tonttuHistory .p-modal_inner,
.p-modal[data-modal-type=gifttonttu] .p-modal_inner {
    width: 500px;
    padding-top: 50px
}

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

    .p-modal.is-tonttuHistory .p-modal_inner,
    .p-modal[data-modal-type=gifttonttu] .p-modal_inner {
        width: 100%;
        padding-top: 50px
    }
}

.p-modal[data-modal-type=confirm] .p-modal_inner,
.p-modal[data-modal-type=postComplete] .p-modal_inner {
    width: 720px;
    height: auto;
    padding-top: 50px
}

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

    .p-modal[data-modal-type=confirm] .p-modal_inner,
    .p-modal[data-modal-type=postComplete] .p-modal_inner {
        width: calc(100% - 20px)
    }
}

.p-modal[data-modal-type=lotteryApply] .p-modal_inner {
    width: 460px;
    height: auto;
    padding-top: 0
}

@media only screen and (max-width:799px) {
    .p-modal[data-modal-type=lotteryApply] .p-modal_inner {
        width: 100%;
        height: 100%
    }
}

.p-modal[data-modal-type=postDialog] .p-modal_inner,
.p-modal[data-modal-type=saunnerDialog] .p-modal_inner {
    width: 460px;
    height: auto;
    padding-top: 50px
}

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

    .p-modal[data-modal-type=postDialog] .p-modal_inner,
    .p-modal[data-modal-type=saunnerDialog] .p-modal_inner {
        width: 100%;
        padding-top: 50px
    }
}

.p-modal_content {
    box-sizing: border-box;
    overflow-y: auto;
    height: 100%;
    -webkit-overflow-scrolling: touch
}

@media only screen and (max-width:799px) {
    .p-modal_content {
        padding: 20px
    }

    .p-modal.is-tonttuHistory .p-modal_content,
    .p-modal[data-modal-type=filterArea] .p-modal_content,
    .p-modal[data-modal-type=filterConditions] .p-modal_content {
        padding: 0
    }
}

.p-modal[data-modal-type=filterArea] .p-modal_content,
.p-modal[data-modal-type=filterConditions] .p-modal_content,
.p-modal[data-modal-type=lotteryApply] .p-modal_content,
.p-modal[data-modal-type=post] .p-modal_content,
.p-modal[data-modal-type=supportMessage] .p-modal_content {
    padding-bottom: 40px
}

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

    .p-modal[data-modal-type=filterArea] .p-modal_content,
    .p-modal[data-modal-type=filterConditions] .p-modal_content,
    .p-modal[data-modal-type=lotteryApply] .p-modal_content,
    .p-modal[data-modal-type=post] .p-modal_content,
    .p-modal[data-modal-type=supportMessage] .p-modal_content {
        height: 100%;
        padding-bottom: 0
    }
}

.p-modal.is-tonttuHistory .p-modal_content,
.p-modal[data-modal-type=gifttonttu] .p-modal_content {
    height: calc(100% - 50px)
}

@media only screen and (max-width:799px) {
    .p-modal[data-modal-type=post] .p-modal_content {
        padding-right: 0;
        padding-left: 0
    }
}

.p-modal_header+.p-modal_content {
    padding-top: 70px
}

@media only screen and (max-width:799px) {
    .p-modal_header+.p-modal_content {
        padding-top: 0
    }
}

.p-modal_body {
    box-sizing: border-box;
    overflow-x: hidden;
    overflow-y: auto;
    height: 100%;
    padding: 20px 40px
}

@media only screen and (max-width:799px) {
    .p-modal_body {
        padding: 0
    }
}

.p-modal[data-modal-type=postComplete] .p-modal_body {
    padding-bottom: 0
}

.p-modal_action {
    z-index: 1
}

.p-modal_action .c-button {
    display: block
}

.is-modalOpened .p-modal_action .c-button.is-disabled>a {
    pointer-events: none
}

.p-modal_action .c-button a {
    border-radius: 0 0 6px 6px;
    pointer-events: none
}

@media only screen and (max-width:799px) {
    .p-modal_action .c-button a {
        border-radius: 0
    }
}

.is-modalOpened .p-modal_action .c-button a {
    pointer-events: all
}

.p-modalDepth {
    position: absolute;
    top: 50%;
    text-align: center;
    padding: 50px 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

@media only screen and (max-width:799px) {
    .p-modalDepth {
        padding: 0
    }
}

.p-modalDepth img {
    width: 90%;
    height: auto
}

.p-resultMap {
    background: #eee;
    height: 600px
}

@media only screen and (max-width:799px) {
    .p-resultMap {
        height: 500px
    }
}

.gm-style-iw-t:after {
    display: none !important
}

.gm-style-iw {
    top: 15px !important;
    left: 0 !important;
    border-radius: 4px;
    background-color: #fff;
    box-sizing: border-box;
    padding: 0 0 0 20px
}

@media only screen and (max-width:799px) {
    .gm-style-iw {
        min-width: 300px !important;
        padding: 0 !important
    }
}

.gm-style-iw>div {
    margin-bottom: -3px
}

@media only screen and (max-width:799px) {
    .gm-style-iw>div {
        min-width: 300px !important
    }
}

.gm-style-iw>button {
    position: relative;
    top: 0 !important;
    right: 20px !important;
    border-radius: 50%;
    color: #222;
    pointer-events: all;
    opacity: 1 !important;
    width: 30px !important;
    height: 30px !important;
    cursor: pointer
}

.gm-style-iw>button:after {
    content: ""
}

@media only screen and (max-width:799px) {
    .gm-style-iw>button {
        top: 5px !important;
        right: 5px !important;
        z-index: 10000
    }
}

.gm-style-iw>button:after {
    position: absolute;
    top: 50%;
    left: 50%;
    font-size: 12px;
    font-weight: 700;
    pointer-events: none;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.gm-style-iw>button img {
    display: none !important
}

@media only screen and (max-width:799px) {
    .gm-style-iw+.closebtn+img {
        right: -20px !important
    }
}

.p-mask {
    position: fixed;
    width: 100%;
    height: 100%;
    z-index: 99;
    display: none
}

.is-searchOpen .p-mask {
    display: block
}

.p-article {
    position: relative;
    width: 640px;
    margin: auto
}

@media only screen and (max-width:799px) {
    .p-article {
        width: 100%
    }
}

.p-article img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.p-article--wide {
    width: 100%
}

.p-article_main {
    margin-bottom: 1.85em
}

.p-article p {
    margin-bottom: 1.95em
}

.p-article p:last-child {
    margin-bottom: 0
}

.p-article ul {
    margin-bottom: 2em;
    padding: 0 0 0 1em
}

.p-article ul li {
    margin-bottom: 1em
}

.p-article ul li.is-number {
    text-indent: -1.5em;
    padding-left: 1.5em
}

.p-article--magazine img {
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 70vh
}

.p-article--magazine .caption {
    display: block;
    font-size: 12px
}

.p-article--magazine .caption img {
    display: block;
    margin-bottom: 5px
}

.p-article--magazine a {
    color: #ea4c89;
    word-break: break-all;
    text-decoration: underline
}

.desktop .p-article--magazine a:hover {
    text-decoration: none;
    opacity: .7
}

.p-article--magazine h2 {
    font-size: 32px;
    margin-top: 2em;
    margin-bottom: .8em
}

@media only screen and (max-width:799px) {
    .p-article--magazine h2 {
        font-size: 26px;
        margin-bottom: .5em
    }
}

.p-article--magazine h3 {
    font-size: 24px;
    margin-top: 2em;
    margin-bottom: 1.2em
}

@media only screen and (max-width:799px) {
    .p-article--magazine h3 {
        font-size: 20px
    }
}

.p-article--magazine strong {
    font-size: 18px;
    line-height: 1.95;
    margin-bottom: 1.95em
}

@media only screen and (max-width:799px) {
    .p-article--magazine strong {
        font-size: 15px
    }
}

.p-article--magazine blockquote {
    position: relative;
    border: 1px solid #ddd;
    box-sizing: border-box;
    font-size: 15px;
    line-height: 1.95;
    margin-bottom: 1.95em;
    padding: 30px 30px 30px 50px
}

.p-article--magazine blockquote:before {
    position: absolute;
    top: -10px;
    left: 15px;
    content: "“";
    font-size: 50px;
    color: #ddd
}

.p-article--magazine blockquote strong {
    margin-bottom: 0
}

.p-article--magazine .is-brBlcok {
    display: block
}

@media only screen and (max-width:799px) {
    .p-article--magazine .is-brBlcok br {
        display: block
    }
}

.p-article--magazine cite {
    font-size: 12px;
    font-style: normal
}

.p-article--magazine hr {
    margin-bottom: 1.5em
}

.p-article--magazine .wp-caption {
    max-width: 100%
}

.p-article--magazine p {
    font-size: 18px;
    line-height: 1.95;
    margin-bottom: 1.95em
}

@media only screen and (max-width:799px) {
    .p-article--magazine p {
        font-size: 15px
    }
}

.p-article--magazine p:last-child,
.p-article--magazine p strong {
    margin-bottom: 0
}

.p-article--magazine p.wp-caption-text,
.p-article--magazine p.wp-caption-text:last-child {
    font-size: 12px;
    line-height: 1.5;
    color: #888;
    margin: 5px 0 1.95em
}

.p-article--magazine p.wp-caption-text.is-main,
.p-article--magazine p.wp-caption-text:last-child.is-main {
    font-size: 16px;
    color: #333;
    margin: 10px 0 1.95em
}

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

    .p-article--magazine p.wp-caption-text.is-main,
    .p-article--magazine p.wp-caption-text:last-child.is-main {
        font-size: 14px
    }
}

@media only screen and (max-width:799px) {
    .p-article--magazine iframe {
        width: 100%;
        height: auto
    }
}

.p-article--magazine ul {
    margin-bottom: 2em
}

.p-article--magazine ul li {
    position: relative;
    font-size: 18px;
    line-height: 1.95;
    text-indent: -1em;
    margin-bottom: 0;
    padding-left: 1em
}

@media only screen and (max-width:799px) {
    .p-article--magazine ul li {
        font-size: 15px
    }
}

.p-article--magazine ul li:before {
    display: inline-block;
    content: "・"
}

.p-article--magazine ul li strong {
    display: inline-block;
    margin-bottom: 0
}

.p-article--magazine ul li.is-number {
    text-indent: -1.5em;
    padding-left: 1.5em
}

.p-article--magazine table {
    width: 100%;
    margin-bottom: 1.95em
}

.p-article--magazine table td,
.p-article--magazine table th {
    border-bottom: 1px solid #ddd;
    font-size: 18px;
    padding: 5px
}

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

    .p-article--magazine table td,
    .p-article--magazine table th {
        font-size: 14px
    }
}

@media only screen and (max-width:799px) {
    .p-article--magazine table th.is-th50 {
        width: 50px
    }
}

.p-article_header {
    position: relative;
    margin-bottom: 40px
}

@media only screen and (max-width:799px) {
    .p-article_header {
        margin-bottom: 20px
    }
}

@media only screen and (max-width:799px) {
    .p-article_header br {
        display: none
    }
}

.p-article_body {
    margin-bottom: 40px
}

@media only screen and (max-width:799px) {
    .p-article_body {
        margin-bottom: 20px
    }
}

.p-article_comic {
    text-align: center
}

@media only screen and (max-width:799px) {
    .p-article_comic {
        width: calc(100% + 40px);
        margin-left: -20px
    }
}

.p-article_comic img {
    max-height: 1500px
}

.p-article_headline {
    margin-bottom: 20px
}

.p-article_meta {
    font-size: 13px;
    margin-bottom: 10px
}

.p-article p.p-article_date {
    display: inline-block;
    font-weight: 700;
    margin: 0 10px 0 0
}

.p-article p.p-article_category {
    display: inline-block;
    margin: 0
}

.p-article p.p-article_category a {
    font-size: 13px;
    font-weight: 700;
    color: #ea4c89;
    text-decoration: none;
    padding: 4px 10px
}

.p-article_item {
    margin: 4em 0
}

.p-article_item:last-of-type {
    margin-bottom: 0
}

.p-article .comments+.p-article_share {
    margin-top: 20px
}

.p-article_share {
    display: flex;
    margin-bottom: 40px;
    margin-top: 60px;
}

@media only screen and (max-width:799px) {
    .p-article_share {
        margin-bottom: 20px
    }
}

.p-article_share .c-share {
    height: auto;
    margin-bottom: 0
}

.p-article_share a {
    color: #333;
    text-decoration: none
}

.p-article .c-button {
    display: block;
    margin-bottom: 10px
}

.p-article .c-button:last-of-type {
    margin-bottom: 0
}

.p-article .c-button a {
    color: #fff;
    text-decoration: none
}

.p-articlePresent {
    border: 2px dotted #ddd;
    border-radius: 10px;
    margin-bottom: 40px;
    padding: 50px 100px
}

@media only screen and (max-width:799px) {
    .p-articlePresent {
        padding: 30px
    }
}

.p-articlePresent h2 {
    color: #ea4c89;
    text-align: center;
    margin-top: 0;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .p-articlePresent h2 {
        font-size: 18px
    }
}

.p-articlePresent h2 span {
    display: block;
    font-size: .65em
}

.p-articlePresent dl {
    margin-bottom: 30px
}

.p-articlePresent dl dt {
    font-weight: 700;
    margin-bottom: 5px
}

.p-articlePresent dl dd {
    margin-bottom: 20px
}

.p-articlePresent dl dd ul li {
    font-size: 16px;
    text-indent: -1em;
    margin-bottom: 5px;
    padding-left: 1em
}

@media only screen and (max-width:799px) {
    .p-articlePresent dl dd ul li {
        font-size: 14px
    }
}

.p-articlePresent .c-button {
    display: block
}

.p-articlePresent .c-button a {
    color: #fff;
    text-decoration: none
}

.p-articleAuthor h3.p-article_headline {
    font-size: 16px;
    margin-bottom: 10px
}

.p-articleAuthor_content {
    display: flex;
    align-items: center
}

.p-articleAuthor--full .p-articleAuthor_content {
    align-items: flex-start
}

.p-articleAuthor_content a {
    color: #333
}

.p-articleAuthor_icon {
    position: relative;
    border-radius: 50%;
    background: #ddd;
    overflow: hidden;
    width: 30px;
    height: 30px;
    margin: 0 10px 0 0
}

@media only screen and (max-width:799px) {
    .p-articleAuthor_icon {
        border-radius: 50%
    }
}

.p-articleAuthor--full .p-articleAuthor_icon {
    top: 7px;
    width: 100px;
    height: 100px;
    margin-right: 20px
}

@media only screen and (max-width:799px) {
    .p-articleAuthor--full .p-articleAuthor_icon {
        width: 60px;
        height: 60px
    }
}

.p-articleAuthor_icon img {
    border-radius: 100%;
    width: 100%;
    height: auto
}

.p-articleAuthor_body {
    width: calc(100% - 60px)
}

.p-articleAuthor_body p {
    font-size: 14px;
    line-height: 1.75;
    margin-bottom: 0
}

@media only screen and (max-width:799px) {
    .p-articleAuthor_body p {
        font-size: 12px
    }
}

.p-articleAuthor--full .p-articleAuthor_body {
    width: calc(100% - 130px)
}

@media only screen and (max-width:799px) {
    .p-articleAuthor--full .p-articleAuthor_body {
        width: calc(100% - 90px)
    }
}

.p-articleAuthor strong.p-articleAuthor_name {
    font-size: 16px;
    margin-bottom: 0
}

.p-articleAuthor--full .p-articleAuthor strong.p-articleAuthor_name {
    font-size: 20px
}

@media only screen and (max-width:799px) {
    .p-articleAuthor--full .p-articleAuthor strong.p-articleAuthor_name {
        font-size: 16px
    }
}

.p-articleAuthor ul.p-articleAuthor_links {
    margin-top: 5px;
    padding-left: 0
}

.p-articleAuthor li.p-articleAuthor_link {
    display: inline-block;
    font-size: 14px;
    text-indent: 0;
    margin-right: 15px;
    padding: 0
}

@media only screen and (max-width:799px) {
    .p-articleAuthor li.p-articleAuthor_link {
        font-size: 12px;
        margin-right: 10px
    }
}

.p-articleAuthor li.p-articleAuthor_link:before {
    display: none
}

.p-articleIntroduction {
    background: #f9f9f9;
    margin-bottom: 40px;
    padding: 30px
}

@media only screen and (max-width:799px) {
    .p-articleIntroduction {
        box-sizing: border-box;
        width: calc(100% + 40px);
        margin-bottom: 20px;
        margin-left: -20px;
        padding: 20px
    }
}

.p-articleIntroduction_content {
    display: flex
}

.p-articleIntroduction_image {
    text-align: center;
    width: 30%;
    margin-right: 20px
}

.p-articleIntroduction_image img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media only screen and (max-width:799px) {
    .p-articleIntroduction_image {
        margin-right: 15px
    }
}

.p-articleIntroduction_body {
    position: relative;
    top: -3px;
    width: 70%
}

.p-articleIntroduction_body h3 {
    font-size: 18px;
    margin-top: 0;
    margin-bottom: 5px
}

@media only screen and (max-width:799px) {
    .p-articleIntroduction_body h3 {
        font-size: 16px
    }
}

.p-articleIntroduction_body p {
    font-size: 14px;
    line-height: 1.5;
    margin-bottom: 0 !important
}

@media only screen and (max-width:799px) {
    .p-articleIntroduction_body p {
        font-size: 12px
    }
}

@media only screen and (max-width:799px) {
    .p-articleIntroduction_body p br {
        display: block
    }
}

.p-articleIntroduction_button {
    margin: 10px 0 0
}

@media only screen and (max-width:799px) {
    .p-articleIntroduction_button {
        margin-top: 15px
    }
}

.p-articleIntroduction_button a {
    border: 2px solid #ea4c89;
    border-radius: 8px;
    background: #ea4c89;
    font-size: 14px;
    font-weight: 700;
    color: #fff;
    text-decoration: none;
    padding: 6px 15px
}

@media only screen and (max-width:799px) {
    .p-articleIntroduction_button a {
        border-radius: 6px;
        display: block;
        box-sizing: border-box;
        text-align: center;
        width: 100%;
        padding: 12px
    }
}

.p-article .p-articleSeries {
    margin-bottom: 60px
}

@media only screen and (max-width:799px) {
    .p-article .p-articleSeries {
        margin-bottom: 40px
    }
}

.p-article .p-articleSeries .c-headline {
    margin-bottom: 10px
}

.p-articleBook {
    border-bottom: 1px solid #ddd;
    margin-bottom: 40px;
    padding-bottom: 40px
}

@media only screen and (max-width:799px) {
    .p-articleBook {
        margin-bottom: 20px;
        padding-bottom: 20px
    }
}

.p-articleBook>h2 {
    font-size: 20px
}

.p-articleBook_content {
    display: flex;
    justify-content: space-between
}

@media only screen and (max-width:799px) {
    .p-articleBook_content {
        display: block
    }
}

.p-articleBook_image {
    width: 30%
}

@media only screen and (max-width:799px) {
    .p-articleBook_image {
        width: 45%;
        margin: auto auto 30px
    }
}

.p-articleBook_image img {
    width: 100%;
    height: auto
}

.p-articleBook_body {
    width: calc(70% - 30px)
}

@media only screen and (max-width:799px) {
    .p-articleBook_body {
        width: 100%
    }
}

.p-articleBook_body h3 {
    font-size: 20px;
    line-height: 1.5;
    margin: -5px 0 15px
}

@media only screen and (max-width:799px) {
    .p-articleBook_body h3 {
        font-size: 18px;
        margin-top: 0
    }
}

.p-articleBook_body h3 span {
    font-size: 13px
}

.p-articleBook_body>p {
    font-size: 15px;
    line-height: 1.6;
    margin-bottom: 1em
}

.p-articleBook_body>p>strong,
.p-articleBook_body>strong {
    display: block;
    font-size: 15px;
    line-height: 1.6;
    margin-bottom: 5px
}

.p-articleBook_body .c-button {
    width: 100%
}

.p-articleBook_body .c-button a {
    background: #ffa508;
    font-size: 14px;
    color: #fff;
    text-decoration: none;
    padding-right: 40px;
    padding-left: 40px
}

.p-articleBook_basic {
    font-size: 12px;
    margin-bottom: 20px
}

.p-articleBook_preview {
    margin-top: 40px
}

.p-articleBook_preview strong {
    margin-bottom: 0
}

.p-articleBook_preview img {
    margin-top: 20px
}

@media only screen and (max-width:799px) {
    .p-articleRelated .c-headline {
        width: calc(100% - 40px);
        margin-right: auto;
        margin-left: auto
    }
}

.p-articleRelated .c-button {
    display: block;
    text-align: center
}

@media only screen and (max-width:799px) {
    .p-articleRelated .c-button {
        width: calc(100% - 40px)
    }
}

.p-articleRelated .c-button a {
    display: inline-block;
    width: auto
}

@media only screen and (max-width:799px) {
    .p-articleRelated .c-button a {
        display: block;
        width: 100%
    }
}

.p-news_list {
    display: flex;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .p-news_list {
        display: block
    }
}

.p-news_list:last-child {
    margin-bottom: 0
}

.p-news_list a {
    text-decoration: none
}

.p-news_date {
    margin: 0 30px 0 0;
    color: #888
}

.p-news_press {
    text-align: right
}

.p-WANTED {
    background: -webkit-gradient(linear, left top, left bottom, from(#ea4c89), to(#ff7948));
    background: -webkit-linear-gradient(top, #ea4c89, #ff7948);
    background: linear-gradient(to bottom, #ea4c89, #ff7948);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    width: 1100px;
    height: 420px;
    margin: 0 auto 80px;
    border-radius: 20px;
}

@media only screen and (max-width:799px) {
    .p-WANTED {
        background-position: 50%;
        height: auto;
        margin-bottom: 60px;
        width: 100%;
        border-radius: 0;
    }
}

.p-WANTED_content {
    display: inline-block;
    box-sizing: border-box;
    text-align: center;
    width: 100%
}

@media only screen and (max-width:799px) {
    .p-WANTED_content {
        display: block;
        padding: 80px 20px
    }
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .p-WANTED_content {
        padding: 30px 20px
    }
}

@media only screen and (max-width:799px) {
    .p-WANTEDHeadline {
        margin-bottom: 30px
    }
}

.p-WANTEDHeadline_en {
    display: block;

    line-height: 1;
    letter-spacing: .02em;
    width: 80%;
    max-width: 360px;
    margin: 0 auto 35px;
}



.p-WANTEDHeadline_jp {
    font-size: 26px;
    line-height: 1
}

@media only screen and (max-width:799px) {
    .p-WANTEDHeadline_jp {
        font-size: 20px
    }
}

.p-WANTEDComplete {
    text-align: center
}

.p-WANTEDComplete_text {
    font-size: 18px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: .05em;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .p-WANTEDComplete_text {
        font-size: 16px;
        line-height: 1.7
    }
}

.p-WANTEDComplete_remaining {
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: .05em;
    margin-bottom: 40px
}

@media only screen and (max-width:799px) {
    .p-WANTEDComplete_remaining {
        font-size: 16px
    }
}

.p-WANTEDComplete_remaining strong {
    font-family: Montserrat;
    font-size: 56px
}

@media only screen and (max-width:799px) {
    .p-WANTEDComplete_remaining strong {
        font-size: 46px;
        margin: 0 5px
    }
}

.p-WANTEDComplete .c-button a {
    border: 2px solid #fff;
    background: none;
    color: #fff;
    padding: 8px 50px
}

@media only screen and (max-width:799px) {
    .p-WANTEDComplete .c-button a {
        display: block;
        padding: 14px 40px
    }
}

.p-banner {
    box-sizing: border-box;
    width: 1100px;
    margin: 0 auto 60px
}

@media only screen and (max-width:799px) {
    .p-banner {
        width: 100%;
        margin: 0 auto 50px;
        padding: 20px
    }
}

.p-banner_content {
    overflow: hidden;
    margin-bottom: -20px
}

.p-banner_item {
    float: left;
    width: 352px;
    margin: 0 22px 22px 0
}

@media only screen and (max-width:799px) {
    .p-banner_item {
        float: none;
        width: 100%;
        margin: 0 0 10px
    }
}

.p-banner_item a {
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: all
}

.p-banner_item a:hover {
    opacity: .75
}

.p-banner_item:nth-of-type(3n) {
    margin-right: 0
}

@media only screen and (max-width:799px) {
    .p-banner_item:nth-of-type(3n) {
        margin-bottom: 0
    }
}

.p-banner_item img {
    width: 100%;
    height: auto
}

.p-magazine_title {
    text-align: center;
    font-size: 32px;
    margin: 60px 0
}

@media only screen and (max-width:799px) {
    .p-magazine_title {
        margin: 30px 0;
        font-size: 26px
    }
}

.p-gallery {
    position: relative
}

.p-gallery,
.p-gallery_content {
    height: 100%
}

.p-gallery_arrow {
    position: absolute;
    top: 50%;
    border: 1px solid #ddd;
    border-radius: 50%;
    box-sizing: border-box;
    z-index: 1;
    color: #fff;
    text-align: center;
    width: 50px;
    height: 50px;
    cursor: pointer;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: all;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

@media only screen and (max-width:799px) {
    .p-gallery_arrow {
        top: inherit;
        bottom: -70px;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

.p-gallery_arrow:hover {
    opacity: .7
}

.p-gallery_arrow:before {
    position: absolute;
    top: 50%;
    left: 50%;
    font-size: 16px;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.p-gallery_arrow.is-prev {
    left: -70px
}

.p-gallery_arrow.is-prev:before {
    content: ""
}

@media only screen and (max-width:799px) {
    .p-gallery_arrow.is-prev {
        right: 80px;
        left: inherit
    }
}

.p-gallery_arrow.is-prev:before {
    margin-left: -2px
}

.p-gallery_arrow.is-next {
    right: -70px
}

.p-gallery_arrow.is-next:before {
    content: ""
}

@media only screen and (max-width:799px) {
    .p-gallery_arrow.is-next {
        right: 15px
    }
}

.p-gallery_arrow.is-next:before {
    margin-right: -2px
}

.p-galleryImage {
    position: relative;
    box-sizing: border-box;
    height: 85vh
}

@media only screen and (max-width:799px) {
    .p-galleryImage {
        height: auto
    }
}

.p-galleryImage_image {
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: cover
}

.p-galleryImage_image:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 66.25%
}

.p-galleryImage_caption {
    font-size: 12px;
    color: #fff;
    margin-top: 5px
}

@media only screen and (max-width:799px) {
    .p-galleryImage_caption {
        padding: 0 10px
    }
}

.p-headlineHeader {
    margin-bottom: 30px;
    overflow: hidden
}

@media only screen and (max-width:799px) {
    .p-headlineHeader {
        padding: 0 20px;
        margin-bottom: 20px
    }
}

.p-headlineHeader .c-headline {
    float: left;
    margin-bottom: 0;
    margin-right: 40px
}

@media only screen and (max-width:799px) {
    .p-headlineHeader .c-headline {
        float: none
    }
}

.p-headlineHeader .c-headline+.c-lead {
    position: relative;
    top: 15px;
    margin-top: 0;
    margin-bottom: 0
}

@media only screen and (max-width:799px) {
    .p-headlineHeader .c-headline+.c-lead {
        margin-top: 5px;
        top: 0
    }
}

.p-dialog {
    position: relative
}

.p-dialog_list {
    display: block;
    padding: 5px 0;
    cursor: pointer;
    transition-timing-function: ease-out;
    transition-duration: .25s;
    transition-property: opacity
}

.p-dialog_list:hover {
    text-decoration: none
}

.desktop .p-dialog_list:hover {
    color: #ea4c89
}

.p-dialog_list[data-type=mute]:before {
    content: ""
}

.p-dialog_list[data-type=mute][data-type=mute].is-mute:before {
    content: ""
}

.p-dialog_list[data-type=report]:before {
    content: ""
}

.p-dialog_list:before {
    position: relative;
    top: 4px;
    font-size: 20px;
    margin-right: 8px
}

@media only screen and (max-width:799px) {
    .p-dialog_list:before {
        font-size: 18px;
        margin-right: 5px
    }
}

.p-payment {
    position: relative
}

.p-paymentHeadline {
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px
}

.p-paymentHeadline_string {
    font-size: 16px;
    font-weight: 700
}

@media only screen and (max-width:799px) {
    .p-paymentHeadline_string {
        font-size: 14px
    }
}

.p-paymentHeadline_icon {
    width: 150px
}

.p-paymentHeadline_icon img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.p-payment_description {
    font-size: 14px;
    line-height: 1.5;
    text-align: center;
    margin-top: 20px
}

@media only screen and (max-width:799px) {
    .p-payment_description {
        font-size: 12px
    }
}

.p-payment_description a {
    display: inline-block;
    font-size: 14px;
    color: #ea4c89;
    margin-bottom: 10px;
    padding: 5px
}

.p-payment_description a:hover {
    text-decoration: none
}

.p-payment_description p {
    text-align: left
}

.p-payment.submitted .success,
.p-payment.submitting .success {
    pointer-events: all
}

.p-payment.submitting .success .icon {
    opacity: 1
}

.p-payment.submitted .success>* {
    opacity: 1;
    -webkit-transform: none !important;
    transform: none !important
}

.p-payment.submitted .success>:nth-child(2) {
    transition-delay: .1s
}

.p-payment.submitted .success>:nth-child(3) {
    transition-delay: .2s
}

.p-payment.submitted .success>:nth-child(4) {
    transition-delay: .3s
}

.p-payment.submitted .success .icon .border,
.p-payment.submitted .success .icon .checkmark {
    opacity: 1;
    stroke-dashoffset: 0 !important
}

.p-payment button,
.p-payment input {
    border-style: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none
}

.p-payment input:-webkit-autofill {
    -webkit-text-fill-color: #e39f48;
    -webkit-transition: background-color 100000000s;
    transition: background-color 100000000s;
    -webkit-animation: void-animation-out 1ms
}

.p-payment .StripeElement--webkit-autofill {
    background: transparent !important
}

.p-payment button,
.p-payment input {
    -webkit-animation: void-animation-out 1ms
}

.p-payment .error svg {
    margin-top: 0 !important
}

.p-payment .error svg .base {
    fill: #ef0d0d
}

.p-payment .error svg .glyph {
    fill: #fff
}

.p-payment .error .message {
    color: #ef0d0d
}

.p-payment .success .icon .border,
.p-payment .success .icon .checkmark {
    stroke: #ea4c89
}

.p-payment .success .reset path {
    fill: #ea4c89
}

.p-payment .error {
    position: absolute;
    left: 0;
    display: flex;
    justify-content: center;
    opacity: 0;
    width: 100%;
    margin-top: 20px;
    transition-timing-function: cubic-bezier(.165, .84, .44, 1);
    transition-duration: .35s;
    transition-property: opacity, -webkit-transform;
    transition-property: opacity, transform;
    transition-property: opacity, transform, -webkit-transform;
    -webkit-transform: translateY(10px);
    transform: translateY(10px)
}

.p-payment .error.visible {
    position: relative;
    opacity: 1;
    -webkit-transform: none;
    transform: none
}

.p-payment .error .message {
    font-size: inherit
}

.p-payment .error svg {
    position: relative;
    top: 3px;
    margin-right: 10px;
    flex-shrink: 0
}

.p-payment .success {
    position: absolute;
    top: 0;
    left: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    pointer-events: none;
    overflow: hidden;
    width: 100%;
    height: 100%;
    padding: 40px 0
}

@media only screen and (max-width:799px) {
    .p-payment .success {
        padding: 20px 0
    }
}

.p-payment .success>* {
    opacity: 0;
    transition-timing-function: cubic-bezier(.165, .84, .44, 1);
    transition-duration: .35s;
    transition-property: opacity, -webkit-transform;
    transition-property: opacity, transform;
    transition-property: opacity, transform, -webkit-transform;
    -webkit-transform: translateY(50px);
    transform: translateY(50px)
}

.p-payment .success .icon {
    margin: 15px 0 30px;
    -webkit-transform: translateY(70px) scale(.75);
    transform: translateY(70px) scale(.75)
}

.p-payment .success .icon svg {
    will-change: transform
}

.p-payment .success .icon .border {
    stroke-dasharray: 251;
    stroke-dashoffset: 62.75;
    transition: stroke-dashoffset .35s cubic-bezier(.165, .84, .44, 1);
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-animation: spin 1s linear infinite;
    animation: spin 1s linear infinite
}

.p-payment .success .icon .checkmark {
    stroke-dasharray: 60;
    stroke-dashoffset: 60;
    transition: stroke-dashoffset .35s cubic-bezier(.165, .84, .44, 1) .35s
}

.p-payment .success .reset:active {
    opacity: .65;
    transition-delay: 0s;
    transition-duration: .15s
}

.p-payment .success .reset svg {
    will-change: transform
}

.p-paymentForm {
    position: relative;
    width: 100%;
    margin: auto;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .35s;
    transition-property: opacity, -webkit-transform;
    transition-property: opacity, transform;
    transition-property: opacity, transform, -webkit-transform
}

.p-paymentForm_item {
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px
}

.is-hidden .p-paymentForm_item {
    display: none
}

.p-paymentForm_item .c-formText {
    width: 100%;
    height: 50px
}

.p-paymentForm_item .c-formText--half {
    width: calc(50% - 10px)
}

.p-paymentForm_item .c-formText>label {
    position: absolute;
    bottom: 14px;
    left: 5px;
    background: #fff;
    color: #bbb;
    white-space: nowrap;
    text-overflow: ellipsis;
    pointer-events: none;
    overflow: hidden;
    padding: 0 10px;
    cursor: text;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: color, -webkit-transform;
    transition-property: color, transform;
    transition-property: color, transform, -webkit-transform;
    -webkit-transform-origin: 0 50%;
    transform-origin: 0 50%
}

.p-paymentForm_item .c-formText .input {
    position: absolute;
    bottom: 0;
    left: 0;
    border: none;
    background: none;
    background-color: transparent;
    display: inline-block;
    box-sizing: border-box;
    font-size: 16px;
    vertical-align: middle;
    width: 100%;
    padding: 14px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none
}

@media only screen and (max-width:799px) {
    .p-paymentForm_item .c-formText .input {
        font-size: 14px
    }
}

.p-paymentForm_item .c-formText .input::-webkit-input-placeholder {
    color: transparent;
    -webkit-transition: color .3s cubic-bezier(.165, .84, .44, 1);
    transition: color .3s cubic-bezier(.165, .84, .44, 1)
}

.p-paymentForm_item .c-formText .input::-moz-placeholder {
    color: transparent;
    -moz-transition: color .3s cubic-bezier(.165, .84, .44, 1);
    transition: color .3s cubic-bezier(.165, .84, .44, 1)
}

.p-paymentForm_item .c-formText .input:-ms-input-placeholder {
    color: transparent;
    -ms-transition: color .3s cubic-bezier(.165, .84, .44, 1);
    transition: color .3s cubic-bezier(.165, .84, .44, 1)
}

.p-paymentForm_item .c-formText .input.StripeElement {
    opacity: 0;
    transition: opacity .3s cubic-bezier(.165, .84, .44, 1);
    will-change: opacity
}

.p-paymentForm_item .c-formText .input.focused,
.p-paymentForm_item .c-formText .input:not(.empty) {
    opacity: 1
}

.p-paymentForm_item .c-formText .input.focused::-webkit-input-placeholder,
.p-paymentForm_item .c-formText .input:not(.empty)::-webkit-input-placeholder {
    color: #cfd7df
}

.p-paymentForm_item .c-formText .input.focused::-moz-placeholder,
.p-paymentForm_item .c-formText .input:not(.empty)::-moz-placeholder {
    color: #cfd7df
}

.p-paymentForm_item .c-formText .input.focused:-ms-input-placeholder,
.p-paymentForm_item .c-formText .input:not(.empty):-ms-input-placeholder {
    color: #cfd7df
}

.p-paymentForm_item .c-formText .input.focused+label,
.p-paymentForm_item .c-formText .input:not(.empty)+label {
    color: #aab7c4;
    cursor: default;
    -webkit-transform: scale(.85) translateY(-30px);
    transform: scale(.85) translateY(-30px)
}

.p-paymentForm_item .c-formText .input.focused+label {
    color: #ea4c89
}

.p-paymentForm_item .c-formText .input.invalid+label {
    color: #ef0d0d
}

.p-paymentForm_item .c-formText .input.focused+label+.baseline {
    background-color: #ea4c89
}

.p-paymentForm_item .c-formText .input.focused.invalid+label+.baseline {
    background-color: #ef0d0d
}

.p-paymentForm_item .c-formCheckbox {
    margin-top: 4px;
    padding-bottom: 7px
}

.p-paymentForm_item .c-formCheckbox label {
    display: block
}

.p-paymentForm_item .c-formCheckbox label:after,
.p-paymentForm_item .c-formCheckbox label:before {
    top: -2px
}

.p-paymentForm .c-button {
    width: 100%
}

.p-payment .spinner,
.p-payment .spinner:after,
.p-payment .spinner:before {
    border-radius: 50%
}

.p-payment .spinner {
    position: relative;
    font-size: 22px;
    color: #fff;
    color: #ea4c89;
    text-indent: -99999px;
    width: 20px;
    height: 20px;
    margin: 0 auto;
    box-shadow: inset 0 0 0 2px;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.p-payment .spinner:after,
.p-payment .spinner:before {
    position: absolute;
    content: ""
}

.p-payment .spinner:before {
    top: -.2px;
    left: -.2px;
    border-radius: 20.4px 0 0 20.4px;
    background: #fff;
    width: 10.4px;
    height: 20.4px;
    -webkit-transform-origin: 10.4px 10.2px;
    transform-origin: 10.4px 10.2px;
    -webkit-animation: paymentLoading 2s ease 1.5s infinite;
    animation: paymentLoading 2s ease 1.5s infinite
}

.p-payment .spinner:after {
    top: -.1px;
    left: 10.2px;
    border-radius: 0 10.2px 10.2px 0;
    background: #fff;
    width: 10.4px;
    height: 10.2px;
    -webkit-transform-origin: 0 10.2px;
    transform-origin: 0 10.2px;
    -webkit-animation: paymentLoading 2s ease infinite;
    animation: paymentLoading 2s ease infinite
}

@-webkit-keyframes paymentLoading {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    to {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn)
    }
}

@keyframes paymentLoading {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    to {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn)
    }
}

.p-paymentList_item {
    position: relative;
    border: 3px solid #eee;
    border-radius: 8px;
    display: flex;
    align-items: center;
    height: 50px;
    margin-bottom: 10px;
    padding: 0 10px;
    cursor: pointer
}

@media only screen and (max-width:799px) {
    .p-paymentList_item.is-new .c-formRadio label {
        font-size: 14px !important
    }
}

.p-paymentList_item .c-formRadio {
    width: 100%;
    margin: 0
}

@media only screen and (max-width:799px) {
    .p-paymentList_item .c-formRadio {
        padding-bottom: 3px
    }
}

.p-paymentList_item .c-formRadio label {
    text-align: left;
    width: calc(100% - 60px)
}

@media only screen and (max-width:799px) {
    .p-paymentList_item .c-formRadio label {
        font-size: 12px !important;
        width: calc(100% - 40px)
    }
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .p-paymentList_item .c-formRadio label {
        font-size: 11px !important
    }
}

.p-paymentList_item .c-formRadio label div {
    display: flex;
    justify-content: space-between;
    width: 100%
}

@media only screen and (max-width:799px) {
    .p-paymentList_item .c-formRadio input[type=radio]+label {
        font-size: 14px
    }
}

.p-paymentList_item .c-formRadio input[type=radio]+label:before {
    border: none
}

@media only screen and (max-width:799px) {
    .p-paymentList_item .c-formRadio input[type=radio]+label:before {
        border: none;
        width: 28px;
        height: 28px
    }
}

.p-paymentList_item .c-formRadio input[type=radio]+label:after {
    border: none;
    line-height: 31px;
    text-align: center
}

@media only screen and (max-width:799px) {
    .p-paymentList_item .c-formRadio input[type=radio]+label:after {
        border: none;
        font-size: 14px;
        line-height: 29px;
        width: 28px;
        height: 28px
    }
}

.p-paymentLoading {
    position: absolute;
    top: -5px;
    left: 0;
    background: hsla(0, 0%, 100%, .9);
    z-index: 0;
    z-index: 1001;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    width: 100%;
    height: calc(100% + 5px);
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .35s;
    transition-property: all
}

.p-paymentLoading.is-loading {
    z-index: 1001;
    opacity: 1;
    visibility: visible
}

.p-paymentLoading_content {
    position: absolute;
    top: 50%;
    left: 50%;
    font-size: 40px;
    font-weight: 700;
    text-align: center;
    width: 100%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.p-paymentLoading_text {
    font-size: 16px
}

@media only screen and (max-width:799px) {
    .p-paymentLoading_text {
        font-size: 14px
    }
}

.p-paymentLoading_icon {
    width: 60px;
    height: 60px;
    margin: auto auto 20px
}

@media only screen and (max-width:799px) {
    .p-paymentLoading_icon {
        width: 60px;
        height: 60px
    }
}

.p-paymentLoading_icon svg {
    width: 60px;
    height: 60px
}

.p-paymentLoading_icon .border {
    stroke: #ea4c89;
    stroke-dasharray: 251;
    stroke-dashoffset: 62.75;
    transition: stroke-dashoffset .35s cubic-bezier(.165, .84, .44, 1);
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-animation: spin 1s linear infinite;
    animation: spin 1s linear infinite
}

.p-paymentLoading_icon span {
    font-size: 18px
}

.p-paymentLoading_icon img {
    width: 140px;
    height: auto;
    margin-bottom: -20px;
    margin-left: 20px
}

@media only screen and (max-width:799px) {
    .p-paymentLoading_icon img {
        width: 100px
    }
}

@-webkit-keyframes spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    to {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn)
    }
}

@keyframes spin {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    to {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn)
    }
}

@-webkit-keyframes void-animation-out {

    0%,
    to {
        opacity: 1
    }
}

@keyframes void-animation-out {

    0%,
    to {
        opacity: 1
    }
}

.p-office {
    position: fixed;
    top: 0;
    left: 0;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1001;
    pointer-events: none;
    opacity: 0;
    width: 100%;
    height: 100%;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: opacity transform height
}

.p-office_content {
    text-align: center;
    padding: 0 20px
}

.p-office_content strong {
    display: block
}

.p-office img {
    opacity: .2;
    width: 80px;
    margin: 0 auto 20px
}

.p-office.is-active {
    opacity: 1
}

.p-shoutPost {
    width: 500px;
    margin: 30px auto 0
}

@media only screen and (max-width:799px) {
    .p-shoutPost {
        width: 100%;
        margin: 0
    }
}

.p-shoutPost_description {
    margin: 10px 0
}

.p-shoutPost .c-formTextarea {
    margin-bottom: 10px
}

.p-shoutPost .p-post_tweet {
    float: none;
    margin: 10px 0 20px
}

@media only screen and (max-width:799px) {
    .p-shoutPost .p-post_tweet {
        margin: 0 0 10px
    }
}

.p-shoutPost_caution {
    margin: 0 0 30px
}

@media only screen and (max-width:799px) {
    .p-shoutPost_caution {
        text-indent: -1em;
        margin: 0 0 20px;
        padding-left: 1em
    }
}

@media only screen and (max-width:799px) {
    .p-shoutPost_caution br {
        display: none
    }
}

.p-shoutPost_caution a {
    padding-left: 1em;
    cursor: pointer
}

@media only screen and (max-width:799px) {
    .p-shoutPost_caution a {
        display: inline-block;
        padding-left: 10px
    }
}

.p-shoutPost_sample {
    width: 600px;
    margin: auto
}

.p-shoutPost_sample img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media only screen and (max-width:799px) {
    .p-shoutPost_sample {
        width: 100vw
    }
}

.p-shoutPost .c-button {
    display: block
}

.p-shoutCardList {
    border-top: 1px solid #eee;
    margin-top: 20px
}

@media only screen and (max-width:799px) {
    .p-shoutCardList {
        display: block;
        box-sizing: border-box;
        width: calc(100% + 40px);
        margin-top: 15px;
        margin-left: -20px
    }
}

.p-shoutCardList+.c-pagenation {
    padding: 40px 0 0
}

@media only screen and (max-width:799px) {
    .p-shoutCardList+.c-pagenation {
        padding: 20px 0 0
    }
}

.p-shoutDetail {
    position: relative;
    box-sizing: border-box;
    width: 520px;
    margin: 20px auto;
    padding-top: 20px
}

@media only screen and (max-width:799px) {
    .p-shoutDetail {
        width: 100%;
        margin-top: 10px;
        padding-top: 0
    }
}

.p-shoutDetail .p-shoutCard {
    border-bottom: none;
    padding: 0
}

.p-shoutDetail .p-shoutCard_content {
    margin-bottom: 0
}

.p-shoutCard {
    border-bottom: 1px solid #eee;
    padding: 20px 0
}

@media only screen and (max-width:799px) {
    .p-shoutCard {
        padding: 15px 20px 5px
    }
}

.p-shoutCard_header {
    position: relative;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.5;
    text-indent: -1.5em;
    margin-bottom: 10px;
    padding-left: 1.5em
}

.p-shoutCard_header:before {
    content: ""
}

@media only screen and (max-width:799px) {
    .p-shoutCard_header {
        font-size: 12px
    }
}

.p-shoutCard_header:before {
    position: relative;
    top: 2px;
    font-size: 14px;
    color: #ef0d0d;
    margin-right: 8px
}

@media only screen and (max-width:799px) {
    .p-shoutCard_header:before {
        top: 3px;
        font-size: 14px;
        margin-right: 4px
    }
}

.p-shoutCard_header>a {
    color: #ea4c89;
    text-decoration: none
}

.p-shoutCard_date {
    font-size: 12px;
    line-height: 1;
    color: #888;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .p-shoutCard_date {
        font-size: 10px;
        margin-bottom: 5px
    }
}

.p-shoutCard_content {
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .p-shoutCard_content {
        margin-bottom: 10px
    }
}

.p-shoutCard_content a {
    position: relative;
    border-radius: 12px;
    background: #f8f8f8;
    display: block;
    text-decoration: none;
    padding: 20px
}

@media only screen and (min-width:1024px) {
    .p-shoutCard_content a:hover {
        opacity: .7
    }
}

.p-shoutCard_content a:after {
    position: absolute;
    bottom: -28px;
    left: 40px;
    background: url("../img/global/fukidashi.svg");
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    content: "";
    z-index: 0;
    width: 40px;
    height: 40px
}

@media only screen and (max-width:799px) {
    .p-shoutCard_content a:after {
        bottom: -24px
    }
}

.p-shoutCard_text {
    font-size: 16px;
    line-height: 1.65
}

@media only screen and (max-width:799px) {
    .p-shoutCard_text {
        font-size: 14px;
        line-height: 1.5
    }
}

.p-shoutCard_footer {
    display: flex;
    align-items: center;
    justify-content: space-between
}

.p-shoutCard_footer a {
    text-decoration: none
}

.p-shoutCard_footer .p-postCardAction,
.p-shoutCard_footer .p-postCardAction.is-mini {
    position: relative;
    right: -20px;
    left: inherit;
    background: none;
    width: auto
}

.p-shoutCard_footer .p-postCardAction.is-mini .p-postCardAction_item,
.p-shoutCard_footer .p-postCardAction .p-postCardAction_item {
    margin-right: 0;
    margin-left: 5px
}

.p-shoutCardUser {
    position: relative;
    width: calc(100% - 130px)
}

.p-shoutCardUser a {
    display: flex;
    align-items: center;
    text-decoration: none
}

.p-shoutCardUser_icon {
    border-radius: 100%;
    width: 40px;
    height: 40px;
    margin-right: 20px
}

@media only screen and (max-width:799px) {
    .p-shoutCardUser_icon {
        width: 30px;
        height: 30px;
        margin-right: 10px
    }
}

.p-shoutCardUser_name {
    font-size: 14px;
    font-weight: 700;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden
}

@media only screen and (max-width:799px) {
    .p-shoutCardUser_name {
        font-size: 12px
    }
}

.p-map {
    position: relative
}

.p-map .gm-style-iw>button {
    top: 5px !important;
    right: 5px !important;
    z-index: 10000
}

.p-map .gm-style-iw-c {
    max-height: 400px !important;
    padding: 0 !important
}

.uq-walkMap .p-map .gm-style-iw-c {
    max-width: 300px !important
}

@media only screen and (max-width:799px) {
    .uq-walkMap .p-map .gm-style-iw-c {
        max-width: calc(100vw - 60px) !important
    }
}

.p-map .gm-style-iw-d {
    max-height: 100vh !important
}

.p-mapControler input {
    width: 80px
}

.p-mapPinSearch {
    position: absolute;
    top: 10px;
    left: 50%;
    border-radius: 6px;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    font-size: 14px;
    line-height: 1;
    z-index: 1;
    text-align: center;
    pointer-events: none;
    opacity: 0;
    height: 40px;
    padding: 10px 20px;
    cursor: pointer;
    box-shadow: 0 0 5px 0 rgba(0, 0, 0, .15);
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: all;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

[data-mode=pin] .p-mapPinSearch {
    pointer-events: all;
    opacity: 1
}

.is-infoWindow .p-mapPinSearch {
    opacity: 0
}

.p-mapPinSearch:active {
    background: #f2f2f2
}

.p-mapPinIonwater {
    position: absolute;
    bottom: 30px;
    left: 5px;
    border: 1px solid transparent;
    border-radius: 6px;
    background: #fff;
    display: flex;
    align-items: center;
    z-index: 1;
    pointer-events: none;
    opacity: 0;
    padding: 5px 15px;
    cursor: pointer;
    box-shadow: 0 0 5px 0 rgba(0, 0, 0, .15);
    transition-duration: .3s;
    transition-property: all
}

.p-mapPinIonwater:active {
    background: #f2f2f2
}

.p-mapPinIonwater.is-active {
    background: #888;
    color: #fff
}

[data-mode=pin] .p-mapPinIonwater {
    pointer-events: all
}

.p-mapPinIonwater img {
    width: 10px;
    margin-right: 10px
}

.p-mapPinIonwater strong {
    font-size: 12px;
    line-height: 1
}

[data-mode=pin] .p-mapPinIonwater {
    opacity: 1
}

.is-infoWindow .p-mapPinIonwater {
    opacity: 0
}

.p-mapRoot {
    position: absolute;
    top: 0;
    left: 0;
    background: #fff;
    z-index: 1000;
    pointer-events: none;
    opacity: 0;
    width: 100%;
    height: 100%
}

[data-mode=root] .p-mapRoot {
    pointer-events: all;
    opacity: 1
}

.p-mapRootClose {
    position: absolute;
    top: 15px;
    right: 5px;
    z-index: 10000;
    pointer-events: all;
    width: 50px;
    height: 50px;
    cursor: pointer
}

.p-mapRootClose:after {
    content: ""
}

@media only screen and (max-width:799px) {
    .p-mapRootClose {
        position: absolute;
        top: 15px;
        right: 5px;
        z-index: 10000;
        width: 50px;
        height: 50px
    }
}

.p-mapRootClose:after {
    position: absolute;
    top: 50%;
    left: 50%;
    font-size: 14px;
    font-weight: 700;
    pointer-events: none;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.p-mapRootHeader {
    position: absolute;
    top: 5px;
    left: 50%;
    border-radius: 6px;
    background: #fff;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    z-index: 1;
    text-align: center;
    width: calc(100% - 10px);
    padding: 15px;
    cursor: pointer;
    box-shadow: 0 0 5px 0 rgba(0, 0, 0, .2);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.p-mapRootHeader_icon {
    width: 24px;
    margin-right: 15px;
    flex-shrink: 0
}

.p-mapRootHeader_icon img {
    width: 100%;
    height: auto
}

.p-mapRootHeader_content {
    font-size: 12px;
    width: 100%
}

.p-mapRootHeader_root {
    display: flex;
    margin-bottom: 10px
}

.p-mapRootHeader_now {
    line-height: 1
}

.p-mapRootHeader_now:after {
    content: "・・・";
    font-size: 10px;
    color: #c1c1c1;
    letter-spacing: -.4em;
    margin: 0 5px 0 2px
}

.p-mapRootHeader_target {
    line-height: 1;
    text-align: left;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    width: calc(100% - 100px);
    height: 1em;
    flex-shrink: 0
}

.p-mapRootHeader_meta {
    display: flex
}

.p-mapRootHeader_destination {
    line-height: 1;
    margin-right: 20px
}

.p-mapRootHeader_destination:before {
    content: "";
    position: relative;
    top: 2px;
    color: #ea4c89
}

.p-mapRootHeader_distance {
    line-height: 1;
    margin-right: 10px
}

.p-mapRootHeader_distance:before {
    content: "";
    position: relative;
    top: 2px;
    color: #ea4c89
}

.p-mapRootButton {
    position: absolute;
    bottom: 15px;
    display: flex;
    justify-content: space-between;
    box-sizing: border-box;
    width: calc(100% - 50px);
    padding: 10px
}

.p-mapRootButton_button {
    text-align: center;
    width: calc(50% - 5px)
}

.p-mapRootButton_button span {
    position: relative;
    border-radius: 4px;
    background: #fff;
    display: block;
    display: inline-block;
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    color: #ea4c89;
    margin-bottom: 8px;
    padding: 4px 8px
}

.p-mapRootButton_button span:after,
.p-mapRootButton_button span:before {
    position: absolute;
    top: 100%;
    left: 50%;
    border: solid transparent;
    content: "";
    pointer-events: none;
    width: 0;
    height: 0
}

.p-mapRootButton_button span:before {
    border-color: #fff rgba(0, 0, 255, 0) rgba(0, 0, 255, 0);
    border-width: 5px;
    box-shadow: 0 0 30px -5px rgba(0, 0, 0, .3);
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.p-mapRootButton button {
    border: none;
    width: 100%
}

.p-mapRootButton a,
.p-mapRootButton button {
    border-radius: 8px;
    background: #ea4c89;
    display: block;
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    text-align: center;
    text-decoration: none;
    padding: 15px 10px;
    outline: none;
    box-shadow: 0 0 5px 0 rgba(0, 0, 0, .15)
}

.p-mapRootButton a.is-tweet strong,
.p-mapRootButton button.is-tweet strong {
    position: relative;
    padding-left: 20px
}

.p-mapRootButton a.is-tweet strong:before,
.p-mapRootButton button.is-tweet strong:before {
    content: "";
    position: absolute;
    top: -1px;
    left: -4px;
    font-size: 18px
}

.p-mapRootButton a.is-sakatsu strong,
.p-mapRootButton button.is-sakatsu strong {
    position: relative;
    padding-left: 20px
}

.p-mapRootButton a.is-sakatsu strong:before,
.p-mapRootButton button.is-sakatsu strong:before {
    content: "";
    position: absolute;
    top: -11px;
    left: -10px;
    font-size: 30px
}

.p-mapRootGoogleMap {
    position: absolute;
    right: 0;
    bottom: -55px;
    box-sizing: border-box;
    width: 100%
}

.p-mapRootGoogleMap span {
    display: block
}

.p-mapRootGoogleMap a {
    border-radius: 8px;
    background: #fff;
    display: block;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
    text-decoration: none;
    width: 100%;
    margin: auto;
    padding: 10px 0;
    box-shadow: 0 0 5px 0 rgba(0, 0, 0, .2)
}

.p-mapRootGoogleMap a img {
    position: relative;
    top: -1px;
    width: 13px;
    margin-right: 7px
}

.p-userList_description {
    font-size: 14px;
    line-height: 1.5;
    padding: 15px 0 10px
}

@media only screen and (max-width:799px) {
    .p-userList_description {
        padding: 10px 20px
    }
}

.p-userList_headline {
    border-bottom: 1px solid #eee;
    padding: 10px 0 15px
}

@media only screen and (max-width:799px) {
    .p-userList_headline {
        border-bottom: 1px solid #eee;
        width: calc(100% + 40px);
        margin-left: -20px;
        padding: 10px 20px
    }
}

.p-userList_noresult {
    text-align: center;
    padding: 80px 0
}

@media only screen and (max-width:799px) {
    .p-userList_noresult {
        padding: 40px 20px
    }
}

.p-userList_noresult strong {
    display: block
}

@media only screen and (max-width:799px) {
    .p-userList_content {
        width: calc(100% + 40px);
        margin-left: -20px
    }
}

.p-userListItem {
    border-bottom: 1px solid #eee;
    box-sizing: border-box;
    padding: 20px 0
}

@media only screen and (max-width:799px) {
    .p-userListItem {
        padding: 10px 20px
    }
}

.p-userListItem_content {
    display: flex;
    align-items: center
}

.p-userListItem_image {
    overflow: hidden;
    width: 60px;
    margin-right: 20px
}

.p-userListItem_image img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media only screen and (max-width:799px) {
    .p-userListItem_image {
        width: 44px;
        margin-right: 10px
    }
}

.p-userListItem_image img {
    border-radius: 100%
}

.p-userListItem_body {
    width: calc(100% - 160px);
    margin-right: 10px
}

@media only screen and (max-width:799px) {
    .p-userListItem_body {
        width: calc(100% - 160px)
    }
}

.p-userListItem_name {
    line-height: 1.5
}

.p-userListItem_name a {
    text-decoration: none
}

.p-userListItem_button {
    width: 160px
}

@media only screen and (max-width:799px) {
    .p-userListItem_button {
        width: 120px;
        margin: 0
    }
}

.p-userListItem_button[data-favorite="1"] a {
    border: none;
    background: #888;
    color: #fff
}

.p-userListItem_button a {
    border-width: 2px;
    font-size: 14px;
    padding: 10px 0
}

@media only screen and (max-width:799px) {
    .p-userListItem_button a {
        border-width: 1px;
        font-size: 12px;
        padding: 5px 0
    }
}

.p-mypage {
    position: relative
}

.p-mypageHeader {
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .p-mypageHeader {
        width: 100%;
        margin-bottom: 0
    }
}

.p-mypageHeader_header {
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .p-mypageHeader_header {
        margin-bottom: 15px
    }
}

.p-mypageHeader_content {
    display: flex;
    justify-content: space-between;
    width: 100%
}

@media only screen and (max-width:799px) {
    .p-mypageHeader_content {
        display: block;
        margin-bottom: 0
    }
}

.p-mypageHeader_date {
    font-size: 12px;
    line-height: 1;
    color: #888
}

@media only screen and (max-width:799px) {
    .p-mypageHeader_date {
        top: 0;
        right: inherit;
        font-size: 10px
    }
}

.p-mypageHeader_edit {
    font-size: 12px;
    line-height: 1;
    color: #888
}

@media only screen and (max-width:799px) {
    .p-mypageHeader_edit {
        top: 0;
        font-size: 15px
    }
}

.is-compact .p-mypageHeader_edit {
    top: 5px;
    right: 0
}

.p-mypageHeader_edit a {
    border-radius: 6px;
    background: #fff;
    display: block;
    font-size: 12px;
    text-decoration: none
}

@media only screen and (max-width:799px) {
    .p-mypageHeader_edit a {
        font-size: 10px
    }
}

.p-mypageHeader_report {
    width: 340px
}

@media only screen and (max-width:799px) {
    .p-mypageHeader_report {
        width: 100%;
        margin-top: 10px;
        margin-bottom: 10px
    }
}

.is-report .p-mypageHeader_report,
.p-mypagePrimaryNav {
    display: none
}

@media only screen and (max-width:799px) {
    .p-mypagePrimaryNav {
        display: flex;
        justify-content: space-between;
        margin-top: 5px
    }
}

.p-mypagePrimaryNavItem {
    width: 190px;
    margin-right: 10px
}

@media only screen and (max-width:799px) {
    .p-mypagePrimaryNavItem {
        width: calc(50% - 5px);
        margin-right: 0
    }
}

.p-mypagePrimaryNavItem.is-active.is-tonttu a {
    border: none;
    background: gold
}

.p-mypagePrimaryNavItem.is-active.is-ticket a {
    border: none;
    background: #ea4c89;
    color: #fff
}

.p-mypagePrimaryNavItem a {
    border: 1px solid #ddd;
    border-radius: 8px;
    display: block;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    font-weight: 700;
    text-decoration: none;
    height: 44px;
    padding: 15px
}

@media only screen and (max-width:799px) {
    .p-mypagePrimaryNavItem a {
        padding: 10px
    }
}

.p-mypagePrimaryNavItem_icon {
    display: flex;
    align-items: center;
    margin-right: 10px
}

@media only screen and (max-width:799px) {
    .p-mypagePrimaryNavItem_icon {
        margin-right: 5px
    }
}

.is-tonttu .p-mypagePrimaryNavItem_icon {
    margin-right: 5px;
    margin-left: -3px
}

@media only screen and (max-width:799px) {
    .is-tonttu .p-mypagePrimaryNavItem_icon {
        margin-right: 2px;
        margin-left: -3px
    }
}

.p-mypagePrimaryNavItem_icon img {
    position: relative;
    width: 20px
}

@media only screen and (max-width:799px) {
    .p-mypagePrimaryNavItem_icon img {
        width: 20px
    }
}

.is-ticket .p-mypagePrimaryNavItem_icon img {
    top: 2px
}

@media only screen and (max-width:799px) {
    .is-ticket .p-mypagePrimaryNavItem_icon img {
        top: 0
    }
}

.is-tonttu .p-mypagePrimaryNavItem_icon img {
    top: 1px;
    width: 19px
}

@media only screen and (max-width:799px) {
    .is-tonttu .p-mypagePrimaryNavItem_icon img {
        top: 0;
        width: 19px
    }
}

.p-mypagePrimaryNavItem_string {
    line-height: 1
}

@media only screen and (max-width:799px) {
    .p-mypagePrimaryNavItem_string {
        font-size: 12px
    }
}

.p-mypagePrimaryNavItem_count {
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-weight: 700;
    line-height: 1;
    margin-left: auto
}

@media only screen and (max-width:799px) {
    .p-mypagePrimaryNavItem_count {
        font-size: 16px
    }
}

.p-mypageHeaderTonttu {
    position: relative;
    border-radius: 10px;
    background: gold;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    overflow: hidden;
    width: 340px;
    height: 100px;
    padding: 20px
}

@media only screen and (max-width:799px) {
    .p-mypageHeaderTonttu {
        width: 100%;
        height: 94px;
        margin-top: 15px
    }
}

.p-mypageHeaderTonttu:after {
    position: absolute;
    top: -5px;
    right: -10px;
    background: url("../img/global/tonttu.svg");
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    content: "";
    width: 120px;
    height: 120px
}

.p-mypageHeaderTonttu_label {
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    margin-top: 3px;
    margin-bottom: 5px
}

@media only screen and (max-width:799px) {
    .p-mypageHeaderTonttu_label {
        font-size: 12px
    }
}

.p-mypageHeaderTonttu_count {
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 45px;
    font-weight: 700;
    line-height: 1
}

@media only screen and (max-width:799px) {
    .p-mypageHeaderTonttu_count {
        font-size: 40px
    }
}

.p-mypageHeaderUser {
    display: flex;
    align-items: center;
    width: calc(100% - 360px)
}

@media only screen and (max-width:799px) {
    .p-mypageHeaderUser {
        width: 100%;
        padding: 0
    }
}

.p-mypageHeaderUser .p-mypagePrimaryNav {
    display: flex
}

@media only screen and (max-width:799px) {
    .p-mypageHeaderUser .p-mypagePrimaryNav {
        display: none
    }
}

.p-mypageHeaderUser_icon {
    position: relative;
    border-radius: 50%;
    background: #fff;
    overflow: hidden;
    width: 100px;
    height: 100px;
    margin-right: 20px
}

@media only screen and (max-width:799px) {
    .p-mypageHeaderUser_icon {
        width: 80px;
        height: 80px;
        margin-right: 15px;
        -o-object-fit: cover;
        object-fit: cover
    }
}

.p-mypageHeaderUser_icon img {
    position: absolute;
    top: 50%;
    left: 50%;
    border-radius: 100%;
    width: 100%;
    height: auto;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.p-mypageHeaderUser_content {
    width: calc(100% - 120px)
}

@media only screen and (max-width:799px) {
    .p-mypageHeaderUser_content {
        width: 100%
    }
}

.p-mypageHeaderUser_name {
    font-size: 30px;
    line-height: 1.25;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .p-mypageHeaderUser_name {
        font-size: 24px;
        margin-bottom: 5px
    }
}

.p-mypageHeaderUser_name a {
    text-decoration: none
}

.p-mypageHeaderUser_official {
    font-size: 30px;
    color: #ea4c89
}

@media only screen and (max-width:799px) {
    .p-mypageHeaderUser_official {
        font-size: 20px
    }
}

.p-mypageHeaderUser_official:before {
    content: "";
    position: relative;
    top: 3px
}

@media only screen and (max-width:799px) {
    .p-mypageHeaderUser_official:before {
        top: 1px
    }
}

.p-mypageHeaderUserAction {
    display: flex;
    align-items: center;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .p-mypageHeaderUserAction {
        margin-bottom: 10px
    }
}

.p-mypageHeaderUserAction:last-of-type {
    margin-top: 0;
    margin-bottom: 0
}

.p-mypageHeaderUserAction_tonttu {
    position: relative;
    display: inline-block;
    font-family: Helvetica Neue, Helvetica, sans-serif;
    font-size: 24px;
    font-weight: 700;
    line-height: 1;
    margin-right: 10px;
    padding-left: 25px
}

@media only screen and (max-width:799px) {
    .p-mypageHeaderUserAction_tonttu {
        font-size: 18px;
        padding-left: 20px
    }
}

.p-mypageHeaderUserAction_tonttu:before {
    position: absolute;
    top: 0;
    left: 0;
    background: url("../img/global/tonttu.svg");
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    content: "";
    width: 26px;
    height: 25px
}

@media only screen and (max-width:799px) {
    .p-mypageHeaderUserAction_tonttu:before {
        top: 0;
        left: 0;
        width: 14px;
        height: 22px
    }
}

.p-mypageHeaderUserAction_favorite {
    font-size: 14px;
    margin-right: 15px
}

@media only screen and (max-width:799px) {
    .p-mypageHeaderUserAction_favorite {
        margin-right: 10px
    }
}

.p-mypageHeaderUserAction_favorite a {
    text-decoration: none;
    padding: 5px 0
}

.p-mypageHeaderUserAction_favorite a.is-active {
    color: #ea4c89;
    text-decoration: underline
}

.desktop .p-mypageHeaderUserAction_favorite a:hover {
    text-decoration: underline
}

.p-mypageHeaderUserAction_favorite span {
    font-family: Helvetica Neue, Helvetica, sans-serif;
    font-size: 16px;
    font-weight: 700
}

.p-mypageHeaderUserAction_counter {
    display: inline-block;
    font-size: 12px;
    line-height: 1;
    color: #888
}

@media only screen and (max-width:799px) {
    .p-mypageHeaderUserAction_counter {
        font-size: 10px
    }
}

.is-detail .p-mypageHeaderUserAction_counter {
    font-size: 13px
}

@media only screen and (max-width:799px) {
    .is-detail .p-mypageHeaderUserAction_counter {
        font-size: 10px
    }
}

.p-mypageHeaderUserAction_dialog {
    position: relative;
    top: -1px;
    border: 1px solid #888;
    border-radius: 100%;
    font-size: 14px;
    z-index: 1;
    color: #888;
    text-align: center;
    width: 30px;
    height: 30px;
    margin-left: 10px;
    cursor: pointer;
    transition-timing-function: ease-out;
    transition-duration: .25s;
    transition-property: all
}

.p-mypageHeaderUserAction_dialog:after {
    content: ""
}

.p-mypageHeaderUserAction_dialog:first-of-type {
    margin-left: 0
}

.p-mypageHeaderUserAction_dialog:hover {
    background: #f2f2f2
}

.p-mypageHeaderUserAction_dialog:after {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.p-mypageHeaderUserAction_dialog a {
    position: relative;
    display: block;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%
}

.p-mypageHeaderUserAction_mute {
    position: relative;
    top: -1px;
    border: 1px solid #ef0d0d;
    border-radius: 100%;
    font-size: 14px;
    z-index: 1;
    color: #ef0d0d;
    text-align: center;
    width: 30px;
    height: 30px;
    margin-left: 10px;
    cursor: pointer;
    transition-timing-function: ease-out;
    transition-duration: .25s;
    transition-property: all
}

.p-mypageHeaderUserAction_mute:after {
    content: ""
}

.p-mypageHeaderUserAction_mute:first-of-type {
    margin-left: 0
}

.p-mypageHeaderUserAction_mute:hover {
    background: #f2f2f2
}

.p-mypageHeaderUserAction_mute:after {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.p-mypageHeaderUserAction_mute a {
    position: relative;
    display: block;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%
}

.p-mypageHeaderUserAction_button {
    position: relative;
    line-height: 28px;
    width: 110px;
    height: 28px;
    margin: -1px 0 0
}

@media only screen and (max-width:799px) {
    .p-mypageHeaderUserAction_button {
        width: 100px;
        margin-top: 0
    }
}

.p-mypageHeaderUserAction_button.is-favorite {
    width: auto
}

.p-mypageHeaderUserAction_button.is-favorite[data-favorite="1"] a {
    border: none;
    background: #888;
    color: #fff
}

.p-mypageHeaderUserAction_button.is-favorite a {
    border: 1px solid #ea4c89;
    color: #ea4c89;
    padding: 0 10px
}

.p-mypageHeaderUserAction_button a {
    border: 1px solid #333;
    border-radius: 2px solid #333;
    background: #fff;
    font-size: 14px;
    color: #333;
    padding: 0
}

@media only screen and (max-width:799px) {
    .p-mypageHeaderUserAction_button a {
        font-size: 12px;
        padding: 0
    }
}

.p-mypageProfile {
    border-bottom: 1px solid #eee;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-top: 20px;
    margin-bottom: -20px;
    padding-bottom: 20px
}

@media only screen and (max-width:799px) {
    .p-mypageProfile {
        display: block;
        margin-bottom: 0;
        padding-bottom: 0
    }
}

.p-mypageProfile_report {
    width: 350px
}

@media only screen and (max-width:799px) {
    .p-mypageProfile_report {
        width: 100%
    }
}

.p-mypageProfile_lists {
    width: 100%
}

@media only screen and (max-width:799px) {
    .p-mypageProfile_lists {
        width: 100%;
        margin: 16px 0 20px
    }
}

.p-mypageProfile_list {
    display: flex;
    font-size: 14px;
    margin-bottom: 5px
}

@media only screen and (max-width:799px) {
    .p-mypageProfile_list {
        display: flex;
        justify-content: space-between;
        font-size: 12px;
        margin-bottom: 10px
    }
}

.p-mypageProfile_key {
    display: block;
    font-size: 12px;
    font-weight: 700;
    color: #888;
    width: 120px
}

@media only screen and (max-width:799px) {
    .p-mypageProfile_key {
        width: 80px
    }
}

.p-mypageProfile_value {
    width: calc(100% - 120px)
}

@media only screen and (max-width:799px) {
    .p-mypageProfile_value {
        display: block;
        width: calc(100% - 90px)
    }
}

.is-link .p-mypageProfile_value {
    display: flex
}

.p-mypageProfile_value .is-twitter {
    display: block;
    width: 45px;
    margin-right: 10px
}

@media only screen and (max-width:799px) {
    .p-mypageProfile_value .is-twitter {
        width: 40px;
        margin-right: 5px
    }
}

.p-mypageProfile_value .is-web {
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    width: calc(100% - 60px)
}

.p-mypageProfile_reportmore {
    text-align: right
}

@media only screen and (max-width:799px) {
    .p-mypageProfile_reportmore {
        display: none
    }
}

.p-mypageProfile_reportmore a {
    border-radius: 8px;
    font-weight: 700;
    color: #ea4c89;
    text-decoration: none;
    padding: 4px 10px
}

.p-mypageProfile_reportmore a:after {
    content: "";
    position: relative;
    left: 8px;
    font-size: 12px
}

@media only screen and (max-width:799px) {
    .p-mypageProfile_reportmore a:after {
        left: 3px
    }
}

.p-mypageBody_report {
    display: flex
}

@media only screen and (max-width:799px) {
    .p-mypageBody_report {
        display: block
    }
}

.p-mypageBody_content {
    display: flex;
    margin-top: 40px
}

@media only screen and (max-width:799px) {
    .p-mypageBody_content {
        display: block;
        margin-top: 20px
    }
}

.p-mypageBody_main {
    width: 720px
}

@media only screen and (max-width:799px) {
    .p-mypageBody_main {
        width: 100%
    }
}

.p-mypageBody_sub {
    box-sizing: border-box;
    width: calc(100% - 720px)
}

@media only screen and (max-width:799px) {
    .p-mypageBody_sub {
        border-left: none;
        width: 100%;
        margin-top: 50px
    }
}

.p-mypageForm_contents {
    display: flex
}

@media only screen and (max-width:799px) {
    .p-mypageForm_contents {
        display: block
    }
}

.p-mypageForm_image {
    width: 120px;
    margin-right: 50px
}

@media only screen and (max-width:799px) {
    .p-mypageForm_image {
        margin: auto auto 20px
    }
}

.p-mypageForm_image .c-formImageItem {
    width: 100%;
    margin: 0
}

.p-mypageForm_image .c-formImageItem.is-upload .c-formImageItem_button .c-button {
    display: block !important
}

.p-mypageForm_image .c-formImageItem_preview {
    border-radius: 50%;
    background-image: url("../img/user_default.png");
    background-size: cover;
    width: 90px;
    height: 90px;
    margin: 0 auto 20px
}

.p-mypageForm_image .c-formImageItem_preview:after {
    display: none
}

.p-mypageForm_image .c-formImageItem_preview img {
    border-radius: 50%;
    -o-object-fit: cover;
    object-fit: cover
}

.p-mypageForm_image .c-formImageItem input {
    opacity: 0
}

.p-mypageForm_image .c-formImageItem_button {
    width: 100%
}

.p-mypageForm_image .c-formImageItem_button .c-button a {
    font-size: 12px;
    padding: 7px 0
}

.p-mypageForm_icon {
    position: relative;
    border-radius: 50%;
    background: #fff;
    overflow: hidden;
    width: 100px;
    height: 100px;
    margin: 0 auto 10px
}

@media only screen and (max-width:799px) {
    .p-mypageForm_icon {
        width: 60px;
        height: 60px;
        -o-object-fit: cover;
        object-fit: cover
    }
}

.p-mypageForm_icon img {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: auto;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.p-mypageForm_content .c-formTable_td--name {
    padding-left: 0
}

.p-mypageForm_content .c-form_button {
    width: 100%;
    margin-top: 20px
}

@media only screen and (max-width:799px) {
    .p-mypageForm_content .c-form_button {
        margin-top: 0;
        padding: 0
    }
}

.p-mypageForm_resign {
    text-align: center;
    margin: 40px 0 0
}

.p-mypageForm_resign a {
    text-decoration: underline
}

.p-notification {
    width: 100%
}

@media only screen and (max-width:799px) {
    .p-notification {
        padding: 0
    }
}

.p-notification_lists {
    padding-bottom: 10px
}

@media only screen and (max-width:799px) {
    .p-notification_lists {
        border-top: 1px solid #eee
    }
}

.p-notification .c-pagenation {
    padding: 20px 0
}

.p-notificationTab {
    display: flex;
    height: 60px
}

.p-notificationTab_link {
    width: 50%
}

.p-notificationTab_link a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    height: 60px
}

.p-notificationTab_link a:after {
    position: absolute;
    bottom: 0;
    background: #fff;
    display: block;
    content: "";
    width: 100%;
    height: 3px
}

.p-notificationTab_link.is-active a:after {
    background: #ea4c89
}

.p-notificationTab_string {
    position: relative;
    display: inline-block;
    font-weight: 700
}

.p-notificationTab_count {
    position: absolute;
    top: 1px;
    right: 1px;
    border-radius: 8px;
    background: #ef0d0d;
    display: block;
    box-sizing: border-box;
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    color: #fff;
    text-align: center;
    min-width: 16px;
    padding: 2px 4px 3px
}

.p-notificationItem {
    position: relative;
    border-bottom: 1px solid #eee;
    display: flex;
    padding: 15px 40px
}

@media only screen and (max-width:799px) {
    .p-notificationItem {
        padding: 15px 20px
    }
}

.p-notificationItem:last-of-type {
    border-bottom: none
}

.p-notificationItem>a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .25s;
    transition-property: all
}

.p-notificationItem.is-police .p-notificationItem_icon img {
    border-radius: 0
}

.p-notificationItem.is-unread {
    background: #f2f6fd
}

.p-notificationItem.is-unread:first-child:before {
    position: absolute;
    top: -20px;
    left: 0;
    background: #f2f6fd;
    display: block;
    width: 100%;
    height: 20px
}

@media only screen and (max-width:799px) {
    .p-notificationItem.is-unread:first-child:before {
        display: none
    }
}

.desktop .p-notificationItem.is-comment:hover {
    background: #f9f9f9;
    cursor: pointer
}

.p-notificationItem.is-news .p-notificationItem_content {
    width: 100%
}

.p-notificationItem_icon {
    position: relative;
    width: 45px;
    height: 45px;
    margin-right: 20px
}

@media only screen and (max-width:799px) {
    .p-notificationItem_icon {
        width: 30px;
        height: 30px;
        margin-right: 10px
    }
}

.p-notificationItem_icon img {
    border-radius: 50%;
    width: 100%;
    height: auto
}

.p-notificationItem_icon a {
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .25s;
    transition-property: all
}

.p-notificationItem_icon a:hover {
    opacity: .75
}

.is-tonttu .p-notificationItem_icon:before {
    position: absolute;
    top: 45px;
    left: 50%;
    background: #eee;
    content: "";
    z-index: 0;
    width: 2px;
    height: 16px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

@media only screen and (max-width:799px) {
    .is-tonttu .p-notificationItem_icon:before {
        top: 30px;
        height: 16px
    }
}

.p-notificationItem_official {
    position: relative;
    top: 8px;
    border-radius: 3px;
    background: #ea4c89;
    display: block;
    font-size: 10px;
    font-weight: 700;
    color: #fff;
    text-align: center;
    letter-spacing: .1em
}

@media only screen and (max-width:799px) {
    .p-notificationItem_official {
        font-size: 8px
    }
}

.p-notificationItem_tonttu {
    position: absolute;
    top: 60px;
    left: 50%;
    border-radius: 100%;
    background: gold;
    box-sizing: border-box;
    z-index: 1;
    width: 24px;
    height: 24px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

@media only screen and (max-width:799px) {
    .p-notificationItem_tonttu {
        top: 46px
    }
}

.p-notificationItem_tonttu:before {
    position: absolute;
    top: 50%;
    left: 50%;
    background: url("../img/global/tonttu.svg");
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: contain;
    display: block;
    content: "";
    z-index: 1;
    width: 14px;
    height: 18px;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

@media only screen and (max-width:799px) {
    .p-notificationItem_tonttu:before {
        width: 12px;
        height: 16px
    }
}

.p-notificationItem_content {
    width: calc(100% - 70px)
}

@media only screen and (max-width:799px) {
    .p-notificationItem_content {
        width: calc(100% - 40px)
    }
}

.p-notificationItem a {
    text-decoration: none
}

.p-notificationItemHeader {
    display: flex;
    align-items: center;
    margin-bottom: 5px
}

.p-notificationItemHeader_icon {
    position: relative;
    top: -3px;
    text-align: center;
    width: 18px;
    margin-right: 5px
}

.p-notificationItemHeader_icon img {
    width: 100%;
    height: auto
}

.p-notificationItemHeader_announce {
    line-height: 1.4;
    margin-bottom: 5px
}

@media only screen and (max-width:799px) {
    .p-notificationItemHeader_announce {
        margin-bottom: 0
    }
}

.p-notificationItemHeader_announce span {
    margin-left: -9px
}

@media only screen and (max-width:799px) {
    .p-notificationItemHeader_announce span {
        margin-left: -7px
    }
}

.p-notificationItemPost a {
    border: 1px solid #eee;
    border-radius: 6px;
    display: block;
    box-sizing: border-box;
    padding: 10px 10px 5px;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .25s;
    transition-property: all
}

.desktop .p-notificationItemPost a:hover {
    border: 1px solid #f3f3f3;
    background: #f3f3f3
}

.desktop .is-unread .p-notificationItemPost a:hover {
    background: #fff
}

.p-notificationItemPost_limit {
    font-size: 12px;
    font-weight: 700;
    color: #ef0d0d;
    margin-bottom: 5px
}

@media only screen and (max-width:799px) {
    .p-notificationItemPost_limit {
        font-size: 12px;
        margin-bottom: 2px
    }
}

.p-notificationItemPost_header {
    display: flex;
    align-items: center;
    margin-bottom: 2px
}

.p-notificationItemPost_body {
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden
}

.p-notificationItemPost_facility {
    font-size: 12px;
    line-height: 1;
    color: #888
}

.p-notificationItem_message {
    line-height: 1.5;
    margin-top: -5px
}

@media only screen and (max-width:799px) {
    .p-notificationItem_message {
        margin-top: -2px
    }
}

.p-notificationItem_message+.p-notificationItemPost,
.p-notificationItem_message+a {
    margin-top: 10px
}

@media only screen and (max-width:799px) {
    .p-notificationItem_message+.p-notificationItemPost {
        margin-top: 5px
    }
}

.p-notificationItem_date {
    position: relative;
    font-size: 11px;
    line-height: 1;
    color: #888;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .p-notificationItem_date {
        font-size: 10px;
        margin-top: -3px;
        margin-bottom: 5px
    }
}

.p-notificationItem_count {
    position: relative;
    line-height: 1;
    padding: 0 2px
}

.p-notificationItem_count:before {
    position: absolute;
    bottom: 0;
    background: gold;
    content: "";
    z-index: 0;
    width: 80%;
    height: 3px
}

.p-mytonttu {
    position: relative
}

@media only screen and (max-width:799px) {
    .p-mytonttuHeader {
        width: 100%
    }
}

.p-mytonttuHeader_content {
    position: relative;
    display: flex;
    width: 100%
}

@media only screen and (max-width:799px) {
    .p-mytonttuHeader_content {
        display: block
    }
}

.p-mytonttuHeader_content>a {
    text-decoration: none
}

@media only screen and (max-width:799px) {
    .c-form .p-mytonttuHeader_content {
        padding-top: 10px
    }
}

.p-mytonttuHistoryYear {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    width: 100%;
    margin: 30px 0
}

@media only screen and (max-width:799px) {
    .p-mytonttuHistoryYear {
        margin: 15px 0
    }
}

.p-mytonttuHistoryYear_current,
.p-mytonttuHistoryYear_next,
.p-mytonttuHistoryYear_prev {
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 30px;
    font-weight: 700;
    line-height: 1
}

.p-mytonttuHistoryYear_current a,
.p-mytonttuHistoryYear_next a,
.p-mytonttuHistoryYear_prev a {
    display: block;
    color: #888;
    text-decoration: none
}

.p-mytonttuHistoryYear_current a:after,
.p-mytonttuHistoryYear_current a:before,
.p-mytonttuHistoryYear_next a:after,
.p-mytonttuHistoryYear_next a:before,
.p-mytonttuHistoryYear_prev a:after,
.p-mytonttuHistoryYear_prev a:before {
    position: relative;
    top: -2px;
    font-size: 16px;
    color: #ddd
}

.p-mytonttuHistoryYear_current a.is-active:after,
.p-mytonttuHistoryYear_current a.is-active:before,
.p-mytonttuHistoryYear_next a.is-active:after,
.p-mytonttuHistoryYear_next a.is-active:before,
.p-mytonttuHistoryYear_prev a.is-active:after,
.p-mytonttuHistoryYear_prev a.is-active:before {
    color: #333
}

.p-mytonttuHistoryYear_current a:before,
.p-mytonttuHistoryYear_next a:before,
.p-mytonttuHistoryYear_prev a:before {
    margin-right: 10px
}

.p-mytonttuHistoryYear_current a:after,
.p-mytonttuHistoryYear_next a:after,
.p-mytonttuHistoryYear_prev a:after {
    margin-left: 10px
}

.p-mytonttuHistoryYear_prev a:before {
    content: ""
}

.p-mytonttuHistoryYear_next a:after {
    content: ""
}

.p-mytonttuHistoryYear_current {
    font-size: 30px;
    margin: 0 20px
}

@media only screen and (max-width:799px) {
    .p-mytonttuHistoryYear_current {
        font-size: 20px;
        margin: 0 10px
    }
}

.p-mytonttuHistoryYear_current a {
    color: #333
}

.p-mytonttuHistoryList {
    margin-top: -10px
}

.p-mytonttuHistoryItem {
    position: relative;
    border-bottom: 1px solid #eee;
    width: 100%;
    cursor: pointer
}

.desktop .p-mytonttuHistoryItem:hover .p-mytonttuHistoryItem_content {
    background: #f3f3f3
}

.p-mytonttuHistoryItem.is-active .p-mytonttuHistoryItem_content {
    background: #ea4c89;
    background: #f3f3f3
}

.p-mytonttuHistoryItem_content {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    padding: 10px 0;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .2s;
    transition-property: all
}

@media only screen and (max-width:799px) {
    .p-mytonttuHistoryItem_content {
        display: block
    }
}

.p-mytonttuHistoryItem_date {
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    line-height: 1;
    color: #adadad;
    color: #888;
    margin-right: 10px
}

@media only screen and (max-width:799px) {
    .p-mytonttuHistoryItem_date {
        font-size: 11px
    }
}

.p-mytonttuHistoryItem_group {
    border-radius: 4px;
    background: #f3f3f3;
    box-sizing: border-box;
    font-size: 12px;
    line-height: 1;
    text-align: center;
    width: 88px;
    padding: 5px 8px
}

@media only screen and (max-width:799px) {
    .p-mytonttuHistoryItem_group {
        font-size: 9px;
        width: 80px;
        padding: 3px 8px
    }
}

.p-mytonttuHistoryItem_header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 230px;
    margin-right: 20px
}

@media only screen and (max-width:799px) {
    .p-mytonttuHistoryItem_header {
        width: 100%;
        margin-right: 0;
        margin-bottom: 5px
    }
}

.p-mytonttuHistoryItem_body {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: calc(100% - 250px)
}

@media only screen and (max-width:799px) {
    .p-mytonttuHistoryItem_body {
        width: 100%
    }
}

.p-mytonttuHistoryItem_title {
    position: relative;
    line-height: 1.5;
    width: calc(100% - 170px);
    padding-left: 30px
}

.p-mytonttuHistoryItem_title:before {
    content: ""
}

@media only screen and (max-width:799px) {
    .p-mytonttuHistoryItem_title {
        width: calc(100% - 60px);
        padding-left: 23px
    }
}

.p-mytonttuHistoryItem_title:before {
    position: absolute;
    top: -1px;
    left: 0;
    font-size: 20px;
    margin-right: 10px
}

@media only screen and (max-width:799px) {
    .p-mytonttuHistoryItem_title:before {
        top: -1px;
        font-size: 16px
    }
}

.is-post .p-mytonttuHistoryItem_title:before {
    content: ""
}

.is-comment .p-mytonttuHistoryItem_title:before,
.is-lottery .p-mytonttuHistoryItem_title:before {
    content: ""
}

.is-give .p-mytonttuHistoryItem_title:before,
.is-receive .p-mytonttuHistoryItem_title:before {
    content: ""
}

.is-order .p-mytonttuHistoryItem_title:before {
    content: ""
}

.p-mytonttuHistoryItem_count {
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    text-align: right;
    width: 80px
}

@media only screen and (max-width:799px) {
    .p-mytonttuHistoryItem_count {
        font-size: 16px;
        width: 60px
    }
}

.is-gift .p-mytonttuHistoryItem_count,
.is-lottery .p-mytonttuHistoryItem_count {
    color: #ef0d0d
}

.p-mytonttuHistoryItem_arrow {
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .2s;
    transition-property: all
}

.p-mytonttuHistoryItem_arrow:after {
    content: ""
}

@media only screen and (max-width:799px) {
    .p-mytonttuHistoryItem_arrow {
        width: 30px;
        height: 30px;
        margin-right: -5px
    }
}

.p-mytonttuHistoryItem_arrow:after {
    font-size: 12px;
    color: #888;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: all
}

@media only screen and (max-width:799px) {
    .p-mytonttuHistoryItem_arrow:after {
        font-size: 10px
    }
}

.is-active .p-mytonttuHistoryItem_arrow:after {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg)
}

.p-mytonttuHistoryItem_child {
    display: none;
    box-sizing: border-box
}

.p-mytonttuHistoryItem_child .p-tonttuHistory {
    overflow: visible;
    padding: 20px 50px 20px 248px
}

@media only screen and (max-width:799px) {
    .p-mytonttuHistoryItem_child .p-tonttuHistory {
        padding: 0
    }
}

@media only screen and (max-width:799px) {
    .p-mytonttuHistoryItem_child .p-tonttuHistory_content {
        padding: 10px 0
    }
}

.p-reportCard {
    position: relative;
    border-radius: 12px;
    background: #ea4c89;
    box-sizing: border-box;
    color: #fff;
    width: calc(50% - 20px);
    margin: 30px 20px 0 0;
    padding: 25px 25px 3px
}

@media only screen and (max-width:799px) {
    .p-reportCard {
        border-radius: 8px;
        width: 100%;
        margin: 20px 0;
        padding: 20px 20px 0
    }
}

.p-reportCard.is-year {
    margin: 30px auto
}

@media only screen and (max-width:799px) {
    .p-reportCard.is-year {
        margin: 20px auto
    }
}

.p-reportCard:nth-of-type(2n) {
    margin-right: 0;
    margin-left: 20px
}

@media only screen and (max-width:799px) {
    .p-reportCard:nth-of-type(2n) {
        margin: 0
    }
}

.p-reportCard.is-simple {
    position: relative;
    top: 5px;
    width: 100%;
    margin: 0;
    padding: 0
}

@media only screen and (max-width:799px) {
    .p-reportCard.is-simple {
        top: 0
    }
}

.p-reportCard.is-lastMonth {
    background: #777
}

.p-reportCardUser {
    color: #fff;
    text-align: center;
    margin-bottom: 40px
}

@media only screen and (max-width:799px) {
    .p-reportCardUser {
        margin-bottom: 20px
    }
}

.p-reportCardUser_icon {
    border-radius: 40px;
    overflow: hidden;
    width: 80px;
    height: 80px;
    margin: auto auto 10px
}

@media only screen and (max-width:799px) {
    .p-reportCardUser_icon {
        border-radius: 30px;
        width: 60px;
        height: 60px
    }
}

.p-reportCardUser_icon img {
    width: 100%;
    height: auto
}

.p-reportCardUser_name {
    font-size: 20px;
    line-height: 1;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .p-reportCardUser_name {
        font-size: 16px
    }
}

.p-reportCardUser_title {
    font-size: 20px;
    line-height: 1
}

@media only screen and (max-width:799px) {
    .p-reportCardUser_title {
        font-size: 16px
    }
}

.p-reportCard_content>a {
    display: block;
    box-sizing: border-box;
    color: #fff;
    text-decoration: none;
    width: 100%;
    height: 90px;
    padding: 10px 20px 0
}

@media only screen and (max-width:799px) {
    .p-reportCard_content>a {
        height: auto;
        margin-top: 0;
        padding: 12px 20px 4px
    }
}

.p-reportCard_logo {
    position: absolute;
    top: 20px;
    right: 25px;
    display: none;
    width: 50px
}

.p-reportCard_logo img {
    width: 100%;
    height: auto
}

.p-reportCard_more {
    position: absolute;
    top: 10px;
    right: 20px;
    border-radius: 4px;
    font-size: 10px;
    font-weight: 700;
    color: #ea4c89;
    color: #fff;
    text-decoration: none
}

.p-reportCard_more:after {
    content: ""
}

@media only screen and (max-width:799px) {
    .p-reportCard_more {
        top: 10px
    }
}

.p-reportCard_more:after {
    position: relative;
    top: 1px;
    left: 3px;
    font-size: 10px
}

@media only screen and (max-width:799px) {
    .p-reportCard_more:after {
        top: 0;
        font-size: 8px
    }
}

.p-reportCard_title {
    position: relative;
    font-size: 20px;
    margin-bottom: 40px
}

@media only screen and (max-width:799px) {
    .p-reportCard_title {
        font-size: 16px;
        margin-bottom: 35px
    }
}

.is-simple .p-reportCard_title {
    font-size: 14px;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .is-simple .p-reportCard_title {
        font-size: 12px;
        margin-bottom: 0
    }
}

.p-reportCard_title:before {
    position: absolute;
    top: -16px;
    left: -8px;
    font-size: 42px
}

@media only screen and (max-width:799px) {
    .p-reportCard_title:before {
        font-size: 36px
    }
}

.is-simple .p-reportCard_title:before {
    top: -14px;
    font-size: 32px
}

@media only screen and (max-width:799px) {
    .is-simple .p-reportCard_title:before {
        font-size: 32px
    }
}

.p-reportCard_month {
    position: relative;
    top: -2px;
    display: inline-block;
    font-size: 13px;
    margin-left: 5px
}

@media only screen and (max-width:799px) {
    .p-reportCard_month {
        top: -1px
    }
}

.p-reportCard_public {
    position: absolute;
    top: 7px;
    right: 0;
    border: 1px solid #fff;
    border-radius: 4px;
    display: inline-block;
    font-size: 11px;
    margin-left: 10px;
    padding: 0 7px
}

@media only screen and (max-width:799px) {
    .p-reportCard_public {
        top: 3px;
        font-size: 9px;
        padding: 1px 7px 2px
    }
}

/*
.p-reportCardData {
    border-bottom: 2px solid #fff;
    margin-bottom: 20px
}

.is-lastMonth .p-reportCardData {
    border-bottom: 2px solid #fff
}
*/

.is-simple .p-reportCardData {
    border-bottom: none;
    margin-bottom: 0
}

.p-reportCardData_content {
    display: flex
}

@media only screen and (max-width:799px) {
    .is-simple .p-reportCardData_content {
        align-items: baseline
    }
}

.p-reportCardData_item {
    position: relative;
    margin: 0 15px 0 0
}

@media only screen and (max-width:799px) {
    .p-reportCardData_item {
        margin-right: 15px
    }
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .p-reportCardData_item {
        margin-right: 10px
    }
}

.is-year .p-reportCardData_item {
    width: 50%
}

.p-reportCardData_item.is-pace {
    margin-right: 0;
    margin-left: 10px
}

@media only screen and (max-width:799px) {
    .p-reportCardData_item.is-pace {
        margin-left: 0
    }
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .p-reportCardData_item.is-pace {
        margin-left: 0
    }
}

.is-simple .p-reportCardData_item.is-pace {
    margin-left: 0
}

.p-reportCardData_item.is-pace:before {
    position: absolute;
    bottom: 28px;
    left: -40px;
    background-image: url("../img/mypage/space_slush.png");
    background-repeat: no-repeat;
    background-size: cover;
    width: 22px;
    height: 55px
}

@media only screen and (max-width:799px) {
    .p-reportCardData_item.is-pace:before {
        bottom: 18px;
        left: -40px;
        height: 30px
    }
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .p-reportCardData_item.is-pace:before {
        left: -30px;
        height: 28px
    }
}

.is-simple .p-reportCardData_item.is-pace:before {
    bottom: 15px;
    display: none;
    width: 16px;
    height: 36px
}

@media only screen and (max-width:799px) {
    .is-simple .p-reportCardData_item.is-pace:before {
        bottom: 11px;
        left: -30px;
        display: none;
        height: 30px
    }
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .is-simple .p-reportCardData_item.is-pace:before {
        left: -25px;
        height: 28px
    }
}

.p-reportCardData_set {
    position: relative;
    font-weight: 700
}

.is-simple .p-reportCardData_set {
    display: flex;
    align-items: baseline
}

@media only screen and (max-width:799px) {
    .is-simple .p-reportCardData_set {
        display: flex;
        align-items: baseline
    }
}

.p-reportCardData_headline {
    font-size: 12px;
    line-height: 1
}

.is-simple .p-reportCardData_headline {
    position: relative;
    top: -9px;
    font-size: 10px;
    margin-right: 10px;
    margin-bottom: 0
}

@media only screen and (max-width:799px) {
    .is-simple .p-reportCardData_headline {
        font-weight: 400;
        margin-right: 5px;
        margin-bottom: 0
    }
}

.p-reportCardData_count {
    position: relative;
    margin-top: -20px
}

@media only screen and (max-width:799px) {
    .p-reportCardData_count {
        margin-top: -10px
    }
}

.is-simple .p-reportCardData_count {
    display: flex;
    align-items: baseline;
    margin-top: 0;
    margin-bottom: -5px
}

@media only screen and (max-width:799px) {
    .is-simple .p-reportCardData_count {
        display: flex;
        align-items: baseline;
        margin-bottom: -5px
    }
}

.is-pace .p-reportCardData_count {
    margin-top: 10px
}

@media only screen and (max-width:799px) {
    .is-pace .p-reportCardData_count {
        margin-top: 9px
    }
}

.is-simple .is-pace .p-reportCardData_count {
    margin-top: 0
}

@media only screen and (max-width:799px) {
    .is-simple .is-pace .p-reportCardData_count {
        margin-top: 0;
        margin-bottom: 0
    }
}

.p-reportCardData_number {
    font-family: Helvetica Neue, Helvetica, sans-serif;
    font-size: 66px
}

@media only screen and (max-width:799px) {
    .p-reportCardData_number {
        font-size: 46px
    }
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .p-reportCardData_number {
        font-size: 36px
    }
}

.is-simple .p-reportCardData_number {
    font-size: 24px
}

@media only screen and (max-width:799px) {
    .is-simple .p-reportCardData_number {
        font-size: 24px
    }
}

.is-pace .p-reportCardData_number {
    font-size: 40px
}

@media only screen and (max-width:799px) {
    .is-pace .p-reportCardData_number {
        font-size: 30px
    }
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .is-pace .p-reportCardData_number {
        font-size: 20px
    }
}

.is-simple .is-pace .p-reportCardData_number {
    font-size: 24px
}

@media only screen and (max-width:799px) {
    .is-simple .is-pace .p-reportCardData_number {
        font-size: 24px
    }
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .is-simple .is-pace .p-reportCardData_number {
        font-size: 24px
    }
}

.p-reportCardData_string {
    position: relative;
    display: inline-block;
    font-size: 16px;
    margin-left: 2px
}

@media only screen and (max-width:799px) {
    .p-reportCardData_string {
        top: -1px;
        font-size: 10px;
        margin-left: 2px
    }
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .p-reportCardData_string {
        font-size: 10px;
        margin-left: 1px
    }
}

.is-simple .p-reportCardData_string {
    font-size: 12px
}

@media only screen and (max-width:799px) {
    .is-simple .p-reportCardData_string {
        font-size: 10px
    }
}

.p-reportCardData_week {
    position: absolute;
    top: -3px;
    left: 0;
    font-size: 12px
}

@media only screen and (max-width:799px) {
    .p-reportCardData_week {
        top: -5px;
        font-size: 10px
    }
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .p-reportCardData_week {
        font-size: 8px
    }
}

.is-simple .p-reportCardData_week {
    position: relative;
    top: -1px;
    font-size: 10px;
    margin-right: 5px
}

@media only screen and (max-width:799px) {
    .is-simple .p-reportCardData_week {
        top: -1px;
        font-size: 10px
    }
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .is-simple .p-reportCardData_week {
        font-size: 8px
    }
}

.p-reportCardRanking {
    border-bottom: 2px solid #5180e3;
    margin-bottom: 20px;
    padding-bottom: 20px
}

.is-lastMonth .p-reportCardRanking {
    border-bottom: 2px solid #929292
}

.p-reportCardRanking.is-montly {
    border-bottom: none
}

.p-reportCardRanking_headline {
    position: relative;
    font-size: 14px;
    margin-bottom: 5px;
    padding-left: 25px
}

.p-reportCardRanking_headline:before {
    content: ""
}

@media only screen and (max-width:799px) {
    .p-reportCardRanking_headline {
        font-size: 13px;
        margin-bottom: 5px;
        padding-left: 22px
    }
}

.is-montly .p-reportCardRanking_headline:before {
    content: "";
    top: -11px;
    left: -5px;
    font-size: 28px
}

@media only screen and (max-width:799px) {
    .is-montly .p-reportCardRanking_headline:before {
        top: -8px;
        font-size: 24px
    }
}

.p-reportCardRanking_headline:before {
    position: absolute;
    top: -21px;
    left: -12px;
    font-size: 40px
}

@media only screen and (max-width:799px) {
    .p-reportCardRanking_headline:before {
        top: -18px;
        font-size: 34px
    }
}

.p-reportCardRanking_list {
    display: flex;
    justify-content: space-between;
    font-size: 16px;
    font-weight: 700;
    overflow: hidden;
    margin-bottom: 3px
}

@media only screen and (max-width:799px) {
    .p-reportCardRanking_list {
        font-size: 13px
    }
}

.p-reportCardRanking_name {
    display: block;
    flex: 1;
    text-indent: -1em;
    margin-right: 15px;
    padding-left: 1em
}

.p-reportCardRanking_month {
    display: block;
    width: 35px;
    margin-right: 10px
}

@media only screen and (max-width:799px) {
    .p-reportCardRanking_month {
        width: 30px
    }
}

.p-reportCardRanking_month+.p-reportCardRanking_name {
    text-indent: 0;
    padding-left: 0
}

.p-reportCardRanking_count {
    display: block;
    text-align: right;
    width: 40px
}

@media only screen and (max-width:799px) {
    .p-reportCardRanking_count {
        width: 30px
    }
}

.is-year .p-reportCardTemperature {
    border-bottom: 2px solid #5180e3;
    margin-bottom: 20px
}

.p-reportCardTemperature_content {
    display: flex
}

.p-reportCardTemperature_headline {
    position: relative;
    font-size: 14px;
    margin-bottom: 15px;
    padding-left: 28px
}

.p-reportCardTemperature_headline:before {
    content: ""
}

@media only screen and (max-width:799px) {
    .p-reportCardTemperature_headline {
        font-size: 12px;
        margin-bottom: 10px;
        padding-left: 25px
    }
}

.p-reportCardTemperature_headline:before {
    position: absolute;
    top: -21px;
    left: -12px;
    font-size: 40px
}

@media only screen and (max-width:799px) {
    .p-reportCardTemperature_headline:before {
        top: -18px;
        left: -10px;
        font-size: 32px
    }
}

.p-reportCardTemperature .p-reportCardData_item {
    width: 50%;
    margin: 0
}

.p-reportCardTemperature .p-reportCardData_number {
    font-size: 60px
}

@media only screen and (max-width:799px) {
    .p-reportCardTemperature .p-reportCardData_number {
        font-size: 46px
    }
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .p-reportCardTemperature .p-reportCardData_number {
        font-size: 40px
    }
}

.p-reportCardBanner {
    box-sizing: border-box;
    width: 360px;
    margin: 20px auto;
    padding: 20px 0
}

@media only screen and (max-width:799px) {
    .p-reportCardBanner {
        width: 100%;
        margin: 0;
        padding: 20px
    }
}

.p-reportCardBanner.is-report {
    margin: 0 auto;
    padding: 20px 0 0
}

@media only screen and (max-width:799px) {
    .p-reportCardBanner.is-report {
        margin: 0;
        padding: 20px 0
    }
}

.p-reportCardBanner a {
    position: relative;
    border-radius: 6px;
    background: #ea4c89;
    background: #0548d8;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    font-weight: 700;
    color: #fff;
    text-decoration: none;
    overflow: hidden;
    height: 70px;
    padding: 0 20px
}

.p-reportCardBanner a:after {
    position: absolute;
    top: 0;
    left: 0;
    background: url("../img/mypage/2019banner.jpg");
    background-size: cover;
    display: block;
    content: "";
    z-index: 0;
    opacity: .15;
    width: 100%;
    height: 100%
}

.p-reportCardBanner_title {
    font-family: Montserrat;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.15;
    margin-right: 20px
}

.p-reportCardBanner_content,
.p-reportCardBanner_title {
    position: relative;
    z-index: 1
}

.p-withdrawalList {
    border-top: 1px solid #eee;
    margin-top: 30px
}

@media only screen and (max-width:799px) {
    .p-withdrawalList {
        margin-top: 20px
    }
}

.p-withdrawalListItem {
    border-bottom: 1px solid #eee;
    padding: 20px 0
}

.p-withdrawalListItem:last-of-type {
    border-bottom: none
}

.p-withdrawalListItem_headline {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 5px
}

@media only screen and (max-width:799px) {
    .p-withdrawalListItem_headline {
        font-size: 15px
    }
}

.p-withdrawalListItem .c-formCheckbox {
    margin-left: 0
}

@media only screen and (max-width:799px) {
    .p-withdrawalListItem .c-formCheckbox {
        margin-top: 0
    }
}

.p-withdrawalListItem .c-formCheckbox input[type=checkbox]+label:after {
    color: #dedede
}

@media only screen and (max-width:799px) {
    .p-withdrawalListItem .c-formCheckbox label {
        padding-left: 40px
    }
}

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

    .p-withdrawalListItem .c-formCheckbox label:after,
    .p-withdrawalListItem .c-formCheckbox label:before {
        top: -3px
    }
}

.p-withdrawalListItem .c-formCheckbox+p {
    font-size: 12px;
    margin-top: 10px
}

.p-withdrawalListItem_button {
    margin-top: 20px
}

.p-withdrawalListItem.is-check {
    background: #f5f5f5;
    text-align: center;
    padding: 35px 0 40px
}

@media only screen and (max-width:799px) {
    .p-withdrawalListItem.is-check {
        padding: 25px 0 30px
    }
}

.p-withdrawalListItem.is-check .c-button {
    width: auto;
    margin: 0 15px
}

@media only screen and (max-width:799px) {
    .p-withdrawalListItem.is-check .c-button {
        margin: 0 5px;
        display: inline-block;
        box-sizing: border-box;
        width: calc(50% - 20px)
    }
}

.p-tonttuHistory {
    position: relative;
    top: 0;
    left: 0;
    box-sizing: border-box;
    z-index: 100;
    overflow-y: scroll;
    width: 100%
}

.p-tonttuHistory_overlay {
    position: fixed;
    top: 0;
    left: 0;
    pointer-events: none;
    width: 100%;
    height: 100%
}

.is-active .p-tonttuHistory_overlay {
    pointer-events: all
}

.p-tonttuHistory_content {
    position: relative;
    box-sizing: border-box;
    width: 100%;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .25s;
    transition-property: all
}

@media only screen and (max-width:799px) {
    .p-tonttuHistory_content {
        padding: 20px
    }
}

.p-tonttuHistory_items+.p-tonttuHistory_more {
    margin: 10px 0 0
}

.p-tonttuHistory_more {
    text-align: right;
    margin-top: -10px
}

.p-tonttuHistory_more a {
    font-weight: 700;
    color: #ea4c89;
    text-decoration: none;
    width: 100%
}

.p-tonttuHistory_more a:after {
    content: "";
    font-size: 12px;
    margin-left: 5px
}

.p-tonttuHistory_items.is-more {
    display: none;
    margin-top: 5px
}

@media only screen and (max-width:799px) {
    .p-tonttuHistory_items.is-more {
        display: block
    }
}

.p-tonttuHistoryHeader img {
    position: relative;
    top: -8px;
    width: 25px
}

.p-tonttuHistorySum {
    position: fixed;
    bottom: 0;
    left: 0;
    background: gold;
    box-sizing: border-box;
    font-weight: 700;
    overflow-y: scroll;
    width: 100%;
    height: 50px;
    padding: 10px 40px
}

@media only screen and (max-width:799px) {
    .p-tonttuHistorySum {
        padding: 13px 20px
    }
}

.p-tonttuHistoryItem {
    position: relative;
    font-size: 16px;
    margin-bottom: 5px
}

.p-tonttuHistoryItem:after {
    display: block;
    content: "";
    visibility: hidden;
    clear: both;
    height: 0
}

@media only screen and (max-width:799px) {
    .p-tonttuHistoryItem {
        font-size: 14px
    }
}

.p-tonttuHistoryItem:last-child {
    margin-bottom: 0
}

.p-tonttuHistoryItem.is-faq {
    background: #f6f6f6;
    box-sizing: border-box;
    text-align: center;
    margin-top: 20px;
    padding: 20px 20px 25px
}

@media only screen and (max-width:799px) {
    .p-tonttuHistoryItem.is-faq {
        width: 100vw;
        margin-left: -20px
    }
}

.p-tonttuHistoryItem.is-faq strong {
    display: block;
    margin-bottom: 5px
}

.p-tonttuHistoryItem.is-faq p {
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .p-tonttuHistoryItem.is-faq p {
        margin-bottom: 10px
    }
}

.p-tonttuHistoryItem_headline {
    display: block;
    float: left;
    width: calc(100% - 80px);
    padding-left: 28px
}

.p-tonttuHistoryItem_headline:before {
    content: ""
}

@media only screen and (max-width:799px) {
    .p-tonttuHistoryItem_headline {
        width: calc(100% - 80px);
        padding-left: 25px
    }
}

.p-tonttuHistoryItem_headline:before {
    position: absolute;
    top: 1px;
    left: 0;
    font-size: 16px;
    color: #ea4c89;
    text-align: center;
    width: 22px
}

@media only screen and (max-width:799px) {
    .p-tonttuHistoryItem_headline:before {
        top: 1px;
        left: 0;
        font-size: 15px;
        width: 20px
    }
}

.is-tonttu .p-tonttuHistoryItem_headline:before {
    display: none
}

.is-basis .p-tonttuHistoryItem_headline:before {
    color: #ef0d0d
}

.is-content .p-tonttuHistoryItem_headline:before {
    color: #ea4c89
}

.is-temperature_report .p-tonttuHistoryItem_headline:before {
    color: #888
}

.is-photo .p-tonttuHistoryItem_headline:before {
    color: #47c1bd
}

.is-monthly_counts_1 .p-tonttuHistoryItem_headline:before,
.is-monthly_counts_2 .p-tonttuHistoryItem_headline:before,
.is-monthly_counts_3 .p-tonttuHistoryItem_headline:before,
.is-weekly_counts_1 .p-tonttuHistoryItem_headline:before,
.is-weekly_counts_2 .p-tonttuHistoryItem_headline:before,
.is-weekly_counts_3 .p-tonttuHistoryItem_headline:before {
    color: #ff9c00
}

.is-all_counts .p-tonttuHistoryItem_headline:before {
    color: #ef0d0d
}

.is-facility_counts .p-tonttuHistoryItem_headline:before,
.is-facility_num .p-tonttuHistoryItem_headline:before {
    color: #7d41ea
}

.is-birth_month .p-tonttuHistoryItem_headline:before {
    color: #ef0d0d
}

.is-home_sauna_bonus .p-tonttuHistoryItem_headline:before {
    color: #ff9c00
}

.is-sauna_room .p-tonttuHistoryItem_headline:before {
    color: #ef0d0d
}

.is-bath_relax_space .p-tonttuHistoryItem_headline:before {
    color: #009800
}

.is-bath_relax_chair .p-tonttuHistoryItem_headline:before {
    color: #ff9c00
}

.is-loyly .p-tonttuHistoryItem_headline:before {
    color: #5fdbd4
}

.is-basis .p-tonttuHistoryItem_headline:before {
    content: ""
}

.is-content .p-tonttuHistoryItem_headline:before {
    content: ""
}

.is-temperature_report .p-tonttuHistoryItem_headline:before {
    content: ""
}

.is-photo .p-tonttuHistoryItem_headline:before {
    content: ""
}

.is-weekly_counts_1 .p-tonttuHistoryItem_headline:before {
    content: ""
}

.is-weekly_counts_2 .p-tonttuHistoryItem_headline:before {
    content: ""
}

.is-weekly_counts_3 .p-tonttuHistoryItem_headline:before {
    content: ""
}

.is-monthly_counts_1 .p-tonttuHistoryItem_headline:before {
    content: ""
}

.is-monthly_counts_2 .p-tonttuHistoryItem_headline:before {
    content: ""
}

.is-monthly_counts_3 .p-tonttuHistoryItem_headline:before {
    content: ""
}

.is-all_counts .p-tonttuHistoryItem_headline:before {
    content: ""
}

.is-facility_counts .p-tonttuHistoryItem_headline:before,
.is-facility_num .p-tonttuHistoryItem_headline:before {
    content: ""
}

.is-birth_month .p-tonttuHistoryItem_headline:before {
    content: ""
}

.is-home_sauna_bonus .p-tonttuHistoryItem_headline:before {
    content: ""
}

.is-sauna_room .p-tonttuHistoryItem_headline:before {
    content: ""
}

.is-water_bath .p-tonttuHistoryItem_headline:before {
    content: ""
}

.is-bath_relax_space .p-tonttuHistoryItem_headline:before {
    content: ""
}

.is-bath_relax_chair .p-tonttuHistoryItem_headline:before {
    content: ""
}

.is-loyly .p-tonttuHistoryItem_headline:before {
    content: ""
}

.is-tonttu .p-tonttuHistoryItem_headline img {
    position: absolute;
    top: 2px;
    left: 1px;
    width: 16px
}

@media only screen and (max-width:799px) {
    .is-tonttu .p-tonttuHistoryItem_headline img {
        top: 2px;
        left: 1px;
        width: 14px
    }
}

.is-gifttonttu .p-tonttuHistoryItem_headline {
    padding-left: 25px
}

.is-gifttonttu .p-tonttuHistoryItem_headline:before {
    display: none
}

.is-gifttonttu .p-tonttuHistoryItem_headline img {
    position: absolute;
    top: 5px;
    left: 0;
    border-radius: 100%;
    overflow: hidden;
    width: 18px;
    margin: 0 10px 0 0
}

@media only screen and (max-width:799px) {
    .is-gifttonttu .p-tonttuHistoryItem_headline img {
        top: 3px;
        width: 17px
    }
}

.p-tonttuHistoryItem_headline a {
    font-weight: 700
}

.p-tonttuHistoryItem_count {
    font-weight: 700;
    float: right
}

.p-tonttuHistoryItem_more {
    position: relative;
    cursor: pointer
}

.p-tonttuHistoryItem_more:after {
    content: ""
}

.p-tonttuHistoryItem_more.is-active:after {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg)
}

.p-tonttuHistoryItem_more:after {
    position: absolute;
    top: 3px;
    font-size: 12px;
    margin-left: 10px;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: color opacity
}

.p-tonttuHistoryItem_detail {
    display: none;
    padding-left: 28px
}

@media only screen and (max-width:799px) {
    .p-tonttuHistoryItem_detail {
        padding-left: 25px
    }
}

.p-tonttuHistoryItem_detail ul {
    clear: both;
    padding-left: 1.1em
}

.p-tonttuHistoryItem_detail ul li {
    font-size: 14px;
    list-style-type: disc
}

@media only screen and (max-width:799px) {
    .p-tonttuHistoryItem_detail ul li {
        font-size: 12px
    }
}

.p-gifttonttu {
    position: relative
}

.p-gifttonttu_user {
    text-align: center;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .p-gifttonttu_user {
        margin-bottom: 10px
    }
}

.p-gifttonttu_user img {
    width: 60px;
    height: 60px;
    height: auto;
    border-radius: 100%;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .p-gifttonttu_user img {
        margin-bottom: 5px;
        width: 50px;
        height: 50px
    }
}

.p-gifttonttu_user p {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    font-size: 14px;
    line-height: 1
}

.p-gifttonttu_attention {
    line-height: 1;
    font-size: 12px;
    text-align: center
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .p-gifttonttu_attention {
        font-size: 11px
    }
}

@media only screen and (max-width:799px) {
    .p-gifttonttu .p-commentForm.is-active .c-formTextarea textarea {
        height: 80px
    }
}

.p-gifttonttu+.p-commentForm {
    margin-bottom: 15px
}

.p-gifttonttuTransfer {
    position: relative;
    margin-bottom: 20px
}

.p-gifttonttuTransfer_helper {
    text-align: right;
    font-size: 12px;
    margin-bottom: 3px
}

@media only screen and (max-width:799px) {
    .p-gifttonttuTransfer_helper {
        font-size: 10px
    }
}

.p-gifttonttuTransfer_validation {
    position: absolute;
    top: 0;
    right: 20px;
    display: inline-block;
    background: #ef0d0d;
    background: rgba(239, 13, 13, .85);
    padding: 4px 10px;
    border-radius: 4px;
    color: #fff;
    z-index: 100;
    font-size: 12px;
    transition-property: all;
    transition-duration: .45s;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    pointer-events: none;
    opacity: 0
}

.p-gifttonttuTransfer_validation.is-view {
    opacity: 1
}

.p-gifttonttuTransfer_input {
    position: relative;
    margin-bottom: 10px
}

.p-gifttonttuTransfer_input:after {
    position: absolute;
    top: 0;
    right: 49px;
    width: 20px;
    height: 60px;
    content: "";
    background: #f7f7f7;
    display: block;
    pointer-events: none;
    display: none
}

.p-gifttonttuTransfer_input input {
    height: 60px;
    width: 100%;
    background: #f7f7f7;
    border: none;
    box-sizing: border-box;
    font-size: 36px;
    text-align: right;
    outline: none;
    padding: 0 55px;
    font-weight: 700;
    color: gold;
    color: #333;
    border-radius: 10px
}

.p-gifttonttuTransfer_input:before {
    position: absolute;
    top: 15px;
    right: 15px;
    content: "";
    width: 28px;
    height: 32px;
    background: url("../img/global/tonttu.svg");
    background-size: contain;
    background-repeat: no-repeat;
    display: block
}

.p-gifttonttuTransfer_clear {
    position: absolute;
    top: 50%;
    left: 15px;
    width: 30px;
    height: 30px;
    background: #888;
    border-radius: 100%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    transition-property: all;
    transition-duration: .45s;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    pointer-events: none;
    opacity: 0
}

.p-gifttonttuTransfer_clear:after {
    content: ""
}

.p-gifttonttuTransfer_clear.is-view {
    opacity: 1;
    pointer-events: all;
    cursor: pointer
}

.desktop .p-gifttonttuTransfer_clear:hover {
    opacity: .75
}

.p-gifttonttuTransfer_clear:after {
    position: absolute;
    color: #fff;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    font-size: 12px
}

.p-gifttonttuTransfer_quick {
    display: flex;
    justify-content: flex-end
}

.p-gifttonttuTransfer_quick button {
    width: 60px;
    height: 40px;
    line-height: 40px;
    background: #f7f7f7;
    border: none;
    box-sizing: border-box;
    font-size: 14px;
    text-align: center;
    outline: none;
    padding: 0 10px;
    font-weight: 700;
    color: gold;
    border-radius: 10px;
    margin-left: 5px;
    cursor: pointer;
    color: #333
}

.p-gifttonttuTransfer_balance {
    position: absolute;
    left: 0;
    bottom: 10px;
    font-size: 14px
}

@media only screen and (max-width:799px) {
    .p-gifttonttuTransfer_balance {
        font-size: 12px
    }
}

.p-gifttonttuTransfer_balance span {
    display: inline-block;
    margin-left: 5px;
    color: gold;
    color: #ea4c89;
    font-weight: 700
}

.p-sakatsu {
    width: 1100px;
    margin-right: auto;
    margin-left: auto
}

@media only screen and (max-width:799px) {
    .p-sakatsu {
        width: 100%
    }
}

@media only screen and (max-width:799px) {
    [data-page-id=sakatsuList] .p-sakatsu .p-headlineHeader {
        display: none
    }
}

.p-sakatsu_content {
    display: flex;
    justify-content: space-between
}

@media only screen and (max-width:799px) {
    .p-sakatsu_content {
        display: block
    }
}

.p-sakatsu .l-content {
    margin-bottom: 80px;
    padding: 20px 0
}

@media only screen and (max-width:799px) {
    .p-sakatsu .l-content {
        margin-bottom: 30px;
        padding: 0 20px
    }
}

.p-sakatsu_main {
    width: 740px
}

@media only screen and (max-width:799px) {
    .p-sakatsu_main {
        width: 100%
    }
}

@media only screen and (max-width:799px) {
    .p-sakatsu_main .p-postCardList {
        border-top: 1px solid #eee
    }
}

@media only screen and (max-width:799px) {
    .p-sakatsu_main .l-content {
        margin-bottom: 0
    }
}

.p-sakatsu_more {
    text-align: center;
    margin-top: 40px;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .p-sakatsu_more {
        margin-top: 20px;
        margin-bottom: 20px
    }
}

.p-sakatsu_sub {
    width: 340px
}

@media only screen and (max-width:799px) {
    .p-sakatsu_sub {
        width: calc(100% - 40px);
        margin: auto
    }
}

.p-sakatsuUse {
    border-radius: 12px;
    background: #fff;
    margin-bottom: 20px;
    padding: 30px
}

@media only screen and (max-width:799px) {
    .p-sakatsuUse {
        border: 2px solid #ea4c89;
        border-radius: 8px;
        padding: 10px 20px;
        box-shadow: none
    }
}

.p-sakatsuUse img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media only screen and (max-width:799px) {
    [data-page-id=sakatsuList] .p-sakatsuUse {
        display: none
    }
}

.p-sakatsuUse_headline {
    text-align: center;
    cursor: pointer
}

.p-sakatsuUse_headline span {
    position: relative;
    left: 14px;
    display: inline-block;
    font-size: 18px;
    color: #ea4c89
}

@media only screen and (max-width:799px) {
    .p-sakatsuUse_headline span {
        font-size: 16px
    }
}

.p-sakatsuUse_headline span:before {
    position: absolute;
    top: 5px;
    left: -30px;
    background-image: url("../img/global/beginner.png");
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: contain;
    display: block;
    content: "";
    z-index: 0;
    width: 18px;
    height: 28px
}

@media only screen and (max-width:799px) {
    .p-sakatsuUse_headline span:before {
        top: 5px;
        left: -26px;
        width: 16px;
        height: 24px
    }
}

.p-sakatsuUse_headline+.p-sakatsuUse_body {
    margin-top: 20px
}

@media only screen and (max-width:799px) {
    .p-sakatsuUse_headline+.p-sakatsuUse_body {
        margin-top: 15px
    }
}

@media only screen and (max-width:799px) {
    .p-sakatsuUse_body {
        display: none
    }
}

.p-sakatsuUse_body span {
    display: block;
    font-size: 14px;
    font-weight: 700;
    color: #ea4c89;
    text-align: center;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .p-sakatsuUse_body span {
        font-size: 12px
    }
}

.p-sakatsuUse p {
    font-size: 14px;
    margin-bottom: 30px
}

.p-sakatsuTonttu {
    border-radius: 12px;
    background: gold;
    text-align: center
}

@media only screen and (max-width:799px) {
    .p-sakatsuTonttu {
        display: none
    }
}

.p-sakatsuTonttu a {
    display: block;
    box-sizing: border-box;
    padding: 60px 0;
    transition: all .3s cubic-bezier(.215, .61, .355, 1)
}

.p-sakatsuTonttu a:hover {
    text-decoration: none;
    opacity: .5
}

.p-sakatsuTonttu_lead {
    font-size: 16px;
    color: #ea4c89;
    letter-spacing: .1em;
    margin-bottom: 10px
}

.p-sakatsuTonttu_headline {
    position: relative;
    left: 8px;
    font-size: 26px;
    letter-spacing: .1em;
    margin-bottom: 20px
}

.p-sakatsuTonttu_tonttu {
    width: 110px;
    margin: 0 auto 20px
}

.p-sakatsuTonttu_tonttu img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.p-sakatsuTonttu_tonttus {
    width: 60%;
    margin: auto
}

.p-sakatsuTonttu_tonttus img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.p-sakatsuSearch {
    position: relative;
    border-radius: 12px;
    background: #fff;
    box-sizing: border-box;
    margin-bottom: 20px;
    padding: 40px
}

@media only screen and (max-width:799px) {
    .p-sakatsuSearch {
        margin: 0;
        padding: 20px 0 0
    }
}

.p-sakatsuSearch .p-filter {
    margin-bottom: 0
}

@media only screen and (max-width:799px) {
    .p-sakatsuSearch .p-filter {
        padding: 15px 20px
    }
}

@media only screen and (max-width:799px) {
    .p-sakatsuSearch .p-filter.is-view .p-filter_content {
        display: flex
    }
}

.p-sakatsuSearch .p-filter_content {
    display: block
}

@media only screen and (max-width:799px) {
    .p-sakatsuSearch .p-filter_content {
        display: none
    }
}

.p-sakatsuSearch .p-filterItem--area,
.p-sakatsuSearch .p-filterItem--conditions {
    flex-basis: 49.5%
}

.p-sakatsuSearch .p-filterItem--submit {
    margin-top: 5px
}

.p-sakatsuSearch .p-filterResult {
    margin: 10px 0
}

.p-sakatsuSearch .p-filterMore span {
    padding: 0
}

.p-goodsCard {
    position: relative;
    border-radius: 16px;
    background: #fff;
    z-index: 0;
    overflow: hidden;
    width: 31.36364%;
    width: 23.09091%;
    width: 23.63636%;
    margin-bottom: 21px;

}

@media only screen and (max-width:799px) {
    .p-goodsCard {
        border-radius: 8px;
        width: calc(50% - 2px);
        margin-bottom: 4px
    }
}

.p-goodsCard.is-empty {
    height: 0;
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 0;
    padding-bottom: 0
}

@media only screen and (max-width:799px) {
    .p-goodsCard.is-empty {
        display: none
    }
}

.p-goodsCard a {
    display: block
}

.p-goodsCard a:hover {
    text-decoration: none
}

.p-goodsCard_new {
    position: absolute;
    top: -10px;
    right: -10px;
    border-radius: 100%;
    background: #ef0d0d;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: Montserrat;
    font-size: 10px;
    font-weight: 700;
    z-index: 1;
    color: #fff;
    width: 40px;
    height: 40px
}

@media only screen and (max-width:799px) {
    .p-goodsCard_new {
        font-size: 10px
    }
}

.p-goodsCard_end {
    position: absolute;
    top: -20px;
    left: -50px;
    background: #ef0d0d;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 700;
    z-index: 2;
    color: #fff;
    text-align: center;
    width: 130px;
    height: 70px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

@media only screen and (max-width:799px) {
    .p-goodsCard_end {
        left: -40px;
        width: 100px;
        height: 60px
    }
}

.p-goodsCard_end span {
    position: relative;
    top: 14px
}

@media only screen and (max-width:799px) {
    .p-goodsCard_end span {
        font-size: 12px
    }
}

.p-goodsCard_date {
    position: absolute;
    top: 19px;
    right: 10px;
    font-size: 12px;
    font-weight: 700;
    z-index: 1
}

@media only screen and (max-width:799px) {
    .p-goodsCard_date {
        top: 9px
    }
}

.p-goodsCard_coming {
    position: absolute;
    border-radius: 12px;
    background: rgba(0, 0, 0, .7);
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-weight: 700;
    z-index: 1000;
    color: #fff;
    text-align: center;
    width: 100%;
    height: 100%
}

@media only screen and (max-width:799px) {
    .p-goodsCard_coming {
        border-radius: 8px
    }
}

.p-goodsCard_coming span {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.p-goodsCardTonttu_count {
    display: block;
    font-size: 40px;
    margin-bottom: -5px
}

@media only screen and (max-width:799px) {
    .p-goodsCardTonttu_count {
        font-size: 16px
    }
}

.p-goodsCardSupport {
    position: relative;
    width: 100%;
    margin-top: -10px
}

@media only screen and (max-width:799px) {
    .p-goodsCardSupport {
        margin-top: -5px;
        margin-bottom: -15px
    }
}

.p-goodsCardSupport_content {
    display: flex;
    align-items: center;
    justify-content: space-between
}

@media only screen and (max-width:799px) {
    .p-goodsCardSupport_content:last-of-type {
        margin-top: 5px
    }
}

.p-goodsCardSupport_count,
.p-goodsCardSupport_headline {
    font-size: 14px;
    font-weight: 700
}

.p-goodsCardSupport_count {
    color: #ea4c89
}

.p-goodsCardSupport_count.is-comingsoon {
    color: #888;
    margin: .6em 0
}

.p-goodsCardSupport_count span {
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 28px;
    margin-right: 5px
}

@media only screen and (max-width:799px) {
    .p-goodsCardSupport_count span {
        font-size: 20px;
        margin-right: 2px
    }
}

.p-goodsCardSupport_button:nth-of-type(2) {
    margin-left: 5px
}

.p-goodsCardSupport_button {
    border: 1px solid #efefef;
    border-radius: 6px;
    display: block;
    box-sizing: border-box;
    font-size: 12px;
    text-align: center;
    width: 100%;
    padding: 10px 0
}

@media only screen and (max-width:799px) {
    .p-goodsCardSupport_button {
        font-size: 10px;
        padding: 8px 0
    }
}

.p-goodsCardSupport_button:hover {
    opacity: .8
}

.p-goodsCardSupport_sauna {
    margin-top: 5px
}

.p-goodsCardSupport_sauna a {
    border: 1px solid #efefef;
    border-radius: 6px;
    display: block;
    font-size: 12px;
    text-align: center;
    padding: 10px 0
}

.p-goodsCardSupport_sauna a:hover {
    opacity: .8
}

.p-goodsCard_image {
    border-radius: 16px 16px 0 0;
    overflow: hidden
}

@media only screen and (max-width:799px) {
    .p-goodsCard_image {
        border-radius: 8px 8px 0 0
    }
}

.p-goodsCard_image img {
    position: relative;
    width: 100%;
    height: auto
}



.p-goodsCard_tag {
    position: absolute;
    top: 10px;
    left: 10px;
    border-radius: 2px;
    background: #111;
    display: inline-block;
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    color: #ea4c89;
    color: #fff;
    padding: 4px 8px
}

@media only screen and (max-width:799px) {
    .p-goodsCard_tag {
        top: 10px;
        left: 10px;
        border-radius: 2px;
        font-size: 10px;
        padding: 3px 6px
    }
}

.p-goodsCard_content {
    padding: 0
}

@media only screen and (max-width:799px) {
    .p-goodsCard_content {
        padding: 0 0 10px;
    }
}

.p-goodsCardTitle {
    display: block;
    margin-bottom: 10px;
    padding: 0 20px
}

@media only screen and (max-width:799px) {
    .p-goodsCardTitle {
        font-size: 16px;
        line-height: 1.1;
        padding: 0 10px;
        margin-bottom: 8px;
    }
}

.p-goodsCardTitle_name {
    display: inline-block;
    font-size: 11px;
    font-weight: bold;
    color: #333;

}

@media only screen and (max-width:799px) {
    .p-goodsCardTitle_name {
        font-size: 9px;

    }
}

.p-goodsCardTitle_time {

    font-size: 11px;
    font-weight: bold;
    color: #333;
}

@media only screen and (max-width:799px) {
    .p-goodsCardTitle_time {
        font-size: 9px
    }
}

.p-goodsCardTitle_item {
    color: #ea4d89;
    display: block;
    font-size: 15px;
    line-height: 1;
    margin-top: 3px
}

@media only screen and (max-width:799px) {
    .p-goodsCardTitle_item {
        font-size: 12px;
        margin-top: 5px
    }
}

.p-goodsCard_body {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 20px;
    padding: 0 20px
}

@media only screen and (max-width:799px) {
    .p-goodsCard_body {
        margin-bottom: 15px;
        padding: 0 10px
    }
}

.p-goodsCardTonttu_headline {
    font-size: 12px;
    margin-bottom: 5px
}

@media only screen and (max-width:799px) {
    .p-goodsCardTonttu_headline {
        font-size: 8px
    }
}

.p-goodsCardTonttu_count {
    position: relative;
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 36px;
    font-weight: 700;
    line-height: 1;
    padding-left: 30px
}

@media only screen and (max-width:799px) {
    .p-goodsCardTonttu_count {
        font-size: 22px;
        padding-left: 18px
    }
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .p-goodsCardTonttu_count {
        font-size: 20px;
        padding-left: 18px
    }
}

.p-goodsCardTonttu_count span {
    display: block;
    line-height: 1
}


/*
.p-goodsCardTonttu_count:before {
    position: absolute;
    top: 4px;
    left: -1px;
    background: url("../img/global/tonttu.svg");
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    content: "";
    width: 30px;
    height: 30px
}

@media only screen and (max-width:799px) {
    .p-goodsCardTonttu_count:before {
        top: 2px;
        left: 0;
        width: 15px;
        height: 20px
    }
}
*/


@media only screen and (min-width:320px) and (max-width:374px) {
    .p-goodsCardTonttu_count:before {
        height: 18px
    }
}

.p-goodsCardWin {
    position: relative;
    top: 2px;


    display: flex;
    align-items: baseline;
    font-size: 10px;
    line-height: 1;
    color: #222;

}

@media only screen and (min-width:320px) and (max-width:374px) {
    .p-goodsCardWin {
        font-size: 8px;
        padding: 4px 8px 6px
    }
}

.p-goodsCardWin p {
    position: relative;
    top: 1px;
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1;
    margin-right: 3px
}

@media only screen and (max-width:799px) {
    .p-goodsCardWin p {
        font-size: 15px
    }
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .p-goodsCardWin p {
        font-size: 14px
    }
}

.p-goodsCardState {
    position: relative
}

.p-goodsCardState_lists {
    line-height: 1
}

.p-goodsCardState_list {
    display: inline-block;
    align-items: center;
    justify-content: space-between;
    font-size: 12px;
    line-height: 1;
    width: 49%;
    text-align: center;
    background: #ea4c89;
    color: #fff;
    padding: 3px 0;
margin: 1px;
    border-radius: 2px;
}

@media only screen and (max-width:799px) {
    .p-goodsCardState_list {
        align-items: center;
        font-size: 10px
    }
}

.p-goodsCardState_list:nth-child(1) {
  margin-left: 0;
}

.p-goodsCardState_list:nth-child(2) {
  margin-right: 0;
}
.p-goodsCardState_list:nth-child(3) {
  margin-left: 0;

}

.p-goodsCardState_list:nth-child(4) {
  margin-right: 0;
}



.p-goodsCardState_list strong {
    position: relative;
    display: inline-block;
    line-height: 1;
    color: #888
}

@media only screen and (max-width:799px) {
    .p-goodsCardState_list strong {
        top: 0
    }
}

.p-goodsCardState_list p {
    display: inline-block;
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    color: #ea4c89;
    text-align: right;
    margin: 0 3px 0 10px
}

@media only screen and (max-width:799px) {
    .p-goodsCardState_list p {
        font-size: 12px;
        margin: 0 3px
    }
}

.p-goodsCardFooter {
    position: relative;
    border-top: 1px solid #f3f3f3;
    background: #f9f9f9;
    background: #fff;
    padding: 10px 20px 14px
}

@media only screen and (max-width:799px) {
    .p-goodsCardFooter {
        padding: 6px 10px 0
    }
}



.p-goodsCardFooter_message {
    position: absolute;
    top: 13px;
    right: 0;
    font-size: 13px;
    font-weight: 700;
    color: #888
}

@media only screen and (max-width:799px) {
    .p-goodsCardFooter_message {
        position: relative;
        top: 0;
        font-size: 10px;
        text-align: right
    }
}

.p-goodsList {
    position: relative;
    width: 1100px;
    margin: auto
}

@media only screen and (max-width:799px) {
    .p-goodsList {
        background: #f3f3f3;
        box-sizing: border-box;
        width: 100%;
        padding: 20px 15px 40px
    }
}

.p-goodsList .p-goodsList_content+.c-headline {
    margin-top: 30px
}

.p-goodsList_header {
    text-align: center;
    margin-bottom: 60px
}

@media only screen and (max-width:799px) {
    .p-goodsList_header {
        margin-bottom: 30px
    }
}

.p-goodsList_header .c-lead {
    font-family: Montserrat;
    font-weight: 700
}

.p-goodsList_content {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%
}

.p-goodsList_pagetop {
    text-align: right;
    margin: 40px 0
}

@media only screen and (max-width:799px) {
    .p-goodsList_pagetop {
        margin: 20px 0
    }
}

.p-goodsList_pagetop a:after {
    content: "";
    position: relative;
    top: 2px;
    margin-left: 10px
}

@media only screen and (max-width:799px) {
    .p-goodsList_pagetop a:after {
        top: 1px;
        font-size: 12px
    }
}

.p-goodsList_pagetop a:hover {
    text-decoration: none
}

.p-goodsDetail {
    position: relative
}

@media only screen and (max-width:799px) {
    .p-goodsDetail {
        margin-bottom: 30px
    }
}

.p-goodsDetail_state {
    border-radius: 8px;
    background: #f3f3f3;
    font-weight: 700;
    text-align: center;
    margin-bottom: 20px;
    padding: 8px 0
}

@media only screen and (max-width:799px) {
    .p-goodsDetail_state {
        margin-bottom: 10px
    }
}

.p-goodsDetail_state.is-end {
    background: #ef0d0d;
    color: #fff
}

.p-goodsDetail_tag {
    border-radius: 4px;
    background: #222;
    display: inline-block;
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    color: #fff;
    margin-bottom: 5px;
    padding: 4px 8px
}

@media only screen and (max-width:799px) {
    .p-goodsDetail_tag {
        top: 10px;
        left: 10px;
        border-radius: 2px;
        font-size: 10px
    }
}

.p-goodsDetail_title {
    display: block;
    font-size: 32px;
    line-height: 1.5;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .p-goodsDetail_title {
        font-size: 22px;
        margin-bottom: 10px
    }
}

.p-goodsDetail .p-goodsCard_body {
    align-items: flex-end;
    padding-right: 0;
    padding-left: 0
}

@media only screen and (max-width:799px) {
    .p-goodsDetail .p-goodsCard_body {
        margin-bottom: 20px
    }
}

.p-goodsDetail .p-goodsCardState {
    top: 0
}

.p-goodsDetail .p-goodsCardState .p-goodsCardState_lists {
    display: flex;
    margin-bottom: 5px
}

@media only screen and (max-width:799px) {
    .p-goodsDetail .p-goodsCardState .p-goodsCardState_lists {
        margin-bottom: 0
    }
}



.p-goodsDetail .p-goodsCardState .p-goodsCardState_lists p {
    font-size: 30px
}

@media only screen and (max-width:799px) {
    .p-goodsDetail .p-goodsCardState .p-goodsCardState_lists p {
        font-size: 24px
    }
}

.p-goodsDetail .p-goodsCardState .p-goodsCardState_list {
    border-bottom: none;
    align-items: baseline;
    margin-left: 30px
}

@media only screen and (max-width:799px) {
    .p-goodsDetail .p-goodsCardState .p-goodsCardState_list {
        display: block;
        margin-left: 10px
    }
}

.p-goodsDetail .p-goodsCardState .p-goodsCardState_list:first-child:after {
    display: none
}

.p-goodsDetail .p-goodsCardState .p-goodsCardState_list p {
    position: relative;
    bottom: -2px;
    font-size: 40px
}

@media only screen and (max-width:799px) {
    .p-goodsDetail .p-goodsCardState .p-goodsCardState_list p {
        font-size: 30px
    }
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .p-goodsDetail .p-goodsCardState .p-goodsCardState_list p {
        font-size: 24px
    }
}

.p-goodsDetail .p-goodsCardState .p-goodsCardState_list strong {
    display: block;
    font-size: 12px;
    font-weight: 400;
    color: #000;
    margin-right: 10px;
    margin-bottom: 5px
}

@media only screen and (max-width:799px) {
    .p-goodsDetail .p-goodsCardState .p-goodsCardState_list strong {
        font-size: 10px;
        margin-bottom: 2px
    }
}

.p-goodsDetail .p-goodsCardState .p-goodsCardState_list small {
    display: inline-block;
    font-size: 16px;
    margin-left: 5px
}

@media only screen and (max-width:799px) {
    .p-goodsDetail .p-goodsCardState .p-goodsCardState_list small {
        font-size: 10px
    }
}

.p-goodsDetail .p-goodsCardState .p-goodsCardState_list:first-child {
    margin-left: 0
}

.p-goodsDetail .p-goodsCardState .p-goodsCardBar {
    margin-bottom: -5px
}

@media only screen and (max-width:799px) {
    .p-goodsDetail .p-goodsCardTonttu_headline {
        font-size: 10px;
        margin-bottom: 2px
    }
}

.p-goodsDetail .p-goodsCardTonttu_count {
    font-size: 42px;
    padding-left: 0px
}

@media only screen and (max-width:799px) {
    .p-goodsDetail .p-goodsCardTonttu_count {
        font-size: 30px;

    }
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .p-goodsDetail .p-goodsCardTonttu_count {
        font-size: 24px;
        padding-left: 20px
    }
}

.p-goodsDetail .p-goodsCardTonttu_count:before {
    top: 6px;
    height: 32px
}

@media only screen and (max-width:799px) {
    .p-goodsDetail .p-goodsCardTonttu_count:before {
        top: 4px;
        left: -1px;
        content: "";
        width: 18px;
        height: 22px
    }
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .p-goodsDetail .p-goodsCardTonttu_count:before {
        width: 18px;
        height: 18px
    }
}

.p-goodsDetail_image {
    position: relative;
    text-align: center;
    margin-bottom: 2em
}

.p-goodsDetail_image img {
    width: 100%;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    display: none;
    max-width: 100%;
    height: auto
}

.p-goodsDetail_image img:first-child {
    display: block
}

.p-goodsDetail_image .slick-arrow {
    position: absolute;
    bottom: 0;
    border: 1px solid #ddd;
    background: none;
    background: #fff;
    z-index: 1;
    width: 40px;
    height: 40px
}

@media only screen and (max-width:799px) {
    .p-goodsDetail_image .slick-arrow {
        width: 36px;
        height: 36px
    }
}

.p-goodsDetail_image .slick-arrow:after {
    position: absolute;
    top: 50%;
    left: 50%;
    font-size: 14px;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.p-goodsDetail_image .slick-arrow button {
    position: relative;
    border: none;
    background: none
}

.p-goodsDetail_image .slick-arrow.slick-prev {
    right: 40px
}

@media only screen and (max-width:799px) {
    .p-goodsDetail_image .slick-arrow.slick-prev {
        right: 36px
    }
}

.p-goodsDetail_image .slick-arrow.slick-prev:after {
    content: ""
}

.p-goodsDetail_image .slick-arrow.slick-next {
    right: 0
}

.p-goodsDetail_image .slick-arrow.slick-next:after {
    content: ""
}

.p-goodsDetail_image .slick-dots li {
    display: inline-block
}

.p-goodsDetail_image .slick-dots li button {
    border: none;
    background: none
}

.p-goodsDetail_body {
    margin-bottom: 60px
}

.p-goodsDetail_body p {
    margin-bottom: 2em
}

.p-goodsDetail_body .p-saunaItem {
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    margin-bottom: 40px
}

.p-goodsDetail_body .p-saunaItem p {
    margin-bottom: 0
}

.p-goodsDetail_body .p-saunaItem a {
    margin-left: 0;
    padding: 20px 0
}

.p-goodsDetailItem {
    margin-bottom: 40px
}

@media only screen and (max-width:799px) {
    .p-goodsDetailItem {
        margin-bottom: 30px
    }
}

.p-goodsDetail_form .c-formTable {
    margin-bottom: 20px
}

.p-goodsDetail_form .c-formCheckbox {
    display: block;
    text-align: center;
    margin: 30px 0
}

.p-goodsDetail_form .c-formCheckbox label {
    top: -15px
}

.p-goodsDetail_form .c-form_button {
    width: auto
}

@media only screen and (max-width:799px) {
    .p-goodsDetail_form .c-form_button {
        padding: 0
    }
}

.p-goodsDetail_form .c-form_button .c-button {
    margin-bottom: 0
}

.p-goodsDetail_form .c-form_button button {
    height: 100%
}

.p-goodsDetail_nologin {
    background: #f9f9f9;
    display: block;
    box-sizing: border-box;
    text-align: center;
    overflow: hidden;
    margin-top: 20px;
    margin-bottom: 20px;
    padding: 40px 20px
}

@media only screen and (max-width:799px) {
    .p-goodsDetail_nologin {
        width: calc(100% + 40px);
        margin-top: 10px;
        margin-left: -20px;
        padding: 40px 20px
    }
}

.p-goodsDetail_nologin strong {
    display: block;
    font-size: 18px;
    font-weight: 700;
    color: #ea4c89;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .p-goodsDetail_nologin strong {
        font-size: 16px
    }
}

.p-goodsDetail_nologin p a {
    color: #ea4c89;
    text-decoration: underline
}

.p-goodsDetail_nologin .c-button+p {
    margin-top: 20px
}

@media only screen and (max-width:799px) {
    .p-goodsDetail_nologin .c-button {
        display: block;
        width: 250px
    }
}

.p-goodsDetail_back {
    text-align: center;
    margin-top: 40px;
    margin-bottom: 60px
}

@media only screen and (max-width:799px) {
    .p-goodsDetail_back {
        margin-top: 0;
        margin-bottom: 40px;
        padding: 0 20px
    }
}

.p-goodsDetail_back .c-button {
    width: 300px
}

@media only screen and (max-width:799px) {
    .p-goodsDetail_back .c-button {
        width: 100%
    }
}

.p-goodsDetail_back .c-button a {
    font-size: 18px
}

@media only screen and (max-width:799px) {
    .p-goodsDetail_back .c-button a {
        font-size: 16px
    }
}

.p-goodsDetailTonttuList th {
    color: #888;
    padding-right: 20px;
    padding-bottom: 5px
}

.p-goodsDetailTonttuList tr:last-child th {
    padding-bottom: 0
}

.p-goodsDetailTonttuList td {
    font-weight: 700;
    text-align: right
}

.p-goodsDetailTonttuList .is-out td {
    color: #ef0d0d
}

.p-goodsDetailTerms {
    border-radius: 8px;
    background: #f3f3f3;
    box-sizing: border-box;
    font-size: 14px;
    padding: 20px
}

.p-goodsDetailTerms strong {
    display: block;
    margin-bottom: .5em
}

.p-goodsDetailTerms ul li {
    text-indent: -1em;
    padding-left: 1em
}

.p-goodsDetailTerms ul li a {
    text-decoration: underline
}

.p-goodsDetailTerms ul li a:hover {
    text-decoration: none
}

.p-saunaDetail {
    position: relative
}

.p-saunaDetail_back {
    text-align: center;
    margin-bottom: 60px
}

@media only screen and (max-width:799px) {
    .p-saunaDetail_back {
        margin-bottom: 40px;
        padding: 0 20px
    }
}

.p-saunaDetail_back .c-button {
    width: 300px
}

@media only screen and (max-width:799px) {
    .p-saunaDetail_back .c-button {
        width: 100%
    }
}

.p-saunaDetail_back .c-button a {
    font-size: 18px
}

@media only screen and (max-width:799px) {
    .p-saunaDetail_back .c-button a {
        font-size: 16px
    }
}

.p-saunaDetail_corona {
    position: absolute;
    top: -50px;
    right: 0;
    font-size: 12px;
    text-align: right;
    margin-bottom: 5px
}

@media only screen and (max-width:799px) {
    .p-saunaDetail_corona {
        position: relative;
        top: 0;
        left: 0;
        font-size: 12px;
        text-align: left
    }
}

.p-saunaDetailHeader {
    position: relative;
    margin: 0 0 10px
}

@media only screen and (max-width:799px) {
    .p-saunaDetailHeader {
        margin-bottom: -5px
    }
}

.p-saunaDetailHeader.has-border {
    border-bottom: 1px solid #eee
}

@media only screen and (max-width:799px) {
    .p-saunaDetailHeader.has-border {
        margin-bottom: 10px;
        padding-bottom: 10px
    }
}

.p-saunaDetailHeader.is-simple {
    margin-bottom: 0
}

@media only screen and (max-width:799px) {
    .p-saunaDetailHeader.is-simple {
        margin-bottom: -5px
    }
}

.p-saunaDetailHeader.is-simple .p-saunaDetailHeader_main {
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .p-saunaDetailHeader.is-simple .p-saunaDetailHeader_main {
        margin-bottom: 0
    }
}

.p-saunaDetailHeader.is-simple .p-saunaDetailHeader_name {
    margin-top: 0
}

@media only screen and (max-width:799px) {
    .p-saunaDetailHeader.is-simple .p-saunaDetailHeader_name {
        margin-top: 0
    }
}

.p-saunaDetailHeader_main {
    position: relative;
    margin: 0 0 20px
}

@media only screen and (max-width:799px) {
    .p-saunaDetailHeader_main {
        margin: 0
    }
}

.p-saunaDetailHeader_target {
    border: 1px solid #222;
    border-radius: 6px;
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    margin: 0 5px 0 0;
    padding: 4px 15px
}

@media only screen and (max-width:799px) {
    .p-saunaDetailHeader_target {
        font-size: 11px;
        margin-right: 2px;
        padding: 4px 8px
    }
}

.p-saunaDetailHeader_caution {
    display: inline-block;
    font-weight: 700;
    line-height: 1;
    color: #ef0d0d;
    margin-left: 10px
}

@media only screen and (max-width:799px) {
    .p-saunaDetailHeader_caution {
        font-size: 12px;
        margin-left: 5px
    }
}

.p-saunaDetailHeader_sponsor {
    position: relative;
    border-radius: 6px;
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    margin: 0 5px;
    padding: 4px 0 4px 20px
}

@media only screen and (max-width:799px) {
    .p-saunaDetailHeader_sponsor {
        font-size: 11px;
        margin-right: 5px;
        margin-left: 5px;
        padding: 4px 8px 4px 15px
    }
}

.p-saunaDetailHeader_sponsor:after {
    position: absolute;
    top: 4px;
    left: 0;
    background: url("../img/global/tonttu.svg");
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    content: "";
    width: 15px;
    height: 15px
}

@media only screen and (max-width:799px) {
    .p-saunaDetailHeader_sponsor:after {
        top: 3px;
        left: 0;
        width: 14px;
        height: 14px
    }
}

.p-saunaDetailHeader_goto {
    position: relative;
    border: 1px solid #ddd;
    border-radius: 6px;
    display: inline-block;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    padding: 4px 10px
}

@media only screen and (max-width:799px) {
    .p-saunaDetailHeader_goto {
        font-size: 11px;
        padding: 4px 8px
    }
}

.p-saunaDetailHeader_name {
    margin: 6px 0 0
}

@media only screen and (max-width:799px) {
    .p-saunaDetailHeader_name {
        line-height: 1.4;
        margin: 10px 0 5px
    }
}

.p-saunaDetailHeader_area {
    font-size: 20px;
    font-weight: 700;
    color: #888
}

@media only screen and (max-width:799px) {
    .p-saunaDetailHeader_area {
        font-size: 12px
    }
}

.p-saunaDetailHeader_share {
    font-size: 0
}

@media only screen and (max-width:799px) {
    .p-saunaDetailHeader_share {
        margin-bottom: 0
    }
}

.p-saunaDetailHeader_action {
    position: absolute;
    right: 0;
    bottom: -8px;
    box-sizing: border-box;
    font-size: 0
}

@media only screen and (max-width:799px) {
    .p-saunaDetailHeader_action {
        position: fixed;
        bottom: 15px;
        left: 0;
        z-index: 999;
        width: 100%;
        padding: 20px
    }
}

.p-saunaDetailHeader a {
    text-decoration: none
}

.p-saunaDetailHeader a.b-left {
    color: #ea4c89;
}

.p-saunaDetailMeta {
    position: absolute;
    top: 0;
    right: 0
}

@media only screen and (max-width:799px) {
    .p-saunaDetailMeta {
        position: relative
    }
}

.p-saunaDetailMeta_register {
    display: inline-block;
    font-size: 12px;
    margin: 0 10px 0 0
}

@media only screen and (max-width:799px) {
    .p-saunaDetailMeta_register {
        display: block;
        font-size: 14px;
        margin-bottom: 15px
    }
}

.p-saunaDetailMeta_register a {
    position: relative;
    top: 4px;
    display: inline-block;
    white-space: nowrap;
    text-decoration: underline;
    text-overflow: ellipsis;
    overflow: hidden;
    max-width: 110px
}

@media only screen and (max-width:799px) {
    .p-saunaDetailMeta_register a {
        top: 0;
        max-width: 240px
    }
}

.p-saunaDetailMeta_register a:hover {
    text-decoration: none;
    opacity: .7
}

.p-saunaDetailMeta_update {
    position: relative;
    display: inline-block;
    font-size: 12px;
    margin: 0 10px 0 0
}

@media only screen and (max-width:799px) {
    .p-saunaDetailMeta_update {
        font-size: 14px
    }
}

.p-saunaDetailMeta_updateText {
    display: inline-block;
    padding-right: 15px;
    cursor: pointer
}

.p-saunaDetailMeta_updateText:after {
    content: ""
}

@media only screen and (max-width:799px) {
    .p-saunaDetailMeta_updateText {
        padding-right: 20px
    }
}

.p-saunaDetailMeta_updateText:hover {
    text-decoration: underline;
    opacity: .7
}

.p-saunaDetailMeta_updateText:after {
    position: absolute;
    top: 1px;
    right: 0;
    font-size: 10px;
    -webkit-transform: scale(.7);
    transform: scale(.7)
}

@media only screen and (max-width:799px) {
    .p-saunaDetailMeta_updateText:after {
        top: 3px;
        font-size: 12px
    }
}

.p-saunaDetailMeta_button {
    display: inline-block
}

@media only screen and (max-width:799px) {
    .p-saunaDetailMeta_button {
        position: relative;
        top: 2px;
        display: block;
        float: right
    }
}

.p-saunaDetailMeta_button a {
    border: 1px solid #ddd;
    border-radius: 6px;
    display: block;
    font-size: 12px;
    text-decoration: none;
    padding: 2px 14px;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .25s;
    transition-property: all
}

@media only screen and (max-width:799px) {
    .p-saunaDetailMeta_button a {
        position: relative;
        top: -8px;
        font-size: 14px
    }
}

.p-saunaDetailMeta_button a:hover {
    border: 1px solid #222;
    text-decoration: none
}

.p-saunaDetailMetaHistory {
    position: absolute;
    top: 30px;
    right: -90px;
    border: 1px solid #ddd;
    border-radius: 6px;
    background: #fff;
    display: none;
    box-sizing: border-box;
    z-index: 100;
    width: 280px;
    padding: 10px 15px
}

@media only screen and (max-width:799px) {
    .p-saunaDetailMetaHistory {
        right: inherit;
        left: 0;
        width: calc(100vw - 60px)
    }
}

.is-active .p-saunaDetailMetaHistory {
    display: block
}

.p-saunaDetailMetaHistory_list {
    display: flex;
    margin-bottom: 4px
}

@media only screen and (max-width:799px) {
    .p-saunaDetailMetaHistory_list {
        font-size: 12px;
        margin-bottom: 4px
    }
}

.p-saunaDetailMetaHistory span {
    display: block;
    margin-right: 5px
}

.p-saunaDetailMetaHistory a {
    position: relative;
    white-space: nowrap;
    text-decoration: underline;
    text-overflow: ellipsis;
    overflow: hidden;
    max-width: 130px;
    margin: 0 10px 0 0
}

@media only screen and (max-width:799px) {
    .p-saunaDetailMetaHistory a {
        max-width: calc(100% - 110px)
    }
}

.p-saunaDetailMetaHistory a:hover {
    text-decoration: none;
    opacity: .7
}

.p-saunaDetailBody--sakatsu {
    display: flex;
    margin-bottom: 40px
}

@media only screen and (max-width:799px) {
    .p-saunaDetailBody--sakatsu {
        display: block
    }
}

.p-saunaDetailBody .c-tab {
    margin: 30px 0 20px
}

@media only screen and (max-width:799px) {
    .p-saunaDetailBody .c-tab {
        margin: 15px 0 40px
    }
}

.p-saunaDetailBody_frequency {
    font-weight: 700;
    margin: 20px 0 -10px
}

@media only screen and (max-width:799px) {
    .p-saunaDetailBody_frequency {
        margin-top: 10px;
        margin-bottom: 0
    }
}

.p-saunaDetailBody_main {
    width: 100%
}

@media only screen and (max-width:799px) {
    .p-saunaDetailBody_main {
        width: 100%
    }
}

.p-saunaDetailBody_sub {
    border-left: 1px solid #eee;
    box-sizing: border-box;
    width: calc(100% - 720px)
}

@media only screen and (max-width:799px) {
    .p-saunaDetailBody_sub {
        border-top: 1px solid #eee;
        border-left: none;
        width: 100%;
        margin-top: 50px
    }
}

.p-saunaDetailBody .p-goodsList {
    width: 100%;
    margin-top: 30px
}

@media only screen and (max-width:799px) {
    .p-saunaDetailBody .p-goodsList {
        position: relative;
        background: none;
        box-sizing: border-box;
        margin-top: 20px;
        padding: 0
    }
}

.p-saunaDetailBody .p-goodsList_content {
    padding: 0
}

@media only screen and (max-width:799px) {
    .p-saunaDetailBody .p-goodsList_content {
        box-sizing: border-box;
        padding: 0 4px
    }
}

.p-saunaDetailBody .p-goodsCard {
    border: 1px solid #eee;
    margin-bottom: 30px
}

@media only screen and (max-width:799px) {
    .p-saunaDetailBody .p-goodsCard {
        width: calc(50% - 4px);
        margin-bottom: 4px
    }
}

.p-saunaDetailBody .p-goodsCard.is-empty {
    border: none
}

.p-saunaDetailBody .p-goodsCard a {
    text-decoration: none
}

.p-saunaDetailPost {
    margin: 0 0 20px
}

.p-saunaDetailPost .c-headline {
    margin-bottom: 0
}

.p-saunaDetailTicket {
    margin: 0 0 20px
}

.p-saunaDetailTicket .c-headline {
    margin-bottom: 0
}

.p-saunaDetailShop {
    margin: 0 0 40px
}

.p-saunaDetailShop_content {
    display: flex;
    justify-content: space-between
}

@media only screen and (max-width:799px) {
    .p-saunaDetailShop_content {
        display: block
    }
}

.p-saunaDetailShop_image {
    width: 46.80851%
}

@media only screen and (max-width:799px) {
    .p-saunaDetailShop_image {
        width: 100%;
        margin-bottom: 40px
    }
}

.p-saunaDetailShop_image img {
    width: 100%;
    height: auto;
    margin: 0 0 30px
}

.p-saunaDetailShop_map>a {
    display: block;
    font-size: 14px;
    margin-top: 10px;
    text-decoration: underline
}

.desktop .p-saunaDetailShop_map>a:hover {
    text-decoration: none;
    opacity: .7
}

@media only screen and (max-width:799px) {
    .p-saunaDetailShop_map>a {
        border-radius: 6px;
        background: #ea4c89;
        font-weight: 700;
        color: #fff;
        text-align: center;
        text-decoration: none;
        padding: 15px
    }
}

.p-saunaDetailShop_googlemap {
    background: #f5f5f5;
    width: 100%;
    height: auto
}

.p-saunaDetailShop_googlemap iframe {
    height: 350px
}

@media only screen and (max-width:799px) {
    .p-saunaDetailShop_googlemap iframe {
        height: 250px
    }
}

.p-saunaDetailShop_info {
    word-break: break-all;
    width: 47.61905%
}

@media only screen and (max-width:799px) {
    .p-saunaDetailShop_info {
        width: 100%
    }
}

@media only screen and (max-width:799px) {
    .p-saunaDetailGallery {
        margin-bottom: 20px
    }
}

.p-saunaDetailGallery_content {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

@media only screen and (max-width:799px) {
    .p-saunaDetailGallery_content {
        width: calc(100% + 10px)
    }
}

.p-saunaDetailGallery_content+.c-headline--lv3 {
    margin-top: 40px
}

@media only screen and (max-width:799px) {
    .p-saunaDetailGallery_content+.c-headline--lv3 {
        margin-top: 20px
    }
}

.p-saunaDetailGallery_content:after {
    display: block;
    content: "";
    width: calc(33.333% - 10px)
}

@media only screen and (max-width:799px) {
    .p-saunaDetailGallery_content:after {
        display: none
    }
}

.p-saunaDetailGalleryImage {
    position: relative;
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: cover;
    box-sizing: border-box;
    width: calc(33.333% - 10px);
    height: auto;
    margin: 0 0 15px;
    cursor: pointer;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: all
}

@media only screen and (max-width:799px) {
    .p-saunaDetailGalleryImage {
        width: calc(50% - 10px);
        margin: 0 10px 10px 0;
        padding: 0
    }
}

.p-saunaDetailGalleryImage img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.p-saunaDetailGalleryImage:hover {
    opacity: .7
}

.p-saunaDetailGalleryImage_image {
    position: relative
}

.p-saunaDetailGalleryImage_image:before {
    display: block;
    content: "";
    width: 100%;
    padding-top: 66.25%
}

.p-saunaDetailGalleryImage_caption {
    font-size: 12px;
    margin-top: 5px
}

@media only screen and (max-width:799px) {
    .p-saunaDetailGalleryImage_caption {
        font-size: 10px;
        margin-top: 3px
    }
}

.p-saunaDetailStay {
    margin-bottom: 40px
}

.p-saunaDetailStayButton {
    position: relative;
    width: 470px
}

@media only screen and (max-width:799px) {
    .p-saunaDetailStayButton {
        width: 100%
    }
}

.p-saunaDetailStayButton_gotologo {
    position: absolute;
    top: 50%;
    right: 20px;
    width: 60px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.p-saunaDetailStayButton_rakutenlogo {
    margin-bottom: 10px
}

.p-saunaDetailStayButton_rakutenlogo img {
    display: block;
    width: auto;
    height: 15px
}

.p-saunaDetailStayButton_logo {
    margin-bottom: 10px
}

.p-saunaDetailStayButton_logo img {
    display: block;
    width: auto;
    height: 15px
}

.p-saunaDetailStayButton a {
    border: 1px solid #ddd;
    border-radius: 8px;
    display: block;
    text-decoration: none;
    padding: 20px
}

.p-saunaDetailStayButton_goto {
    display: block;
    font-size: 12px;
    line-height: 1;
    margin-bottom: 10px
}

.p-saunaDetailStayButton_reserve {
    display: block;
    font-size: 18px;
    font-weight: 700;
    line-height: 1
}

.p-saunaDetailStayButton_reserve:after {
    content: ""
}

@media only screen and (max-width:799px) {
    .p-saunaDetailStayButton_reserve {
        font-size: 16px
    }
}

.p-saunaDetailStayButton_reserve:after {
    font-size: 12px;
    margin-left: 10px
}

@media only screen and (max-width:799px) {
    .p-saunaDetailStayButton_reserve:after {
        font-size: 9px;
        margin-left: 8px
    }
}

.p-saunaDetailShutdown {
    border: 3px solid #ef0d0d;
    border-radius: 6px;
    box-sizing: border-box;
    font-size: 16px;
    margin-top: 30px;
    padding: 20px
}

@media only screen and (max-width:799px) {
    .p-saunaDetailShutdown {
        border: 2px solid #ef0d0d;
        font-size: 14px
    }
}

.p-saunaDetailShutdown small {
    display: block;
    font-size: 14px;
    margin-top: 15px
}

@media only screen and (max-width:799px) {
    .p-saunaDetailShutdown small {
        font-size: 12px;
        margin-top: 10px
    }
}

.p-saunaDetailShutdown .c-headline {
    color: #ef0d0d;
    margin-bottom: 5px
}

.p-saunaDetailShutdown .c-headline:before {
    background: #ef0d0d;
    display: none
}

.p-saunaSpec {
    position: relative;
    box-sizing: border-box;
    padding: 30px 0
}

@media only screen and (max-width:799px) {
    .p-saunaSpec {
        border: none;
        padding: 0
    }
}

@media only screen and (max-width:799px) {
    .p-saunaSpec_main {
        border-bottom: 1px solid #f3f3f3;
        margin-bottom: 20px
    }
}

.p-saunaSpec_saunaMizuburo {
    display: flex;
    display: none;
    margin-bottom: 20px
}

.p-saunaSpec_saunaMizuburo:first-of-type {
    display: flex
}

.p-saunaSpec_saunaMizuburo:first-of-type .p-saunaSpecItem_name span {
    padding-top: 50px
}

@media only screen and (max-width:799px) {
    .p-saunaSpec_saunaMizuburo:first-of-type .p-saunaSpecItem_name span {
        padding-top: 44px
    }
}

.p-saunaSpec_saunaMizuburo:first-of-type .p-saunaSpecItem_name span:before {
    display: block
}

.p-saunaSpec .c-button {
    margin-bottom: 40px
}

@media only screen and (max-width:799px) {
    .p-saunaSpec .c-button {
        margin-bottom: 20px
    }
}

.p-saunaSpecItem {
    box-sizing: border-box;
    text-align: center;
    width: 50%;
    padding-bottom: 20px
}

@media only screen and (max-width:799px) {
    .p-saunaSpecItem {
        width: 100%;
        padding: 0
    }
}

.p-saunaSpecItem--sauna {
    border-right: 1px solid #f3f3f3
}

@media only screen and (max-width:799px) {
    .p-saunaSpecItem--sauna {
        border-right: none;
        padding-right: 10px
    }
}

@media only screen and (max-width:799px) {
    .p-saunaSpecItem--mizuburo {
        padding-left: 10px
    }
}

.p-saunaSpecItem_name {
    position: relative;
    font-size: 20px
}

@media only screen and (max-width:799px) {
    .p-saunaSpecItem_name {
        font-size: 15px
    }
}

.p-saunaSpecItem_name span {
    position: relative;
    display: block
}

.p-saunaSpecItem_name span:before {
    position: absolute;
    top: 0;
    left: 50%;
    display: block;
    display: none;
    font-size: 60px;
    line-height: 45px;
    height: 45px;
    margin: 0 auto;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

@media only screen and (max-width:799px) {
    .p-saunaSpecItem_name span:before {
        font-size: 50px
    }
}

.p-saunaSpecItem--sauna .p-saunaSpecItem_name span {
    color: #ef0d0d
}

.p-saunaSpecItem--sauna .p-saunaSpecItem_name span:before {
    content: ""
}

.p-saunaSpecItem--mizuburo .p-saunaSpecItem_name span {
    color: #ea4c89
}

.p-saunaSpecItem--mizuburo .p-saunaSpecItem_name span:before {
    content: ""
}

.p-saunaSpecItem_number {
    display: inline-block;
    font-size: 18px;
    font-weight: 700
}

@media only screen and (max-width:799px) {
    .p-saunaSpecItem_number {
        font-size: 14px
    }
}

.p-saunaSpecItem--sauna .p-saunaSpecItem_number {
    color: #ef0d0d
}

.p-saunaSpecItem--mizuburo .p-saunaSpecItem_number {
    color: #ea4c89
}

.p-saunaSpecItem_number span {
    font-size: 14px;
    color: #222
}

@media only screen and (max-width:799px) {
    .p-saunaSpecItem_number span {
        font-size: 12px
    }
}

.p-saunaSpecItem_number strong {
    position: relative;
    top: 2px;
    font-family: Montserrat;
    font-size: 40px;
    margin: 0 -2px 0 0
}

@media only screen and (max-width:799px) {
    .p-saunaSpecItem_number strong {
        font-size: 36px
    }
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .p-saunaSpecItem_number strong {
        font-size: 30px;
        margin-left: 5px
    }
}

.p-saunaSpecItem_people {
    font-size: 14px;
    line-height: 1.6;
    margin: 0 0 10px
}

@media only screen and (max-width:799px) {
    .p-saunaSpecItem_people {
        font-size: 13px;
        margin: 0 0 10px
    }
}

.p-saunaSpecItem_note {
    font-size: 14px;
    line-height: 1.6;
    margin: 10px 20px
}

@media only screen and (max-width:799px) {
    .p-saunaSpecItem_note {
        font-size: 13px;
        margin: 10px 0
    }
}

.p-saunaSpecItem_depth {
    margin: 5px 0 0
}

.p-saunaSpecItem_depth a {
    border: 1px solid #ea4c89;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    color: #ea4c89;
    text-decoration: none;
    padding: 2px 10px;
    cursor: pointer;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .35s;
    transition-property: all
}

@media only screen and (max-width:799px) {
    .p-saunaSpecItem_depth a {
        font-size: 12px
    }
}

.p-saunaSpecItem_depth a:hover {
    background: #ea4c89;
    color: #fff;
    text-decoration: none
}

.p-saunaSpecTable {
    width: 100%
}

.p-saunaSpecTable tr:first-child .p-saunaSpecTable_mark,
.p-saunaSpecTable tr:first-child .p-saunaSpecTable_note,
.p-saunaSpecTable tr:first-child .p-saunaSpecTable_th {
    padding-top: 0
}

.p-saunaSpecTable tr:last-child .p-saunaSpecTable_mark,
.p-saunaSpecTable tr:last-child .p-saunaSpecTable_note,
.p-saunaSpecTable tr:last-child .p-saunaSpecTable_th {
    border-bottom: none;
    padding-bottom: 0
}

.p-saunaSpecTable_mark,
.p-saunaSpecTable_note,
.p-saunaSpecTable_th {
    border-bottom: 1px solid #f1f1f1;
    box-sizing: border-box;
    vertical-align: middle;
    padding: 20px 0
}

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

    .p-saunaSpecTable_mark,
    .p-saunaSpecTable_note,
    .p-saunaSpecTable_th {
        padding: 12px 0
    }
}

.p-saunaSpecTable_th {
    width: 300px
}

@media only screen and (max-width:799px) {
    .p-saunaSpecTable_th {
        width: 155px
    }
}

.p-saunaSpecTable_th span {
    font-size: 13px
}

@media only screen and (max-width:799px) {
    .p-saunaSpecTable_th span {
        position: relative;
        left: -5px;
        display: block;
        font-size: 8px
    }
}

.p-saunaSpecTable_th br+span {
    position: relative;
    top: -5px;
    left: -5px
}

@media only screen and (max-width:799px) {
    .p-saunaSpecTable_th br+span {
        top: 0
    }
}

.p-saunaSpecTable_name {
    position: relative;
    box-sizing: border-box;
    padding-right: 20px;
    padding-left: 50px
}

@media only screen and (max-width:799px) {
    .p-saunaSpecTable_name {
        font-size: 13px;
        line-height: 1.4;
        padding-right: 15px;
        padding-left: 35px
    }
}

.p-saunaSpecTable_name:before {
    position: absolute;
    top: -20px;
    left: 0;
    font-size: 44px;
    color: #ea4c89
}

@media only screen and (max-width:799px) {
    .p-saunaSpecTable_name:before {
        top: -6px;
        font-size: 26px
    }
}

.p-saunaSpecTable_name--loyly:before {
    content: ""
}

.p-saunaSpecTable_name--autoloyly:before {
    content: ""
}

.p-saunaSpecTable_name--selfloyly:before {
    top: -25px
}

@media only screen and (max-width:799px) {
    .p-saunaSpecTable_name--selfloyly:before {
        top: -10px
    }
}

.p-saunaSpecTable_name--selfloyly:before {
    content: ""
}

.p-saunaSpecTable_name--gaikiyoku:before {
    content: "";
    top: -22px
}

@media only screen and (max-width:799px) {
    .p-saunaSpecTable_name--gaikiyoku:before {
        top: -8px
    }
}

.p-saunaSpecTable_name--chair:before {
    content: ""
}

.p-saunaSpecTable_name--ionwater:before {
    position: absolute;
    top: -3px;
    left: 3px;
    background-image: url("../img/ionwater/logo_ionwater.png");
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: contain;
    display: block;
    content: "";
    width: 38px;
    height: 32px
}

@media only screen and (max-width:799px) {
    .p-saunaSpecTable_name--ionwater:before {
        top: 0;
        left: 0;
        width: 28px;
        height: 22px
    }
}

.p-saunaSpecTable_mark {
    position: relative;
    width: 52px;
    padding-right: 30px
}

@media only screen and (max-width:799px) {
    .p-saunaSpecTable_mark {
        width: 30px;
        padding-right: 20px
    }
}

.p-saunaSpecTable_mark img {
    width: 28px;
    height: 28px
}

@media only screen and (max-width:799px) {
    .p-saunaSpecTable_mark img {
        width: 18px;
        height: 18px
    }
}

.p-saunaSpecTable_mark--q div:after {
    display: block;
    box-sizing: border-box;
    content: "?";
    font-family: Montserrat;
    font-size: 35px;
    color: #888
}

@media only screen and (max-width:799px) {
    .p-saunaSpecTable_mark--q div:after {
        font-size: 20px
    }
}

.p-saunaSpecTable_mark div {
    position: relative;
    background: #f5f5f5;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px
}

@media only screen and (max-width:799px) {
    .p-saunaSpecTable_mark div {
        width: 30px;
        height: 30px
    }
}

.p-saunaSpecTable_mark div:after {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.p-saunaSpecTable_note {
    font-size: 14px;
    vertical-align: middle
}

@media only screen and (max-width:799px) {
    .p-saunaSpecTable_note {
        font-size: 12px;
        line-height: 1.4
    }
}

.p-saunaSpecDetail {
    margin: 0 0 55px
}

.p-saunaSpecDetail .c-tableSpec {
    margin: 0 0 40px
}

.p-saunaSpecDetailItem {
    margin-bottom: 40px
}

@media only screen and (max-width:799px) {
    .p-saunaSpecDetailItem {
        margin-bottom: 40px
    }
}

.p-saunaSpecDetailItem:last-of-type {
    margin-bottom: 0
}

.p-saunaSpecList {
    border: 1px solid #ddd;
    border-right: none;
    border-bottom: none;
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 40px
}

.p-saunaSpecList_list {
    border-right: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    display: flex;
    flex-wrap: wrap;
    box-sizing: border-box;
    font-size: 14px;
    list-style: none;
    flex-basis: 25%
}

@media only screen and (max-width:799px) {
    .p-saunaSpecList_list {
        flex-basis: 50%
    }
}

.p-saunaSpecList_key {
    align-items: center;
    box-sizing: border-box;
    line-height: 1.4;
    padding: 4px 10px;
    flex-basis: 81%
}

.p-saunaSpecList_key>span {
    display: block;
    font-size: .8em;
    margin-left: -3px
}

.p-saunaSpecList_value {
    border-left: 1px solid #ddd;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    font-weight: 700;
    text-align: center;
    flex-basis: 19%
}

.p-saunaSpecNot {
    position: absolute;
    top: 0;
    left: 0;
    background: hsla(0, 0%, 100%, .9);
    z-index: 1;
    text-align: center;
    width: 100%;
    height: 90%;
    padding: 30px 0
}

.p-saunaSpecNot_content {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.p-saunaSpecNot_character {
    margin-bottom: 10px
}

.p-saunaSpecNot_character img {
    width: 130px;
    height: auto
}

.p-saunaSpecNot_comment {
    font-size: 18px;
    font-weight: 700
}

.p-saunaSpecNot_recruit {
    display: block;
    font-size: 40px;
    color: #ea4c89;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .p-saunaSpecNot_recruit {
        font-size: 30px
    }
}

@media only screen and (max-width:799px) {
    .p-saunaSpecNot .c-button a {
        width: 210px;
        margin: auto;
        padding: 14px 0
    }
}

.p-saunaItem {
    position: relative;
    border-bottom: 1px solid #eee;
    background: #fff;
    z-index: 1;
    padding: 20px 0
}

@media only screen and (max-width:799px) {
    .p-saunaItem {
        padding: 20px
    }
}

.p-saunaItem.p-saunaItem--grid {
    border-bottom: 0;
    border-radius: 12px;
    box-sizing: border-box;
    overflow: hidden;
    width: calc(25% - 10px);
    margin: 0 10px 10px 0
}

@media only screen and (max-width:799px) {
    .p-saunaItem.p-saunaItem--grid {
        border-radius: 0;
        width: 280px
    }
}

.p-saunaItem.p-saunaItem--grid>a {
    box-sizing: border-box;
    margin: auto;
    padding: 0
}

@media only screen and (max-width:799px) {
    .p-saunaItem.p-saunaItem--grid>a {
        border: 1px solid #f3f3f3;
        border-radius: 12px;
        overflow: hidden
    }
}

.p-saunaItem:last-of-type {
    border-bottom: none
}

.p-saunaItem>a {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    z-index: 1;
    text-decoration: none;
    width: 100%;
    height: 100%;
    cursor: pointer;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: opacity transform height
}

@media only screen and (max-width:799px) {
    .p-saunaItem>a {
        background: none;
        box-sizing: border-box;
        margin-left: 0
    }
}

.p-saunaItem--infowindow {
    border-bottom: none;
    font-family: Noto Sans Japanese, ヒラギノ角ゴ Pro W3, Hiragino Kaku Gothic Pro, メイリオ, Meiryo, ＭＳ Ｐゴシック, Osaka, sans-serif;
    overflow: hidden;
    padding: 20px
}

.p-saunaItem--infowindow:hover {
    border-bottom: none
}

.p-saunaItem--infowindow a {
    position: relative
}

.p-saunaItem--infowindow a:before {
    position: absolute;
    top: 0;
    right: 30px;
    bottom: 0;
    border-radius: 50%;
    background: #ea4c89;
    display: none;
    content: "";
    opacity: 0;
    width: 60px;
    height: 60px;
    margin: auto;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: opacity transform height;
    -webkit-transform: translateX(30px);
    transform: translateX(30px)
}

@media only screen and (max-width:799px) {
    .p-saunaItem--infowindow a:before {
        right: 50px;
        opacity: 1;
        visibility: visible;
        width: 30px;
        height: 30px;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

.p-saunaItem--infowindow a:after {
    position: absolute;
    top: 50%;
    right: 40px;
    font-size: 20px;
    color: #fff;
    opacity: 0;
    margin-top: -10px;
    transition-delay: .2s;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: opacity transform height;
    -webkit-transform: translate(-50%);
    transform: translate(-50%);
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px)
}

@media only screen and (max-width:799px) {
    .p-saunaItem--infowindow a:after {
        right: 58px;
        font-size: 13px;
        opacity: 1;
        visibility: visible;
        margin-top: -7px;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

.desktop .p-saunaItem--infowindow>a:hover {
    cursor: pointer;
    box-shadow: none;
    -webkit-transform: translateY(0);
    transform: translateY(0)
}

.desktop .p-saunaItem--infowindow>a:hover:before {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0)
}

.desktop .p-saunaItem--infowindow>a:hover:after {
    opacity: 1;
    -webkit-transform: translate(-50%);
    transform: translate(-50%)
}

.p-saunaItem--infowindow .p-saunaItemInfoHeader {
    margin-bottom: 10px
}

.p-saunaItem--infowindow .p-saunaItemInfoHeader .p-saunaItemInfoHeader_content {
    display: flex;
    align-items: center
}

.p-saunaItem--infowindow .p-saunaItemInfoHeader .p-saunaItemInfoHeader_content .p-saunaItem_image {
    position: relative;
    top: 0;
    width: 65px;
    height: 49px;
    min-height: 49px;
    margin: 0 10px 0 0;
    flex-shrink: 0
}

@media only screen and (max-width:799px) {
    .p-saunaItem--infowindow .p-saunaItemInfoHeader .p-saunaItemInfoHeader_content .p-saunaItem_image {
        margin-right: 10px
    }
}

.p-saunaItem--infowindow .p-saunaItemInfoHeader .p-saunaItemInfoHeader_content .p-saunaItem_image:before {
    padding-top: 75%
}

.p-saunaItem--infowindow .p-saunaItemInfoHeader .p-saunaItemInfoHeader_content .p-saunaItemInfoHeader_body {
    padding-right: 20px
}

.p-saunaItem--infowindow .p-saunaItemInfoHeader .p-saunaItemInfoHeader_content .p-saunaItemName {
    position: relative;
    top: -5px;
    font-size: 16px;
    line-height: 1.25;
    white-space: normal;
    text-overflow: inherit;
    width: auto;
    margin-bottom: 0
}

@media only screen and (max-width:799px) {
    .p-saunaItem--infowindow .p-saunaItemInfoHeader .p-saunaItemInfoHeader_content .p-saunaItemName {
        font-size: 16px
    }
}

.p-saunaItem--infowindow .p-saunaItemInfoHeader .p-saunaItemInfoHeader_content .p-saunaItem_address {
    font-size: 10px;
    line-height: 1.4;
    white-space: normal;
    text-overflow: inherit;
    width: 100%;
    margin-bottom: 0
}

@media only screen and (max-width:799px) {
    .p-saunaItem--infowindow .p-saunaItem_header {
        margin-bottom: 15px
    }
}

.p-saunaItem--infowindow .p-saunaItem_content {
    display: block
}

@media only screen and (max-width:799px) {
    .p-saunaItem--infowindow .p-saunaItem_content {
        display: block
    }
}

.p-saunaItem--infowindow .p-saunaItem_content .p-saunaItem_data {
    top: 0;
    width: 100%
}

.p-saunaItem--infowindow .p-saunaItem_content .p-saunaItemSpec_headline {
    position: relative;
    top: 0;
    border-radius: 7px;
    font-size: 8px;
    line-height: 14px;
    text-align: center;
    width: 14px;
    height: 14px;
    margin-right: 7px;
    padding: 0
}

.p-saunaItem--infowindow .p-saunaItem_content .p-saunaItemSpec_content {
    margin-bottom: 5px
}

.p-saunaItem--infowindow .p-saunaItem_content .p-saunaItemSpec_icon {
    top: 1px;
    font-size: 8px;
    line-height: 14px;
    width: 14px;
    height: 14px;
    margin-right: 2px
}

.p-saunaItem--infowindow .p-saunaItem_content .p-saunaItemSpec_value {
    top: 2px
}

.p-saunaItem--infowindow .p-saunaItem_content .p-saunaItemSpec_item {
    font-size: 12px;
    margin-right: 5px;
    margin-bottom: 0
}

.p-saunaItem--infowindow .p-saunaItem_content .p-saunaItem_information {
    font-size: 10px;
    line-height: 1.5;
    margin-bottom: 5px
}

.p-saunaItem--infowindow .p-saunaItem_content .p-saunaItem_actions {
    position: relative
}

.p-saunaItem--infowindow .p-saunaItem_content .p-saunaItem_action {
    font-size: 10px;
    margin-right: 10px
}

.p-saunaItem--infowindow .p-saunaItem_content .p-saunaItem_number {
    font-size: 10px
}

@media only screen and (max-width:799px) {
    .p-saunaItem--infowindow .p-saunaItemSpec_content {
        margin-bottom: 5px
    }
}

@media only screen and (max-width:799px) {
    .p-saunaItem--infowindow .p-saunaItem_data {
        width: 100%
    }
}

.p-saunaItem--infowindow .p-saunaItem_information span {
    font-weight: 700;
    margin-left: 10px
}

.p-saunaItem--infowindow .p-saunaItem_button {
    text-align: center;
    margin: 20px 0 0
}

.p-saunaItem--infowindow .p-saunaItem_button button {
    border: none;
    border-radius: 6px;
    background: #ea4c89;
    display: block;
    font-size: 14px;
    font-weight: 700;
    color: #fff;
    pointer-events: all;
    width: 100%;
    margin-bottom: 5px;
    padding: 15px 0;
    cursor: pointer
}

.p-saunaItem--infowindow .p-saunaItem_button a {
    display: block;
    font-size: 14px;
    padding: 10px 0
}

.p-saunaItem--infowindow .p-saunaItem_button a:hover {
    text-decoration: none
}

.p-saunaItem_header {
    position: relative;
    /*left: 234px;
    width: 76.19048%*/
    width: 100%;
}

@media only screen and (max-width:799px) {
    .p-saunaItem_header {
        left: 0;
        width: 100%
    }
}

.is-mini .p-saunaItem_header {
    left: 220px;
    width: 380px
}

@media only screen and (max-width:799px) {
    .is-mini .p-saunaItem_header {
        left: 0;
        width: 100%
    }
}

.p-saunaItem--grid .p-saunaItem_header {
    left: 0;
    width: 100%
}

.p-saunaItem_distance {
    font-size: 10px;
    font-weight: 400;
    line-height: 1;
    color: #ef0d0d;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .p-saunaItem_distance {
        margin-bottom: 3px
    }
}

.p-saunaItem--grid .p-saunaItem_distance {
    margin-bottom: 5px
}

.p-saunaItem_content {
    display: flex;
    width: 100%
}

.p-saunaItem--grid .p-saunaItem_content {
    display: block;
    box-sizing: border-box;
    padding: 20px
}

.p-saunaItem_image {
    position: relative;
    top: -65px;
    width: 20.2381%;
    min-height: 116px;
    margin: 0 30px -65px 0
}

@media only screen and (max-width:799px) {
    .p-saunaItem_image {
        top: 0;
        width: 38%;
        min-height: 58px;
        margin: 0 15px 0 0
    }
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .p-saunaItem_image {
        width: 38%;
        margin-right: 10px
    }
}

.p-saunaItem--grid .p-saunaItem_image {
    top: 0;
    width: 100%;
    margin: 0
}

.is-mini .p-saunaItem_image {
    width: 190px;
    min-width: 190px
}

@media only screen and (max-width:799px) {
    .is-mini .p-saunaItem_image {
        width: 38%;
        min-width: auto
    }
}

.p-saunaItem_image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

@media only screen and (max-width:799px) {
    .p-saunaItem_image img {
        -o-object-fit: contain;
        object-fit: contain;
        -o-object-position: top;
        object-position: top
    }
}

.p-goodsDetail .p-saunaItem_image img {
    height: 120px
}

.p-saunaItem_image:before {
    display: block;
    content: "";
    padding-top: 75%
}

.p-saunaItem_data {
    position: relative;
    top: -6px;
    width: 76.19048%
}

@media only screen and (max-width:799px) {
    .p-saunaItem_data {
        width: 62%
    }
}

@media only screen and (max-width:799px) {
    .p-goodsDetail .p-saunaItem_data {
        top: -3px
    }
}

.p-saunaItem--grid .p-saunaItem_data {
    top: 0;
    width: 100%
}

.p-saunaItem--grid .p-saunaItem_name {
    height: 3.1em
}

@media only screen and (max-width:799px) {
    .p-saunaItem--grid .p-saunaItem_name {
        line-height: 1.5;
        margin-bottom: 5px
    }
}

.p-saunaItem_name.is-sponsor {
    position: relative;
    display: flex
}

.p-saunaItem_name.is-sponsor:after {
    position: absolute;
    position: relative;
    background: url("../img/global/tonttu.svg");
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    content: "";
    width: 22px;
    height: 22px;
    margin-left: 8px
}

@media only screen and (max-width:799px) {
    .p-saunaItem_name.is-sponsor:after {
        top: 4px;
        width: 18px;
        height: 18px;
        margin-left: 8px
    }
}

.p-saunaItemName {
    display: flex;
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
    text-overflow: ellipsis;
    width: 640px;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .p-saunaItemName {
        display: block;
        font-size: 18px;
        line-height: 1.4;
        white-space: normal;
        text-overflow: inherit;
        width: 100%;
        margin-bottom: 5px
    }
}

.is-mini .p-saunaItemName {
    width: 380px
}

@media only screen and (max-width:799px) {
    .is-mini .p-saunaItemName {
        width: 100%
    }
}

.p-saunaItemName h3 {
    display: inline-block
}

.is-mini .p-saunaItemName h3 {
    display: block;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    width: auto
}

.p-saunaItem--grid .p-saunaItemName {
    line-height: 1.5;
    white-space: normal;
    text-overflow: inherit;
    width: auto
}

.p-saunaItemName_header,
.p-saunaItemName_tags {
    display: flex
}

.p-saunaItemName_tags .p-saunaItemName_shutdown+.p-saunaItemName_gender {
    margin-left: -5px
}

.p-saunaItemName_gender {
    border: 1px solid #222;
    border-radius: 6px;
    display: block;
    font-size: 12px;
    line-height: 1;
    margin-right: 10px;
    padding: 4px 6px
}

@media only screen and (max-width:799px) {
    .p-saunaItemName_gender {
        font-size: 8px;
        text-align: center;
        margin-bottom: 4px;
        padding-right: 4px;
        padding-left: 4px
    }
}

.p-saunaItemName_shutdown {
    border: 1px solid #ef0d0d;
    border-radius: 6px;
    display: block;
    font-size: 12px;
    line-height: 1;
    color: #ef0d0d;
    margin-right: 10px;
    padding: 4px 6px
}

@media only screen and (max-width:799px) {
    .p-saunaItemName_shutdown {
        font-size: 8px;
        text-align: center;
        margin-bottom: 4px;
        padding-right: 4px;
        padding-left: 4px
    }
}

.p-saunaItem_address {
    display: block;
    font-size: 14px;
    font-style: normal;
    line-height: 1;
    color: #888;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    width: 640px;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .p-saunaItem_address {
        font-size: 10px;
        line-height: 1.4;
        white-space: normal;
        text-overflow: inherit;
        width: 100%;
        margin-bottom: 10px
    }
}

.p-saunaItem_meta {
    position: relative;
    line-height: 1;
    margin-bottom: -7px
}

.p-saunaItem_informations {
    margin-bottom: 5px
}

@media only screen and (max-width:799px) {
    .p-saunaItem_informations {
        margin-bottom: 0
    }
}

.p-goodsDetail .p-saunaItem_informations {
    line-height: 1.4;
    width: calc(100% - 180px)
}

@media only screen and (max-width:799px) {
    .p-goodsDetail .p-saunaItem_informations {
        width: 100%
    }
}

.p-saunaItem_information {
    display: inline-block;
    font-size: 12px;
    margin: 0 10px 0 0
}

@media only screen and (max-width:799px) {
    .p-saunaItem_information {
        font-size: 10px;
        line-height: 1.5;
        margin-bottom: 5px
    }
}

.p-saunaItem_information.is-ionwater img {
    width: 18px;
    margin-right: 5px
}

.p-saunaItem_actions {
    position: absolute;
    top: 0;
    right: 0
}

@media only screen and (max-width:799px) {
    .p-saunaItem_actions {
        position: relative
    }
}

.p-saunaItem--grid .p-saunaItem_actions {
    position: relative
}

.p-saunaItem_action {
    display: inline-block;
    font-size: 12px;
    margin: 0 15px 0 0;
    list-style: none
}

@media only screen and (max-width:799px) {
    .p-saunaItem_action {
        font-size: 10px;
        margin-right: 10px
    }
}

.p-saunaItem--grid .p-saunaItem_action {
    position: relative
}

.p-saunaItem_number {
    border: 1px solid #ef0d0d;
    border-radius: 8px;
    display: inline-block;
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    color: #ef0d0d;
    text-align: center;
    min-width: 20px;
    margin-left: 5px;
    padding: 2px 4px
}

@media only screen and (max-width:799px) {
    .p-saunaItem_number {
        font-size: 10px
    }
}

.p-saunaItem_attention {
    font-size: 14px;
    line-height: 1;
    margin-top: 20px
}

.p-saunaItem_attention:before {
    content: ""
}

@media only screen and (max-width:799px) {
    .p-saunaItem_attention {
        font-size: 10px;
        margin-top: 10px;
        padding: 0
    }
}

.p-saunaItem_attention:before {
    position: relative;
    top: 4px;
    font-size: 18px;
    color: #ef0d0d;
    margin: 0 8px 0 0
}

@media only screen and (max-width:799px) {
    .p-saunaItem_attention:before {
        top: 2px;
        font-size: 11px;
        margin: 0 5px 0 0
    }
}

.p-saunaItemSpec {
    margin: 0 0 5px
}

@media only screen and (max-width:799px) {
    .p-saunaItemSpec {
        margin-bottom: 5px
    }
}

.p-goodsDetail .p-saunaItemSpec {
    margin-top: -5px;
    margin-bottom: 5px
}

@media only screen and (max-width:799px) {
    .p-goodsDetail .p-saunaItemSpec {
        margin-top: auto;
        margin-bottom: auto
    }
}

.p-saunaItemSpec_content {
    display: inline-block;
    font-size: 0;
    margin: 0 10px 0 0
}

@media only screen and (max-width:799px) {
    .p-saunaItemSpec_content {
        margin-right: 0
    }
}

.p-saunaItemSpec_content:last-of-type {
    margin-right: 0
}

.p-goodsDetail .p-saunaItemSpec_content {
    display: block;
    margin-bottom: -5px
}

@media only screen and (max-width:799px) {
    .p-goodsDetail .p-saunaItemSpec_content {
        margin-bottom: 0
    }
}

.p-saunaItemSpec_headline {
    border-radius: 6px;
    background: #ea4c89;
    display: inline-block;
    font-size: 11px;
    font-weight: 700;
    line-height: 18px;
    color: #fff;
    height: 18px;
    margin: 0 10px 0 0;
    padding: 0 14px
}

@media only screen and (max-width:799px) {
    .p-saunaItemSpec_headline {
        position: relative;
        top: 0;
        border-radius: 7px;
        font-size: 8px;
        line-height: 14px;
        text-align: center;
        width: 14px;
        height: 14px;
        margin-right: 7px;
        padding: 0
    }
}

.p-saunaItem--grid .p-saunaItemSpec_headline {
    position: relative;
    top: -1px;
    font-size: 10px;
    line-height: 14px;
    text-align: center;
    width: 14px;
    height: 14px;
    margin-right: 7px;
    padding: 1px 2px
}

.p-saunaItemSpec_content--unisex .p-saunaItemSpec_headline {
    background: #555
}

.p-saunaItemSpec_content--man .p-saunaItemSpec_headline {
    background: #ea4c89
}

.p-saunaItemSpec_content--woman .p-saunaItemSpec_headline {
    background: #ef0d0d
}

.p-saunaItemSpec_items {
    position: relative;
    display: inline-block
}

@media only screen and (max-width:799px) {
    .p-saunaItemSpec_items {
        top: -1px
    }
}

.p-saunaItemSpec_item {
    display: inline-block;
    font-size: 14px;
    margin: 0 15px 5px 0;
    list-style: none
}

@media only screen and (max-width:799px) {
    .p-saunaItemSpec_item {
        font-size: 12px;
        margin-right: 5px;
        margin-bottom: 0
    }
}

.p-saunaItem--grid .p-saunaItemSpec_item {
    font-size: 12px;
    margin-right: 10px;
    margin-bottom: 0
}

.p-saunaItemSpec_item:last-of-type {
    margin-right: 0
}

.p-saunaItemSpec_icon {
    position: relative;
    border-radius: 50%;
    background: #888;
    display: inline-block;
    box-sizing: border-box;
    font-size: 10px;
    font-weight: 700;
    line-height: 18px;
    color: #fff;
    text-align: center;
    width: 18px;
    height: 18px;
    margin-right: 5px
}

@media only screen and (max-width:799px) {
    .p-saunaItemSpec_icon {
        top: 1px;
        font-size: 8px;
        line-height: 14px;
        width: 14px;
        height: 14px;
        margin-right: 2px
    }
}

.p-saunaItem--grid .p-saunaItemSpec_icon {
    top: -1px;
    font-size: 8px;
    line-height: 14px;
    width: 14px;
    height: 14px;
    margin-right: 2px
}

.p-saunaItemSpec_item--mizuburo .p-saunaItemSpec_icon {
    top: 1px;
    line-height: 17px
}

@media only screen and (max-width:799px) {
    .p-saunaItemSpec_item--mizuburo .p-saunaItemSpec_icon {
        line-height: 14px
    }
}

.p-saunaItem--grid .p-saunaItemSpec_item--mizuburo .p-saunaItemSpec_icon {
    line-height: 14px
}

.p-saunaItemSpec_item--loyly .p-saunaItemSpec_icon {
    top: 1px;
    line-height: 17px
}

@media only screen and (max-width:799px) {
    .p-saunaItemSpec_item--loyly .p-saunaItemSpec_icon {
        line-height: 14px
    }
}

.p-saunaItem--grid .p-saunaItemSpec_item--loyly .p-saunaItemSpec_icon {
    line-height: 14px
}

.p-saunaItemSpec_value {
    position: relative;
    top: 1px
}

@media only screen and (max-width:799px) {
    .p-saunaItemSpec_value {
        top: 2px
    }
}

.p-saunaItemSpec_value>img {
    position: relative;
    top: -4px;
    width: 14px;
    height: auto
}

@media only screen and (max-width:799px) {
    .p-saunaItemSpec_value>img {
        top: -3px;
        width: 12px
    }
}

.p-saunaItem--grid .p-saunaItemSpec_value>img {
    width: 12px
}

.p-saunaItemRakuten {
    position: relative;
    display: flex;
    align-items: center;
    z-index: 1;
    margin-top: 20px
}

@media only screen and (max-width:799px) {
    .p-saunaItemRakuten {
        position: relative;
        bottom: 0;
        justify-content: flex-end;
        margin: 15px 0 0
    }
}

@media only screen and (max-width:799px) {
    .p-saunaItemRakuten_button {
        width: 100%
    }
}

.p-saunaItemRakuten_button a {
    border: 1px solid transparent;
    border-radius: 8px;
    background: #f7f7f7;
    display: block;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    text-decoration: none;
    margin-left: -1px;
    padding: 10px 20px;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: border;
    flex-flow: wrap
}

@media only screen and (max-width:799px) {
    .p-saunaItemRakuten_button a {
        border: none;
        min-height: 38px;
        margin-left: 0;
        padding: 8px 10px
    }
}

.desctop .p-saunaItemRakuten_button a:hover {
    border-color: #ea4c89;
    text-decoration: none;
    opacity: 1;
    cursor: pointer
}

.p-saunaItemRakuten_goto {
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    color: #ea4c89;
    letter-spacing: -.02em;
    margin-right: 10px
}

@media only screen and (max-width:799px) {
    .p-saunaItemRakuten_goto {
        display: block;
        font-size: 10px;
        margin-bottom: 5px
    }
}

.p-saunaItemRakuten_rakuten {
    display: inline-block;
    margin-right: 10px
}

.p-saunaItemRakuten_rakuten img {
    position: relative;
    top: 2px;
    display: block;
    width: auto;
    height: 12px
}

.p-saunaItemRakuten_reserve {
    font-size: 14px;
    font-weight: 700;
    line-height: 1
}

.p-saunaItemRakuten_reserve:after {
    content: ""
}

@media only screen and (max-width:799px) {
    .p-saunaItemRakuten_reserve {
        display: block;
        font-size: 12px
    }
}

.p-saunaItemRakuten_reserve:after {
    font-size: 10px;
    font-weight: 700;
    color: #ea4c89;
    margin-left: 8px
}

@media only screen and (max-width:799px) {
    .p-saunaItemRakuten_reserve:after {
        font-size: 9px;
        margin-left: 8px
    }
}

.p-saunaList {
    margin-bottom: 35px;
    border-bottom: 1px solid #eee
}

@media only screen and (max-width:799px) {
    .p-saunaList {
        margin-top: 0;
        width: calc(100% + 40px);
        margin-left: -20px
    }
}

.p-saunaList.has-border {
    border-top: 1px solid #eee
}

.p-saunaList--grid {
    width: calc(100% + 10px)
}

@media only screen and (max-width:799px) {
    .p-saunaList--grid {
        width: 100%;
        -webkit-overflow-scrolling: touch;
        overflow-x: scroll;
        overflow-y: hidden;
        display: block;
        margin-left: 0;
        border-bottom: 0;
        margin-bottom: 0
    }
}

.p-saunaList--grid .p-saunaList_content {
    display: flex;
    flex-wrap: wrap
}

.p-saunaCard {
    position: relative;
    text-align: left;
    width: 352px;
    margin: 0 21px 40px 0
}

@media only screen and (max-width:799px) {
    .p-saunaCard {
        width: 100%;
        margin: 0
    }
}

@media only screen and (max-width:799px) {
    .p-saunaCard:last-of-type a {
        border-bottom: none
    }
}

.p-saunaCard:nth-of-type(3n) {
    margin-right: 0
}

.p-saunaCard a {
    display: block
}

@media only screen and (max-width:799px) {
    .p-saunaCard a {
        border-bottom: 1px solid #eee;
        display: flex;
        padding: 20px 0
    }
}

.p-saunaCard a:hover {
    text-decoration: none
}

.p-saunaCard a:hover img {
    opacity: .7
}

.p-saunaCard_image {
    border-radius: 6px;
    overflow: hidden;
    margin-bottom: 15px
}

.p-saunaCard_image img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media only screen and (max-width:799px) {
    .p-saunaCard_image {
        width: 40%;
        margin-bottom: 0
    }
}

.p-saunaCard_image img {
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: all
}

@media only screen and (max-width:799px) {
    .p-saunaCard_image img {
        width: 100%;
        height: auto
    }
}

@media only screen and (max-width:799px) {
    .p-saunaCard_body {
        box-sizing: border-box;
        width: 60%;
        margin-top: -4px;
        padding: 0 0 0 15px
    }
}

.p-saunaCard_title {
    display: block;
    font-size: 18px;
    margin-bottom: 5px
}

@media only screen and (max-width:799px) {
    .p-saunaCard_title {
        font-size: 16px;
        line-height: 1.5;
        width: 100%
    }
}

@media only screen and (max-width:799px) {
    .p-saunaCard_title br {
        display: none
    }
}

.p-saunaCard_writer {
    font-size: 14px
}

.p-saunaCard_date {
    font-size: 12px
}

.p-saunaCardList {
    position: relative;
    display: flex;
    flex-wrap: wrap
}

@media only screen and (max-width:799px) {
    .p-saunaCardList {
        display: block;
        padding: 0 20px
    }
}

.p-saunaCardList.has-border {
    border-top: 1px solid #eee
}

.p-postCard {
    position: relative;
    border-bottom: 1px solid #eee;
    z-index: 2;
    overflow: hidden;
    margin-bottom: 0
}

.is-cardView .p-postCard {
    background: #fff;
    box-sizing: border-box;
    width: 33.3333%;
    height: 350px;
    margin-right: 2px;
    padding: 10px 20px
}

.p-postCard a {
    text-decoration: none
}

.p-postCard.is-readmore {
    overflow: hidden;
    height: 350px
}

.p-postCard.is-facilityDetail.is-readmore {
    height: 230px
}

@media only screen and (max-width:799px) {
    .p-postCard.is-facilityDetail.is-readmore {
        height: 180px
    }
}

.p-postCard.is-read {
    height: auto
}

.p-postCard.is-detail {
    overflow: inherit
}

@media only screen and (max-width:799px) {
    .p-postCard.is-detail {
        border-bottom: none
    }
}

.p-postCard_inner {
    position: relative;
    display: flex;
    justify-content: space-between;
    box-sizing: border-box;
    width: 100%;
    padding: 20px 40px 50px;
    cursor: pointer
}

@media only screen and (max-width:799px) {
    .p-postCard_inner {
        padding: 15px 20px 45px
    }
}

.p-saunaDetailPost .p-postCard_inner {
    padding-right: 0;
    padding-left: 0
}

@media only screen and (max-width:799px) {
    .p-saunaDetailPost .p-postCard_inner {
        padding-right: 20px;
        padding-left: 20px
    }
}

.is-noAction .p-postCard_inner {
    padding-bottom: 20px
}

@media only screen and (max-width:799px) {
    .is-noAction .p-postCard_inner {
        padding-bottom: 10px
    }
}

/* 
.desktop .p-postCard_inner:hover {
   background: #f9f9f9
}

.p-postCard_inner:hover+.p-postCard_readmore {
    background: linear-gradient(180deg, hsla(0, 0%, 100%, 0), hsla(0, 0%, 100%, 0) 1%, hsla(0, 0%, 100%, .85) 30%, #f9f9f9 99%)
}

.p-postCard_inner:hover+.p-postCard_readmore+.p-postCardAction {
    background: #f9f9f9
}
*/
.p-postCard_inner:hover .postCardAction {
    background: none
}

.p-postCard_header {
    width: 40px
}

@media only screen and (max-width:799px) {
    .p-postCard_header {
        width: 30px
    }
}

.is-detail .p-postCard_header {
    width: 100%;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .is-detail .p-postCard_header {
        margin-bottom: 15px
    }
}

.p-postCard_icon {
    border-radius: 50%;
    background-image: url("../img/user_default.png");
    background-size: cover;
    width: 100%;
    height: 35px;
    margin: 0 10px 0 0
}

@media only screen and (max-width:799px) {
    .p-postCard_icon {
        height: 30px
    }
}

.p-postCard_icon img {
    border-radius: 50%;
    width: 100%;
    height: auto
}

.p-postCard_official {
    font-size: 15px;
    color: #ea4c89;
    margin-left: 2px
}

.p-postCard_official:before {
    content: "";
    position: relative;
    top: 1px
}

.p-postCard_content {
    position: relative;
    top: -2px;
    box-sizing: border-box;
    width: calc(100% - 55px)
}

@media only screen and (max-width:799px) {
    .p-postCard_content {
        width: calc(100% - 40px)
    }
}

.is-detail .p-postCard_content {
    top: 0;
    width: 100%
}

.p-postCard_body {
    overflow: hidden
}

.p-postCard_text {
    font-size: 16px;
    line-height: 1.65
}

@media only screen and (max-width:799px) {
    .p-postCard_text {
        font-size: 14px;
        line-height: 1.5
    }
}

.p-postCard_image {
    margin-top: 15px
}

.is-detail .p-postCard_image {
    margin-top: 30px
}

@media only screen and (max-width:799px) {
    .is-detail .p-postCard_image {
        margin-top: 20px
    }
}


.p-postCard_image img {
    /*
    max-width: 250px;
    height: auto;
    max-height: 250px
    */
    width: 90%;
    height: auto
}

.is-detail .p-postCard_image img {
    max-width: 500px;
    max-height: 500px
}

@media only screen and (max-width:799px) {
    .is-detail .p-postCard_image img {
        max-width: 100%;
        max-height: 100%
    }
}

.p-postCard_action {
    position: absolute;
    bottom: 20px;
    left: 50px;
    display: flex;
    justify-content: space-between;
    box-sizing: border-box;
    color: #ea4c89;
    color: #333;
    opacity: .4;
    width: calc(100% - 80px);
    margin-top: 20px
}

@media only screen and (max-width:799px) {
    .p-postCard_action {
        bottom: 15px;
        left: 60px
    }
}

.is-detail .p-postCard_action {
    position: relative;
    bottom: 0;
    left: 0;
    width: 100%;
    margin: 50px 0 30px
}

@media only screen and (max-width:799px) {
    .is-detail .p-postCard_action {
        margin: 30px 0 10px
    }
}

.p-postCard_hashtag {
    font-weight: 700
}

.p-postCard_share {
    text-align: center;
    margin: 40px 0
}

@media only screen and (max-width:799px) {
    .p-postCard_share {
        margin: 20px 0
    }
}

.p-postCard_comment,
.p-postCard_like {
    font-size: 13px
}

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

    .p-postCard_comment,
    .p-postCard_like {
        font-size: 12px
    }
}

.p-postCard_name {
    margin-bottom: 0
}

.p-postCard_facility {
    border-radius: 4px;
    display: inline-block;
    font-size: 16px;
    font-weight: 700;
    color: #ea4c89;
    margin-bottom: 4px
}

@media only screen and (max-width:799px) {
    .p-postCard_facility {
        font-size: 14px;
        margin-bottom: 4px
    }
}

.p-postCard_facility a {
    color: #ea4c89
}

.p-postCard_address {
    position: relative;
    top: -2px;
    border-radius: 4px;
    display: inline-block;
    font-size: 12px;
    font-weight: 700;
    color: #888;
    margin-left: 3px
}

@media only screen and (max-width:799px) {
    .p-postCard_address {
        font-size: 10px
    }
}

.p-postCard_checkin {
    font-size: 14px
}

.p-postCard_checkin:before {
    content: "";
    position: relative;
    top: 2px;
    margin-right: 3px
}

.p-postCard_checkin span {
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 10px;
    margin-left: 5px;
    padding: 2px 4px
}

.p-postCard_readmore {
    position: absolute;
    bottom: 40px;
    left: 50px;
    background: linear-gradient(180deg, hsla(0, 0%, 100%, 0) 0, hsla(0, 0%, 100%, 0) 1%, #fff 99%);
    background: linear-gradient(180deg, hsla(0, 0%, 100%, 0) 0, hsla(0, 0%, 100%, 0) 1%, hsla(0, 0%, 100%, .85) 30%, #fff 99%);
    display: none;
    font-size: 12px;
    font-weight: 700;
    z-index: 1;
    text-align: center;
    visibility: visible;
    width: calc(100% - 35px);
    padding: 25px 0 15px;
    transition-timing-function: ease-out;
    transition-duration: .35s;
    transition-property: opacity
}

@media only screen and (max-width:799px) {
    .p-postCard_readmore {
        left: 20px;
        bottom: 34px;
        width: calc(100% - 40px);
        padding: 15px 0 10px
    }
}

.p-postCard_readmore span {
    position: relative;
    top: -5px;
    border-radius: 20px;
    background: #ea4c89;
    background: #333;
    font-size: 12px;
    color: #fff;
    text-align: right;
    padding: 6px 12px;
    cursor: pointer
}

.p-postCard_readmore span:after {
    content: ""
}

.p-postCard_readmore span:before {
    position: absolute;
    top: -20px;
    left: -20px;
    display: block;
    content: "";
    opacity: .3;
    width: 140px;
    height: 50px
}

@media only screen and (max-width:799px) {
    .p-postCard_readmore span:before {
        top: -30px;
        left: -60px;
        width: 220px;
        height: 60px
    }
}

.p-postCard_readmore span:after {
    font-size: 8px;
    margin-left: 5px
}

.is-readmore .p-postCard_readmore {
    display: block
}

.is-read .p-postCard_readmore {
    opacity: 0;
    visibility: hidden
}

.p-postCard_wed {
    display: inline-block;
    font-size: 11px;
    margin-top: 5px;
    margin-right: 5px;
    margin-left: 3px
}

@media only screen and (max-width:799px) {
    .p-postCard_wed {
        font-size: 11px
    }
}

.is-detail .p-postCard_wed {
    font: 16px
}

@media only screen and (max-width:799px) {
    .is-detail .p-postCard_wed {
        font-size: 11px
    }
}

.p-postCard_wed a {
    border-radius: 3px;
    line-height: 1;
    color: #ea4c89;
    padding: 1px 3px
}

.p-postCard_tag {
    display: inline-block;
    font-size: 11px;
    margin-top: 5px;
    margin-right: 5px;
    margin-left: 3px
}

@media only screen and (max-width:799px) {
    .p-postCard_tag {
        font-size: 11px
    }
}

.is-detail .p-postCard_tag {
    font: 16px
}

@media only screen and (max-width:799px) {
    .is-detail .p-postCard_tag {
        font-size: 11px
    }
}

.p-postCard_tag a {
    border-radius: 3px;
    line-height: 1;
    color: #ea4c89;
    padding: 1px 3px
}

.p-postCardUser {
    position: relative;
    display: flex;
    align-items: center;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .p-postCardUser {
        margin-bottom: 5px
    }
}

.p-postCardUser_icon {
    position: relative;
    border-radius: 50%;
    background-image: url("../img/user_default.png");
    background-size: cover;
    width: 50px;
    height: 50px;
    margin-right: 10px
}

@media only screen and (max-width:799px) {
    .p-postCardUser_icon {
        overflow: hidden;
        width: 40px;
        height: 40px;
        margin-right: 10px;
        padding-top: 0
    }
}

.p-postCardUser_icon img {
    position: absolute;
    top: 50%;
    left: 50%;
    border-radius: 50%;
    width: 100%;
    height: auto;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

@media only screen and (max-width:799px) {
    .p-postDetail .p-postCardUser_content {
        width: calc(100% - 100px)
    }
}

.p-postCardUser_private {
    border-radius: 4px;
    background: #888;
    display: inline-block;
    font-size: 10px;
    color: #fff;
    margin-right: 5px;
    padding: 1px 3px
}

.p-postCardUser_name {
    display: block;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.25;
    text-align: left;
    margin-bottom: -1px
}

@media only screen and (max-width:799px) {
    .p-postCardUser_name {
        font-size: 14px;
        margin-bottom: -1px
    }
}

.is-detail .p-postCardUser_name {
    font-size: 18px
}

@media only screen and (max-width:799px) {
    .is-detail .p-postCardUser_name {
        font-size: 16px;
        margin-bottom: -3px
    }
}

.p-postCardUser_name a {
    text-decoration: none
}

.p-postCardUser_date {
    display: inline-block;
    font-size: 12px;
    line-height: 1;
    color: #888;
    margin-right: 5px
}

@media only screen and (max-width:799px) {
    .p-postCardUser_date {
        font-size: 10px
    }
}

.is-detail .p-postCardUser_date {
    font-size: 13px
}

@media only screen and (max-width:799px) {
    .is-detail .p-postCardUser_date {
        font-size: 10px
    }
}

.p-postCardUser_dialog {
    position: absolute;
    top: -6px;
    right: 0;
    border-radius: 100%;
    font-size: 14px;
    z-index: 1;
    color: #888;
    text-align: center;
    width: 30px;
    height: 30px;
    cursor: pointer;
    transition-timing-function: ease-out;
    transition-duration: .25s;
    transition-property: all
}

.p-postCardUser_dialog:after {
    content: "";
    content: ""
}

@media only screen and (min-width:1024px) {
    .p-postCardUser_dialog:hover {
        background: #f2f2f2
    }
}

.p-postCardUser_dialog:after {
    position: relative;
    top: 2px
}

.p-postCardUser_counter {
    display: inline-block;
    font-size: 12px;
    line-height: 1;
    color: #888
}

@media only screen and (max-width:799px) {
    .p-postCardUser_counter {
        font-size: 10px
    }
}

.is-detail .p-postCardUser_counter {
    font-size: 13px
}

@media only screen and (max-width:799px) {
    .is-detail .p-postCardUser_counter {
        font-size: 10px
    }
}

.p-postCardUser_tonttu {
    position: relative;
    display: inline-block;
    font-size: 12px;
    font-weight: 700;
    color: #888;
    height: 16px;
    margin-left: 10px;
    padding-left: 20px;
    cursor: pointer
}

.p-postCardUser_tonttu:after {
    content: ""
}

@media only screen and (max-width:799px) {
    .p-postCardUser_tonttu {
        font-size: 10px;
        padding-left: 18px
    }
}

.is-detail .p-postCardUser_tonttu {
    font-size: 13px
}

@media only screen and (max-width:799px) {
    .is-detail .p-postCardUser_tonttu {
        font-size: 10px
    }
}

.p-postCardUser_tonttu:after {
    font-size: 10px;
    margin-left: 10px;
    -webkit-transform: scale(.7);
    transform: scale(.7)
}

@media only screen and (max-width:799px) {
    .p-postCardUser_tonttu:after {
        top: 0;
        right: -10px
    }
}

.p-postCardUser_tonttu img {
    position: absolute;
    top: 3px;
    left: 0;
    width: 12px
}

@media only screen and (max-width:799px) {
    .p-postCardUser_tonttu img {
        width: 10px
    }
}

.is-detail .p-postCardUser_tonttu img {
    top: 3px;
    width: 13px
}

@media only screen and (max-width:799px) {
    .is-detail .p-postCardUser_tonttu img {
        top: 0;
        width: 12px
    }
}

.p-postCardUser_edit {
    position: absolute;
    top: 0;
    right: 0;
    line-height: 36px;
    text-decoration: none;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .25s;
    transition-property: all
}

@media only screen and (max-width:799px) {
    .p-postCardUser_edit {
        line-height: 34px
    }
}

.p-postCardUser_edit a {
    border: 1px solid #ddd;
    border-radius: 6px;
    display: block;
    font-size: 12px;
    text-decoration: none;
    padding: 2px 14px;
    cursor: pointer
}

.p-postCardUser_delete {
    position: relative;
    display: inline-block;
    font-size: 11px;
    line-height: 1;
    margin-left: 5px
}

.p-postCardUser_delete a {
    color: #ef0d0d;
    cursor: pointer
}

.p-postCardSpec {
    font-size: 0;
    margin-top: 20px
}

@media only screen and (max-width:799px) {
    .is-detail .p-postCardSpec {
        margin-top: 10px
    }
}

.p-postCardSpec_list {
    display: inline-block;
    display: flex;
    font-size: 0;
    margin-right: 20px;
    margin-bottom: 5px
}

.p-postCardSpec_list:last-child {
    margin-bottom: 0
}

.p-postCardSpec_set {
    position: relative;
    top: -2px
}

@media only screen and (max-width:799px) {
    .p-postCardSpec_set {
        top: 0
    }
}

.p-postCardSpec_headline {
    border-radius: 8px;
    border-radius: 6px;
    display: inline-block;
    box-sizing: border-box;
    font-size: 12px;
    font-weight: 700;
    line-height: 19px;
    color: #fff;
    text-align: center;
    height: 20px;
    padding: 0 10px
}

@media only screen and (max-width:799px) {
    .p-postCardSpec_headline {
        position: relative;
        top: 1px;
        font-size: 10px;
        line-height: 17px;
        height: 18px
    }
}

.is-man .p-postCardSpec_headline {
    background: #ea4c89
}

.is-woman .p-postCardSpec_headline {
    background: #ef0d0d
}

.is-unisex .p-postCardSpec_headline {
    background: #555
}

.p-postCardSpec_data {
    display: inline-block
}

.p-postCardSpec_icon {
    border-left: 0;
    border-radius: 9px;
    background: #888;
    display: inline-block;
    box-sizing: border-box;
    font-size: 12px;
    font-weight: 700;
    line-height: 18px;
    color: #fff;
    text-align: center;
    width: 18px;
    height: 18px;
    margin: 1px 10px 0
}

@media only screen and (max-width:799px) {
    .p-postCardSpec_icon {
        font-size: 10px;
        margin-top: 0;
        margin-right: 7px;
        margin-left: 7px
    }
}

.p-postCardSpec_temperature {
    display: inline-block;
    font-size: 14px
}

@media only screen and (max-width:799px) {
    .p-postCardSpec_temperature {
        font-size: 12px
    }
}

.p-postCardAction {
    background: #fff;
    display: flex;
    width: 100%;
    margin: 20px 0
}

@media only screen and (max-width:799px) {
    .p-postCardAction {
        margin: 10px 0
    }
}

.is-detail .p-postCardAction {
    margin: 0
}

@media only screen and (max-width:799px) {
    .is-detail .p-postCardAction {
        margin: 0
    }
}

.p-postCardAction.is-mini {
    position: absolute;
    bottom: 0;
    left: 95px;
    margin: 0
}

@media only screen and (max-width:799px) {
    .p-postCardAction.is-mini {
        left: 60px;
        padding: 0
    }
}

.p-saunaDetailPost .p-postCardAction.is-mini {
    left: 55px
}

@media only screen and (max-width:799px) {
    .p-saunaDetailPost .p-postCardAction.is-mini {
        left: 60px
    }
}

.p-postCardAction_item {
    position: relative;
    left: -10px;
    display: flex;
    align-items: center;
    pointer-events: all;
    margin-right: 5px;
    padding: 7px 10px;
    cursor: pointer
}

.p-postCardAction_item:before {
    content: ""
}

.p-postCardAction_item span {
    position: relative;
    margin-left: 10px
}

.is-mini .p-postCardAction_item span {
    top: -1px;
    font-size: 14px
}

.p-postCardAction_item.is-like:before {
    content: ""
}

.p-postCardAction_item.is-like.is-active {
    color: #ef0d0d
}

.p-postCardAction_item.is-like.is-active:before {
    content: "";
    -webkit-animation-name: likeBound;
    animation-name: likeBound;
    -webkit-animation-duration: .25s;
    animation-duration: .25s;
    -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

@-webkit-keyframes likeBound {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }

    50% {
        -webkit-transform: scale(1.15);
        transform: scale(1.15)
    }

    to {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
}

@keyframes likeBound {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }

    50% {
        -webkit-transform: scale(1.15);
        transform: scale(1.15)
    }

    to {
        -webkit-transform: scale(1);
        transform: scale(1)
    }
}

.desktop .p-postCardAction_item:hover:before {
    opacity: .5
}

.is-detail .p-postCardAction_item.is-comment {
    pointer-events: none
}

.is-mini .p-postCardAction_item.is-comment span {
    top: -3px
}

@media only screen and (max-width:799px) {
    .is-mini .p-postCardAction_item.is-comment span {
        top: -1px
    }
}

.p-postCardAction_item.is-comment a:before {
    position: absolute;
    top: 2px;
    left: 0;
    display: block;
    content: "";
    width: 40px;
    height: 20px
}

.p-postCardAction_item.is-tonttu {
    pointer-events: none
}

.p-postCardAction_item.is-tonttu:before {
    content: ""
}

.p-postCardAction_item.is-tonttu.is-active:before {
    position: relative;
    top: 1px;
    left: -3px;
    background: url("../img/global/tonttu.svg");
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    content: "";
    width: 16px;
    height: 24px
}

.is-mini .p-postCardAction_item.is-tonttu {
    width: 14px;
    height: 18px
}

.p-postCardAction_item:before {
    font-size: 22px;
    transition-timing-function: ease-out;
    transition-duration: .25s;
    transition-property: all
}

.is-mini .p-postCardAction_item:before {
    font-size: 20px
}

.p-postCardAction_button {
    border: 1px solid #333;
    border-radius: 6px;
    font-size: 14px;
    pointer-events: all;
    padding: 2px 10px;
    transition-timing-function: ease-out;
    transition-duration: .25s;
    transition-property: all
}

.p-postCardAction_button:hover {
    background: gold
}

.p-postCardGiftonttu {
    position: relative;
    background: #fffdf2;
    z-index: 3;
    text-align: center;
    margin-bottom: 30px;
    padding: 20px 0
}

@media only screen and (max-width:799px) {
    .p-postCardGiftonttu {
        width: calc(100% + 40px);
        margin-bottom: 20px;
        margin-left: -20px
    }
}

.p-postCardGiftonttu p.p-postCardGiftonttu_lead {
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 15px
}

@media only screen and (max-width:799px) {
    .p-postCardGiftonttu p.p-postCardGiftonttu_lead {
        font-size: 13px;
        margin-bottom: 10px
    }
}

.p-postCardGiftonttu p.p-postCardGiftonttu_guide {
    font-size: 16px;
    margin-top: 15px
}

@media only screen and (max-width:799px) {
    .p-postCardGiftonttu p.p-postCardGiftonttu_guide {
        font-size: 13px;
        margin-top: 15px
    }
}

.p-postCardGiftonttu p.p-postCardGiftonttu_guide a {
    color: #ea4c89;
    text-decoration: underline
}

.p-postCardGiftonttu a.p-postCardGiftonttu_button {
    position: relative;
    border-radius: 8px;
    background: gold;
    display: block;
    box-sizing: border-box;
    font-weight: 700;
    color: #111;
    text-align: center;
    text-decoration: none;
    width: 200px;
    margin: auto;
    padding: 10px 20px;
    cursor: pointer
}

@media only screen and (max-width:799px) {
    .p-postCardGiftonttu a.p-postCardGiftonttu_button {
        width: 180px
    }
}

.p-postCardGiftonttu a.p-postCardGiftonttu_button span {
    position: relative;
    padding-left: 25px
}

@media only screen and (max-width:799px) {
    .p-postCardGiftonttu a.p-postCardGiftonttu_button span {
        padding-left: 20px
    }
}

.p-postCardGiftonttu a.p-postCardGiftonttu_button span:before {
    position: absolute;
    top: 0;
    left: -2px;
    background: url("../img/global/tonttu.svg");
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    content: "";
    width: 24px;
    height: 26px
}

@media only screen and (max-width:799px) {
    .p-postCardGiftonttu a.p-postCardGiftonttu_button span:before {
        top: 0;
        left: -5px;
        width: 16px;
        height: 24px
    }
}

.p-postCardWalking strong {
    font-family: Helvetica Neue, Helvetica, sans-serif;
    font-size: 17px;
    margin-left: 5px
}

.p-postCardWalking strong span {
    font-size: 15px;
    margin-left: 2px
}

.p-postCardList {
    position: relative
}

@media only screen and (max-width:799px) {
    .p-postCardList {
        display: block;
        box-sizing: border-box;
        width: calc(100% + 40px);
        margin-left: -20px
    }
}

.p-postCardList.is-ikitai {
    border-top: 1px solid #eee;
    margin-top: 20px
}

.p-postCardList .c-listTab {
    margin-top: -20px
}

@media only screen and (max-width:799px) {
    .p-postCardList .c-listTab {
        margin-top: 0
    }
}

.p-postCardList+.c-pagenation {
    padding: 40px 0 20px
}

@media only screen and (max-width:799px) {
    .p-postCardList+.c-pagenation {
        padding: 20px 0
    }
}

.p-postCardList.has-border {
    border-top: 1px solid #eee
}

.p-postCardList.is-cardView {
    justify-content: space-between
}

.p-postCardList_content {
    display: flex
}

.p-postCardList_more {
    text-align: right;
    margin: 15px 0 0
}

@media only screen and (max-width:799px) {
    .p-postCardList_more {
        margin-right: 10px
    }
}

.p-postCardList_more a {
    text-decoration: none
}

.p-postCardList_more a:after {
    content: "";
    font-size: 12px;
    padding-left: 10px
}

.p-postRanking {
    position: relative;
    box-sizing: border-box;
    padding: 30px 0 0
}

@media only screen and (max-width:799px) {
    .p-postRanking {
        display: block
    }
}

.p-postRanking_headline {
    margin-top: -10px;
    width: 100%;
    font-size: 16px;
    margin-bottom: 20px;
    color: #ea4c89;
    text-align: center
}

.p-postRanking_headline:before {
    content: "";
    display: block;
    font-size: 30px
}

.p-postRanking_comingsoon {
    padding: 40px 20px;
    font-size: 14px;
    text-align: center
}

.p-postRankingCard a {
    display: block;
    display: flex;
    justify-content: space-between;
    font-size: 14px;
    text-decoration: none
}

.p-postRankingCard_icon {
    width: 40px;
    margin-right: 20px
}

.p-postRankingCard_icon img {
    width: 100%;
    height: auto
}

.p-postDetail {
    position: relative;
    box-sizing: border-box;
    width: 520px;
    margin: 20px auto;
    padding-top: 20px
}

@media only screen and (max-width:799px) {
    .p-postDetail {
        width: 100%;
        padding: 0
    }
}

.p-postDetail .p-postCard {
    border-bottom: none
}

.p-postDetail_more {
    text-align: center
}

.p-postDetail_more .c-button a {
    display: block
}

.p-postDetailTag {
    display: flex;
    flex-wrap: wrap;
    margin: 10px 0 0
}

.p-postDetailTag a {
    font-size: 14px;
    color: #ea4c89;
    margin-right: 10px
}

@media only screen and (max-width:799px) {
    .p-postDetailTag a {
        font-size: 14px
    }
}

.p-post,
.p-postReport {
    position: relative
}

.p-post_content {
    padding-bottom: 40px
}

@media only screen and (max-width:799px) {
    .p-post_content {
        margin-right: 20px;
        margin-bottom: 60px;
        margin-left: 20px
    }
}

.p-post_title {
    font-size: 20px;
    margin: 0 0 10px
}

@media only screen and (max-width:799px) {
    .p-post_title {
        font-size: 16px
    }
}

.p-post_body {
    margin-bottom: 5px
}

.p-post_body textarea {
    font-size: 15px;
    min-height: 140px
}

@media only screen and (max-width:799px) {
    .p-post_body textarea {
        min-height: 200px
    }
}

.p-post_status,
.p-post_tweet {
    font-weight: 700;
    float: left;
    margin-right: 30px
}

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

    .p-post_status,
    .p-post_tweet {
        float: none;
        margin-right: 0;
        margin-bottom: 10px
    }
}

.p-post_status label,
.p-post_tweet label {
    line-height: 36px;
    color: #b8b8b8
}

.p-post_status label:after,
.p-post_tweet label:after {
    content: ""
}

.p-post_status label:after,
.p-post_status label:before,
.p-post_tweet label:after,
.p-post_tweet label:before {
    border-radius: 20px;
    box-sizing: border-box;
    line-height: 36px;
    width: 36px;
    height: 36px
}

.p-post_status label:after,
.p-post_tweet label:after {
    color: #b8b8b8
}

.p-post_status input:checked+label,
.p-post_tweet input:checked+label {
    color: #ea4c89
}

.p-post_status input:checked+label:after,
.p-post_tweet input:checked+label:after {
    background: #ea4c89;
    color: #fff
}

.p-post .c-form_share {
    background: none
}

.p-post_complete p {
    text-align: center;
    margin-bottom: 2em
}

.p-post_tweet label:after {
    content: ""
}

.p-post_toggle {
    display: flex;
    margin-top: 20px
}

@media only screen and (max-width:799px) {
    .p-post_toggle {
        margin-top: 10px;
        margin-left: -8px
    }
}

.p-post_toggle:after {
    display: block;
    content: "";
    visibility: hidden;
    clear: both;
    height: 0
}

.p-post_toggle .p-post_status {
    margin-right: 20px
}

.p-postInput a {
    padding: 8px 0
}

@media only screen and (max-width:799px) {
    .p-postInput a {
        font-size: 14px
    }
}

.p-postAction {
    position: fixed;
    bottom: 0;
    left: 0;
    border-top: 1px solid #eee;
    border-radius: 0 0 8px 8px;
    background: #fff;
    width: 100%
}

@media only screen and (max-width:799px) {
    .p-postAction {
        border-radius: 0
    }
}

@media screen and (max-height:400px) {
    .p-postAction {
        display: none
    }
}

@media only screen and (max-width:799px) {
    .is-focus .p-postAction {
        display: none
    }
}

.p-postAction_content:after {
    display: block;
    content: "";
    visibility: hidden;
    clear: both;
    height: 0
}

.p-postImage {
    position: relative;
    font-size: 16px;
    font-weight: 700;
    margin-top: 10px;
    margin-bottom: 15px
}

@media only screen and (max-width:799px) {
    .p-postImage {
        font-size: 14px;
        margin-top: 10px;
        margin-bottom: 14px
    }
}

.p-postImage_label {
    position: relative;
    padding: 0 0 0 40px;
    cursor: pointer
}

@media only screen and (max-width:799px) {
    .p-postImage_label {
        padding: 0 0 0 35px
    }
}

.p-postImage_label:before {
    content: ""
}

.desktop .p-postImage_label:hover {
    opacity: .7
}

.p-postImage_label--add {
    display: block
}

.is-upload .p-postImage_label--add,
.p-postImage_label--delete {
    display: none
}

.is-upload .p-postImage_label--delete {
    display: block
}

.is-upload .p-postImage_label:before {
    content: "";
    top: 2px;
    left: 4px;
    font-size: 16px;
    color: #ef0d0d
}

.p-postImage_label:before {
    position: absolute;
    top: -13px;
    left: -6px;
    font-size: 35px;
    color: #ea4c89
}

@media only screen and (max-width:799px) {
    .p-postImage_label:before {
        top: -15px;
        top: -17px;
        left: -6px;
        font-size: 35px
    }
}

.p-postImage.is-upload input {
    z-index: 0
}

.p-postImage input {
    position: absolute;
    left: 0;
    opacity: 0;
    height: 30px
}

.p-postImagePreview {
    position: relative;
    background: #f2f2f2;
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: contain;
    display: none;
    width: 150px;
    height: 150px;
    margin: 10px 0
}

.is-upload .p-postImagePreview {
    display: block
}

.p-postImagePreview img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain
}

.p-postMeta {
    position: relative;
    z-index: 0;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .p-postMeta {
        margin-bottom: 10px;
        padding-top: 3px
    }
}

.p-postMeta_content {
    display: flex;
    justify-content: space-between
}

.p-postMeta_item {
    position: relative;
    width: calc(50% - 5px)
}

@media only screen and (max-width:799px) {
    .p-postMeta_item {
        width: calc(50% - 5px)
    }
}

@media only screen and (max-width:799px) {
    .p-postMeta_item .c-formText input {
        top: -4px
    }
}

.p-postMeta .c-formSelect {
    width: 100%
}

@media only screen and (max-width:799px) {
    .p-postMeta .c-formSelect {
        padding: 0
    }
}

@media only screen and (max-width:799px) {
    .p-postMeta .c-formSelect select {
        font-size: 14px
    }
}

@media only screen and (max-width:799px) {
    .p-postMeta .c-formSelect:before {
        top: 13px
    }
}

@media only screen and (max-width:799px) {
    .p-postMeta .c-formText_pseudo {
        height: 40px
    }
}

@media only screen and (max-width:799px) {
    .p-postMeta .c-formText_pseudo input {
        top: -2px
    }
}

.p-postMeta_headline {
    position: absolute;
    top: -5px;
    left: 8px;
    background: #fff;
    font-size: 10px;
    font-weight: 400;
    z-index: 1;
    color: #888;
    margin-bottom: 3px;
    padding: 0 6px
}

@media only screen and (max-width:799px) {
    .p-postMeta_headline {
        top: -5px;
        left: 8px;
        font-size: 8px;
        margin-bottom: 3px;
        padding: 0 6px
    }
}

.p-postSpec {
    display: none
}

.p-postSpec .c-tab_contents {
    background: #f5f5f5;
    padding: 20px
}

.p-postSpec_table {
    width: 100%
}

.p-postSpec_td,
.p-postSpec_th {
    width: 25%;
    margin: 0;
    padding: 0 0 10px
}

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

    .p-postSpec_td,
    .p-postSpec_th {
        display: block;
        float: left;
        width: 50%
    }
}

.p-postSpec tr:last-child .p-postSpec_td,
.p-postSpec tr:last-child .p-postSpec_th {
    padding: 0
}

.p-postSpec_th {
    line-height: 1
}

.p-postSpec_th div {
    position: relative;
    top: -5px
}

@media only screen and (max-width:799px) {
    .p-postSpec_th div {
        top: 10px
    }
}

.p-postSpec_th span {
    display: block;
    font-size: 13px;
    font-weight: 400;
    margin-top: 5px
}

.p-postData {
    border-bottom: 1px solid #ddd;
    display: flex;
    flex-direction: column
}

@media only screen and (max-width:799px) {
    .p-postData {
        width: 100vw;
        margin-left: -20px
    }
}

.p-postDataItem {
    position: relative;
    border-top: 1px solid #eee;
    display: flex;
    align-items: center;
    padding: 12px 0
}

@media only screen and (max-width:799px) {
    .p-postDataItem {
        padding: 12px 0 12px 20px
    }
}

.p-postDataItem[data-item-name=tags] {
    order: 0
}

.p-postDataItem[data-item-name=ticket] {
    order: 99
}

.p-postDataItem[data-item-name=spec] {
    order: 100
}

.p-postDataItem[data-status=active] {
    display: flex
}

.p-postDataItem[data-status=disabled] {
    display: none
}

.p-postDataItem_icon {
    position: absolute;
    top: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    margin-right: 15px;
    flex-shrink: 0
}

.is-tag .p-postDataItem_icon:before {
    content: ""
}

.is-ticket .p-postDataItem_icon:before {
    content: ""
}

.is-spec .p-postDataItem_icon:before {
    content: ""
}

.p-postDataItem_icon:before {
    font-size: 20px;
    color: #ea4c89
}

.p-postDataItem_content {
    position: relative;
    width: 100%;
    margin-left: 40px
}

.is-spec .p-postDataItem_content {
    cursor: pointer
}

.is-spec .p-postDataItem_content:after {
    content: "";
    position: absolute;
    top: 5px;
    right: 20px;
    font-size: 16px;
    z-index: 0;
    color: #888
}

.is-spec .p-postDataItem_content .p-postSpec_content {
    padding: 0 60px 0 0
}

@media only screen and (max-width:799px) {
    .is-spec .p-postDataItem_content .p-postSpec_content {
        padding: 0 60px 0 0
    }
}

.is-spec.is-active .p-postDataItem_content:after {
    display: none
}

.p-postDataItem_content .c-tab_action {
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .p-postDataItem_content .c-tab_action {
        margin-bottom: 10px
    }
}

.p-postDataItem_content .c-formError {
    font-size: 14px
}

@media only screen and (max-width:799px) {
    .p-postDataItem_content .c-formError {
        font-size: 12px
    }
}

.p-postDataItem_spec {
    position: relative;
    padding: 5px 0
}

.p-postDataItem_spec:before {
    position: absolute;
    top: -10px;
    left: 0;
    content: "";
    z-index: 2;
    width: 100%;
    height: calc(100% + 20px)
}

.p-postDataItem_selected {
    padding-right: 50px
}

.p-postDataItem_selected p {
    font-weight: 700;
    line-height: 1.35
}

.p-postDataItem_selected span {
    font-size: 10px
}

.p-postDataItem_close {
    position: absolute;
    top: 20px;
    right: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
    width: 30px;
    height: 30px;
    cursor: pointer
}

.p-postDataItem_close:before {
    content: ""
}

.is-spec .p-postDataItem_close {
    top: 15px;
    display: none
}

.is-spec.is-active .p-postDataItem_close {
    display: flex
}

.p-postDataItem_close:before {
    font-size: 14px;
    color: #888
}

.p-postDataInput {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-right: 40px
}

.p-postDataInput_headline {
    font-weight: 700
}

.p-postDataInput_headline.is-private:before {
    content: "";
    position: relative;
    top: 1px;
    font-size: 12px;
    color: #888;
    margin-right: 5px
}

@media only screen and (max-width:799px) {
    .p-postDataInput_headline.is-private:before {
        position: relative;
        top: 1px;
        font-size: 10px;
        color: #888;
        margin-right: 5px
    }
}

.p-postDataInput_headline.is-private span {
    display: block
}

.p-postDataInput_headline span {
    position: relative;
    border-radius: 3px;
    background: #888;
    display: none;
    font-size: 10px;
    line-height: 1;
    color: #fff;
    margin-left: 5px;
    padding: 0 2px
}

@media only screen and (max-width:799px) {
    .p-postDataInput_headline span {
        top: -1px;
        font-size: 8px;
        padding: 0 4px
    }
}

@media only screen and (max-width:799px) {
    .p-postDataInput_label span {
        font-size: 10px
    }
}

.p-postDataInput_value .c-formText input {
    padding: 10px
}

@media only screen and (max-width:799px) {
    .p-postDataInput_value .c-formText input {
        padding: 10px
    }
}

.p-postDataInput_value .c-formText_after {
    font-size: 12px
}

@media only screen and (max-width:799px) {
    .p-postDataInput_value .c-formText_after {
        top: 15px;
        right: 10px;
        font-size: 10px
    }
}

.p-postOfficialTags {
    margin-left: -3px
}

@media only screen and (max-width:799px) {
    .p-postOfficialTags {
        margin-left: -3px
    }
}

.p-postOfficialTags_content {
    position: relative;
    display: flex;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch
}

.p-postOfficialTags_content:after {
    display: block;
    content: "";
    width: 10px;
    height: 10px;
    flex-shrink: 0
}

.p-postOfficialTags_content.is-active {
    display: flex
}

.p-postOfficialTags_select {
    display: none
}

.p-postOfficialTags_select.is-active {
    display: block
}

.p-postOfficialTags_tag {
    border: 1px solid transparent;
    border-radius: 20px;
    background: #f7f7f7;
    box-sizing: border-box;
    pointer-events: all;
    margin-right: 5px;
    padding: 5px 10px;
    cursor: pointer;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: all;
    flex-shrink: 0
}

.desktop .p-postOfficialTags_tag:hover {
    border-color: #ea4c89;
    text-decoration: none;
    opacity: 1;
    cursor: pointer
}

.p-postOfficialTags_tag.is-active {
    display: none
}

.p-postOfficialTags_tag.is-select {
    background: none;
    display: inline-block
}

.p-postOfficialTags_tag.is-select:after {
    content: "";
    font-size: 12px;
    margin-left: 10px
}

@media only screen and (max-width:799px) {
    .p-postOfficialTags_tag.is-select:after {
        font-size: 10px;
        margin-left: 10px
    }
}

@media only screen and (max-width:799px) {
    .p-comments {
        position: relative
    }
}

.p-comments_more {
    font-size: 14px;
    font-weight: 700;
    color: #ea4c89;
    margin-bottom: 20px;
    cursor: pointer
}

.p-comments_more:after {
    content: ""
}

@media only screen and (max-width:799px) {
    .p-comments_more {
        font-size: 12px
    }
}

.desktop .p-comments_more:hover {
    opacity: .7
}

.p-comments_more:after {
    position: relative;
    top: 0;
    margin-left: 10px
}

@media only screen and (max-width:799px) {
    .p-comments_more:after {
        top: 1px
    }
}

.p-comments_content {
    margin-bottom: 20px
}

.p-comment {
    position: relative;
    display: flex;
    align-items: top;
    padding-bottom: 20px
}

.p-comment.is-hide {
    display: none
}

.p-comment:last-of-type {
    border-bottom: none;
    padding-bottom: 0
}

.p-comment_icon,
.p-commentIcon {
    position: relative;
    width: 34px;
    height: 34px;
    margin-right: 10px
}

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

    .p-comment_icon,
    .p-commentIcon {
        margin-right: 10px;
        padding-top: 0
    }
}

.is-tonttu .p-comment_icon:before,
.is-tonttu .p-commentIcon:before {
    position: absolute;
    top: 34px;
    left: 50%;
    background: #eee;
    content: "";
    z-index: 0;
    width: 2px;
    height: 16px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

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

    .is-tonttu .p-comment_icon:before,
    .is-tonttu .p-commentIcon:before {
        top: 30px;
        height: 16px
    }
}

.p-comment_icon_tonttu,
.p-commentIcon_tonttu {
    position: absolute;
    top: 49px;
    left: 50%;
    border-radius: 100%;
    background: gold;
    box-sizing: border-box;
    z-index: 1;
    width: 24px;
    height: 24px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

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

    .p-comment_icon_tonttu,
    .p-commentIcon_tonttu {
        top: 46px
    }
}

.p-comment_icon_tonttu:before,
.p-commentIcon_tonttu:before {
    position: absolute;
    top: 50%;
    left: 50%;
    background: url("../img/global/tonttu.svg");
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: contain;
    display: block;
    content: "";
    z-index: 1;
    width: 14px;
    height: 18px;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

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

    .p-comment_icon_tonttu:before,
    .p-commentIcon_tonttu:before {
        width: 12px;
        height: 16px
    }
}

.p-comment_icon img,
.p-commentIcon img {
    position: absolute;
    top: 50%;
    left: 50%;
    border-radius: 50%;
    box-sizing: border-box;
    width: 100%;
    height: auto;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.p-comment_content {
    width: calc(100% - 110px)
}

@media only screen and (max-width:799px) {
    .p-comment_content {
        width: calc(100% - 40px)
    }
}

.p-commentHeader_name {
    display: block;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    text-align: left;
    margin-bottom: 7px
}

@media only screen and (max-width:799px) {
    .p-commentHeader_name {
        margin-bottom: 7px
    }
}

.p-commentHeader_name a {
    color: #222;
    text-decoration: none
}

.p-commentHeader_content {
    display: flex;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .p-commentHeader_content {
        margin-bottom: 5px
    }
}

.p-commentHeader_date {
    display: inline-block;
    font-size: 12px;
    line-height: 1;
    color: #888;
    margin-right: 10px
}

@media only screen and (max-width:799px) {
    .p-commentHeader_date {
        font-size: 10px
    }
}

.p-commentHeader_res {
    position: relative;
    top: -1px;
    font-size: 12px;
    line-height: 1;
    color: #ea4c89;
    cursor: pointer
}

@media only screen and (max-width:799px) {
    .p-commentHeader_res {
        font-size: 11px
    }
}

.desktop .p-commentHeader_res:hover {
    opacity: .7
}

.p-comment_body {
    font-size: 14px
}

.p-comment_giftonttu {
    border-radius: 10px;
    background: #f7f7f7;
    display: inline-block;
    font-size: 13px;
    margin: 5px 0;
    padding: 5px 10px
}

@media only screen and (max-width:799px) {
    .p-comment_giftonttu {
        font-size: 12px
    }
}

.p-comment_giftonttu a {
    font-weight: 700;
    color: #222
}

.p-comment_giftonttu img {
    position: relative;
    top: -1px;
    border-radius: 100%;
    width: 18px;
    margin-right: 5px
}

@media only screen and (max-width:799px) {
    .p-comment_giftonttu img {
        width: 16px
    }
}

.p-comment_giftonttuNum {
    border-radius: 4px;
    font-weight: 700;
    line-height: 1
}

.p-commentAction {
    position: absolute;
    top: 0;
    right: 0;
    display: flex
}

.p-commentAction_item {
    position: relative;
    pointer-events: all;
    margin-left: 20px;
    cursor: pointer
}

.p-commentAction_item:before {
    content: ""
}

.p-commentAction_item.is-delete:before {
    content: ""
}

.p-commentAction_item.is-like:before {
    content: ""
}

.p-commentAction_item.is-like.is-active {
    color: #ef0d0d
}

.p-commentAction_item.is-like.is-active:before {
    content: ""
}

.desktop .p-commentAction_item:hover {
    opacity: .5
}

.p-commentAction_item.is-tonttu:before {
    content: ""
}

.p-commentAction_item.is-tonttu.is-active:before {
    position: relative;
    top: 7px;
    left: -3px;
    background: url("../img/global/tonttu.svg");
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    content: "";
    width: 16px;
    height: 24px
}

.p-commentAction_item:before {
    font-size: 22px
}

.p-commentReaction {
    position: relative;
    top: 0;
    display: flex;
    font-size: 11px;
    line-height: 1
}

.p-commentReaction_like {
    position: relative;
    margin-right: 10px;
    padding-left: 15px
}

.p-commentReaction_like:before {
    content: "";
    position: absolute;
    top: 1px;
    left: 0;
    font-size: 11px
}

.p-commentReaction_tonttu {
    position: relative;
    pointer-events: all;
    margin-right: 10px;
    padding: 0 0 0 15px
}

.p-commentReaction_tonttu:before {
    position: absolute;
    top: -1px;
    left: 0;
    background: url("../img/global/tonttu.svg");
    background-repeat: no-repeat;
    background-size: cover;
    display: block;
    content: "";
    width: 9px;
    height: 12px
}

.p-commentReaction_tonttu:after {
    font-size: 8px;
    font-weight: 700;
    margin-left: 5px
}

.p-comment_resName a {
    color: #ea4c89
}

.p-commentForm {
    display: block;
    box-sizing: border-box;
    overflow: hidden;
    margin-top: 20px;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .p-commentForm {
        width: calc(100% + 40px);
        margin-top: 10px;
        margin-left: -20px;
        padding: 0 20px
    }
}

.p-commentForm.is-nologin {
    background: #f9f9f9;
    text-align: center;
    padding: 40px 20px
}

@media only screen and (max-width:799px) {
    .p-commentForm.is-nologin .c-button {
        display: block;
        width: 250px
    }
}

.p-commentForm.is-active {
    display: block
}

.p-commentForm.is-active .c-formTextarea textarea {
    height: 120px
}

.p-commentForm.is-active .c-button {
    display: block
}

.p-commentForm_headline {
    font-size: 14px;
    margin-bottom: 5px
}

.p-commentForm .c-formTextarea {
    cursor: pointer
}

.p-commentForm .c-formTextarea textarea {
    resize: none
}

@media only screen and (max-width:799px) {
    .p-commentForm .c-formTextarea textarea {
        height: 25px;
        min-height: 25px
    }
}

.p-commentForm .c-button {
    display: block;
    width: 340px;
    margin: 10px auto auto
}

@media only screen and (max-width:799px) {
    .p-commentForm .c-button {
        display: none;
        width: 100%
    }
}

.p-commentForm .c-button a {
    width: 300px;
    margin: auto
}

@media only screen and (max-width:799px) {
    .p-commentForm .c-button a {
        width: 100%
    }
}

.p-commentForm_register.c-button {
    margin: auto auto 20px
}

.p-commentForm strong {
    display: block;
    font-size: 18px;
    font-weight: 700;
    color: #ea4c89;
    margin-bottom: 20px
}

.p-commentForm p a {
    color: #ea4c89;
    text-decoration: underline
}

@media only screen and (max-width:799px) {
    .p-commentForm_submit {
        display: none
    }
}

.is-active .p-commentForm_submit {
    display: block
}

.p-ticketCard {
    position: relative;
    border-bottom: 1px solid #eee
}

.p-ticketCard.is-grid {
    border-radius: 16px;
    background: #fff;
    text-align: left;
    overflow: hidden;
    width: 259px;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .p-ticketCard.is-grid {
        min-width: 259px;
        height: auto;
        margin-right: 15px;
        margin-bottom: 0
    }
}

.p-ticketCard_expired {
    position: absolute;
    top: 20px;
    left: 0;
    background: #000;
    font-size: 10px;
    z-index: 100;
    color: #fff;
    padding: 4px 8px
}

@media only screen and (max-width:799px) {
    .p-ticketCard_expired {
        top: 10px;
        left: 20px;
        font-size: 8px
    }
}

.p-ticketCard_header {
    display: none
}

@media only screen and (max-width:799px) {
    .p-ticketCard_header {
        display: block;
        margin-top: 20px;
        margin-bottom: -5px;
        padding: 0 20px
    }
}

@media only screen and (max-width:799px) {
    .is-facility .p-ticketCard_header {
        display: none
    }
}

@media only screen and (max-width:799px) {
    .p-ticketCard_header .p-ticketCard_address {
        display: block
    }
}

.p-ticketCard a {
    display: block;
    text-decoration: none
}

.p-ticketCard_content {
    display: flex;
    text-decoration: none;
    padding: 20px 0
}

@media only screen and (max-width:799px) {
    .p-ticketCard_content {
        padding: 15px 20px 20px
    }
}

@media only screen and (max-width:799px) {
    .is-myTicket .p-ticketCard_content {
        padding: 10px 20px
    }
}

.is-grid .p-ticketCard_content {
    display: block;
    padding: 0
}

.p-ticketCard_date {
    border-radius: 4px;
    background: #f8f8f8;
    display: inline-block;
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 5px;
    padding: 5px 8px
}

@media only screen and (max-width:799px) {
    .p-ticketCard_date {
        font-size: 10px
    }
}

.p-ticketCard_limit {
    font-size: 12px;
    color: #ef0d0d
}

@media only screen and (max-width:799px) {
    .p-ticketCard_limit {
        font-size: 10px;
        margin-bottom: 10px
    }
}

.p-ticketCard_image {
    position: relative;
    border: 1px solid #f7f7f7;
    box-sizing: border-box;
    width: 120px;
    margin-right: 30px
}

@media only screen and (max-width:799px) {
    .p-ticketCard_image {
        width: 32.83582%;
        width: 110px;
        height: 74px;
        margin-right: 15px
    }
}

.is-grid .p-ticketCard_image {
    border: none;
    width: 100%
}

@media only screen and (max-width:799px) {
    .is-grid .p-ticketCard_image {
        height: 160px;
        margin-right: 0
    }
}

.is-myTicket .p-ticketCard_image {
    width: 140px
}

@media only screen and (max-width:799px) {
    .is-myTicket .p-ticketCard_image {
        width: 110px
    }
}

.p-ticketCard_image img {
    position: relative;
    width: 100%;
    height: auto
}

@media only screen and (max-width:799px) {
    .p-ticketCard_image img {
        position: absolute;
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover
    }
}

.p-ticketCard_body {
    position: relative;
    flex: 1
}

@media only screen and (max-width:799px) {
    .p-ticketCard_body .p-ticketCard_name {
        display: none
    }
}

@media only screen and (max-width:799px) {
    .is-facility .p-ticketCard_body .p-ticketCard_name {
        display: block
    }
}

.is-myTicket .p-ticketCard_body {
    width: calc(100% - 170px)
}

@media only screen and (max-width:799px) {
    .is-myTicket .p-ticketCard_body {
        width: calc(100% - 100px)
    }
}

.is-grid .p-ticketCard_body {
    padding: 20px 20px 50px
}

@media only screen and (max-width:799px) {
    .is-grid .p-ticketCard_body {
        padding-bottom: 50px
    }
}

.p-ticketCard_name {
    display: flex;
    display: -webkit-box;
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    overflow: hidden;
    margin-bottom: 10px;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1
}

@media only screen and (max-width:799px) {
    .p-ticketCard_name {
        font-size: 16px;
        line-height: 1.2;
        margin-bottom: 5px
    }
}

.is-facility .p-ticketCard_name {
    font-size: 14px;
    font-weight: 400
}

@media only screen and (max-width:799px) {
    .is-facility .p-ticketCard_name {
        font-size: 8px
    }
}

.is-grid .p-ticketCard_name {
    font-size: 12px;
    margin-bottom: 5px
}

.p-ticketCard_title {
    display: block;
    display: -webkit-box;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    overflow: hidden;
    margin-top: 10px;
    margin-bottom: 3px;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2
}

@media only screen and (max-width:799px) {
    .p-ticketCard_title {
        font-size: 14px;
        line-height: 1.4;
        margin-top: -5px
    }
}

.p-ticketCard_title:before {
    content: ""
}

.is-facility .p-ticketCard_title {
    font-size: 20px;
    font-weight: 700;
    margin-top: 0
}

@media only screen and (max-width:799px) {
    .is-facility .p-ticketCard_title {
        font-size: 14px
    }
}

.is-facility .p-ticketCard_title:before {
    top: 2px
}

@media only screen and (max-width:799px) {
    .is-facility .p-ticketCard_title:before {
        top: 2px
    }
}

.p-ticketList_group .p-ticketCard_title {
    font-size: 20px;
    font-weight: 700;
    margin-top: 5px
}

@media only screen and (max-width:799px) {
    .p-ticketList_group .p-ticketCard_title {
        font-size: 14px;
        text-indent: 0;
        margin-top: -5px;
        padding-left: 0
    }
}

.p-ticketList_group .p-ticketCard_title:before {
    display: none
}

.p-ticketCard_title:before {
    position: relative;
    top: 4px;
    font-size: 18px;
    color: #ea4c89;
    margin-right: 10px
}

@media only screen and (max-width:799px) {
    .p-ticketCard_title:before {
        top: 3px;
        display: none;
        font-size: 14px;
        margin-right: 8px;
        margin-left: -4px
    }
}

.is-grid .p-ticketCard_title {
    font-size: 16px;
    height: 2.9em
}

.is-myTicket .p-ticketCard_title {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2
}

.p-ticketCard_address {
    position: absolute;
    bottom: 0;
    left: 0;
    font-size: 14px;
    line-height: 1;
    color: #888;
    overflow: hidden
}

@media only screen and (max-width:799px) {
    .p-ticketCard_address {
        display: -webkit-box;
        font-size: 8px;
        overflow: hidden;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 1
    }
}



.p-ticketCard_p {
    font-size: 12px;
    color: #888;
}
}

@media only screen and (max-width:799px) {
    .p-ticketCard_address.is-desktop {
        display: none
    }
}

.is-grid .p-ticketCard_address {
    bottom: 20px;
    left: 20px;
    font-size: 10px
}

@media only screen and (max-width:799px) {
    .is-grid .p-ticketCard_address {
        bottom: 18px
    }
}

.p-ticketCard_address span {
    display: none
}

@media only screen and (max-width:799px) {
    .p-ticketCard_address span {
        display: none
    }
}



.p-ticketCardPrice {
    position: absolute;
    right: 0;
    bottom: -6px;
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 42px;
    font-weight: 700;
    line-height: 1;
    color: #ea4c89;
    float: right
}

@media only screen and (max-width:799px) {
    .p-ticketCardPrice {
        bottom: -6px
    }
}

.is-grid .p-ticketCardPrice {
    right: 20px;
    bottom: 13px
}

.p-ticketCardPrice_content {
    display: flex;
    align-items: baseline
}

.p-ticketCardPrice_description {
    font-size: 12px;
    font-weight: 400;
    color: #ef0d0d;
    text-align: left
}

@media only screen and (max-width:799px) {
    .p-ticketCardPrice_description {
        font-size: 10px;
        margin-bottom: 3px
    }
}

.p-ticketCardPrice_count {
    position: relative;
    top: -3px;
    border-radius: 6px;
    background: #f7f9fe;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    margin-right: 10px;
    padding: 5px 10px
}

@media only screen and (max-width:799px) {
    .p-ticketCardPrice_count {
        top: -3px;
        font-size: 10px;
        margin-right: 5px;
        padding: 4px 5px
    }
}

.is-grid .p-ticketCardPrice_count {
    font-size: 10px;
    margin-right: 5px;
    padding: 5px 8px
}

.p-ticketCardPrice_num {
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 26px;
    font-weight: 700;
    line-height: 1;
    color: #ea4c89;
    margin-top: 10px
}

@media only screen and (max-width:799px) {
    .p-ticketCardPrice_num {
        font-size: 20px;
        margin-top: 0
    }
}

.is-grid .p-ticketCardPrice_num {
    font-size: 20px
}

.p-ticketCardPrice_num small {
    font-size: 10px;
    font-weight: 400;
    color: #888;
    margin-left: 5px
}

@media only screen and (max-width:799px) {
    .p-ticketCardPrice_num small {
        font-size: 8px;
        margin-left: 3px
    }
}

.p-ticketOrder {
    position: relative
}

.p-ticketOrder.is-active {
    border-bottom: 1px solid #eee
}

.p-ticketOrder_content {
    display: none
}

.p-ticketOrder_items {
    padding: 10px 0
}

.p-ticketOrder_items>a {
    display: block;
    text-decoration: none;
    padding: 10px 20px
}

.p-ticketOrder_date {
    position: relative;
    border-bottom: 1px solid #eee;
    box-sizing: border-box;
    font-weight: 700;
    line-height: 1;
    padding: 20px 0;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .2s;
    transition-property: all
}

.p-ticketOrder_date:after {
    content: ""
}

@media only screen and (max-width:799px) {
    .p-ticketOrder_date {
        font-size: 14px;
        padding: 20px
    }
}

.p-ticketOrder_date span {
    border-radius: 4px;
    background: #f3f3f3;
    line-height: 1;
    margin-left: 10px;
    padding: 2px 8px
}

.is-active .p-ticketOrder_date {
    border-bottom: 1px solid #f3f3f3;
    background: #f3f3f3;
    padding: 20px
}

@media only screen and (max-width:799px) {
    .is-active .p-ticketOrder_date {
        padding: 20px
    }
}

.is-active .p-ticketOrder_date span {
    background: #fff
}

.is-active .p-ticketOrder_date:after {
    -webkit-transform: rotate(180deg) translateY(4px);
    transform: rotate(180deg) translateY(4px)
}

.p-ticketOrder_date:after {
    position: absolute;
    top: 50%;
    right: 25px;
    font-size: 12px;
    color: #888;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

@media only screen and (max-width:799px) {
    .p-ticketOrder_date:after {
        font-size: 10px;
        transition-timing-function: cubic-bezier(.215, .61, .355, 1);
        transition-duration: .3s;
        transition-property: -webkit-transform;
        transition-property: transform;
        transition-property: transform, -webkit-transform
    }
}

.p-ticketOrder_name {
    display: block;
    font-size: 12px;
    line-height: 1;
    color: #888;
    margin-bottom: 5px
}

@media only screen and (max-width:799px) {
    .p-ticketOrder_name {
        font-size: 8px;
        margin-bottom: 5px
    }
}

.is-myTicket .p-ticketOrder_name,
.p-ticketOrder_title {
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden
}

.p-ticketOrder_title {
    display: block;
    font-size: 16px;
    font-weight: 400
}

@media only screen and (max-width:799px) {
    .p-ticketOrder_title {
        font-size: 12px;
        line-height: 1.4
    }
}

.p-ticketOrder_price {
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1;
    margin-top: 20px
}

@media only screen and (max-width:799px) {
    .p-ticketOrder_price {
        font-size: 12px;
        margin-top: 5px
    }
}

.p-ticketOrder_price small {
    font-size: 10px;
    font-weight: 400;
    color: #888;
    margin-left: 5px
}

@media only screen and (max-width:799px) {
    .p-ticketOrder_price small {
        font-size: 8px
    }
}

.p-ticketOrderList {
    border-top: 1px solid #eee;
    padding: 10px 20px
}

@media only screen and (max-width:799px) {
    .p-ticketOrderList_item {
        font-size: 12px;
        margin-bottom: 5px
    }
}

.p-ticketOrderList_item.is-total {
    font-size: 14px;
    font-weight: 700
}

.p-ticketOrderList_item.is-total .p-ticketOrderList_num {
    color: #ea4c89
}

@media only screen and (max-width:799px) {
    .p-ticketOrderList_headline {
        display: inline-block;
        width: 100px
    }
}

.p-ticketOrderList_num {
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif
}

.p-ticketOrderList_num small {
    font-size: 10px;
    font-weight: 400;
    color: #888;
    margin-left: 5px
}

@media only screen and (max-width:799px) {
    .p-ticketOrderList_num small {
        font-size: 8px
    }
}

.c-tab_contents .p-ticketList {
    margin-top: -20px
}

.p-ticketList {
    position: relative
}

@media only screen and (max-width:799px) {
    .p-ticketList {
        width: 100vw;
        margin-left: -20px
    }
}

.p-ticketList.is-grid {
    display: flex;
    justify-content: space-between;
    flex-flow: wrap
}

@media only screen and (max-width:799px) {
    .p-ticketList.is-grid {
        margin-left: 0;
        padding-right: 20px;
        flex-flow: nowrap
    }
}

@media only screen and (max-width:799px) {
    .p-ticketList.is-grid:after {
        display: block;
        content: "";
        min-width: 1px
    }
}

.p-ticketList .c-tab {
    margin-top: 20px
}

@media only screen and (max-width:799px) {
    .p-ticketList .c-tab {
        margin: 20px 20px 0
    }
}

.p-ticketList_cards {
    display: none
}

.p-ticketListHeader {
    position: relative;
    margin-bottom: 30px
}

@media only screen and (max-width:799px) {
    .p-ticketListHeader {
        margin: 20px
    }
}

.p-ticketListHeader_headline {
    font-size: 34px;
    line-height: 1
}

@media only screen and (max-width:799px) {
    .p-ticketListHeader_headline {
        font-size: 20px
    }
}

.p-ticketListHeader_use {
    position: absolute;
    top: -3px;
    right: 0
}

@media only screen and (max-width:799px) {
    .p-ticketListHeader_use {
        top: -8px
    }
}

.p-ticketListHeader_use a {
    position: relative;
    border: 2px solid #ea4c89;
    border-radius: 10px;
    display: block;
    display: flex;
    align-items: center;
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
    color: #ea4c89;
    text-decoration: none;
    padding: 12px 15px 12px 40px
}

@media only screen and (max-width:799px) {
    .p-ticketListHeader_use a {
        border: 1px solid #ea4c89;
        border-radius: 6px;
        font-size: 14px;
        padding: 10px 15px 10px 34px
    }
}

.p-ticketListHeader_use a:hover {
    opacity: .7
}

.p-ticketListHeader_use a span {
    position: absolute;
    left: 10px
}

@media only screen and (max-width:799px) {
    .p-ticketListHeader_use a span img {
        position: relative;
        top: 1px;
        width: 18px
    }
}

.p-ticketListExpireSoon_headline {
    font-weight: 700;
    padding: 0 20px
}

.p-ticketListExpireSoon_headline:before {
    content: "";
    margin-right: 5px
}

.p-ticketList_headline {
    position: relative;
    border-bottom: 1px solid #eee;
    box-sizing: border-box;
    font-weight: 700;
    line-height: 1;
    padding: 20px 0;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .2s;
    transition-property: all
}

.p-ticketList_headline:after {
    content: ""
}

@media only screen and (max-width:799px) {
    .p-ticketList_headline {
        font-size: 14px;
        padding: 20px
    }
}

.p-ticketList_headline span {
    border-radius: 4px;
    background: #f3f3f3;
    line-height: 1;
    margin-left: 10px;
    padding: 2px 8px
}

.is-active .p-ticketList_headline {
    border-bottom: 1px solid #f3f3f3;
    background: #f3f3f3;
    padding: 20px
}

@media only screen and (max-width:799px) {
    .is-active .p-ticketList_headline {
        padding: 20px
    }
}

.is-active .p-ticketList_headline span {
    background: #fff
}

.is-active .p-ticketList_headline:after {
    -webkit-transform: rotate(180deg) translateY(4px);
    transform: rotate(180deg) translateY(4px)
}

.p-ticketList_headline:after {
    position: absolute;
    top: 50%;
    right: 25px;
    font-size: 12px;
    color: #888;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

@media only screen and (max-width:799px) {
    .p-ticketList_headline:after {
        font-size: 10px;
        transition-timing-function: cubic-bezier(.215, .61, .355, 1);
        transition-duration: .3s;
        transition-property: -webkit-transform;
        transition-property: transform;
        transition-property: transform, -webkit-transform
    }
}

.p-ticketListNoresult {
    box-sizing: border-box;
    width: 400px;
    margin: 40px auto 0
}

@media only screen and (max-width:799px) {
    .p-ticketListNoresult {
        width: 100%;
        margin: 20px 0 0;
        padding: 0 20px
    }
}

.p-ticketListNoresult a {
    border-radius: 12px;
    background: #ea4c89;
    display: block;
    color: #fff;
    text-align: center;
    text-decoration: none;
    padding: 40px 30px
}

.p-ticketListNoresult_icon {
    width: 70px;
    margin: 0 auto 15px
}

@media only screen and (max-width:799px) {
    .p-ticketListNoresult_icon {
        width: 60px;
        margin: 0 auto 10px
    }
}

.p-ticketListNoresult_title {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 15px
}

@media only screen and (max-width:799px) {
    .p-ticketListNoresult_title {
        font-size: 16px
    }
}

.p-ticketListNoresult_title strong {
    display: block
}

.p-ticketListNoresult_button {
    border: 1px solid #fff;
    border-radius: 6px;
    display: inline-block;
    font-weight: 700;
    line-height: 1;
    padding: 12px 15px
}

.p-ticketDetail {
    position: relative
}

@media only screen and (max-width:799px) {
    .p-ticketDetail {
        width: 100vw;
        margin-left: -20px
    }
}

.p-ticketDetail .p-saunaItem {
    border-top: 1px solid #eee
}

@media only screen and (max-width:799px) {
    .p-ticketDetail .p-saunaItem a {
        padding-top: 15px
    }
}

.p-ticketDetail_header {
    width: 760px;
    height: 50px;
    margin: auto
}

@media only screen and (max-width:799px) {
    .p-ticketDetail_header {
        width: 100%
    }
}

.p-ticketDetail_header a {
    display: block;
    display: flex;
    align-items: center;
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
    height: 100%
}

@media only screen and (max-width:799px) {
    .p-ticketDetail_header a {
        font-size: 12px;
        padding: 0 20px
    }
}

.p-ticketDetail_header a:before {
    content: ""
}

.p-ticketDetail_header a:hover {
    text-decoration: none
}

@media only screen and (min-width:1024px) {
    .p-ticketDetail_header a:hover {
        opacity: .7
    }
}

.p-ticketDetail_header a:before {
    position: relative;
    font-size: 12px;
    margin-right: 8px
}

@media only screen and (max-width:799px) {
    .p-ticketDetail_header a:before {
        font-size: 8px;
        margin-right: 5px
    }
}

@media only screen and (max-width:799px) {
    .p-ticketDetail_content {
        padding: 20px
    }
}

.p-ticketDetail_share {
    display: flex;
    justify-content: center;
    margin: 20px 0 0
}

@media only screen and (max-width:799px) {
    .p-ticketDetail_share {
        margin-top: 20px
    }
}

.p-ticketDetail_back {
    text-align: center;
    margin: 40px auto 0
}

@media only screen and (max-width:799px) {
    .p-ticketDetail_back {
        width: 315px;
        margin: 20px auto;
        padding: 0 20px
    }
}

.p-ticketDetailMore {
    font-weight: 700;
    color: #ea4c89;
    text-align: center;
    cursor: pointer
}

[data-mode=ticketUse] .p-ticketDetailMore {
    display: none
}

.p-ticketDetailMore_open {
    display: block
}

.p-ticketDetailMore_open:after {
    content: ""
}

.is-active .p-ticketDetailMore_open {
    display: none
}

.p-ticketDetailMore_open:after {
    position: relative;
    top: 0;
    font-size: 14px;
    margin-left: 10px
}

@media only screen and (max-width:799px) {
    .p-ticketDetailMore_open:after {
        top: 1px;
        font-size: 11px;
        margin-left: 5px
    }
}

.p-ticketDetailMore_close {
    display: none
}

.p-ticketDetailMore_close:after {
    content: ""
}

.is-active .p-ticketDetailMore_close {
    display: block
}

.p-ticketDetailMore_close:after {
    position: relative;
    top: 0;
    font-size: 14px;
    margin-left: 10px
}

@media only screen and (max-width:799px) {
    .p-ticketDetailMore_close:after {
        top: 1px;
        font-size: 11px;
        margin-left: 5px
    }
}

.p-ticketDetailImage {
    position: relative;
    border-radius: 12px 12px 0 0;
    overflow: hidden;
    width: calc(100% + 160px);
    height: 460px;
    margin: -80px 0 30px -80px
}

@media only screen and (max-width:799px) {
    .p-ticketDetailImage {
        border-radius: none;
        border-radius: 0;
        width: 100%;
        height: auto;
        margin: 0
    }
}

.p-ticketDetailImage img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: contain;
}

@media only screen and (max-width:799px) {
    .p-ticketDetailImage img {
        position: relative
    }
}

.p-ticketDetailImage_icon {
    position: absolute;
    top: 30px;
    right: 30px;
    z-index: 2;
    width: 40px
}

@media only screen and (max-width:799px) {
    .p-ticketDetailImage_icon {
        top: 20px;
        right: 20px;
        width: 35px
    }
}

.p-ticketDetailImage_logo {
    position: absolute;
    right: 30px;
    bottom: 30px;
    border-radius: 6px;
    background: #fff;
    z-index: 2;
    overflow: hidden;
    width: 120px;
    height: 90px
}

@media only screen and (max-width:799px) {
    .p-ticketDetailImage_logo {
        right: 20px;
        bottom: 20px;
        width: 70px;
        height: 50px
    }
}

.p-ticketDetailImage_logo img {
    position: absolute;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.p-ticketDetailHeader {
    border-bottom: 1px solid #eee;
    overflow: hidden;
    margin-bottom: 20px;
    padding-bottom: 20px
}

@media only screen and (max-width:799px) {
    .p-ticketDetailHeader {
        margin-bottom: 0;
        padding: 20px
    }
}

.p-ticketDetailHeader_meta {
    display: flex;
    justify-content: space-between
}

.p-ticketDetailHeader_name {
    font-size: 14px;
    margin-bottom: 5px
}

@media only screen and (max-width:799px) {
    .p-ticketDetailHeader_name {
        font-size: 12px;
        line-height: 1.25
    }
}

.p-ticketDetailHeader_name a {
    font-weight: 700;
    color: #ea4c89
}

.p-ticketDetailHeader_name a:hover {
    text-decoration: underline
}

.p-ticketDetailHeader_title {
    font-size: 32px;
    font-weight: 700;
    line-height: 1.35;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .p-ticketDetailHeader_title {
        font-size: 22px;
        margin-bottom: 10px
    }
}

.p-myTicketCard .p-ticketDetailHeader_title {
    font-size: 28px
}

@media only screen and (max-width:799px) {
    .p-myTicketCard .p-ticketDetailHeader_title {
        font-size: 20px
    }
}

.p-ticketDetailHeader_reserve {
    font-weight: 400;
    margin-top: -10px;
    margin-left: -.5em
}

@media only screen and (max-width:799px) {
    .p-ticketDetailHeader_reserve {
        margin-top: -5px
    }
}

.p-ticketDetailHeader_area {
    font-size: 16px;
    font-weight: 700;
    color: #888
}

@media only screen and (max-width:799px) {
    .p-ticketDetailHeader_area {
        font-size: 14px
    }
}

.p-ticketDetailHeader_label {
    border: 1px solid #ea4c89;
    border-radius: 4px;
    font-size: 14px;
    line-height: 1;
    color: #ea4c89;
    margin-bottom: 5px;
    padding: 6px 10px
}

@media only screen and (max-width:799px) {
    .p-ticketDetailHeader_label {
        font-size: 10px;
        margin-bottom: 5px;
        padding: 4px 6px
    }
}

.p-ticketDetailHeaderPrice {
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 38px;
    font-weight: 700;
    line-height: 1;
    color: #ea4c89;
    float: right
}

@media only screen and (max-width:799px) {
    .p-ticketDetailHeaderPrice {
        font-size: 30px;
        text-align: right;
        float: right;
        margin-top: 0
    }
}

.p-ticketDetailHeaderPrice_content {
    display: flex;
    align-items: baseline
}

.p-ticketDetailHeaderPrice_description {
    font-size: 14px;
    color: #ef0d0d;
    text-align: left;
    margin-bottom: 5px
}

@media only screen and (max-width:799px) {
    .p-ticketDetailHeaderPrice_description {
        font-size: 12px
    }
}

.p-ticketDetailHeaderPrice_count {
    position: relative;
    top: -6px;
    border-radius: 6px;
    background: #f7f9fe;
    font-size: 18px;
    font-weight: 700;
    margin-right: 10px;
    padding: 6px 10px
}

@media only screen and (max-width:799px) {
    .p-ticketDetailHeaderPrice_count {
        top: -4px;
        font-size: 14px;
        padding: 6px 10px
    }
}

.p-ticketDetailHeaderPrice_count span {
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 22px;
    margin-right: 5px
}

@media only screen and (max-width:799px) {
    .p-ticketDetailHeaderPrice_count span {
        font-size: 18px;
        margin-right: 3px
    }
}

.p-ticketDetailHeaderPrice span {
    position: relative;
    display: block;
    font-size: 12px;
    font-weight: 400;
    text-align: left;
    width: 52px;
    margin: 8px 15px 0 0
}

@media only screen and (max-width:799px) {
    .p-ticketDetailHeaderPrice span {
        top: -1px;
        font-size: 8px;
        width: 34px;
        margin-top: 6px;
        margin-right: 10px
    }
}

.p-ticketDetailHeaderPrice small {
    font-size: 12px;
    font-weight: 400;
    color: #888;
    margin-left: 5px
}

@media only screen and (max-width:799px) {
    .p-ticketDetailHeaderPrice small {
        font-size: 8px
    }
}

.p-ticketDetailBody {
    margin-bottom: 30px;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: opacity transform height
}

@media only screen and (max-width:799px) {
    .p-ticketDetailBody {
        margin-bottom: 0
    }
}

.p-ticketDetailBody.is-hide {
    display: none
}

.p-ticketDetailDescription {
    margin-bottom: 20px
}

.p-ticketDetailDescription p {
    margin-bottom: 1.5em
}

.p-ticketDetailSchedule {
    margin-bottom: 20px
}

.p-ticketDetailSchedule_list {
    display: flex;
    align-items: center
}

.p-ticketDetailSchedule_list.is-sat strong {
    color: #ea4c89
}

.p-ticketDetailSchedule_list.is-holiday strong,
.p-ticketDetailSchedule_list.is-sun strong {
    color: #ef0d0d
}

.p-ticketDetailSchedule_list strong {
    display: block;
    margin-right: 10px
}

.p-ticketDetailItem {
    margin-bottom: 30px
}

@media only screen and (max-width:799px) {
    .p-ticketDetailItem {
        margin-bottom: 20px;
        font-size: 12px;
    }
}

.p-ticketDetailItem_label {
    border: 2px solid #ef0d0d;
    border-radius: 8px;
    display: inline-block;
    color: #ef0d0d;
    margin-bottom: 1em;
    padding: .8em 1em
}

.p-ticketDetailItem>p {
    margin-bottom: 1.5em
}

.p-ticketDetailItem>p:last-of-type {
    margin-bottom: 0;
    line-height: 1.6;
    font-size: 14px;
}

.p-ticketDetailItem_corona {
    color: #ef0d0d;
    margin: 10px 0 !important;
    padding: 10px 0
}

.p-ticketDetailItemList li {
    text-indent: -1em;
    padding-left: 1em
}

.p-ticketDetailItemList li:before {
    content: "※"
}

.p-ticketDetailItem a {
    color: #ea4c89;
    text-decoration: underline
}

.p-ticketDetailItem a[target=_blank] {
    text-decoration: none
}

.p-ticketDetailItem a[target=_blank]:after {
    content: "";
    position: relative;
    font-size: 12px;
    margin: 0 4px
}

@media only screen and (max-width:799px) {
    .p-ticketDetailItem a[target=_blank]:after {
        font-size: 12px
    }
}

.p-ticketDetailItem a:hover {
    text-decoration: none
}

.p-ticketDetailItem:last-of-type {
    margin-bottom: 0
}

.p-ticketDetailBuy {
    border: 10px solid #f3f3f3;
    border-radius: 12px;
    margin-top: 40px;
    margin-bottom: 40px;
    padding: 40px
}

@media only screen and (max-width:799px) {
    .p-ticketDetailBuy {
        border-radius: 0;
        margin-top: 0;
        margin-bottom: 0;
        padding: 20px
    }
}

.p-ticketDetailBuy_headline {
    font-size: 20px;
    line-height: 1;
    color: #ea4c89
}

@media only screen and (max-width:799px) {
    .p-ticketDetailBuy_headline {
        font-size: 15px
    }
}

.p-ticketDetailBuyItem {
    border-bottom: 1px solid #eee;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 20px;
    padding: 20px 0
}

@media only screen and (max-width:799px) {
    .p-ticketDetailBuyItem {
        margin-bottom: 10px;
        padding: 20px 0
    }
}

.p-ticketDetailBuyItem_text {
    margin-right: 20px
}

.p-ticketDetailBuyItem_count {
    border-radius: 4px;
    background: #f8f8f8;
    display: block;
    font-size: 10px;
    font-weight: 400;
    white-space: nowrap;
    margin-right: 10px;
    padding: 4px
}

.p-ticketDetailBuyItem_count span {
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 12px
}

.p-ticketDetailBuyItem_number {
    display: flex;
    align-items: center;
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 24px;
    font-weight: 400;
    line-height: 1
}

@media only screen and (max-width:799px) {
    .p-ticketDetailBuyItem_number {
        font-size: 20px
    }
}

.p-ticketDetailBuyItem_name {
    font-size: 12px;
    margin-bottom: 5px
}

@media only screen and (max-width:799px) {
    .p-ticketDetailBuyItem_name {
        font-size: 8px
    }
}

.p-ticketDetailBuyItem_title {
    font-size: 16px;
    line-height: 1.5
}

@media only screen and (max-width:799px) {
    .p-ticketDetailBuyItem_title {
        font-size: 14px
    }
}

.p-ticketDetailBuy_conversion {
    overflow: hidden;
    width: 100%
}

.p-ticketDetailBuy_limit {
    border-radius: 6px;
    background: #f8f8f8;
    box-sizing: border-box;
    font-size: 14px;
    font-weight: 700;
    color: #ef0d0d;
    text-align: center;
    clear: both;
    width: 360px;
    margin: auto auto 10px;
    padding: 5px
}

@media only screen and (max-width:799px) {
    .p-ticketDetailBuy_limit {
        font-size: 12px;
        float: none;
        width: 100%
    }
}

.p-ticketDetailBuy_button {
    clear: both;
    width: 360px;
    margin: auto
}

@media only screen and (max-width:799px) {
    .p-ticketDetailBuy_button {
        float: none;
        width: 100%
    }
}

.p-ticketDetailBuy_button.is-disable button {
    background: #ccc;
    pointer-events: none
}

.p-ticketDetailBuy_button .c-button {
    display: block
}

.p-ticketDetailBuy_button .c-button button {
    height: 70px
}

@media only screen and (max-width:799px) {
    .p-ticketDetailBuy_button .c-button button {
        font-size: 16px
    }
}

.p-ticketDetailBuyList {
    float: right;
    margin-bottom: 10px
}

.p-ticketDetailBuyList_item {
    display: flex;
    align-items: center;
    justify-content: space-between
}

.p-ticketDetailBuyList_headline {
    font-size: 14px;
    width: 130px
}

@media only screen and (max-width:799px) {
    .p-ticketDetailBuyList_headline {
        font-size: 12px;
        width: 90px
    }
}

.p-ticketDetailBuyList_body {
    display: flex;
    align-items: baseline;
    justify-content: flex-end;
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 32px;
    font-weight: 700;
    min-width: 145px
}

@media only screen and (max-width:799px) {
    .p-ticketDetailBuyList_body {
        font-size: 26px;
        min-width: 135px
    }
}

.p-ticketDetailBuyList_body.is-sum {
    color: #ea4c89
}

.p-ticketDetailBuyList_body.is-count {
    font-size: 24px
}

@media only screen and (max-width:799px) {
    .p-ticketDetailBuyList_body.is-count {
        font-size: 20px
    }
}

.p-ticketDetailBuyList_body.is-tonttu {
    flex: 1;
    font-size: 24px
}

@media only screen and (max-width:799px) {
    .p-ticketDetailBuyList_body.is-tonttu {
        font-size: 20px
    }
}

.p-ticketDetailBuyList_body.is-tonttu:after {
    position: relative;
    top: 2px;
    left: 0;
    left: 5px;
    background: url("../img/global/tonttu.svg");
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    content: "";
    width: 20px;
    height: 20px;
    margin-left: 7px
}

@media only screen and (max-width:799px) {
    .p-ticketDetailBuyList_body.is-tonttu:after {
        top: 2px;
        left: 0;
        width: 18px;
        height: 18px;
        margin: 8px -2px 0 10px
    }
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .p-ticketDetailBuyList_body.is-tonttu:after {
        height: 18px
    }
}

.p-ticketDetailBuyList_body small {
    font-size: 10px;
    font-weight: 400;
    color: #888;
    margin-left: 5px
}

@media only screen and (max-width:799px) {
    .p-ticketDetailBuyList_body small {
        font-size: 8px;
        margin-left: 3px
    }
}

.p-ticketDetailCount {
    display: flex;
    justify-content: space-between
}

.p-ticketDetailCount_button {
    border-radius: 20px;
    background: #e5e5e5;
    font-size: 22px;
    line-height: 37px;
    text-align: center;
    pointer-events: all;
    width: 40px;
    height: 40px;
    cursor: pointer
}

@media only screen and (max-width:799px) {
    .p-ticketDetailCount_button {
        border-radius: 20px;
        background: #e5e5e5;
        display: flex;
        justify-content: center;
        font-size: 22px;
        line-height: 37px;
        text-align: center;
        pointer-events: all;
        width: 40px;
        height: 40px;
        cursor: pointer
    }
}

@media only screen and (min-width:1024px) {
    .p-ticketDetailCount_button:hover {
        opacity: .7
    }
}

.p-ticketDetailCount_button.is-disabled {
    pointer-events: none;
    opacity: .2;
    cursor: auto
}

.p-ticketDetailCount_index {
    margin: -1px 15px 0
}

@media only screen and (max-width:799px) {
    .p-ticketDetailCount_index {
        margin: 2px 15px 0
    }
}

.p-ticketDetailFixButton {
    position: fixed;
    bottom: 40px;
    left: 50%;
    z-index: 1000;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: opacity transform height;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

@media only screen and (max-width:799px) {
    .p-ticketDetailFixButton {
        bottom: 35px;
        width: 200px
    }
}

.p-ticketDetailFixButton.is-hide {
    opacity: 0
}

@media only screen and (min-width:1024px) {
    .p-ticketDetailFixButton a:hover {
        background: #ea4c89;
        opacity: 1 !important
    }
}

.p-ticketDetailBuyForm {
    border-top: 1px solid #eee;
    margin: auto;
    padding-top: 20px;
    padding-bottom: 20px
}

.p-ticketDetailBuyForm_headline {
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 10px
}

.p-ticketDetailBuyFormItem {
    display: flex;
    align-items: center;
    margin-bottom: 15px
}

@media only screen and (max-width:799px) {
    .p-ticketDetailBuyFormItem {
        margin-bottom: 10px
    }
}

.p-ticketDetailBuyFormItem_headline {
    font-weight: 700;
    width: 80px;
    margin-right: 20px
}

@media only screen and (max-width:799px) {
    .p-ticketDetailBuyFormItem_headline {
        width: 60px;
        margin-right: 10px
    }
}

.p-ticketDetailBuyFormItem_text {
    font-size: 14px
}

@media only screen and (max-width:799px) {
    .p-ticketDetailBuyFormItem_text {
        font-size: 12px
    }
}

.p-ticketDetailBuyFormItem_body {
    flex: 1
}

.p-ticketDetailBuyFormItem_body .c-formSelect {
    margin-right: 0
}

.p-ticketDetailBuyFormItem_body .c-formTextGroup_form {
    position: relative
}

.p-ticketDetailBuyFormItem_body .c-formTextGroup_form .c-formTextGroup_headline {
    position: absolute;
    top: -9px;
    left: 10px;
    background: #fff;
    font-size: 12px;
    font-weight: 700;
    z-index: 2;
    color: #888;
    padding: 0 8px
}

@media only screen and (max-width:799px) {
    .p-ticketDetailBuyFormItem_body .c-formTextGroup_form .c-formTextGroup_headline {
        top: -9px;
        left: 8px;
        background: #fff;
        font-size: 10px;
        padding: 0 8px
    }
}

.p-ticketDetailBuyFormItem_body .c-formTextGroup_form .c-formText {
    position: relative;
    z-index: 1
}

.p-ticketPayment {
    position: relative
}

@media only screen and (max-width:799px) {
    .p-ticketPayment {
        min-height: calc(100vh - 70px);
        margin-top: 20px
    }
}

.p-ticketPayment_content {
    position: relative
}

.is-done .p-ticketPayment_content {
    display: none;
    pointer-events: none
}

.p-ticketPaymentStep {
    border-radius: 6px;
    background: #f8f8f8;
    height: 55px;
    margin-bottom: 30px
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentStep {
        margin-bottom: 20px
    }
}

.p-ticketPaymentStep[data-current=done] .is-done,
.p-ticketPaymentStep[data-current=payment] .is-payment {
    color: #ea4c89
}

.p-ticketPaymentStep_content {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 55px;
    margin-left: -10px
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentStep_content {
        margin-left: -8px
    }
}

.p-ticketPaymentStepItem {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    color: #888;
    text-align: center
}

.p-ticketPaymentStepItem span {
    display: block;
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 10px;
    font-weight: 400;
    line-height: 1;
    letter-spacing: .1em
}

.p-ticketPaymentStepItem:nth-of-type(2):after,
.p-ticketPaymentStepItem:nth-of-type(2):before {
    background: #ddd;
    display: inline-block;
    content: "";
    width: 20px;
    height: 1px;
    margin: 0 10px
}

.p-ticketPaymentItem {
    border-bottom: 1px solid #eee;
    margin-bottom: 20px;
    padding-bottom: 10px
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentItem {
        border-bottom: 1px solid #eee;
        margin-bottom: 20px;
        padding-bottom: 10px
    }
}

.p-ticketPaymentItem_text {
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentItem_text {
        margin-bottom: 0
    }
}

.p-ticketPaymentItem_name {
    font-size: 14px;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentItem_name {
        font-size: 12px;
        margin-bottom: 5px
    }
}

.p-ticketPaymentItem_title {
    font-size: 16px;
    min-height: 1em
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentItem_title {
        font-size: 14px;
        margin-bottom: 5px
    }
}

.p-ticketPaymentItem_confirm {
    font-size: 16px;
    min-height: 1em
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentItem_confirm {
        font-size: 14px;
        margin-bottom: 5px
    }
}

.p-ticketPaymentItem_total {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    font-weight: 700
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentItem_total {
        font-size: 14px
    }
}

.p-ticketPaymentItem_tonttu {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    font-weight: 700
}

.p-ticketPaymentItem_tonttu strong {
    display: flex;
    font-size: 20px;
    font-weight: 700
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentItem_tonttu strong {
        font-size: 16px
    }
}

.p-ticketPaymentItem_tonttu strong:after {
    position: relative;
    top: 7px;
    left: 5px;
    background: url("../img/global/tonttu.svg");
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    content: "";
    width: 20px;
    height: 20px;
    margin-left: 7px
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentItem_tonttu strong:after {
        top: -4px;
        left: 0;
        width: 18px;
        height: 18px;
        margin: 8px -2px 0 10px
    }
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .p-ticketPaymentItem_tonttu strong:after {
        height: 18px
    }
}

.p-ticketPaymentItem_count {
    position: relative;
    top: -2px;
    border-radius: 4px;
    background: #f7f9fe;
    display: block;
    font-size: 14px;
    line-height: 1;
    margin-right: 10px;
    padding: 6px
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentItem_count {
        font-size: 10px;
        padding: 4px
    }
}

.p-ticketPaymentItem_count>span {
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 16px
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentItem_count>span {
        font-size: 12px
    }
}

.p-ticketPaymentItem_number {
    display: flex;
    align-items: baseline;
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 28px;
    font-weight: 700;
    color: #ea4c89
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentItem_number {
        font-size: 24px
    }
}

.p-ticketPaymentItem_number small {
    font-size: 12px;
    font-weight: 400;
    color: #888;
    margin-left: 5px
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentItem_number small {
        font-size: 10px
    }
}

.p-ticketPayment_back {
    margin-top: 40px
}

@media only screen and (max-width:799px) {
    .p-ticketPayment_back {
        margin-top: 20px
    }
}

.p-ticketPayment_back a {
    font-size: 16px
}

@media only screen and (max-width:799px) {
    .p-ticketPayment_back a {
        font-size: 14px
    }
}

.p-ticketPayment_back a:before {
    content: ""
}

.p-ticketPayment_back a:hover {
    text-decoration: none
}

@media only screen and (min-width:1024px) {
    .p-ticketPayment_back a:hover {
        opacity: .7
    }
}

.p-ticketPayment_back a:before {
    position: relative;
    font-size: 12px;
    margin-right: 8px
}

@media only screen and (max-width:799px) {
    .p-ticketPayment_back a:before {
        font-size: 10px;
        margin-right: 5px
    }
}

.p-ticketPaymentDone {
    top: 0;
    left: 0;
    box-sizing: border-box;
    text-align: center;
    pointer-events: none;
    opacity: 0;
    overflow: hidden;
    width: 100%;
    height: 100%;
    height: 0;
    transition-timing-function: cubic-bezier(.165, .84, .44, 1);
    transition-duration: .35s;
    transition-property: opacity, -webkit-transform;
    transition-property: opacity, transform;
    transition-property: opacity, transform, -webkit-transform
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentDone {
        margin-bottom: 30px
    }
}

.is-done .p-ticketPaymentDone {
    pointer-events: all;
    opacity: 1;
    height: auto
}

.is-done .p-ticketPaymentDone .p-ticketPaymentDone_content {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0)
}

.p-ticketPaymentDoneOverlay {
    position: absolute;
    top: 70px;
    left: 0;
    background: #fff;
    z-index: 1001;
    pointer-events: none;
    opacity: 0;
    width: 100%;
    height: calc(100% - 120px);
    margin: auto auto 20px;
    transition-timing-function: cubic-bezier(.165, .84, .44, 1);
    transition-duration: .35s;
    transition-property: opacity, -webkit-transform;
    transition-property: opacity, transform;
    transition-property: opacity, transform, -webkit-transform
}

.p-ticketPaymentDoneOverlay_icon {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 140px;
    height: 140px;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentDoneOverlay_icon {
        width: 60px;
        height: 60px
    }
}

.p-ticketPaymentDoneOverlay_icon svg {
    width: 60px;
    height: 60px
}

.p-ticketPaymentDoneOverlay_icon .border {
    stroke: #ea4c89;
    stroke-dasharray: 251;
    stroke-dashoffset: 62.75;
    transition: stroke-dashoffset .35s cubic-bezier(.165, .84, .44, 1);
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    -webkit-animation: spin 1s linear infinite;
    animation: spin 1s linear infinite
}

.is-paymentLoading .p-ticketPaymentDoneOverlay {
    pointer-events: all;
    opacity: 1
}

.is-done .p-ticketPaymentDoneOverlay {
    pointer-events: none;
    opacity: 0
}

.p-ticketPaymentDone_content {
    background: #fff;
    box-sizing: border-box;
    overflow-y: auto;
    height: 100%;
    transition-delay: .6s;
    transition-timing-function: cubic-bezier(.165, .84, .44, 1);
    transition-duration: .35s;
    transition-property: opacity, -webkit-transform;
    transition-property: opacity, transform;
    transition-property: opacity, transform, -webkit-transform;
    -webkit-overflow-scrolling: touch
}

.p-ticketPaymentDone_content .c-button {
    width: 240px
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentDone_content .c-button {
        width: 200px;
        margin: auto
    }
}

.p-ticketPaymentDone_content .c-button>span {
    font-size: 14px;
    font-weight: 400;
    margin-top: 10px
}

.p-ticketPaymentDone_content .c-button a {
    padding-right: 0;
    padding-left: 0
}

.p-ticketPaymentDone_content .c-button span>span {
    font-size: 14px
}

.p-ticketPaymentDone_body {
    overflow-y: auto;
    height: 100%
}

.p-ticketPaymentDone_logo {
    width: 240px;
    margin: 0 auto -10px
}

.p-ticketPaymentDone_logo img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentDone_logo {
        width: 60%;
        margin: 0 auto
    }
}

.p-ticketPaymentDone_message {
    text-align: center;
    margin-bottom: 40px
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentDone_message {
        margin-bottom: 30px;
        padding-top: 10px
    }
}

.p-ticketPaymentDone_message p {
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentDone_message p {
        margin-bottom: 20px
    }
}

.p-ticketPaymentDone_message p a {
    text-decoration: underline
}

.p-ticketPaymentDone_headline {
    font-size: 24px;
    color: #ea4c89;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentDone_headline {
        font-size: 20px
    }
}

.p-ticketPaymentDoneAction {
    border-top: 1px solid #eee;
    text-align: center;
    margin-bottom: 4px;
    padding-top: 40px
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentDoneAction {
        padding-top: 20px
    }
}

.p-ticketPaymentDoneAction_headline {
    font-size: 24px;
    line-height: 1;
    color: #ea4c89;
    text-align: center;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentDoneAction_headline {
        font-size: 20px;
        line-height: 1.5;
        margin-bottom: 10px
    }
}

.p-ticketPaymentDoneAction p {
    margin-bottom: 1em
}

.p-ticketPaymentDoneAction_support {
    border-bottom: 1px solid #eee;
    margin-bottom: 40px;
    padding-bottom: 40px
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentDoneAction_support {
        margin-bottom: 30px;
        padding-bottom: 30px
    }
}

.p-ticketPaymentDoneAction_support img {
    width: 100%;
    margin: 0 auto 10px
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentDoneAction_support img {
        width: 100%
    }
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentDoneAction_content {
        display: block
    }
}

.p-ticketPaymentDoneAction_main {
    display: flex;
    justify-content: space-between;
    margin-bottom: 50px
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentDoneAction_main {
        display: block;
        margin-bottom: 40px
    }
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentDoneAction_main .c-button:first-of-type {
        margin-bottom: 10px
    }
}

.p-ticketPaymentDoneAction_main .c-button {
    width: 300px
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentDoneAction_main .c-button {
        width: 100%
    }
}

.p-ticketPaymentDoneAction_sub {
    display: flex;
    justify-content: center;
    width: calc(100% + 10px);
    margin-left: -5px
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentDoneAction_sub {
        width: calc(100% + 10px);
        margin-left: -5px
    }
}

.p-ticketPaymentDoneAction_sub .c-button {
    width: 150px;
    margin: 0 5px
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentDoneAction_sub .c-button {
        width: 100%
    }
}

.p-ticketPaymentDoneAction_sub .c-button a {
    font-size: 14px;
    padding: 8px 0
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentDoneAction_sub .c-button a {
        font-size: 14px;
        padding: 7px 0
    }
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentDoneShare {
        margin-top: 10px
    }
}

.p-ticketPaymentDoneShare_headline {
    font-size: 24px;
    color: #ea4c89;
    text-align: center;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentDoneShare_headline {
        font-size: 20px;
        margin-bottom: 10px
    }
}

.p-ticketPaymentDoneShare_textarea {
    border-radius: 6px;
    background: #f8f8f8;
    font-size: 14px;
    margin-bottom: 20px;
    padding: 15px
}

@media only screen and (max-width:799px) {
    .p-ticketPaymentDoneShare_textarea {
        font-size: 12px
    }
}

.p-ticketPaymentDoneShare_button {
    display: flex;
    justify-content: center
}

html[data-mode=ticketUse] body {
    background: #ea4c89;
    transition-timing-function: linear;
    transition-duration: .2s;
    transition-property: background
}

html[data-mode=ticketUse] .l-header {
    display: none
}

html[data-mode=ticketUse] .l-containers_main {
    background: none
}

html[data-mode=ticketUse] .l-footer {
    display: none
}

.p-myTicket {
    position: relative
}

@media only screen and (max-width:799px) {
    .p-myTicket {
        margin-bottom: 50px
    }
}

@media only screen and (max-width:799px) {
    [data-mode=ticketUse] .p-myTicket {
        margin-bottom: 0
    }
}

@media only screen and (max-width:799px) {
    .p-myTicket_content {
        margin-top: 20px
    }
}

.p-myTicket_error {
    border: 2px solid #ef0d0d;
    border-radius: 8px;
    font-weight: 700;
    color: #ef0d0d;
    margin-bottom: 20px;
    padding: 20px
}

.p-myTicket_error.is-offline {
    position: fixed;
    top: 50%;
    left: 50%;
    background: #fff;
    z-index: 1001;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.p-myTicket_announce {
    display: block;
    font-size: 20px;
    font-weight: 700;
    color: #ef0d0d;
    text-align: center;
    margin-top: 20px
}

@media only screen and (max-width:799px) {
    .p-myTicket_announce {
        display: none
    }
}

.p-myTicketHeader {
    position: relative;
    display: flex;
    display: none;
    align-items: center;
    justify-content: center;
    color: #fff;
    height: 50px
}

[data-mode=ticketUse] .p-myTicketHeader {
    display: block
}

.p-myTicketHeader_logo {
    position: absolute;
    top: 20px;
    left: 30px;
    width: 75px
}

@media only screen and (max-width:799px) {
    .p-myTicketHeader_logo {
        top: 15px;
        left: 20px;
        left: 50%;
        width: 48px;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%)
    }
}

.p-myTicketHeader_staff {
    position: absolute;
    top: 17px;
    right: 0;
    border-bottom: 2px solid #fff;
    display: inline;
    font-weight: 700
}

.p-myTicketButton {
    width: 360px;
    margin: auto
}

@media only screen and (max-width:799px) {
    .p-myTicketButton {
        display: block;
        width: 100%
    }
}

.p-myTicketButton .c-button {
    width: 100%
}

.p-myTicketButton.is-post {
    display: block
}

.p-myTicketButton_button,
[data-mode=ticketUse] .p-myTicketButton {
    display: none
}

@media only screen and (max-width:799px) {
    .p-myTicketButton_button {
        display: block
    }
}

.p-myTicketButton.is-fixed {
    position: fixed;
    bottom: 20px;
    left: 50%;
    box-sizing: border-box;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

@media only screen and (max-width:799px) {
    .p-myTicketButton.is-fixed {
        left: 0;
        width: 100%;
        padding: 0 20px;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

.p-myTicketButton_limit {
    border-radius: 6px;
    background: #f8f8f8;
    box-sizing: border-box;
    font-size: 14px;
    font-weight: 700;
    color: #ef0d0d;
    text-align: center;
    clear: both;
    width: 360px;
    margin: 10px auto auto;
    padding: 5px
}

@media only screen and (max-width:799px) {
    .p-myTicketButton_limit {
        font-size: 12px;
        float: none;
        width: 100%
    }
}

.p-myTicketButton_limitText {
    font-weight: 700;
    color: #ef0d0d;
    margin-top: 20px
}

.p-myTicketCard {
    border-radius: 12px;
    background: #fff;
    overflow: hidden;
    margin-bottom: 30px;
    box-shadow: 0 0 5px 4px rgba(0, 0, 0, .06)
}

@media only screen and (max-width:799px) {
    .p-myTicketCard {
        margin-bottom: 20px
    }
}

.p-myTicketCard.is-used {
    background: #f2f2f2;
    box-shadow: none
}

.p-myTicketCard_header {
    position: relative;
    border-radius: 12px 12px 0 0;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    z-index: 1;
    overflow: hidden;
    padding: 0 20px 0 10px
}

.is-used .p-myTicketCard_header {
    background: #f2f2f2
}

.p-myTicketCard_logo {
    position: relative;
    width: 80px;
    height: 80px
}

@media only screen and (max-width:799px) {
    .p-myTicketCard_logo {
        width: 50px;
        height: 50px
    }
}

.p-myTicketCard_logo img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.p-myTicketCard_id {
    display: flex;
    align-items: center;
    font-size: 12px;
    line-height: 1.5;
    color: #888;
    text-align: right
}

@media only screen and (max-width:799px) {
    .p-myTicketCard_id {
        font-size: 10px
    }
}

.p-myTicketCard .p-ticketDetail {
    width: 100%;
    margin-bottom: 0;
    margin-left: 0
}

.p-myTicketCard .p-ticketDetail .p-ticketDetail_content {
    padding: 40px
}

@media only screen and (max-width:799px) {
    .p-myTicketCard .p-ticketDetail .p-ticketDetail_content {
        padding: 20px
    }
}

.p-myTicketCard .p-ticketDetail .p-ticketDetailImage {
    border-radius: 0 0 0 0;
    width: 100%;
    height: auto;
    margin: 0 0 30px
}

@media only screen and (max-width:799px) {
    .p-myTicketCard .p-ticketDetail .p-ticketDetailImage {
        margin: 0
    }
}

.p-myTicketCard .p-ticketDetail .p-ticketDetailImage_image img {
    position: relative
}

.p-myTicketCard .p-ticketDetail .p-ticketDetailHeader {
    border-bottom: none;
    margin-bottom: -10px;
    padding: 0 40px
}

@media only screen and (max-width:799px) {
    .p-myTicketCard .p-ticketDetail .p-ticketDetailHeader {
        padding: 20px 20px 0
    }
}

.p-myTicketCard .p-ticketDetail .p-ticketDetailBody {
    margin-bottom: 0;
    padding-top: 20px
}

.p-myTicketUsed {
    position: relative
}

.p-myTicketUsed_icon {
    position: absolute;
    right: 0;
    bottom: 0;
    opacity: 0;
    width: 120px;
    -webkit-animation: ticketUsedStamp .5s cubic-bezier(.645, .045, .355, 1) .2s 1;
    animation: ticketUsedStamp .5s cubic-bezier(.645, .045, .355, 1) .2s 1;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

@media only screen and (max-width:799px) {
    .p-myTicketUsed_icon {
        right: -5px;
        bottom: -5px;
        width: 100px
    }
}

.p-myTicketUsed_icon img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@-webkit-keyframes ticketUsedStamp {
    0% {
        opacity: 0;
        -webkit-transform: scale(1.4) rotate(0);
        transform: scale(1.4) rotate(0)
    }

    to {
        opacity: 1;
        -webkit-transform: scale(1) rotate(-25deg);
        transform: scale(1) rotate(-25deg)
    }
}

@keyframes ticketUsedStamp {
    0% {
        opacity: 0;
        -webkit-transform: scale(1.4) rotate(0);
        transform: scale(1.4) rotate(0)
    }

    to {
        opacity: 1;
        -webkit-transform: scale(1) rotate(-25deg);
        transform: scale(1) rotate(-25deg)
    }
}

@media only screen and (max-width:799px) {
    .p-myTicketUsed_date {
        padding-top: 60px;
        font-size: 10px
    }
}

@media only screen and (max-width:799px) {
    .p-myTicketUsed_date strong {
        font-size: 16px
    }
}

.p-myTicketBack {
    margin-top: 40px
}

@media only screen and (max-width:799px) {
    .p-myTicketBack {
        margin-top: 20px
    }
}

.p-myTicketBack_detail,
[data-mode=ticketUse] .p-myTicketBack_myticket {
    display: none
}

[data-mode=ticketUse] .p-myTicketBack_detail {
    display: inline-block
}

.p-myTicketBack a {
    font-size: 16px
}

@media only screen and (max-width:799px) {
    .p-myTicketBack a {
        font-size: 14px
    }
}

.p-myTicketBack a:before {
    content: ""
}

[data-mode=ticketUse] .p-myTicketBack a {
    color: #fff
}

.p-myTicketBack a:before {
    position: relative;
    font-size: 12px;
    margin-right: 8px
}

@media only screen and (max-width:799px) {
    .p-myTicketBack a:before {
        font-size: 10px;
        margin-right: 5px
    }
}

.p-myTicketConfirm {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    height: 100%
}

.p-myTicketConfirm_icon {
    width: 80px;
    margin: 0 auto 20px
}

.p-myTicketConfirm_contents {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    height: 100%
}

.p-myTicketConfirm_content {
    margin-top: -30px
}

.p-myTicketConfirm_content p {
    margin-bottom: 20px
}

.p-myTicketConfirm_content .c-button {
    width: 190px;
    margin: auto
}

.p-myTicketConfirm_headline {
    font-size: 20px;
    font-weight: 700;
    color: #ea4c89;
    margin-bottom: 10px
}

.p-myTicketUse {
    box-sizing: border-box;
    text-align: center;
    visibility: hidden;
    height: 0
}

[data-mode=ticketUse] .p-myTicketUse {
    visibility: visible;
    height: auto
}

.p-myTicketUse p {
    font-size: 12px
}

.p-myTicketSlide {
    position: relative;
    border: 1px solid #eee;
    border-radius: 50px;
    box-sizing: border-box;
    color: #ea4c89;
    text-align: center;
    width: 100%;
    height: 72px;
    margin-bottom: 20px;
    transition-delay: .2s;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .2s;
    transition-property: all
}

.p-myTicketSlide_success {
    position: absolute;
    color: #ea4c89;
    opacity: 0;
    transition-delay: .5s;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .5s;
    transition-property: all;
    -webkit-transform: scale(.5);
    transform: scale(.5)
}

.p-myTicketSlide_success:after {
    content: ""
}

.is-success .p-myTicketSlide_success {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1)
}

.p-myTicketSlide_success:after {
    font-size: 26px
}

.p-myTicketSlide_arrow {
    position: absolute;
    top: 10px;
    left: 14px;
    border-radius: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
    color: #fff;
    width: 50px;
    height: 50px;
    transition-timing-function: linear;
    transition-duration: .1s;
    transition-property: opacity transform height
}

.p-myTicketSlide_arrow:after {
    content: ""
}

.p-myTicketSlide_arrow.is-success:after,
.p-myTicketSlide_arrow.is-touch:after {
    -webkit-animation: none;
    animation: none
}

.p-myTicketSlide_arrow.is-success:after {
    opacity: 0
}

.p-myTicketSlide_arrow.is-success:before {
    -webkit-animation: ticketSlideArrowEnd .6s cubic-bezier(.19, 1, .22, 1) .2s alternate;
    animation: ticketSlideArrowEnd .6s cubic-bezier(.19, 1, .22, 1) .2s alternate;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

.p-myTicketSlide_arrow:before {
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 25px;
    background: #ea4c89;
    content: "";
    width: 50px;
    height: 50px;
    box-shadow: 3px 3px 4px 0 rgba(6, 71, 234, .15)
}

.p-myTicketSlide_arrow:after {
    font-size: 11px;
    z-index: 2;
    -webkit-animation: ticketSlideArrow 1s cubic-bezier(.645, .045, .355, 1) infinite alternate;
    animation: ticketSlideArrow 1s cubic-bezier(.645, .045, .355, 1) infinite alternate
}

@-webkit-keyframes ticketSlideArrow {
    0% {
        opacity: 1;
        -webkit-transform: translateX(-3px);
        transform: translateX(-3px)
    }

    50% {
        opacity: 1;
        -webkit-transform: translateX(3px);
        transform: translateX(3px)
    }

    to {
        opacity: 1;
        -webkit-transform: translateX(-3px);
        transform: translateX(-3px)
    }
}

@keyframes ticketSlideArrow {
    0% {
        opacity: 1;
        -webkit-transform: translateX(-3px);
        transform: translateX(-3px)
    }

    50% {
        opacity: 1;
        -webkit-transform: translateX(3px);
        transform: translateX(3px)
    }

    to {
        opacity: 1;
        -webkit-transform: translateX(-3px);
        transform: translateX(-3px)
    }
}

@-webkit-keyframes ticketSlideArrowEnd {
    0% {
        opacity: 1;
        box-shadow: 3px 3px 4px 0 rgba(6, 71, 234, .15);
        -webkit-transform: scale(1);
        transform: scale(1)
    }

    to {
        opacity: 0;
        box-shadow: 0 0 0 0 hsla(0, 0%, 100%, 0);
        -webkit-transform: scale(0);
        transform: scale(0)
    }
}

@keyframes ticketSlideArrowEnd {
    0% {
        opacity: 1;
        box-shadow: 3px 3px 4px 0 rgba(6, 71, 234, .15);
        -webkit-transform: scale(1);
        transform: scale(1)
    }

    to {
        opacity: 0;
        box-shadow: 0 0 0 0 hsla(0, 0%, 100%, 0);
        -webkit-transform: scale(0);
        transform: scale(0)
    }
}

.p-myTicketSlide_content {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: 700;
    width: 100%;
    height: 100%
}

.p-myTicketOverlay {
    position: fixed;
    top: 0;
    left: 0;
    background: #fff;
    z-index: 1001;
    pointer-events: none;
    opacity: 1;
    opacity: 0;
    width: 100%;
    height: 100%;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: opacity transform height
}

.p-myTicketOverlay.is-active {
    opacity: 1
}

.uq-top {
    overflow: hidden
}

.uq-topHero {
    position: relative;
    box-sizing: border-box;
    text-align: center;
    height: 90vh;
    min-height: 600px;
    max-height: 900px;
    margin-bottom: 100px;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .6s;
    transition-property: opacity transform
}

@media only screen and (max-width:799px) {
    .uq-topHero {
        border: none;
        height: 86vh;
        min-height: 500px;
        max-height: 580px;
        margin-bottom: 100px
    }

    .landscape .uq-topHero {
        min-height: 540px
    }
}

.uq-topHero_overlay {
    position: absolute;
    top: 0;
    left: 0;
    background: #ea4c89;
    z-index: 100;
    pointer-events: none;
    opacity: 1;
    width: 100vw;
    height: 100vh;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

@media only screen and (max-width:799px) {
    .uq-topHero_overlay {
        height: 110vh
    }
}

.is-introEnd .uq-topHero_overlay {
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .6s;
    transition-property: opacity transform;
    -webkit-animation-name: introEndOverlay;
    animation-name: introEndOverlay
}

@media only screen and (max-width:799px) {
    .is-introEnd .uq-topHero_overlay {
        -webkit-animation-name: introEndOverlaySp;
        animation-name: introEndOverlaySp
    }
}

.is-introSkip .uq-topHero_overlay {
    opacity: 0
}

@-webkit-keyframes introEndOverlay {
    0% {
        z-index: 100;
        opacity: 1;
        height: 100vh
    }

    50% {
        z-index: 100;
        opacity: 1;
        height: 90vh
    }

    to {
        z-index: 0;
        opacity: 0;
        height: 90vh
    }
}

@keyframes introEndOverlay {
    0% {
        z-index: 100;
        opacity: 1;
        height: 100vh
    }

    50% {
        z-index: 100;
        opacity: 1;
        height: 90vh
    }

    to {
        z-index: 0;
        opacity: 0;
        height: 90vh
    }
}

@-webkit-keyframes introEndOverlaySp {
    0% {
        z-index: 100;
        opacity: 1;
        height: 100vh
    }

    50% {
        z-index: 100;
        opacity: 1;
        height: 80vh
    }

    to {
        z-index: 0;
        opacity: 0;
        height: 80vh
    }
}

@keyframes introEndOverlaySp {
    0% {
        z-index: 100;
        opacity: 1;
        height: 100vh
    }

    50% {
        z-index: 100;
        opacity: 1;
        height: 80vh
    }

    to {
        z-index: 0;
        opacity: 0;
        height: 80vh
    }
}

.uq-topHero_content {
    z-index: 1;
    width: 100%;
    margin-top: -15px
}

.uq-topHero_content,
.uq-topHero_logo {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.uq-topHero_logo {
    z-index: 1000;
    width: 500px;
}

@media only screen and (max-width:799px) {
    .uq-topHero_logo {
        width: 80%;
        margin-top: -30px
    }
}

.is-introSkip .uq-topHero_logo {
    z-index: 0
}

.is-introEnd .uq-topHero_logo {
    -webkit-animation-name: introEndZindex;
    animation-name: introEndZindex;
    -webkit-animation-duration: 0;
    animation-duration: 0;
    -webkit-animation-timing-function: liner;
    animation-timing-function: liner;
    -webkit-animation-delay: .8s;
    animation-delay: .8s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

@-webkit-keyframes introEndZindex {
    0% {
        z-index: 1000
    }

    to {
        z-index: 0
    }
}

@keyframes introEndZindex {
    0% {
        z-index: 1000
    }

    to {
        z-index: 0
    }
}

.uq-topHero_logo .s {
    opacity: 0;
    -webkit-transform-origin: top;
    transform-origin: top;
    -webkit-animation-duration: 3.1s;
    animation-duration: 3.1s;
    -webkit-animation-timing-function: cubic-bezier(.645, .045, .355, 1);
    animation-timing-function: cubic-bezier(.645, .045, .355, 1);
    -webkit-animation-timing-function: cubic-bezier(.545, .545, 1.555, 1);
    animation-timing-function: cubic-bezier(.545, .545, 1.555, 1);
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

.is-introStart .uq-topHero_logo {
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .6s;
    transition-property: opacity transform
}

.uq-topHero_logo .s2 {
    -webkit-animation-delay: .08s;
    animation-delay: .08s
}

.uq-topHero_logo .s3 {
    -webkit-animation-delay: .16s;
    animation-delay: .16s
}

.uq-topHero_logo .s4 {
    -webkit-animation-delay: .24s;
    animation-delay: .24s
}

.uq-topHero_logo .s5 {
    -webkit-animation-delay: .32s;
    animation-delay: .32s
}

.uq-topHero_logo .s6 {
    -webkit-animation-delay: .4s;
    animation-delay: .4s
}

.uq-topHero_logo .s7 {
    -webkit-animation-delay: .48s;
    animation-delay: .48s
}

.uq-topHero_logo .s1,
.uq-topHero_logo .s2,
.uq-topHero_logo .s3,
.uq-topHero_logo .s4,
.uq-topHero_logo .s5,
.uq-topHero_logo .s6,
.uq-topHero_logo .s7 {
    opacity: 0;
    -webkit-animation-duration: 3s;
    animation-duration: 3s;
    -webkit-animation-timing-function: cubic-bezier(.545, .545, 1.555, 1);
    animation-timing-function: cubic-bezier(.545, .545, 1.555, 1);
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

.is-introStart .uq-topHero_logo .s1,
.is-introStart .uq-topHero_logo .s2,
.is-introStart .uq-topHero_logo .s3,
.is-introStart .uq-topHero_logo .s4,
.is-introStart .uq-topHero_logo .s5,
.is-introStart .uq-topHero_logo .s6,
.is-introStart .uq-topHero_logo .s7 {
    -webkit-animation-name: logoMotionIn;
    animation-name: logoMotionIn
}

@-webkit-keyframes logoMotionIn {
    0% {
        opacity: 0;
        -webkit-transform: matrix(1, 0, 0, 1.4, 0, 30);
        transform: matrix(1, 0, 0, 1.4, 0, 30)
    }

    2.85% {
        -webkit-transform: matrix(1, 0, 0, 1.045, 0, 16.574);
        transform: matrix(1, 0, 0, 1.045, 0, 16.574)
    }

    3.1% {
        -webkit-transform: matrix(1, 0, 0, 1.02, 0, 15.426);
        transform: matrix(1, 0, 0, 1.02, 0, 15.426)
    }

    4.25% {
        -webkit-transform: matrix(1, 0, 0, .94, 0, 10.464);
        transform: matrix(1, 0, 0, .94, 0, 10.464)
    }

    5.66% {
        -webkit-transform: matrix(1, 0, 0, .91, 0, 5.344);
        transform: matrix(1, 0, 0, .91, 0, 5.344)
    }

    6.21% {
        -webkit-transform: matrix(1, 0, 0, .914, 0, 3.65);
        transform: matrix(1, 0, 0, .914, 0, 3.65)
    }

    7.36% {
        -webkit-transform: matrix(1, 0, 0, .937, 0, .707);
        transform: matrix(1, 0, 0, .937, 0, .707)
    }

    9.01% {
        -webkit-transform: matrix(1, 0, 0, .98, 0, -2.162);
        transform: matrix(1, 0, 0, .98, 0, -2.162)
    }

    9.31% {
        -webkit-transform: matrix(1, 0, 0, .987, 0, -2.527);
        transform: matrix(1, 0, 0, .987, 0, -2.527)
    }

    10.66% {
        -webkit-transform: matrix(1, 0, 0, 1.009, 0, -3.651);
        transform: matrix(1, 0, 0, 1.009, 0, -3.651)
    }

    12.31% {
        -webkit-transform: matrix(1, 0, 0, 1.018, 0, -4.084);
        transform: matrix(1, 0, 0, 1.018, 0, -4.084)
    }

    12.41% {
        -webkit-transform: matrix(1, 0, 0, 1.018, 0, -4.084);
        transform: matrix(1, 0, 0, 1.018, 0, -4.084)
    }

    19.02% {
        -webkit-transform: matrix(1, 0, 0, .997, 0, -1.408);
        transform: matrix(1, 0, 0, .997, 0, -1.408)
    }

    20.12% {
        -webkit-transform: matrix(1, 0, 0, .997, 0, -.925);
        transform: matrix(1, 0, 0, .997, 0, -.925)
    }

    25.68% {
        opacity: 1;
        -webkit-transform: matrix(1, 0, 0, 1.001, 0, .369);
        transform: matrix(1, 0, 0, 1.001, 0, .369)
    }

    27.73% {
        -webkit-transform: matrix(1, 0, 0, 1, 0, .44);
        transform: matrix(1, 0, 0, 1, 0, .44)
    }

    32.33% {
        -webkit-transform: matrix(1, 0, 0, 1, 0, .264);
        transform: matrix(1, 0, 0, 1, 0, .264)
    }

    39.04% {
        -webkit-transform: matrix(1, 0, 0, 1, 0, -.012);
        transform: matrix(1, 0, 0, 1, 0, -.012)
    }

    43.14% {
        -webkit-transform: matrix(1, 0, 0, 1, 0, -.047);
        transform: matrix(1, 0, 0, 1, 0, -.047)
    }

    45.7% {
        -webkit-transform: matrix(1, 0, 0, 1, 0, -.04);
        transform: matrix(1, 0, 0, 1, 0, -.04)
    }

    50% {
        -webkit-transform: matrix(1, 0, 0, 1, 0, -.015);
        transform: matrix(1, 0, 0, 1, 0, -.015)
    }

    58.56% {
        -webkit-transform: matrix(1, 0, 0, 1, 0, .005);
        transform: matrix(1, 0, 0, 1, 0, .005)
    }

    73.97% {
        -webkit-transform: matrix(1, 0, 0, 1, 0, -.001);
        transform: matrix(1, 0, 0, 1, 0, -.001)
    }

    89.39% {
        -webkit-transform: matrix(1, 0, 0, 1, 0, 0);
        transform: matrix(1, 0, 0, 1, 0, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: matrix(1, 0, 0, 1, 0, 0);
        transform: matrix(1, 0, 0, 1, 0, 0)
    }
}

@keyframes logoMotionIn {
    0% {
        opacity: 0;
        -webkit-transform: matrix(1, 0, 0, 1.4, 0, 30);
        transform: matrix(1, 0, 0, 1.4, 0, 30)
    }

    2.85% {
        -webkit-transform: matrix(1, 0, 0, 1.045, 0, 16.574);
        transform: matrix(1, 0, 0, 1.045, 0, 16.574)
    }

    3.1% {
        -webkit-transform: matrix(1, 0, 0, 1.02, 0, 15.426);
        transform: matrix(1, 0, 0, 1.02, 0, 15.426)
    }

    4.25% {
        -webkit-transform: matrix(1, 0, 0, .94, 0, 10.464);
        transform: matrix(1, 0, 0, .94, 0, 10.464)
    }

    5.66% {
        -webkit-transform: matrix(1, 0, 0, .91, 0, 5.344);
        transform: matrix(1, 0, 0, .91, 0, 5.344)
    }

    6.21% {
        -webkit-transform: matrix(1, 0, 0, .914, 0, 3.65);
        transform: matrix(1, 0, 0, .914, 0, 3.65)
    }

    7.36% {
        -webkit-transform: matrix(1, 0, 0, .937, 0, .707);
        transform: matrix(1, 0, 0, .937, 0, .707)
    }

    9.01% {
        -webkit-transform: matrix(1, 0, 0, .98, 0, -2.162);
        transform: matrix(1, 0, 0, .98, 0, -2.162)
    }

    9.31% {
        -webkit-transform: matrix(1, 0, 0, .987, 0, -2.527);
        transform: matrix(1, 0, 0, .987, 0, -2.527)
    }

    10.66% {
        -webkit-transform: matrix(1, 0, 0, 1.009, 0, -3.651);
        transform: matrix(1, 0, 0, 1.009, 0, -3.651)
    }

    12.31% {
        -webkit-transform: matrix(1, 0, 0, 1.018, 0, -4.084);
        transform: matrix(1, 0, 0, 1.018, 0, -4.084)
    }

    12.41% {
        -webkit-transform: matrix(1, 0, 0, 1.018, 0, -4.084);
        transform: matrix(1, 0, 0, 1.018, 0, -4.084)
    }

    19.02% {
        -webkit-transform: matrix(1, 0, 0, .997, 0, -1.408);
        transform: matrix(1, 0, 0, .997, 0, -1.408)
    }

    20.12% {
        -webkit-transform: matrix(1, 0, 0, .997, 0, -.925);
        transform: matrix(1, 0, 0, .997, 0, -.925)
    }

    25.68% {
        opacity: 1;
        -webkit-transform: matrix(1, 0, 0, 1.001, 0, .369);
        transform: matrix(1, 0, 0, 1.001, 0, .369)
    }

    27.73% {
        -webkit-transform: matrix(1, 0, 0, 1, 0, .44);
        transform: matrix(1, 0, 0, 1, 0, .44)
    }

    32.33% {
        -webkit-transform: matrix(1, 0, 0, 1, 0, .264);
        transform: matrix(1, 0, 0, 1, 0, .264)
    }

    39.04% {
        -webkit-transform: matrix(1, 0, 0, 1, 0, -.012);
        transform: matrix(1, 0, 0, 1, 0, -.012)
    }

    43.14% {
        -webkit-transform: matrix(1, 0, 0, 1, 0, -.047);
        transform: matrix(1, 0, 0, 1, 0, -.047)
    }

    45.7% {
        -webkit-transform: matrix(1, 0, 0, 1, 0, -.04);
        transform: matrix(1, 0, 0, 1, 0, -.04)
    }

    50% {
        -webkit-transform: matrix(1, 0, 0, 1, 0, -.015);
        transform: matrix(1, 0, 0, 1, 0, -.015)
    }

    58.56% {
        -webkit-transform: matrix(1, 0, 0, 1, 0, .005);
        transform: matrix(1, 0, 0, 1, 0, .005)
    }

    73.97% {
        -webkit-transform: matrix(1, 0, 0, 1, 0, -.001);
        transform: matrix(1, 0, 0, 1, 0, -.001)
    }

    89.39% {
        -webkit-transform: matrix(1, 0, 0, 1, 0, 0);
        transform: matrix(1, 0, 0, 1, 0, 0)
    }

    to {
        opacity: 1;
        -webkit-transform: matrix(1, 0, 0, 1, 0, 0);
        transform: matrix(1, 0, 0, 1, 0, 0)
    }
}

@media only screen and (max-width:799px) {
    .is-introEnd.landscape .uq-topHero_typo {
        -webkit-animation-name: introEndLogoLandscape;
        animation-name: introEndLogoLandscape
    }
}

.is-introSkip .uq-topHero_typo {
    -webkit-transform: translateY(-70px);
    transform: translateY(-70px);
    -webkit-animation-name: none;
    animation-name: none;
    -webkit-animation-name: saunaikitai;
    animation-name: saunaikitai
}

@media only screen and (max-width:799px) {
    .is-introSkip .uq-topHero_typo {
        -webkit-transform: translateY(-60px);
        transform: translateY(-60px);
        -webkit-animation-name: none !important;
        animation-name: none !important
    }
}

.is-introSkip .uq-topHero_typo .s {
    opacity: 1
}

.is-introEnd .uq-topHero_typo {
    -webkit-animation-name: introEndLogo;
    animation-name: introEndLogo;
    -webkit-animation-duration: .5s;
    animation-duration: .5s;
    -webkit-animation-timing-function: liner;
    animation-timing-function: liner;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

@media only screen and (max-width:799px) {
    .is-introEnd .uq-topHero_typo {
        -webkit-animation-name: introEndLogoSp;
        animation-name: introEndLogoSp
    }
}

@-webkit-keyframes introEndLogo {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    to {
        -webkit-transform: translateY(-70px);
        transform: translateY(-70px)
    }
}

@keyframes introEndLogo {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    to {
        -webkit-transform: translateY(-70px);
        transform: translateY(-70px)
    }
}

@-webkit-keyframes introEndLogoSp {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    to {
        -webkit-transform: translateY(-60px);
        transform: translateY(-60px)
    }
}

@keyframes introEndLogoSp {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    to {
        -webkit-transform: translateY(-60px);
        transform: translateY(-60px)
    }
}

@-webkit-keyframes introEndLogoLandscape {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    to {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes introEndLogoLandscape {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    to {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

.uq-topHero .s {
    fill: #fff
}

.uq-topHero .i.s {
    -webkit-animation-duration: .2s;
    animation-duration: .2s;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-delay: .7s;
    animation-delay: .7s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

.is-introStart .uq-topHero .i.s {
    -webkit-animation-name: saunaikitai;
    animation-name: saunaikitai
}

@-webkit-keyframes saunaikitai {
    0% {
        opacity: 0;
        -webkit-transform: translateY(10px);
        transform: translateY(10px)
    }

    to {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes saunaikitai {
    0% {
        opacity: 0;
        -webkit-transform: translateY(10px);
        transform: translateY(10px)
    }

    to {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

.uq-topHero_copy {
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-topHero_copy {
        font-size: 11px
    }
}

.uq-topHeroBg {
    position: relative;
    background: #ffad6f;
    overflow: hidden;
    width: 100%;
    height: 100%
}

.uq-topHeroBg_item {
    position: absolute;
    top: 0;
    left: 0;
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: cover;
    opacity: 0;
    width: 100%;
    height: 100%;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: 2s;
    transition-property: all;
    -webkit-animation-duration: 20s;
    animation-duration: 20s;
    -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

@media only screen and (max-width:799px) {
    .uq-topHeroBg_item {
        background-position: 50%
    }
}

@-webkit-keyframes zoom {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }

    to {
        -webkit-transform: scale(1.1);
        transform: scale(1.1)
    }
}

@keyframes zoom {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }

    to {
        -webkit-transform: scale(1.1);
        transform: scale(1.1)
    }
}

.uq-topHeroBg_item.is-zoom {
    -webkit-animation-name: zoom;
    animation-name: zoom
}

.uq-topHeroBg_item.is-active {
    opacity: 1
}

.uq-topHeroBg_item:first-of-type {
    background-image: url("../img/top/hero1.jpg")
}

@media only screen and (max-width:799px) {
    .uq-topHeroBg_item:first-of-type {
        background-position: 18% top
    }
}

.uq-topHeroBg_item:nth-of-type(2) {
    background-image: url("../img/top/hero2.jpg")
}

@media only screen and (max-width:799px) {
    .uq-topHeroBg_item:nth-of-type(2) {
        background-position: 32% top
    }
}

.uq-topHeroBg_item:nth-of-type(3) {
    background-image: url("../img/top/hero3.jpg")
}

@media only screen and (max-width:799px) {
    .uq-topHeroBg_item:nth-of-type(3) {
        background-position: 50%
    }
}

.uq-topHeroBg_item:nth-of-type(4) {
    background-image: url("../img/top/hero4.jpg")
}

@media only screen and (max-width:799px) {
    .uq-topHeroBg_item:nth-of-type(4) {
        background-position: right 15% center
    }
}

.uq-topHeroBg_item:nth-of-type(5) {
    background-image: url("../img/top/hero5.jpg")
}

@media only screen and (max-width:799px) {
    .uq-topHeroBg_item:nth-of-type(5) {
        background-position: left 20% center
    }
}

.uq-topSearch {
    width: 500px;
    margin: 0 auto;
    padding-top: 220px
}

@media only screen and (max-width:799px) {
    .uq-topSearch {
        width: calc(100% - 40px);
        padding-top: 140px
    }
}

.uq-topSearch_tabs {
    border: 2px solid #fff;
    border-radius: 8px;
    display: flex;
    margin-bottom: 25px
}

@media only screen and (max-width:799px) {
    .uq-topSearch_tabs {
        margin-bottom: 15px
    }
}

.uq-topSearch_tab {
    border-right: 2px solid #fff;
    width: 33.3333%;
    list-style-type: none
}

.uq-topSearch_tab:last-child {
    border-right: none
}

.uq-topSearch_tab a {
    position: relative;
    display: block;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    color: #fff;
    text-decoration: none;
    padding: 10px 0;
    cursor: pointer;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .5s;
    transition-property: all
}

@media only screen and (max-width:799px) {
    .uq-topSearch_tab a {
        font-size: 12px;
        letter-spacing: -.05em
    }
}

.desktop .uq-topSearch_tab a:hover,
.uq-topSearch_tab a.is-active {
    background: #fff;
    color: #ea4c89;
    text-decoration: none
}

.uq-topSearch_tab a.is-active:after {
    position: absolute;
    bottom: -8px;
    left: 50%;
    border-color: #fff transparent transparent;
    border-style: solid;
    border-width: 8px 9px 0;
    content: "";
    width: 0;
    height: 0;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

@media only screen and (max-width:799px) {
    .uq-topSearch_tab a.is-active:after {
        bottom: -6px;
        border-width: 6px 7px 0
    }
}

.uq-topSearch_keyword {
    position: relative
}

.uq-topSearch_keyword .c-formText {
    border: none;
    font-weight: 700;
    line-height: 58px;
    width: 100%;
    height: 60px
}

@media only screen and (max-width:799px) {
    .uq-topSearch_keyword .c-formText {
        font-size: 14px;
        line-height: 48px;
        height: 50px
    }
}

@media only screen and (max-width:799px) {
    .uq-topSearch_keyword .c-formText::-webkit-input-placeholder {
        font-size: 12px
    }

    .uq-topSearch_keyword .c-formText::-moz-placeholder {
        font-size: 12px
    }

    .uq-topSearch_keyword .c-formText:-ms-input-placeholder {
        font-size: 12px
    }

    .uq-topSearch_keyword .c-formText::-ms-input-placeholder {
        font-size: 12px
    }

    .uq-topSearch_keyword .c-formText::placeholder {
        font-size: 12px
    }
}

.uq-topSearch_button {
    position: absolute;
    top: 0;
    right: 0;
    border: none;
    border-radius: 0 8px 8px 0;
    background: -webkit-gradient(linear, left top, right top, color-stop(20%, #ea4c89), to(#f86960));
    background: -webkit-linear-gradient(left, #ea4c89 20%, #f86960);
    background: linear-gradient(to right, #ea4c89 20%, #f86960);
    font-size: 16px;
    font-weight: 700;
    line-height: 60px;
    color: #fff;
    text-align: center;
    width: 110px;
    height: 60px;
    outline: none
}

@media only screen and (max-width:799px) {
    .uq-topSearch_button {
        font-size: 14px;
        line-height: 50px;
        width: 90px;
        height: 50px
    }
}

.uq-topGps {
    display: none;
    width: calc(100% - 40px);
    margin: 20px auto 0
}

@media only screen and (max-width:799px) {
    .uq-topGps {
        display: block
    }
}

.uq-topGps a {
    border: 2px solid #fff;
    border-radius: 8px;
    display: block;
    box-sizing: border-box;
    line-height: 46px;
    color: #fff;
    text-align: center;
    text-decoration: none;
    height: 50px;
    cursor: pointer;
    font-size: 18px;
    font-weight: bold;
}

.uq-topGps span {
    position: relative;
    font-weight: 700;
    padding-left: 25px
}

.uq-topGps span:before {
    content: "";
    position: absolute;
    left: 0;
    font-size: 20px;
    line-height: 50px;
    margin-top: -2px;
    margin-right: 10px
}

.uq-topRandom {
    position: absolute;
    bottom: -50px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.uq-topRandom_message {
    position: relative;
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    color: #fff;
    margin-bottom: 10px
}

.uq-topRandom_message:before {
    left: -10px;
    -webkit-transform: rotate(-30deg);
    transform: rotate(-30deg)
}

.uq-topRandom_message:after,
.uq-topRandom_message:before {
    position: absolute;
    top: 0;
    background: #fff;
    content: "";
    width: 1px;
    height: 13px
}

.uq-topRandom_message:after {
    right: -10px;
    -webkit-transform: rotate(30deg);
    transform: rotate(30deg)
}

.uq-topRandom_character {
    width: 100px;
    margin: 0 auto 5px
}

.uq-topRandom_character img {
    width: 100%;
    height: auto
}

.uq-topRandom_button {
    position: relative
}

.uq-topRandom_button:hover a {
    background: #222;
    color: #fff
}

.uq-topRandom_button a {
    border: 2px solid #222;
    border-radius: 14px;
    display: inline-block;
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    padding: 6px 10px
}

.uq-topRandom_button a:hover {
    text-decoration: none
}

.uq-topRandom_q {
    position: absolute
}

.uq-topRandom_q:before {
    content: "";
    font-size: 12px
}

.uq-topRandom_q--1 {
    top: -10px;
    left: 0;
    color: #ef0d0d;
    -webkit-transform: rotate(-30deg);
    transform: rotate(-30deg)
}

.uq-topRandom_q--2 {
    bottom: -10px;
    left: 0
}

.uq-topRandom_q--2,
.uq-topRandom_q--3 {
    color: #ea4c89;
    -webkit-transform: rotate(30deg);
    transform: rotate(30deg)
}

.uq-topRandom_q--3 {
    top: -10px;
    right: 0
}

.uq-topRandom_q--4 {
    right: 0;
    bottom: -10px;
    color: #ef0d0d;
    -webkit-transform: rotate(-30deg);
    transform: rotate(-30deg)
}

.uq-topYodare {
    position: absolute;
    bottom: -30px;
    left: 50%;
    z-index: 3;
    pointer-events: none;
    opacity: 0;
    width: 100%;
    transition-delay: .45s;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .6s;
    transition-property: opacity transform;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    -webkit-transform: translateY(30px) translateX(-50%);
    transform: translateY(30px) translateX(-50%)
}

@media only screen and (max-width:799px) {
    .uq-topYodare {
        bottom: -30px
    }
}

.is-introEnd .uq-topYodare,
.is-introSkip .uq-topYodare {
    opacity: 1;
    -webkit-transform: translateY(0) translateX(-50%);
    transform: translateY(0) translateX(-50%)
}

.is-introSkip .uq-topYodare {
    transition-delay: 0;
    transition-duration: 0s
}

.uq-topYodare_message {
    position: absolute;
    top: -30px;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    color: #fff;
    text-align: center;
    opacity: 0;
    width: 100%
}

@media only screen and (max-width:799px) {
    .uq-topYodare_message {
        top: -25px;
        font-size: 12px
    }
}

.uq-topYodare_message span {
    position: relative;
    opacity: 0;
    transition-timing-function: cubic-bezier(.175, .885, .32, 1.275);
    transition-duration: .1s;
    transition-property: opacity
}

.uq-topYodare_message span.is-show {
    opacity: 1
}

.uq-topYodare_message span:first-of-type {
    transition-delay: 20ms
}

.uq-topYodare_message span:nth-of-type(2) {
    transition-delay: 40ms
}

.uq-topYodare_message span:nth-of-type(3) {
    transition-delay: 60ms
}

.uq-topYodare_message span:nth-of-type(4) {
    transition-delay: 80ms
}

.uq-topYodare_message span:nth-of-type(5) {
    transition-delay: .1s
}

.uq-topYodare_message span:nth-of-type(6) {
    transition-delay: .12s
}

.uq-topYodare_message span:nth-of-type(7) {
    transition-delay: .14s
}

.uq-topYodare_message span:nth-of-type(8) {
    transition-delay: .16s
}

.uq-topYodare_message span:nth-of-type(9) {
    transition-delay: .18s
}

.uq-topYodare_message span:nth-of-type(10) {
    transition-delay: .2s
}

.uq-topYodare_message span:nth-of-type(11) {
    transition-delay: .22s
}

.uq-topYodare_message span:nth-of-type(12) {
    transition-delay: .24s
}

.uq-topYodare_message span:nth-of-type(13) {
    transition-delay: .26s
}

.uq-topYodare_message span:nth-of-type(14) {
    transition-delay: .28s
}

.uq-topYodare_message span:nth-of-type(15) {
    transition-delay: .3s
}

.uq-topYodare_message span:nth-of-type(16) {
    transition-delay: .32s
}

.uq-topYodare_message span:nth-of-type(17) {
    transition-delay: .34s
}

.uq-topYodare_message span:nth-of-type(18) {
    transition-delay: .36s
}

.uq-topYodare_message span:nth-of-type(19) {
    transition-delay: .38s
}

.uq-topYodare_message span:nth-of-type(20) {
    transition-delay: .4s
}

.uq-topYodare_message span:nth-of-type(21) {
    transition-delay: .42s
}

.uq-topYodare_message span:nth-of-type(22) {
    transition-delay: .44s
}

.uq-topYodare_message span:nth-of-type(23) {
    transition-delay: .46s
}

.uq-topYodare_message span:nth-of-type(24) {
    transition-delay: .48s
}

.uq-topYodare_message span:nth-of-type(25) {
    transition-delay: .5s
}

.uq-topYodare_message span:nth-of-type(26) {
    transition-delay: .52s
}

.uq-topYodare_message span:nth-of-type(27) {
    transition-delay: .54s
}

.uq-topYodare_message span:nth-of-type(28) {
    transition-delay: .56s
}

.uq-topYodare_message span:nth-of-type(29) {
    transition-delay: .58s
}

.uq-topYodare_message span:nth-of-type(30) {
    transition-delay: .6s
}

.uq-topYodare_message.is-show {
    -webkit-animation-name: messageShow;
    animation-name: messageShow;
    -webkit-animation-duration: .6s;
    animation-duration: .6s;
    -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    -webkit-animation-direction: alternate;
    animation-direction: alternate;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

.uq-topYodare_message.is-hide {
    -webkit-animation-name: messageHide;
    animation-name: messageHide;
    -webkit-animation-duration: .6s;
    animation-duration: .6s;
    -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    -webkit-animation-direction: alternate;
    animation-direction: alternate;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

@-webkit-keyframes messageHide {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    to {
        opacity: 0;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

.uq-topYodare_character {
    width: 250px;
    margin: 0 auto 5px
}

@media only screen and (max-width:799px) {
    .uq-topYodare_character {
        width: 180px
    }
}

.uq-topYodare_character img {
    width: 100%;
    height: auto
}

.uq-topIonwater {
    position: absolute;
    right: 30px;
    bottom: -35px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #00b2d7
}

@media only screen and (max-width:799px) {
    .uq-topIonwater {
        right: 20px;
        bottom: -35px;
        display: block;
        text-align: left
    }
}

@media only screen and (max-width:799px) {
    [data-page-id=ionwater] .uq-topIonwater {
        bottom: -32px
    }
}

.uq-topIonwater_sponsord {
    position: relative;
    top: 2px;
    font-size: 9px;
    font-weight: 300;
    line-height: 1;
    margin-right: 10px
}

@media only screen and (max-width:799px) {
    .uq-topIonwater_sponsord {
        font-size: 6px;
        margin-bottom: 2px
    }
}

.uq-topIonwater_logo {
    line-height: 1;
    width: 153px
}

.uq-topIonwater_logo img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media only screen and (max-width:799px) {
    .uq-topIonwater_logo {
        width: 110px
    }
}

.uq-topInformation {
    position: absolute;
    left: 30px;
    box-sizing: border-box;
    margin: auto auto 40px
}

@media only screen and (max-width:799px) {
    .uq-topInformation {
        bottom: -120px;
        left: 0;
        font-size: 14px;
        width: 100%;
        margin-bottom: 20px;
        padding: 0 0 0 20px
    }
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .uq-topInformation {
        font-size: 12px
    }
}

.uq-topInformation_content {
    padding: 20px 0
}

@media only screen and (max-width:799px) {
    .uq-topInformation_content {
        margin-right: 20px
    }
}

.uq-topInformationItem {
    display: flex;
    font-size: 14px
}

@media only screen and (max-width:799px) {
    .uq-topInformationItem {
        font-size: 12px
    }
}

.uq-topInformationItem_date {
    font-weight: 700;
    letter-spacing: .02em;
    margin-right: 15px
}

@media only screen and (max-width:799px) {
    .uq-topInformationItem_date {
        margin-right: 10px
    }
}

.uq-topInformationItem a {
    position: relative;
    border-radius: 4px;
    border-radius: 30px;
    display: block;
    font-weight: 700;
    color: #ea4c89;
    text-align: left;
    text-decoration: none
}

.uq-topInformationItem a:hover {
    opacity: .7
}

.uq-topSakatsu {
    margin-bottom: 100px;
    width: 1100px;
    margin-right: auto;
    margin-left: auto
}

@media only screen and (max-width:799px) {
    .uq-topSakatsu {
        width: 100%;
        margin-bottom: 40px
    }
}

.uq-topSakatsu .l-content {
    margin-bottom: 0
}

.uq-topAboutSakatsu {
    background: #fff;
    display: none
}

@media only screen and (max-width:799px) {
    .uq-topAboutSakatsu {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch
    }
}

.uq-topAboutSakatsu_content {
    overflow: hidden
}

@media only screen and (max-width:799px) {
    .uq-topAboutSakatsu_content {
        width: 1240px
    }
}

.uq-topAboutSakatsu_content img {
    box-sizing: border-box;
    font-size: 0;
    float: left;
    width: 25%;
    padding: 0 1px
}

@media only screen and (max-width:799px) {
    .uq-topAboutSakatsu_content img {
        width: 300px
    }
}

.uq-toplottery {
    margin-bottom: 100px;
    width: 1100px;
    margin-right: auto;
    margin-left: auto
}

@media only screen and (max-width:799px) {
    .uq-toplottery {
        width: 100%;
        background: #f3f3f3;
        margin-top: -60px;
        margin-bottom: 40px;
        padding-top: 55px;
        padding-bottom: 20px
    }
}

@media only screen and (max-width:799px) {
    .uq-toplottery .p-goodsList {
        padding-top: 0
    }
}

.uq-toplottery_more {
    text-align: center;
    margin-top: 16px
}

.uq-topSauna {
    margin-bottom: 100px;
    width: 1100px;
    margin-right: auto;
    margin-left: auto
}

@media only screen and (max-width:799px) {
    .uq-topSauna {
        width: 100%;
        margin-bottom: 20px
    }
}

.uq-topSauna .p-saunaItem:first-of-type {
    margin-top: -20px
}

@media only screen and (max-width:799px) {
    .uq-topSauna .p-saunaItem:first-of-type {
        margin-top: 0
    }
}

.uq-topSauna .p-saunaList {
    margin-bottom: 0;
    filter: blur(5px);
}

@media only screen and (max-width:799px) {
    .uq-topSauna .p-saunaList {
        border-top: 1px solid #eee
    }
}

.uq-topSauna .l-content {
    padding: 40px
}

@media only screen and (max-width:799px) {
    .uq-topSauna .l-content {
        margin-bottom: 20px;
        padding: 0 20px
    }
}

.uq-topSauna .l-content>p {
    margin-bottom: 2em
}

.uq-topSauna_more {
    text-align: center
}

.uq-topSauna .c-button {
    margin-top: 40px
}

@media only screen and (max-width:799px) {
    .uq-topSauna .c-button {
        width: 100%;
        margin-top: 20px
    }
}

.uq-topSauna .c-button a {
    display: block
}

.uq-topMagazine {
    background: #fff;
    box-sizing: border-box;
    margin-bottom: 100px
}

@media only screen and (max-width:799px) {
    .uq-topMagazine {
        background: #f8f8f8;
        margin-bottom: 20px
    }
}

.uq-topMagazine_content {
    padding: 90px 0;
    width: 1100px;
    margin-right: auto;
    margin-left: auto
}

@media only screen and (max-width:799px) {
    .uq-topMagazine_content {
        width: 100%;
        padding: 40px 0
    }
}

.uq-topMagazine .p-saunaCardList {
    margin-bottom: 0
}

@media only screen and (max-width:799px) {
    .uq-topMagazine .p-saunaCardList {
        border-top: 1px solid #eee;
        margin-bottom: 10px;
        padding: 0 20px
    }
}

.uq-topMagazine_more {
    text-align: center
}

@media only screen and (max-width:799px) {
    .uq-topMagazine_more {
        padding: 0 20px
    }
}

.uq-topMagazine .c-button {
    margin-top: 40px
}

@media only screen and (max-width:799px) {
    .uq-topMagazine .c-button {
        width: 100%;
        margin-top: 20px
    }
}

.uq-topMagazine .c-button a {
    display: block
}

.uq-topAdvent {
    box-sizing: border-box;
    width: 1100px;
    margin: auto auto 100px
}

@media only screen and (max-width:799px) {
    .uq-topAdvent {
        background: #fff;
        width: 100%;
        margin-bottom: 0
    }
}

.uq-topAdvent_content {
    border-radius: 16px;
    background: #fff;
    box-sizing: border-box;
    padding: 40px;
    width: 1100px;
    margin-right: auto;
    margin-left: auto
}

@media only screen and (max-width:799px) {
    .uq-topAdvent_content {
        width: 100%;
        padding: 0 0 40px
    }
}

@media only screen and (max-width:799px) {
    .uq-topAdvent_list {
        border-top: 1px solid #eee;
        padding: 20px 20px 0
    }
}

.uq-topAdventItem {
    border-bottom: 1px solid #eee;
    display: flex;
    margin-bottom: 20px;
    padding-bottom: 20px
}

.uq-topAdventItem:last-of-type {
    margin-bottom: 0
}

.uq-topAdventItem_date {
    border: 1px solid #eee;
    border-radius: 4px;
    display: flex;
    flex-direction: column;
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-weight: 700;
    text-align: center;
    width: 60px;
    height: 60px;
    margin-right: 20px
}

@media only screen and (max-width:799px) {
    .uq-topAdventItem_date {
        width: 50px;
        height: 50px;
        margin-right: 15px
    }
}

.uq-topAdventItem_date span {
    border-bottom: 1px solid #eee;
    border-radius: 4px 4px 0 0;
    display: block;
    box-sizing: border-box;
    font-size: 12px;
    line-height: 1;
    color: #ea4c89;
    padding: 4px 0
}

@media only screen and (max-width:799px) {
    .uq-topAdventItem_date span {
        font-size: 10px
    }
}

.uq-topAdventItem_date strong {
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    font-size: 18px;
    line-height: 1;
    height: 100%;
    padding: 8px 0
}

@media only screen and (max-width:799px) {
    .uq-topAdventItem_date strong {
        font-size: 14px
    }
}

.uq-topAdventItem_content {
    width: calc(100% - 68px);
    margin-top: -5px
}

@media only screen and (max-width:799px) {
    .uq-topAdventItem_content {
        width: calc(100% - 60px);
        margin-top: -3px
    }
}

.uq-topAdventItem_title {
    font-size: 20px;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-topAdventItem_title {
        font-size: 15px;
        margin-bottom: 15px
    }
}

.uq-topAdventItem_user {
    display: flex;
    align-items: center;
    font-size: 14px
}

.uq-topAdventItem_user img {
    border-radius: 50px;
    width: 30px;
    height: 30px;
    margin-right: 10px
}

@media only screen and (max-width:799px) {
    .uq-topAdventItem_user img {
        width: 24px;
        height: 24px
    }
}

.uq-topAdvent_more {
    text-align: center
}

@media only screen and (max-width:799px) {
    .uq-topAdvent_more {
        padding: 0 20px
    }
}

.uq-topAdvent .c-button {
    margin-top: 40px
}

@media only screen and (max-width:799px) {
    .uq-topAdvent .c-button {
        width: 100%;
        margin-top: 20px
    }
}

.uq-topAdvent .c-button a {
    display: block
}

.uq-topNews {
    margin-bottom: 80px;
    width: 1100px;
    margin-right: auto;
    margin-left: auto
}

@media only screen and (max-width:799px) {
    .uq-topNews {
        width: 100%;
        margin-bottom: 40px
    }
}

.uq-topNews .l-content {
    padding: 40px
}

@media only screen and (max-width:799px) {
    .uq-topNews .l-content {
        border-top: 1px solid #eee;
        border-radius: 0;
        padding: 0
    }
}

.uq-topNews .p-news_content {
    position: relative;
    overflow-y: scroll;
    height: 290px;
    padding-right: 40px
}

@media only screen and (max-width:799px) {
    .uq-topNews .p-news_content {
        padding: 20px;
        height: 240px;
        -webkit-overflow-scrolling: touch
    }
}

.uq-topNews .p-news_content::-webkit-scrollbar {
    position: relative;
    width: 3px
}

.uq-topNews .p-news_content::-webkit-scrollbar-track {
    border: 2px solid #ddd
}

.uq-topNews .p-news_content::-webkit-scrollbar-thumb {
    background: #ea4c89;
    box-shadow: none
}


.uq-topNews_press {
    font-size: 14px;
    text-align: right;
    margin-bottom: 60px
}

@media only screen and (max-width:799px) {
    .uq-topNews_press {
        margin-bottom: 40px
    }
}

.uq-topNews_press a {
    color: #888;
    text-decoration: underline
}

.uq-topNews_press a:hover {
    text-decoration: none
}

.uq-topAbout {
    position: relative;
    height: 470px;
    margin-bottom: 80px
}

@media only screen and (max-width:799px) {
    .uq-topAbout {
        width: 100%;
        height: auto;
        margin-bottom: 40px
    }
}

.uq-topAbout_content {
    background: #fff;
    box-sizing: border-box;
    height: 470px;
    padding-top: 70px
}

@media only screen and (max-width:799px) {
    .uq-topAbout_content {
        height: auto;
        padding: 40px
    }
}

.uq-topAbout_body {
    box-sizing: border-box;
    width: 1100px;
    margin: 0 auto;
    padding-right: 570px
}

@media only screen and (max-width:799px) {
    .uq-topAbout_body {
        width: 100%;
        margin-bottom: 40px;
        padding: 0
    }
}

.uq-topAbout_body>p {
    margin-bottom: 30px
}

.uq-topAbout_image {
    position: absolute;
    top: 0;
    right: 0;
    background-image: url("../img/top/about.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    width: 44%;
    height: 470px
}

@media only screen and (max-width:799px) {
    .uq-topAbout_image {
        position: relative;
        width: 100%;
        height: 250px
    }
}

.uq-topGoods {
    background-image: url("../img/global/goods.jpg");
    background-repeat: no-repeat;
    background-position: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 510px;
    margin-bottom: 80px;
    width: 1100px;
    margin-right: auto;
    margin-left: auto
}

@media only screen and (max-width:799px) {
    .uq-topGoods {
        width: 100%;
        background-image: url("../img/global/goods_sp.jpg");
        background-repeat: no-repeat;
        background-position: 50%;
        background-size: cover;
        height: 568px;
        margin-bottom: 0
    }
}

.uq-topGoods_content {
    color: #fff;
    text-align: center;
    width: 1100px;
    margin-right: auto;
    margin-left: auto
}

@media only screen and (max-width:799px) {
    .uq-topGoods_content {
        width: 100%
    }
}

.uq-topGoods_headline {
    display: block;
    font-family: Montserrat;
    font-size: 60px;
    line-height: 1;
    letter-spacing: .1em;
    margin-bottom: 25px
}

@media only screen and (max-width:799px) {
    .uq-topGoods_headline {
        font-size: 45px;
        margin-bottom: 15px
    }
}

.uq-topGoods_description {
    font-size: 18px;
    font-weight: 700;
    letter-spacing: .1em;
    margin-bottom: 30px
}

@media only screen and (max-width:799px) {
    .uq-topGoods_description {
        font-size: 14px
    }
}

@media only screen and (max-width:799px) {
    .uq-topGoods .c-button {
        display: block;
        box-sizing: border-box;
        width: 240px;
        padding: 14px 0
    }
}

.uq-topGoods .c-button a {
    border: 2px solid #fff;
    background: none;
    color: #fff;
    padding: 8px 50px
}

.uq-topInfo {
    width: 1100px;
    margin: -20px auto 60px
}

.uq-topInfo img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media only screen and (max-width:799px) {
    .uq-topInfo {
        box-sizing: border-box;
        width: 100%;
        margin-top: 0;
        margin-bottom: 20px;
        padding: 0 20px
    }
}

.uq-topInfo_content {
    display: flex;
    justify-content: space-between
}

@media only screen and (max-width:799px) {
    .uq-topInfo_content {
        display: block
    }
}

.uq-topInfoItem {
    width: 100%
}

@media only screen and (max-width:799px) {
    .uq-topInfoItem {
        width: 100%;
        margin-bottom: 20px
    }
}

.desktop .uq-topInfoItem a:hover {
    opacity: .7
}

.uq-topInfo_body {
    font-size: 14px;
    line-height: 1.5;
    margin-top: 5px
}

@media only screen and (max-width:799px) {
    .uq-topInfo_body {
        font-size: 12px
    }
}

.uq-topSupport {
    display: flex;
    justify-content: space-between;
    margin-bottom: 80px;
    width: 1100px;
    margin-right: auto;
    margin-left: auto
}

@media only screen and (max-width:799px) {
    .uq-topSupport {
        display: block;
        box-sizing: border-box;
        margin-bottom: 40px;
        padding: 0 20px;
        width: 100%
    }
}

.uq-topSupport+.uq-ionwaterBanner {
    margin-top: -60px
}

@media only screen and (max-width:799px) {
    .uq-topSupport+.uq-ionwaterBanner {
        margin-top: -30px
    }
}

.uq-topSupportSauna {
    color: #fff;
    text-align: center;
    width: calc(50% - 10px);
    height: 300px
}

@media only screen and (max-width:799px) {
    .uq-topSupportSauna {
        width: 100%;
        height: 260px
    }
}

.uq-topSupportSauna a {
    border-radius: 12px;
    background-color: #ea4c89;
    background-image: url("../img/sauna_support/hero.png");
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: 80%;
    display: flex;
    align-items: center;
    color: #fff;
    height: 100%;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: color opacity
}

@media only screen and (max-width:799px) {
    .uq-topSupportSauna a {
        border-radius: 8px
    }
}

.uq-topSupportSauna a:hover {
    text-decoration: none
}

@media only screen and (min-width:1024px) {
    .uq-topSupportSauna a:hover {
        background-color: #ea4c89
    }

    .uq-topSupportSauna a:hover .uq-topSupportSauna_button {
        border: 2px solid #fff;
        background: #fff;
        color: #ea4c89
    }
}

.uq-topSupportSauna_content {
    width: 100%
}

.uq-topSupportSauna_headline {
    margin-bottom: 20px
}

.uq-topSupportSauna_headline p {
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 10px
}

.uq-topSupportSauna_headline h2 {
    font-size: 36px;
    line-height: 1.4
}

@media only screen and (max-width:799px) {
    .uq-topSupportSauna_headline h2 {
        font-size: 28px
    }
}

.uq-topSupportSauna_button {
    border: 2px solid #fff;
    border-radius: 8px;
    font-weight: 700;
    line-height: 38px;
    text-align: center;
    width: 116px;
    height: 38px;
    margin: auto;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: color opacity
}

@media only screen and (max-width:799px) {
    .uq-topSupportSauna_button {
        font-size: 12px;
        line-height: 34px;
        width: 110px;
        height: 34px
    }
}

.uq-topSupportMarket {
    border-radius: 12px;
    box-sizing: border-box;
    text-align: center;
    width: calc(50% - 10px);
    height: 300px
}

@media only screen and (max-width:799px) {
    .uq-topSupportMarket {
        width: 100%;
        height: 220px;
        margin-top: 20px;
    }
}

.uq-topSupportMarket a {
    border: 2px solid #fff;
    border-radius: 12px;
    background: #fff;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    color: #ea4c89;
    height: 100%;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: color opacity;
    overflow: hidden
}


@media only screen and (max-width:799px) {
    .uq-topSupportMarket a {
        border: 1px solid #e5e5e5;
        border-radius: 8px
    }
}

.uq-topSupportMarket a:hover {
    text-decoration: none
}

@media only screen and (min-width:1024px) {
    .uq-topSupportMarket a:hover {
        border: 2px solid #ea4c89
    }

    .uq-topSupportMarket a:hover .uq-topSupportMarket_button {
        border: 2px solid #ea4c89;
        background: #ea4c89;
        color: #fff
    }
}

.uq-topSupportMarket_content {
    width: 100%
}

.uq-topSupportMarket_headline {
    position: relative;
    z-index: 2
}

.uq-topSupportMarket_headline p {
    font-size: 12px;
    font-weight: 700;
    line-height: 1
}

.uq-topSupportMarket_headline h2 {
    font-family: Montserrat;
    font-size: 36px;
    line-height: 1;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .uq-topSupportMarket_headline h2 {
        font-size: 30px
    }
}

.uq-topSupportMarket_images {
    position: relative;
    display: flex;
    justify-content: center;
    z-index: 1;
    height: 100px
}

.uq-topSupportMarket_images div {
    position: relative;
    width: 25%;
    margin: 0 -5px
}

@media only screen and (max-width:799px) {
    .uq-topSupportMarket_images div {
        width: 25%
    }
}

@media only screen and (max-width:799px) {
    .uq-topSupportMarket_images div:nth-of-type(5) {
        display: none
    }
}

.uq-topSupportMarket_images img {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 105%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.uq-topSupportMarket_button {
    position: relative;
    border: 2px solid #ea4c89;
    border-radius: 8px;
    font-weight: 700;
    line-height: 38px;
    z-index: 2;
    text-align: center;
    width: 116px;
    height: 38px;
    margin: -5px auto auto;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: color opacity
}

@media only screen and (max-width:799px) {
    .uq-topSupportMarket_button {
        font-size: 12px;
        line-height: 34px;
        width: 110px;
        height: 34px
    }
}

.uq-teaser {
    font-size: 18px
}

@media only screen and (max-width:799px) {
    .uq-teaser {
        font-size: 16px;
        overflow: hidden
    }
}



.uq-topMovie {
    margin-bottom: 80px;
    width: 1100px;
    margin-right: auto;
    margin-left: auto;
}


@media only screen and (max-width: 799px) {
    .uq-topMovie {
        width: 100%;
        margin-bottom: 40px;
    }

}


.uq-topMovie a img {
    width: 100%
}




.uq-teaser img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.uq-teaser .l-footer_bottom {
    padding: 50px 0 80px;
    height: auto
}

.uq-teaserHeadline {
    margin-bottom: 40px
}

@media only screen and (max-width:799px) {
    .uq-teaserHeadline {
        text-align: center;
        margin-bottom: 20px
    }
}

.uq-teaserHeadline_en {
    font-weight: 700;
    font-family: Montserrat;
    font-size: 16px;
    margin-bottom: 15px;
    line-height: 1;
    color: #ea4c89
}

@media only screen and (max-width:799px) {
    .uq-teaserHeadline_en {
        font-size: 10px
    }
}

.uq-teaserHeadline_string {
    font-weight: 700;
    font-size: 44px;
    line-height: 1.6
}

@media only screen and (max-width:799px) {
    .uq-teaserHeadline_string {
        font-size: 26px
    }
}

.uq-teaserHero {
    height: 75vh;
    min-height: 600px;
    text-align: center;
    position: relative;
    background: url("../img/teaser/bg2.jpg") 50% no-repeat;
    background-size: cover
}

@media only screen and (max-width:799px) {
    .uq-teaserHero {
        height: 65vh;
        width: 100%;
        min-height: 400px
    }
}

.uq-teaserHero_loyly {
    position: absolute;
    left: 50%;
    bottom: 0;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 200px
}

.uq-teaserHero_content {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    text-align: center
}

@media only screen and (max-width:799px) {
    .uq-teaserHero_content {
        width: 100%
    }
}

.uq-teaserHero_logo {
    width: 270px;
    margin: 0 auto 30px
}

@media only screen and (max-width:799px) {
    .uq-teaserHero_logo {
        margin-top: -80px;
        width: 190px
    }
}

.uq-teaserHero_message {
    position: absolute;
    top: -5px;
    right: -55px;
    -webkit-transform: rotate(25deg);
    transform: rotate(25deg);
    color: #fff;
    font-weight: 700;
    font-size: 13px
}

@media only screen and (max-width:799px) {
    .uq-teaserHero_message {
        right: -45px;
        font-size: 9px
    }
}

.uq-teaserHero_release {
    font-size: 40px;
    font-weight: 700;
    color: #fff;
    margin-bottom: 20px;
    position: relative;
    display: inline-block
}

@media only screen and (max-width:799px) {
    .uq-teaserHero_release {
        font-size: 24px
    }
}

.uq-teaserHero_share {
    position: absolute;
    top: 20px;
    right: 20px
}

@media only screen and (max-width:799px) {
    .uq-teaserHero_share {
        left: 50%;
        right: inherit;
        top: inherit;
        bottom: -70px;
        width: 100%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%)
    }
}

.uq-teaserYodare {
    position: absolute;
    left: 50%;
    bottom: -40px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 100%
}

@media only screen and (max-width:799px) {
    .uq-teaserYodare {
        bottom: -30px
    }
}

.uq-teaserYodare_message {
    width: 100%;
    font-size: 14px;
    position: absolute;
    top: -30px;
    color: #fff;
    font-weight: 700;
    line-height: 1;
    opacity: 0;
    text-align: center
}

@media only screen and (max-width:799px) {
    .uq-teaserYodare_message {
        top: -25px;
        font-size: 12px
    }
}

.uq-teaserYodare_message span {
    transition-property: opacity;
    transition-duration: .1s;
    transition-timing-function: cubic-bezier(.175, .885, .32, 1.275);
    opacity: 0;
    position: relative
}

.uq-teaserYodare_message span.is-show {
    opacity: 1
}

.uq-teaserYodare_message span:first-of-type {
    transition-delay: 20ms
}

.uq-teaserYodare_message span:nth-of-type(2) {
    transition-delay: 40ms
}

.uq-teaserYodare_message span:nth-of-type(3) {
    transition-delay: 60ms
}

.uq-teaserYodare_message span:nth-of-type(4) {
    transition-delay: 80ms
}

.uq-teaserYodare_message span:nth-of-type(5) {
    transition-delay: .1s
}

.uq-teaserYodare_message span:nth-of-type(6) {
    transition-delay: .12s
}

.uq-teaserYodare_message span:nth-of-type(7) {
    transition-delay: .14s
}

.uq-teaserYodare_message span:nth-of-type(8) {
    transition-delay: .16s
}

.uq-teaserYodare_message span:nth-of-type(9) {
    transition-delay: .18s
}

.uq-teaserYodare_message span:nth-of-type(10) {
    transition-delay: .2s
}

.uq-teaserYodare_message span:nth-of-type(11) {
    transition-delay: .22s
}

.uq-teaserYodare_message span:nth-of-type(12) {
    transition-delay: .24s
}

.uq-teaserYodare_message span:nth-of-type(13) {
    transition-delay: .26s
}

.uq-teaserYodare_message span:nth-of-type(14) {
    transition-delay: .28s
}

.uq-teaserYodare_message span:nth-of-type(15) {
    transition-delay: .3s
}

.uq-teaserYodare_message span:nth-of-type(16) {
    transition-delay: .32s
}

.uq-teaserYodare_message span:nth-of-type(17) {
    transition-delay: .34s
}

.uq-teaserYodare_message span:nth-of-type(18) {
    transition-delay: .36s
}

.uq-teaserYodare_message span:nth-of-type(19) {
    transition-delay: .38s
}

.uq-teaserYodare_message span:nth-of-type(20) {
    transition-delay: .4s
}

.uq-teaserYodare_message span:nth-of-type(21) {
    transition-delay: .42s
}

.uq-teaserYodare_message span:nth-of-type(22) {
    transition-delay: .44s
}

.uq-teaserYodare_message span:nth-of-type(23) {
    transition-delay: .46s
}

.uq-teaserYodare_message span:nth-of-type(24) {
    transition-delay: .48s
}

.uq-teaserYodare_message span:nth-of-type(25) {
    transition-delay: .5s
}

.uq-teaserYodare_message span:nth-of-type(26) {
    transition-delay: .52s
}

.uq-teaserYodare_message span:nth-of-type(27) {
    transition-delay: .54s
}

.uq-teaserYodare_message span:nth-of-type(28) {
    transition-delay: .56s
}

.uq-teaserYodare_message span:nth-of-type(29) {
    transition-delay: .58s
}

.uq-teaserYodare_message span:nth-of-type(30) {
    transition-delay: .6s
}

.uq-teaserYodare_message.is-show {
    -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    -webkit-animation-duration: .6s;
    animation-duration: .6s;
    -webkit-animation-direction: alternate;
    animation-direction: alternate;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -webkit-animation-name: messageShow;
    animation-name: messageShow
}

.uq-teaserYodare_message.is-hide {
    -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    animation-timing-function: cubic-bezier(.215, .61, .355, 1);
    -webkit-animation-duration: .6s;
    animation-duration: .6s;
    -webkit-animation-direction: alternate;
    animation-direction: alternate;
    -webkit-animation-name: messageHide;
    animation-name: messageHide;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

@-webkit-keyframes messageShow {
    0% {
        opacity: 0
    }

    80% {
        opacity: 1
    }

    to {
        opacity: 1
    }
}

@keyframes messageShow {
    0% {
        opacity: 0
    }

    80% {
        opacity: 1
    }

    to {
        opacity: 1
    }
}

@keyframes messageHide {
    0% {
        opacity: 1;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    to {
        opacity: 0;
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

.uq-teaserYodare_character {
    width: 160px;
    margin: 0 auto 5px
}

@media only screen and (max-width:799px) {
    .uq-teaserYodare_character {
        width: 130px
    }
}

.uq-teaserYodare_character img {
    width: 100%;
    height: auto
}

.uq-teaserDb {
    background-color: #fff;
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover
}

.uq-teaserDb_content {
    width: 1100px;
    margin-right: auto;
    margin-left: auto;
    display: flex;
    justify-content: space-between;
    padding: 120px 0 140px;
    box-sizing: border-box
}

@media only screen and (max-width:799px) {
    .uq-teaserDb_content {
        width: 100%;
        padding: 120px 30px 70px;
        display: block
    }
}

.uq-teaserDb_body {
    width: 450px
}

@media only screen and (max-width:799px) {
    .uq-teaserDb_body {
        width: 100%;
        margin-bottom: 40px
    }
}

.uq-teaserDb_body>p {
    margin-bottom: 2em
}

.uq-teaserDb_body>p:last-child {
    margin-bottom: 0
}

.uq-teaserDb_image {
    width: 580px;
    box-shadow: 13.435px 13.435px 27.2px 4.8px rgba(152, 152, 148, .19)
}

@media only screen and (max-width:799px) {
    .uq-teaserDb_image {
        width: 100%
    }
}

.uq-teaserEpisode {
    background-color: #fff;
    background-image: url("../img/teaser/db_bg.png");
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    background: #fafbfd;
    background: #f4fcff
}

.uq-teaserEpisode_content {
    width: 1100px;
    margin-right: auto;
    margin-left: auto;
    justify-content: space-between;
    padding: 100px 0 120px;
    box-sizing: border-box;
    position: relative
}

@media only screen and (max-width:799px) {
    .uq-teaserEpisode_content {
        width: 100%;
        padding: 50px 30px 0
    }
}

.uq-teaserEpisode_image {
    position: absolute;
    bottom: 60px;
    right: 50px;
    display: block;
    width: 480px
}

@media only screen and (max-width:799px) {
    .uq-teaserEpisode_image {
        position: relative;
        width: 250px;
        height: auto;
        margin: auto;
        right: 0;
        bottom: -30px
    }
}

.uq-teaserEpisode_body {
    position: relative;
    width: 640px;
    box-sizing: border-box
}

@media only screen and (max-width:799px) {
    .uq-teaserEpisode_body {
        width: 100%
    }
}

@media only screen and (max-width:799px) {
    .uq-teaserEpisode_body br {
        display: none
    }
}

.uq-teaserEpisode_body p {
    margin-bottom: 2em
}

.uq-teaserEpisode_body p:last-child {
    margin-bottom: 0
}

.uq-teaserChallenge {
    position: relative;
    background: #fff;
    z-index: 1
}

.uq-teaserChallenge .uq-teaserHeadline {
    text-align: center;
    margin-bottom: 70px
}

@media only screen and (max-width:799px) {
    .uq-teaserChallenge .uq-teaserHeadline {
        margin-bottom: 60px
    }
}

.uq-teaserChallenge_content {
    width: 1100px;
    margin-right: auto;
    margin-left: auto;
    padding: 100px 0 120px;
    box-sizing: border-box
}

@media only screen and (max-width:799px) {
    .uq-teaserChallenge_content {
        width: 100%;
        padding: 50px 0 70px
    }
}

.uq-teaserChallenge_items {
    display: flex;
    justify-content: center;
    margin-bottom: 60px
}

@media only screen and (max-width:799px) {
    .uq-teaserChallenge_items {
        display: block
    }
}

.uq-teaserChallengeItem {
    text-align: center;
    flex-basis: 300px;
    position: relative
}

@media only screen and (max-width:799px) {
    .uq-teaserChallengeItem {
        width: 100%;
        margin-bottom: 40px
    }
}

.uq-teaserChallengeItem_message {
    position: absolute;
    top: -30px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    font-weight: 700;
    font-size: 12px
}

.uq-teaserChallengeItem_image {
    width: 140px;
    height: 140px;
    margin: 0 auto 20px;
    border-radius: 50%;
    background: #f7f7f7;
    position: relative
}

@media only screen and (max-width:799px) {
    .uq-teaserChallengeItem_image {
        margin-bottom: 10px
    }
}

.uq-teaserChallengeItem_image img {
    width: 90px;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.uq-teaserChallengeItem_headline {
    font-size: 26px;
    font-weight: 700;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-teaserChallengeItem_headline {
        margin-bottom: 10px;
        font-size: 18px
    }
}

.uq-teaserChallengeItem_description {
    font-size: 16px
}

@media only screen and (max-width:799px) {
    .uq-teaserChallengeItem_description {
        font-size: 14px
    }
}

.uq-teaserChallengeSaunner {
    background: #f7f7f7;
    padding: 50px;
    width: 780px;
    margin: 0 auto;
    box-sizing: border-box;
    position: relative
}

@media only screen and (max-width:799px) {
    .uq-teaserChallengeSaunner {
        width: calc(100% - 30px);
        padding: 30px
    }
}

.uq-teaserChallengeSaunner_please {
    position: absolute;
    top: -35px;
    right: -10px;
    width: 170px
}

@media only screen and (max-width:799px) {
    .uq-teaserChallengeSaunner_please {
        width: 120px
    }
}

.uq-teaserChallengeSaunner_please img {
    position: absolute
}

.uq-teaserChallengeSaunner_neppa {
    display: none
}

.uq-teaserChallengeSaunner_neppa.is-slow {
    display: block
}

.uq-teaserChallengeSaunner_more {
    background: #222;
    color: #fff;
    padding: 5px 10px;
    display: block;
    position: absolute;
    top: 70px;
    right: 20px;
    font-size: 10px;
    font-weight: 700;
    border-radius: 6px;
    cursor: pointer
}

@media only screen and (max-width:799px) {
    .uq-teaserChallengeSaunner_more {
        top: 40px;
        right: 10px;
        font-size: 8px
    }
}

.desktop .uq-teaserChallengeSaunner_more:hover {
    text-decoration: none;
    opacity: .7
}

.uq-teaserChallengeSaunner_en {
    color: #ea4c89;
    font-weight: 700;
    font-family: Montserrat;
    font-size: 16px;
    margin-bottom: 15px;
    text-align: center;
    line-height: 1
}

@media only screen and (max-width:799px) {
    .uq-teaserChallengeSaunner_en {
        font-size: 10px
    }
}

.uq-teaserChallengeSaunner_headline {
    text-align: center;
    font-size: 26px;
    font-weight: 700;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-teaserChallengeSaunner_headline {
        font-size: 18px;
        line-height: 1.6
    }
}

.uq-teaserChallengeSaunner_body p {
    margin-bottom: 2em;
    font-size: 16px
}

.uq-teaserChallengeSaunner_body p:last-child {
    margin-bottom: 0
}

@media only screen and (max-width:799px) {
    .uq-teaserChallengeSaunner_body p {
        font-size: 14px
    }
}

.uq-teaserTeam {
    background: #fffff7
}

.uq-teaserTeam .uq-teaserHeadline {
    text-align: center
}

.uq-teaserTeam_content {
    width: 1100px;
    margin-right: auto;
    margin-left: auto;
    padding: 100px 0 120px
}

@media only screen and (max-width:799px) {
    .uq-teaserTeam_content {
        width: 100%;
        padding: 50px 0 70px
    }
}

.uq-teaserTeam_members {
    display: flex;
    justify-content: center
}

@media only screen and (max-width:799px) {
    .uq-teaserTeam_members {
        justify-content: space-between;
        flex-wrap: wrap;
        margin-bottom: -40px
    }
}

.uq-teaserTeamMember {
    flex-basis: 20%;
    text-align: center
}

@media only screen and (max-width:799px) {
    .uq-teaserTeamMember {
        flex-basis: 50%;
        margin-bottom: 40px;
        box-sizing: border-box;
        padding: 0 20px
    }
}

.uq-teaserTeamMember_icon {
    width: 100px;
    margin: 0 auto 20px;
    border-radius: 50%;
    overflow: hidden
}

@media only screen and (max-width:799px) {
    .uq-teaserTeamMember_icon {
        width: 70px
    }
}

.uq-teaserTeamMember_name {
    font-size: 26px;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .uq-teaserTeamMember_name {
        font-size: 18px;
        margin-bottom: 10px
    }
}

.uq-teaserTeamMember_name a {
    display: block;
    font-size: 14px;
    text-decoration: underline
}

.uq-teaserTeamMember_home {
    font-size: 14px;
    margin-bottom: 20px
}

.uq-teaserTeamMember_home span {
    font-size: 11px;
    line-height: 1
}

@media only screen and (max-width:799px) {
    .uq-teaserTeamMember_home {
        font-size: 12px
    }
}

.uq-teaserTeamMember_links {
    text-align: center;
    font-size: 0
}

.uq-teaserTeamMember_link {
    font-size: 12px;
    display: inline-block;
    margin: 0 5px
}

@media only screen and (max-width:799px) {
    .uq-teaserTeamMember_link {
        display: block;
        margin-bottom: 5px
    }
}

.uq-teaserNews {
    background: #fff;
    padding: 80px 0 120px;
    text-align: center
}

.uq-teaserNews .c-share {
    margin-bottom: 80px
}

.uq-teaserNews img {
    width: 200px;
    margin: auto auto 30px
}

.uq-teaserNews_content {
    width: 1100px;
    margin-right: auto;
    margin-left: auto;
    box-sizing: border-box
}

@media only screen and (max-width:799px) {
    .uq-teaserNews_content {
        width: 100%;
        padding: 50px 30px 70px
    }
}

@media only screen and (max-width:799px) {
    .uq-teaserNews_content br {
        display: none
    }
}

.uq-teaserNews_icon {
    width: 160px;
    margin: 40px auto 20px;
    background: #fff;
    border-radius: 50%;
    overflow: hidden;
    box-sizing: border-box;
    padding: 20px
}

.uq-teaserNews .c-button {
    margin: 40px 0 100px
}

@media only screen and (max-width:799px) {
    .uq-teaserNews .c-button {
        margin: 40px 0 50px;
        display: block
    }
}

.uq-teaserNews small {
    display: inline-block;
    margin-top: 30px;
    text-align: center;
    font-size: 12px
}

.uq-about {
    background: #fff;
    font-size: 18px;
    padding-bottom: 12vw;
}

@media only screen and (max-width:799px) {
    .uq-about {
        font-size: 16px;
        overflow: hidden
    }
}

.uq-about img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.uq-about .l-footer_bottom {
    padding: 50px 0 80px;
    height: auto
}

.uq-about_header {
    text-align: center;
    margin: 20px 0 80px
}

@media only screen and (max-width:799px) {
    .uq-about_header {
        margin-bottom: 60px
    }
}

.uq-about_headline {
    font-size: 60px;
    color: #ea4c89;
    line-height: 1;
    margin-bottom: 30px
}

.uq-about_headline img {
    width: 250px
}

@media only screen and (max-width:799px) {
    .uq-about_headline img {
        width: 140px
    }
}

.uq-about_copy {
    font-size: 26px;
    color: #ea4c89;
    font-weight: 700
}

@media only screen and (max-width:799px) {
    .uq-about_copy {
        font-size: 18px
    }
}

.uq-aboutHeadline {
    margin-bottom: 40px
}

@media only screen and (max-width:799px) {
    .uq-aboutHeadline {
        text-align: center;
        margin-bottom: 20px
    }
}

.uq-aboutHeadline_en {
    font-weight: 700;
    font-family: Montserrat;
    font-size: 16px;
    margin-bottom: 15px;
    line-height: 1
}

@media only screen and (max-width:799px) {
    .uq-aboutHeadline_en {
        font-size: 10px
    }
}

.uq-aboutHeadline_string {
    font-weight: 700;
    line-height: 1.6;
    font-size: 36px;
    color: #ea4c89
}

@media only screen and (max-width:799px) {
    .uq-aboutHeadline_string {
        font-size: 26px
    }
}

.uq-aboutDb_content {
    display: flex;
    justify-content: space-between;
    padding: 80px 80px 120px;
    box-sizing: border-box
}

@media only screen and (max-width:799px) {
    .uq-aboutDb_content {
        padding: 30px;
        display: block
    }
}

.uq-aboutDb_body {
    width: 760px;
    margin: auto
}

@media only screen and (max-width:799px) {
    .uq-aboutDb_body {
        width: 100%;
        margin-bottom: 0
    }
}

.uq-aboutDb_body>p {
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 40px;
    line-height: 2
}

@media only screen and (max-width:799px) {
    .uq-aboutDb_body>p {
        font-size: 16px;
        margin-bottom: 25px
    }
}

.uq-aboutDb_body>p:last-child {
    margin-bottom: 0
}

.uq-aboutEpisode_content {
    width: 760px;
    margin: auto;
    justify-content: space-between;
    box-sizing: border-box;
    position: relative
}

@media only screen and (max-width:799px) {
    .uq-aboutEpisode_content {
        width: 100%;
        padding: 30px
    }
}

.uq-aboutEpisode_image {
    display: block;
    width: 450px;
    margin: 50px auto 0
}

@media only screen and (max-width:799px) {
    .uq-aboutEpisode_image {
        position: relative;
        width: 250px;
        height: auto;
        margin: auto;
        right: 0;
        bottom: -30px
    }
}

.uq-aboutEpisode_body {
    position: relative
}

@media only screen and (max-width:799px) {
    .uq-aboutEpisode_body br {
        display: none
    }
}

.uq-aboutEpisode_body p {
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 40px;
    line-height: 2
}

@media only screen and (max-width:799px) {
    .uq-aboutEpisode_body p {
        font-size: 16px;
        margin-bottom: 25px
    }
}

.uq-aboutEpisode_body p:last-child {
    margin-bottom: 0
}

.uq-aboutChallenge {
    position: relative;
    z-index: 1;
    text-align: center
}

.uq-aboutChallenge .uq-aboutHeadline {
    text-align: center;
    margin-bottom: 70px
}

@media only screen and (max-width:799px) {
    .uq-aboutChallenge .uq-aboutHeadline {
        margin-bottom: 60px
    }
}

.uq-aboutChallenge_content {
    width: 1100px;
    margin-right: auto;
    margin-left: auto;
    box-sizing: border-box;
    padding: 100px 80px
}

@media only screen and (max-width:799px) {
    .uq-aboutChallenge_content {
        width: 100%;
        padding: 40px
    }
}

.uq-aboutChallenge_items {
    display: flex;
    justify-content: center;
    margin-bottom: 60px
}

@media only screen and (max-width:799px) {
    .uq-aboutChallenge_items {
        display: block
    }
}

.uq-aboutChallengeItem {
    text-align: center;
    flex-basis: 300px;
    position: relative
}

@media only screen and (max-width:799px) {
    .uq-aboutChallengeItem {
        width: 100%;
        margin-bottom: 40px
    }
}

.uq-aboutChallengeItem_message {
    position: absolute;
    top: -30px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    font-weight: 700;
    font-size: 12px
}

.uq-aboutChallengeItem_image {
    width: 140px;
    height: 140px;
    margin: 0 auto 20px;
    border-radius: 50%;
    background: #f7f7f7;
    position: relative
}

@media only screen and (max-width:799px) {
    .uq-aboutChallengeItem_image {
        margin-bottom: 10px
    }
}

.uq-aboutChallengeItem_image img {
    width: 90px;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.uq-aboutChallengeItem_headline {
    font-size: 26px;
    font-weight: 700;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-aboutChallengeItem_headline {
        margin-bottom: 10px;
        font-size: 18px
    }
}

.uq-aboutChallengeItem_description {
    font-size: 16px
}

@media only screen and (max-width:799px) {
    .uq-aboutChallengeItem_description {
        font-size: 14px
    }
}

.uq-aboutChallengeSaunner {
    background: #f7f7f7;
    padding: 50px;
    width: 780px;
    margin: 0 auto;
    box-sizing: border-box;
    position: relative
}

@media only screen and (max-width:799px) {
    .uq-aboutChallengeSaunner {
        width: 100%;
        padding: 30px
    }
}

.uq-aboutChallengeSaunner_please {
    position: absolute;
    top: -35px;
    right: -10px;
    width: 170px
}

@media only screen and (max-width:799px) {
    .uq-aboutChallengeSaunner_please {
        width: 120px
    }
}

.uq-aboutChallengeSaunner_please img {
    position: absolute
}

.uq-aboutChallengeSaunner_neppa {
    display: none
}

.uq-aboutChallengeSaunner_neppa.is-slow {
    display: block
}

.uq-aboutChallengeSaunner_more {
    background: #222;
    color: #fff;
    padding: 5px 10px;
    display: block;
    position: absolute;
    top: 70px;
    right: 20px;
    font-size: 10px;
    font-weight: 700;
    border-radius: 6px;
    cursor: pointer
}

@media only screen and (max-width:799px) {
    .uq-aboutChallengeSaunner_more {
        top: 40px;
        right: 10px;
        font-size: 8px
    }
}

.desktop .uq-aboutChallengeSaunner_more:hover {
    text-decoration: none;
    opacity: .7
}

.uq-aboutChallengeSaunner_en {
    color: #ea4c89;
    font-weight: 700;
    font-family: Montserrat;
    font-size: 16px;
    margin-bottom: 15px;
    text-align: center;
    line-height: 1
}

@media only screen and (max-width:799px) {
    .uq-aboutChallengeSaunner_en {
        font-size: 10px
    }
}

.uq-aboutChallengeSaunner_headline {
    text-align: center;
    font-size: 26px;
    font-weight: 700;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-aboutChallengeSaunner_headline {
        font-size: 18px;
        line-height: 1.6
    }
}

.uq-aboutChallengeSaunner_body p {
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 40px;
    line-height: 2;
    font-size: 16px
}

@media only screen and (max-width:799px) {
    .uq-aboutChallengeSaunner_body p {
        font-size: 16px;
        margin-bottom: 25px
    }
}

.uq-aboutChallengeSaunner_body p:last-child {
    margin-bottom: 0
}

@media only screen and (max-width:799px) {
    .uq-aboutChallengeSaunner_body p {
        font-size: 14px
    }
}

.uq-aboutTeam {
    background: #f2f9fb
}

.uq-aboutTeam,
.uq-aboutTeam .uq-aboutHeadline {
    text-align: center
}

.uq-aboutTeam_content {
    width: 1100px;
    margin-right: auto;
    margin-left: auto;
    padding: 100px 80px;
    box-sizing: border-box
}

@media only screen and (max-width:799px) {
    .uq-aboutTeam_content {
        width: 100%;
        padding: 50px 0 70px
    }
}

.uq-aboutTeam_members {
    display: flex;
    justify-content: center
}

@media only screen and (max-width:799px) {
    .uq-aboutTeam_members {
        justify-content: space-between;
        flex-wrap: wrap;
        margin-bottom: -40px
    }
}

.uq-aboutTeamMember {
    flex-basis: 20%;
    text-align: center
}

@media only screen and (max-width:799px) {
    .uq-aboutTeamMember {
        flex-basis: 50%;
        margin-bottom: 40px;
        box-sizing: border-box;
        padding: 0 20px
    }
}

.uq-aboutTeamMember_icon {
    width: 100px;
    margin: 0 auto 20px;
    border-radius: 50%;
    overflow: hidden
}

@media only screen and (max-width:799px) {
    .uq-aboutTeamMember_icon {
        width: 70px
    }
}

.uq-aboutTeamMember_name {
    font-size: 26px;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-aboutTeamMember_name {
        font-size: 18px;
        margin-bottom: 10px
    }
}

.uq-aboutTeamMember_name a {
    display: block;
    font-size: 14px;
    text-decoration: underline
}

.uq-aboutTeamMember_home {
    font-size: 14px;
    margin-bottom: 20px
}

.uq-aboutTeamMember_home span {
    font-size: 11px;
    line-height: 1
}

@media only screen and (max-width:799px) {
    .uq-aboutTeamMember_home {
        font-size: 12px
    }
}

.uq-aboutTeamMember_links {
    text-align: center;
    font-size: 0
}

.uq-aboutTeamMember_link {
    font-size: 12px;
    display: inline-block;
    margin: 0 5px
}

@media only screen and (max-width:799px) {
    .uq-aboutTeamMember_link {
        display: block;
        margin-bottom: 5px
    }
}

.uq-aboutThanks {
    background: #fff;
    text-align: center;
    font-size: 16px
}

.uq-aboutThanks_headline {
    color: #ea4c89;
    font-weight: 700;
    text-align: center;
    font-family: Montserrat;
    font-size: 40px
}

@media only screen and (max-width:799px) {
    .uq-aboutThanks_headline {
        font-size: 28px
    }
}

.uq-aboutThanks_content {
    width: 1100px;
    margin-right: auto;
    margin-left: auto;
    padding: 100px 80px 120px;
    box-sizing: border-box
}

@media only screen and (max-width:799px) {
    .uq-aboutThanks_content {
        width: 100%;
        padding: 50px 40px
    }
}

.uq-aboutThanks_share {
    padding-bottom: 40px
}

.uq-aboutThanks_news {
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-aboutThanks_news br {
        display: none
    }
}

.uq-aboutThanks_list {
    margin: 0 0 60px
}

.uq-aboutThanks_list a {
    text-decoration: underline
}

.uq-aboutThanks_list a:hover {
    text-decoration: none;
    opacity: .7
}

.uq-aboutThanks_sauna {
    color: #ef0d0d;
    display: block;
    margin-bottom: 80px
}

.uq-aboutNews {
    background: #f9f9f9;
    padding: 80px 0 120px;
    text-align: center
}

.uq-aboutNews .c-share {
    margin-bottom: 80px
}

.uq-aboutNews img {
    width: 200px;
    margin: auto auto 30px
}

.uq-aboutNews_content {
    width: 1100px;
    margin-right: auto;
    margin-left: auto;
    box-sizing: border-box
}

@media only screen and (max-width:799px) {
    .uq-aboutNews_content {
        width: 100%;
        padding: 50px 30px 70px
    }
}

@media only screen and (max-width:799px) {
    .uq-aboutNews_content br {
        display: none
    }
}

.uq-aboutNews_icon {
    width: 160px;
    margin: 40px auto 20px;
    background: #fff;
    border-radius: 50%;
    overflow: hidden;
    box-sizing: border-box;
    padding: 20px
}

.uq-aboutNews .c-button {
    margin: 40px 0 100px
}

@media only screen and (max-width:799px) {
    .uq-aboutNews .c-button {
        margin: 40px 0 50px;
        display: block
    }
}

.uq-aboutNews small {
    display: inline-block;
    margin-top: 30px;
    text-align: center;
    font-size: 12px
}

.uq-notfound {
    text-align: center;
    margin: 80px 0 180px;
    position: relative
}

.uq-notfound_gif {
    position: absolute;
    top: 90px;
    left: 50%;
    -webkit-transform: translateX(-50%) scale(0);
    transform: translateX(-50%) scale(0);
    border-radius: 50%;
    width: 130px;
    height: 130px;
    margin: auto;
    background-size: cover;
    z-index: 1
}

.uq-notfound_gif.is-active {
    -webkit-animation-name: notfound;
    animation-name: notfound;
    -webkit-animation-duration: .3s;
    animation-duration: .3s;
    -webkit-animation-timing-function: cubic-bezier(.645, .045, .355, 1);
    animation-timing-function: cubic-bezier(.645, .045, .355, 1);
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

@media only screen and (max-width:799px) {
    .uq-notfound_gif {
        width: 60px;
        height: 60px;
        top: 40px
    }
}

@-webkit-keyframes notfound {
    0% {
        -webkit-transform: translateX(-50%) scale(0);
        transform: translateX(-50%) scale(0)
    }

    to {
        -webkit-transform: translateX(-50%) scale(1);
        transform: translateX(-50%) scale(1)
    }
}

@keyframes notfound {
    0% {
        -webkit-transform: translateX(-50%) scale(0);
        transform: translateX(-50%) scale(0)
    }

    to {
        -webkit-transform: translateX(-50%) scale(1);
        transform: translateX(-50%) scale(1)
    }
}

.uq-notfound_found {
    font-family: Montserrat;
    font-size: 80px;
    font-weight: 700;
    color: #ddd;
    line-height: 1;
    margin-top: -20px;
    display: block;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-notfound_found {
        font-size: 30px;
        margin-top: 0
    }
}

@media only screen and (max-width:799px) {
    .uq-notfound .c-button {
        width: 300px
    }
}

.uq-notfound_text {
    margin: 0 0 40px
}

.uq-notfound404 {
    margin-top: -20px;
    font-family: Montserrat;
    position: relative;
    z-index: 0;
    left: 7px
}

@media only screen and (max-width:799px) {
    .uq-notfound404 {
        left: 3px
    }
}

.uq-notfound404_4 {
    font-size: 308px;
    line-height: 1;
    color: #ddd
}

@media only screen and (max-width:799px) {
    .uq-notfound404_4 {
        font-size: 135px
    }
}

.uq-notfound404_0 {
    position: relative;
    top: 7px;
    display: inline-block;
    width: 230px;
    height: 230px;
    margin: 0 20px 0 5px;
    border: 52px solid #ddd;
    box-sizing: border-box;
    border-radius: 50%
}

@media only screen and (max-width:799px) {
    .uq-notfound404_0 {
        border: 28px solid #ddd;
        top: 7px;
        width: 105px;
        height: 105px;
        margin-right: 10px
    }
}

[data-page-id=tonttu] .l-containers {
    width: 100%
}

.uq-tonttuHeadline {
    margin-bottom: 35px
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeadline {
        margin-bottom: 20px
    }
}

.uq-tonttuHeadline.is-lv2 {
    margin-bottom: 15px
}

.uq-tonttuHeadline.is-lv2+.uq-resultList {
    margin-top: 25px
}

.uq-tonttuHeadline.is-lv3 {
    margin-bottom: 10px
}

.uq-tonttuHeadline_en {
    font-family: Montserrat;
    font-size: 16px;
    line-height: 1;
    color: #ea4c89;
    letter-spacing: .1em;
    margin-bottom: 15px
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeadline_en {
        font-size: 12px;
        margin-bottom: 20px
    }
}

.uq-tonttuHeadline_headline {
    position: relative;
    top: 0;
    font-size: 32px;
    line-height: 1.5
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeadline_headline {
        font-size: 26px;
        line-height: 1.25
    }
}

.is-lv2 .uq-tonttuHeadline_headline {
    font-size: 24px
}

@media only screen and (max-width:799px) {
    .is-lv2 .uq-tonttuHeadline_headline {
        font-size: 20px
    }
}

.is-lv3 .uq-tonttuHeadline_headline {
    font-size: 16px
}

@media only screen and (max-width:799px) {
    .is-lv3 .uq-tonttuHeadline_headline {
        font-size: 14px
    }
}

.uq-tonttuHeadline_subHeadline {
    font-size: 30px;
    line-height: 1.5;
    margin-top: 50px;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeadline_subHeadline {
        font-size: 24px;
        margin-top: 30px;
        margin-bottom: 20px
    }
}

.uq-tonttuHeadline_lead {
    margin-top: 15px
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeadline_lead {
        font-size: 16px;
        margin-top: 0;
        margin-bottom: 30px
    }
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeadline_lead br {
        display: none
    }
}

.uq-tonttuTonttu {
    position: absolute;
    left: 50%;
    font-weight: 700;
    z-index: 100;
    text-align: center;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.uq-tonttuTonttu img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.uq-tonttuTonttu p {
    font-size: 12px
}

.uq-tonttuTonttu img {
    width: 40px
}

@media only screen and (max-width:799px) {
    .uq-tonttuTonttu img {
        width: 30px
    }
}

.uq-tonttuHero {
    position: relative;
    background: #eef6f8;
    margin-top: -100px
}

.uq-tonttuHero_content {
    position: relative;
    width: 1100px;
    height: 650px;
    margin: auto
}

@media only screen and (max-width:799px) {
    .uq-tonttuHero_content {
        width: 100%;
        height: 100vh;
        min-height: 600px;
        max-height: 600px
    }
}

.uq-tonttuHero_tonttu {
    position: absolute;
    bottom: 90px;
    left: 50%;
    width: 345px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

@media only screen and (max-width:799px) {
    .uq-tonttuHero_tonttu {
        top: 170px;
        bottom: inherit;
        width: 160px
    }
}

.uq-tonttuHeroTitle {
    position: absolute;
    bottom: 120px;
    left: 0;
    overflow: hidden
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeroTitle {
        bottom: 55px;
        left: 20px
    }
}

.uq-tonttuHeroTitle_title {
    font-weight: 700;
    margin-bottom: 15px
}

.uq-tonttuHeroTitle_count {
    display: block;
    font-size: 19px;
    line-height: 1;
    margin-bottom: 0
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeroTitle_count {
        font-size: 12px
    }
}

.uq-tonttuHeroTitle_string {
    position: relative;
    display: block;
    font-size: 66px;
    line-height: 1.45
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeroTitle_string {
        font-size: 40px;
        line-height: 1.3
    }
}

.uq-tonttuHeroTitle_string.is-tonttu {
    left: -16px
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeroTitle_string.is-tonttu {
        left: -8px
    }
}

.uq-tonttuHeroTitle_string.is-challenge {
    left: -4px
}

.uq-tonttuHeroTitle_string span {
    position: relative;
    line-height: 1
}

.uq-tonttuHeroTitle_string span:before {
    position: absolute;
    bottom: 5px;
    left: 0;
    background: #000;
    display: block;
    content: "";
    width: 100%;
    height: 3px
}

.uq-tonttuHeroDate {
    display: flex
}

.uq-tonttuHeroDate_string {
    border: 2px solid #222;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    width: 28px;
    margin-right: 12px
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeroDate_string {
        font-size: 9px;
        width: 22px;
        padding: 5px 0
    }
}

.uq-tonttuHeroDate_comming {
    font-size: 30px
}

.uq-tonttuHeroDate_comming,
.uq-tonttuHeroDate_period {
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-weight: 700;
    line-height: 1
}

.uq-tonttuHeroDate_period {
    display: flex;
    font-size: 47px
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeroDate_period {
        font-size: 30px
    }
}

.uq-tonttuHeroDate_period span>span {
    display: block;
    font-size: 15px
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeroDate_period span>span {
        font-size: 10px
    }
}

.uq-tonttuHeroDate_period span.is-hyphen {
    position: relative;
    top: 34px;
    background: #000;
    display: block;
    text-indent: -9999px;
    width: 20px;
    height: 4px;
    margin: 0 10px
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeroDate_period span.is-hyphen {
        top: 26px;
        width: 8px;
        margin: 0 5px
    }
}

.uq-tonttuHeroAnnounce {
    position: absolute;
    top: 100px;
    right: 100px
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeroAnnounce {
        top: 130px;
        right: 30px
    }
}

.uq-tonttuHeroAnnounce_lead {
    position: absolute;
    top: 0;
    right: 0;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: -.35em;
    height: 400px;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeroAnnounce_lead {
        font-size: 12px;
        letter-spacing: .01em
    }
}

.uq-tonttuHeroAnnounce_winning {
    position: absolute;
    top: -12px;
    right: 40px;
    font-size: 53px;
    font-weight: 700;
    line-height: 1.3;
    color: #fff;
    letter-spacing: -.35em;
    text-shadow: #000 2px 0, #000 -2px 0, #000 0 -2px, #000 0 2px, #000 2px 2px, #000 -2px 2px, #000 2px -2px, #000 -2px -2px, #000 1px 2px, #000 -1px 2px, #000 1px -2px, #000 -1px -2px, #000 2px 1px, #000 -2px 1px, #000 2px -1px, #000 -2px -1px;
    height: 400px;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeroAnnounce_winning {
        top: 0;
        right: 20px;
        font-size: 20px;
        letter-spacing: .15em
    }
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeroAnnounce_winning br {
        display: none
    }
}

.uq-tonttuHeroAnnounce_winning span {
    position: relative;
    top: 13px;
    left: -1px;
    display: inline-block;
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    color: gold;
    letter-spacing: 0;
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg)
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeroAnnounce_winning span {
        top: 4px;
        left: 1px
    }
}

.uq-tonttuHeroAnnounce_winning span.is-comming {
    position: relative;
    padding: 10px 0
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeroAnnounce_winning span.is-comming {
        left: 1px
    }
}

.uq-tonttuHeroWinner {
    position: absolute;
    right: -80px;
    bottom: -20px;
    z-index: 1;
    -webkit-animation: fuwafuwa 1s linear infinite alternate;
    animation: fuwafuwa 1s linear infinite alternate
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeroWinner {
        right: -40px;
        bottom: 20px
    }
}

.uq-tonttuHeroWinner a {
    border-radius: 100px;
    display: flex;
    align-content: center;
    font-weight: 700;
    text-align: center;
    overflow: hidden;
    width: 200px;
    height: 200px
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeroWinner a {
        width: 100px;
        height: 100px
    }
}

.uq-tonttuHeroWinner a:hover:before {
    -webkit-transform: scale(1.05);
    transform: scale(1.05)
}

.uq-tonttuHeroWinner a:before {
    position: absolute;
    border-radius: 100px;
    background: gold;
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .25s;
    transition-property: all
}

.uq-tonttuHeroWinner_content {
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 100%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.uq-tonttuHeroWinner_count {
    font-size: 20px;
    line-height: 1;
    margin-bottom: 15px
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeroWinner_count {
        font-size: 10px;
        margin-bottom: 5px
    }
}

.uq-tonttuHeroWinner_title {
    font-size: 28px;
    line-height: 1;
    margin-bottom: 15px
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeroWinner_title {
        font-size: 16px;
        margin-bottom: 8px
    }
}

.uq-tonttuHeroWinner_more {
    font-size: 16px;
    line-height: 1
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeroWinner_more {
        font-size: 8px
    }
}

.uq-tonttuHeroWinner_more:after {
    font-size: 12px;
    margin-left: 3px
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeroWinner_more:after {
        font-size: 10px
    }
}

.uq-tonttuHero+.uq-tonttuNav {
    top: -30px;
    margin-bottom: 0
}

@media only screen and (max-width:799px) {
    .uq-tonttuHero+.uq-tonttuNav {
        margin-top: 0
    }
}

.uq-tonttuNav {
    position: relative;
    border: 2px solid #222;
    border-radius: 12px;
    background: #fff;
    box-sizing: border-box;
    z-index: 2;
    overflow: hidden;
    width: 760px;
    margin: auto auto 60px
}

@media only screen and (max-width:799px) {
    .uq-tonttuNav {
        border-radius: 8px;
        width: calc(100% - 40px);
        height: 50px;
        margin-top: 20px;
        margin-bottom: 20px
    }
}

@media only screen and (max-width:799px) {
    .uq-tonttuNav_content {
        position: relative;
        left: 2px;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch
    }
}

.uq-tonttuNav .p-localNav_links {
    display: flex;
    align-items: center;
    justify-content: center
}

@media only screen and (max-width:799px) {
    .uq-tonttuNav .p-localNav_links {
        justify-content: inherit;
        width: 150%;
        padding: 0 10px
    }
}

.uq-tonttuNav .p-localNav_link.is-comingsoon a {
    color: #ddd
}

[data-page-id=tonttu] .uq-tonttuNav .p-localNav_link[data-nav=tonttu] span:before,
[data-page-id=tonttuAbout] .uq-tonttuNav .p-localNav_link[data-nav=tonttuAbout] span:before,
[data-page-id=tonttuGoods] .uq-tonttuNav .p-localNav_link[data-nav=tonttuGoods] span:before,
[data-page-id=tonttuSponsor] .uq-tonttuNav .p-localNav_link[data-nav=tonttuSponsor] span:before,
[data-page-id=tonttuWinning] .uq-tonttuNav .p-localNav_link[data-nav=tonttuWinning] span:before {
    opacity: 1
}

.uq-tonttuNav .p-localNav_link a {
    display: block;
    font-size: 18px;
    font-weight: 700;
    line-height: 1;
    padding: 18px 15px
}

@media only screen and (max-width:799px) {
    .uq-tonttuNav .p-localNav_link a {
        font-size: 14px;
        padding: 15px 10px
    }
}

.uq-tonttuNav .p-localNav_link a:hover span:before {
    opacity: 1
}

.uq-tonttuNav .p-localNav_link a span {
    position: relative
}

.uq-tonttuNav .p-localNav_link a span:before {
    position: absolute;
    bottom: 2px;
    left: 0;
    background: gold;
    content: "";
    z-index: -1;
    opacity: 0;
    width: 100%;
    height: 3px;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: color opacity
}

.uq-tonttuNav_arrow {
    position: absolute;
    top: 0;
    right: 0;
    display: none;
    z-index: 100;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: all
}

.uq-tonttuNav_arrow:after {
    content: ""
}

@media only screen and (max-width:799px) {
    .uq-tonttuNav_arrow {
        display: block
    }
}

.is-touch .uq-tonttuNav_arrow {
    opacity: 0
}

.uq-tonttuNav_arrow:before {
    position: absolute;
    top: 1px;
    background: #fff;
    display: block;
    content: "";
    width: 44px;
    height: 44px
}

.uq-tonttuNav_arrow:after {
    position: relative;
    display: block;
    line-height: 44px;
    z-index: 1;
    text-align: center;
    width: 44px;
    height: 44px;
    -webkit-animation-name: localNavArrow;
    animation-name: localNavArrow;
    -webkit-animation-duration: .9s;
    animation-duration: .9s;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

.uq-tonttuLotteryAbout {
    position: relative;
    top: -60px;
    background: #fff;
    text-align: center;
    margin-bottom: 40px;
    padding: 140px 0 100px
}

@media only screen and (max-width:799px) {
    .uq-tonttuLotteryAbout {
        top: 0;
        margin-bottom: 0;
        padding: 20px
    }
}

.uq-tonttuLotteryAbout_bg {
    position: absolute;
    top: 70px;
    left: 50%;
    font-family: Montserrat;
    font-size: 140px;
    line-height: 1.2;
    z-index: 0;
    color: #f0f7f9;
    -webkit-transform: translate(-50%);
    transform: translate(-50%)
}

@media only screen and (max-width:799px) {
    .uq-tonttuLotteryAbout_bg {
        top: 25px;
        font-size: 64px
    }
}

.uq-tonttuLotteryAbout p {
    position: relative;
    font-size: 30px;
    font-weight: 700;
    line-height: 2;
    z-index: 1;
    letter-spacing: .2em
}

@media only screen and (max-width:799px) {
    .uq-tonttuLotteryAbout p {
        font-size: 16px;
        letter-spacing: .1em
    }
}

.uq-tonttuFigure {
    border: 1px solid #ddd;
    border-radius: 16px;
    box-sizing: border-box;
    text-align: center;
    width: 950px;
    margin: 140px auto 0;
    padding: 60px 80px
}

.uq-tonttuFigure img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media only screen and (max-width:799px) {
    .uq-tonttuFigure {
        border-right: 0;
        border-bottom: 0;
        border-left: 0;
        border-radius: 0;
        width: 100%;
        margin: 50px auto 0;
        padding: 50px 0 35px
    }
}

.uq-tonttuFigure_headline {
    font-size: 30px;
    margin-bottom: 30px
}

@media only screen and (max-width:799px) {
    .uq-tonttuFigure_headline {
        font-size: 18px;
        margin-bottom: 20px
    }
}

.uq-tonttuFigure p {
    font-size: 18px;
    letter-spacing: .1em;
    margin-top: 30px
}

@media only screen and (max-width:799px) {
    .uq-tonttuFigure p {
        font-size: 14px;
        margin-top: 20px
    }
}

@media only screen and (max-width:799px) {
    .uq-tonttuFigure img {
        width: 100%
    }
}

.uq-tonttuHeroV1 {
    position: relative;
    background: gold;
    background-repeat: no-repeat;
    background-position: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 560px;
    width: 1100px;
    margin-right: auto;
    margin-left: auto
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeroV1 {
        width: 100%;
        background-size: cover
    }
}

.is-sponsor .uq-tonttuHeroV1 {
    background: #ea4c89;
    color: #fff
}

@media only screen and (max-width:799px) {
    .is-sponsor .uq-tonttuHeroV1 {
        height: 400px
    }
}

.uq-tonttuHeroV1_content {
    text-align: center
}

.uq-tonttuHeroV1_lead {
    font-size: 26px;
    font-weight: 700;
    line-height: 1;
    color: #ea4c89;
    letter-spacing: .15em;
    margin-bottom: 80px
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeroV1_lead {
        font-size: 20px;
        margin-bottom: 20px
    }
}

.is-sponsor .uq-tonttuHeroV1_lead {
    color: #fff;
    margin-bottom: 50px
}

@media only screen and (max-width:799px) {
    .is-sponsor .uq-tonttuHeroV1_lead {
        line-height: 1.5;
        margin-bottom: 0
    }
}

.uq-tonttuHeroV1Copy {
    position: relative;
    left: 55px;
    font-size: 76px;
    line-height: 1;
    margin-top: -20px;
    margin-bottom: 70px
}

.uq-tonttuHeroV1Copy img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeroV1Copy {
        left: 0;
        font-size: 62px;
        line-height: 1.5;
        text-align: justify;
        text-align: center;
        margin-top: 0;
        margin-bottom: 10px
    }
}

.is-sponsor .uq-tonttuHeroV1Copy {
    left: 0;
    font-size: 90px;
    margin-bottom: 40px
}

@media only screen and (max-width:799px) {
    .is-sponsor .uq-tonttuHeroV1Copy {
        font-size: 60px;
        margin-bottom: 20px
    }
}

.uq-tonttuHeroV1Copy_1 {
    letter-spacing: -.08em;
    margin-right: 70px
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeroV1Copy_1 {
        display: block;
        margin-right: 0;
        margin-bottom: -20px
    }
}

.uq-tonttuHeroV1Copy_2 {
    margin-left: 75px
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeroV1Copy_2 {
        margin-left: 0;
        margin-right: -60px
    }
}

@media only screen and (max-width:799px) and (max-width:799px) {
    .uq-tonttuHeroV1Copy_2 {
        display: block
    }
}

.uq-tonttuHeroV1Copy_2 span:first-of-type {
    letter-spacing: .11em
}

.uq-tonttuHeroV1Copy img {
    position: absolute;
    top: -34px;
    left: 50%;
    width: 115px;
    margin-left: -55px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeroV1Copy img {
        position: relative;
        top: 0;
        left: 0;
        margin: auto auto 0;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
}

.uq-tonttuHeroV1_tonttus {
    text-align: center;
    width: 380px;
    margin: auto
}

.uq-tonttuHeroV1_tonttus img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media only screen and (max-width:799px) {
    .uq-tonttuHeroV1_tonttus {
        width: 70%;
        max-width: 400px
    }
}

.uq-tonttuAboutV1 {
    position: relative;
    background: #fff;
    padding: 120px 0
}

@media only screen and (max-width:799px) {
    .uq-tonttuAboutV1 {
        padding: 60px 0
    }
}

.uq-tonttuAboutV1_content {
    display: flex;
    justify-content: space-between;
    box-sizing: border-box;
    width: 1100px;
    margin-right: auto;
    margin-left: auto
}

@media only screen and (max-width:799px) {
    .uq-tonttuAboutV1_content {
        width: 100%;
        display: block;
        padding: 0 30px
    }
}

.uq-tonttuAboutV1_body {
    font-size: 18px;
    width: 43.63636%
}

@media only screen and (max-width:799px) {
    .uq-tonttuAboutV1_body {
        font-size: 16px;
        width: 100%;
        margin-bottom: 30px
    }
}

@media only screen and (max-width:799px) {
    .uq-tonttuAboutV1_body p {
        margin-top: -20px
    }
}

.uq-tonttuAboutV1_image {
    width: 48.18182%
}

.uq-tonttuAboutV1_image img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media only screen and (max-width:799px) {
    .uq-tonttuAboutV1_image {
        width: 100%
    }
}

.uq-tonttuAboutV1_image img {
    border-radius: 20px
}

.uq-tonttuAbout {
    border-radius: 12px;
    background: #fff;
    box-sizing: border-box;
    text-align: left;
    width: 760px;
    padding: 100px;
    width: 1100px;
    margin-right: auto;
    margin-left: auto
}

@media only screen and (max-width:799px) {
    .uq-tonttuAbout {
        width: 100%;
        display: block;
        margin-top: 40px;
        padding: 0 30px
    }
}

.uq-tonttuAbout_headline {
    font-size: 70px;
    text-align: center;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .uq-tonttuAbout_headline {
        font-size: 40px
    }
}

.uq-tonttuAbout_headline span {
    display: block;
    font-size: 20px;
    line-height: 1;
    letter-spacing: .15em
}

@media only screen and (max-width:799px) {
    .uq-tonttuAbout_headline span {
        font-size: 12px
    }
}

.uq-tonttuAbout_content {
    margin: 0 auto
}

.uq-tonttuAbout_content p {
    font-size: 20px;
    margin-bottom: 1.5em
}

@media only screen and (max-width:799px) {
    .uq-tonttuAbout_content p {
        font-size: 15px
    }
}

.uq-tonttuAbout img {
    display: block;
    width: 120px;
    margin: 0 auto 30px
}

@media only screen and (max-width:799px) {
    .uq-tonttuAbout img {
        width: 100px
    }
}

.uq-tonttuGet {
    position: relative;
    text-align: center;
    padding: 120px 0
}

@media only screen and (max-width:799px) {
    .uq-tonttuGet {
        padding: 60px 0
    }
}

.uq-tonttuGet .uq-tonttuHeadline {
    width: 1100px;
    margin-right: auto;
    margin-left: auto
}

@media only screen and (max-width:799px) {
    .uq-tonttuGet .uq-tonttuHeadline {
        width: 100%;
        display: block;
        padding: 0
    }
}

.uq-tonttuGet_content {
    display: flex;
    justify-content: space-between;
    box-sizing: border-box;
    text-align: left;
    width: 1100px;
    margin-right: auto;
    margin-left: auto
}

@media only screen and (max-width:799px) {
    .uq-tonttuGet_content {
        width: 100%;
        display: block;
        padding: 0 30px
    }
}

.uq-tonttuGetItem {
    border-radius: 12px;
    background: #fff;
    box-sizing: border-box;
    width: 32.18182%;
    padding: 60px
}

@media only screen and (max-width:799px) {
    .uq-tonttuGetItem {
        font-size: 16px;
        width: 100%;
        padding: 20px
    }
}

.uq-tonttuGetItem_image {
    text-align: center;
    margin-bottom: 30px
}

.uq-tonttuGetItem_image img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    width: 150px;
    margin: auto
}

.uq-tonttuGetItem_headline {
    font-size: 24px;
    line-height: 1;
    text-align: center;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-tonttuGetItem_headline {
        font-size: 20px;
        margin-bottom: 15px
    }
}

.uq-tonttuSakatsu {
    position: relative;
    text-align: center;
    padding: 0 0 120px
}

@media only screen and (max-width:799px) {
    .uq-tonttuSakatsu {
        padding: 0 0 60px
    }
}

.uq-tonttuSakatsu .uq-tonttuHeadline {
    box-sizing: border-box;
    width: 1100px;
    margin-right: auto;
    margin-left: auto
}

@media only screen and (max-width:799px) {
    .uq-tonttuSakatsu .uq-tonttuHeadline {
        width: 100%;
        padding: 0 30px
    }
}

.uq-tonttuSakatsu_content {
    display: flex;
    justify-content: space-between;
    box-sizing: border-box;
    text-align: left;
    margin-bottom: 40px;
    width: 1100px;
    margin-right: auto;
    margin-left: auto
}

@media only screen and (max-width:799px) {
    .uq-tonttuSakatsu_content {
        width: 100%;
        display: block;
        margin-bottom: 20px;
        padding: 0 30px
    }
}

.uq-tonttuSakatsuItem {
    border-radius: 12px;
    background: #fff;
    box-sizing: border-box;
    text-align: center;
    width: 49.09091%;
    padding: 60px
}

@media only screen and (max-width:799px) {
    .uq-tonttuSakatsuItem {
        background: none;
        font-size: 16px;
        width: 100%;
        padding: 20px 0 0
    }
}

.uq-tonttuSakatsuItem .uq-tonttuHeadline {
    width: auto
}

.uq-tonttuSakatsuItem .p-tonttuHistory_items {
    text-align: left
}

@media only screen and (max-width:799px) {
    .uq-tonttuSakatsuItem#tonttuEvent {
        position: relative;
        top: -20px;
        z-index: -1;
        padding-top: 60px;
        padding-bottom: 20px
    }
}

.uq-tonttuSakatsuMore {
    text-align: center
}

@media only screen and (max-width:799px) {
    .uq-tonttuSakatsuMore {
        display: none
    }
}

.uq-tonttuSakatsuMore a {
    border: 1px solid #ea4c89;
    border-radius: 20px;
    display: block;
    font-size: 14px;
    font-weight: 700;
    color: #ea4c89;
    text-decoration: none;
    width: 100px;
    margin: 10px auto;
    padding: 8px 30px
}

.uq-tonttuSakatsuMore_open {
    display: block
}

.uq-tonttuSakatsuMore_open:after {
    content: ""
}

.is-active .uq-tonttuSakatsuMore_open,
.uq-tonttuSakatsuMore_close {
    display: none
}

.uq-tonttuSakatsuMore_close:after {
    content: ""
}

.is-active .uq-tonttuSakatsuMore_close {
    display: block
}

.uq-tonttuSakatsuMore span:after {
    position: relative;
    top: -1px;
    font-size: 12px;
    margin-left: 10px
}

.uq-tonttuSakatsuRule {
    margin: auto
}

.uq-tonttuSakatsuRule_list {
    border-radius: 6px;
    background: #f6f6f6;
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 10px;
    padding: 10px
}

@media only screen and (max-width:799px) {
    .uq-tonttuSakatsuRule_list {
        font-size: 14px
    }
}

.uq-tonttuUse {
    position: relative;
    text-align: center;
    padding: 120px 0
}

@media only screen and (max-width:799px) {
    .uq-tonttuUse {
        padding: 60px 0 100px
    }
}

.uq-tonttuUse .uq-tonttuHeadline {
    box-sizing: border-box;
    width: 1100px;
    margin-right: auto;
    margin-left: auto
}

@media only screen and (max-width:799px) {
    .uq-tonttuUse .uq-tonttuHeadline {
        width: 100%;
        padding: 0 30px
    }
}

.uq-tonttuUse_content {
    display: flex;
    justify-content: space-between;
    box-sizing: border-box;
    text-align: left;
    margin-bottom: 40px;
    width: 1100px;
    margin-right: auto;
    margin-left: auto
}

@media only screen and (max-width:799px) {
    .uq-tonttuUse_content {
        width: 100%;
        display: block;
        margin-bottom: 20px;
        padding: 0 30px
    }
}

.uq-tonttuUse_dream {
    box-sizing: border-box;
    margin-bottom: 100px;
    width: 1100px;
    margin-right: auto;
    margin-left: auto
}

@media only screen and (max-width:799px) {
    .uq-tonttuUse_dream {
        width: 100%;
        margin-bottom: 50px;
        padding: 0 30px
    }
}

.uq-tonttuUseItem {
    border-radius: 12px;
    background: #fff;
    box-sizing: border-box;
    width: 49.09091%;
    padding: 60px
}

@media only screen and (max-width:799px) {
    .uq-tonttuUseItem {
        font-size: 16px;
        width: 100%;
        padding: 20px 0
    }
}

.uq-tonttuUseItem_image {
    text-align: center;
    margin-bottom: 30px
}

.uq-tonttuUseItem_image img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    width: 370px;
    margin: auto
}

@media only screen and (max-width:799px) {
    .uq-tonttuUseItem_image img {
        width: 80%
    }
}

.uq-tonttuUseItem_headline {
    font-size: 24px;
    line-height: 1;
    text-align: center;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-tonttuUseItem_headline {
        font-size: 20px;
        margin-bottom: 15px
    }
}

.uq-tonttuUseItem p {
    margin: 0 60px
}

@media only screen and (max-width:799px) {
    .uq-tonttuUseItem p {
        margin: 0;
        padding: 0 20px
    }
}

.uq-tonttuOkimochi {
    position: relative;
    background: gold;
    background-image: url("../img/tonttu/okimochi_bg-1.png");
    background-repeat: repeat;
    background-position: 0 50px;
    box-sizing: border-box;
    padding: 120px 0
}

@media only screen and (max-width:799px) {
    .uq-tonttuOkimochi {
        background-image: none;
        padding: 60px 4px 100px
    }
}

.is-sponsor .uq-tonttuOkimochi {
    background: none;
    padding: 60px 0
}

@media only screen and (max-width:799px) {
    .is-sponsor .uq-tonttuOkimochi {
        padding: 40px 0
    }
}

.uq-tonttuOkimochi_lead {
    font-size: 14px;
    font-weight: 700;
    color: #ea4c89;
    text-align: center
}

.uq-tonttuOkimochi_lead br {
    display: none
}

.uq-tonttuOkimochi_copy {
    font-size: 40px;
    text-align: center;
    margin-bottom: 30px
}

.uq-tonttuOkimochi_content {
    border-radius: 20px;
    background: #fff;
    box-sizing: border-box;
    padding: 120px 0;
    box-shadow: 0 0 15px 2px rgba(0, 0, 0, .05);
    width: 1100px;
    margin-right: auto;
    margin-left: auto
}

@media only screen and (max-width:799px) {
    .uq-tonttuOkimochi_content {
        width: 100%;
        border-radius: 0;
        padding: 50px 30px
    }
}

.uq-tonttuOkimochi_body {
    width: 600px;
    margin: auto
}

@media only screen and (max-width:799px) {
    .uq-tonttuOkimochi_body {
        width: 100%
    }
}

.uq-tonttuOkimochi_body .uq-tonttuHeadline .uq-tonttuHeadline_en {
    margin-bottom: 15px
}

@media only screen and (max-width:799px) {
    .uq-tonttuOkimochi_body .uq-tonttuHeadline .uq-tonttuHeadline_en {
        margin-bottom: 10px
    }
}

.uq-tonttuOkimochi_body .uq-tonttuHeadline .uq-tonttuHeadline_headline {
    top: 0;
    margin-bottom: 30px
}

.uq-tonttuOkimochi_body p {
    font-size: 18px;
    margin-bottom: 1.5em
}

@media only screen and (max-width:799px) {
    .uq-tonttuOkimochi_body p {
        font-size: 16px
    }
}

.uq-tonttuOkimochi_body p+.uq-tonttuHeadline_headline {
    margin-top: 80px
}

.uq-tonttuOkimochi_body strong {
    display: block;
    font-size: 28px;
    text-align: center;
    margin-top: 40px
}

@media only screen and (max-width:799px) {
    .uq-tonttuOkimochi_body strong {
        font-size: 20px;
        margin-top: 20px
    }
}

.uq-tonttuOkimochi_button {
    text-align: center;
    margin-top: 80px
}

@media only screen and (max-width:799px) {
    .uq-tonttuOkimochi_button {
        margin-top: 40px
    }
}

.uq-tonttuSponsor_figure {
    border: 1px solid #ddd;
    border-radius: 12px;
    text-align: center;
    margin-bottom: 40px;
    padding: 30px 40px
}

.uq-tonttuSponsor_figure img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media only screen and (max-width:799px) {
    .uq-tonttuSponsor_figure {
        border: none;
        border-radius: 0;
        padding-right: 0;
        padding-left: 0
    }
}

.uq-tonttuSponsor_figure .uq-tonttuHeadline {
    margin-bottom: 30px
}

.uq-tonttuSponsor p {
    margin-bottom: 2em
}

@media only screen and (max-width:799px) {
    .uq-tonttuSponsor p {
        margin-bottom: 1.5em
    }
}

.uq-tonttuSponsorExample {
    position: relative;
    width: 100%
}

.uq-tonttuSponsorExample_content {
    display: flex;
    justify-content: space-between;
    width: 100%
}

.uq-tonttuSponsorExampleItem {
    position: relative;
    box-sizing: border-box;
    text-align: center;
    width: calc(50% - 30px)
}

.uq-tonttuSponsorExampleItem img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media only screen and (max-width:799px) {
    .uq-tonttuSponsorExampleItem {
        font-size: 12px;
        width: calc(50% - 25px)
    }
}

.uq-tonttuSponsorExampleItem:first-of-type:after {
    position: absolute;
    top: 70px;
    right: -48px;
    display: block;
    content: "または";
    font-size: 12px;
    font-weight: 700
}

@media only screen and (max-width:799px) {
    .uq-tonttuSponsorExampleItem:first-of-type:after {
        top: 29px;
        right: -42px;
        font-size: 10px
    }
}

.uq-tonttuSponsorExampleItem_image {
    border: 1px solid #ddd;
    border-radius: 12px;
    box-sizing: border-box;
    text-align: center;
    margin-bottom: 5px;
    padding: 20px
}

@media only screen and (max-width:799px) {
    .uq-tonttuSponsorExampleItem_image {
        padding: 5px
    }
}

.uq-tonttuSponsorFunctions {
    border-radius: 12px;
    margin-bottom: 2em;
    padding: 0 0 0 1.5em
}

@media only screen and (max-width:799px) {
    .uq-tonttuSponsorFunctions {
        border: none;
        padding: 0 0 0 20px
    }
}

.uq-tonttuSponsorFunctions_list {
    list-style: disc
}

.uq-tonttuSponsor .c-button {
    display: block;
    margin-bottom: 60px
}

.uq-tonttuSponsor .c-button:last-child {
    margin-bottom: 0
}

@media only screen and (max-width:799px) {
    .uq-tonttuSponsor .c-button:last-child {
        margin-bottom: 60px
    }
}

.uq-tonttuShare {
    text-align: center;
    margin-top: 40px
}

.uq-tonttuLotteryHeader {
    text-align: center;
    margin-bottom: 25px
}

@media only screen and (max-width:799px) {
    .uq-tonttuLotteryHeader {
        margin-bottom: 20px
    }
}

.uq-tonttuLotteryHeader_count {
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .uq-tonttuLotteryHeader_count {
        font-size: 14px;
        margin-bottom: 5px
    }
}

.uq-tonttuLotteryHeader_title {
    font-size: 40px;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-tonttuLotteryHeader_title {
        font-size: 26px
    }
}

.uq-tonttuLotteryHeader_period {
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 25px;
    font-weight: 700;
    line-height: 1
}

@media only screen and (max-width:799px) {
    .uq-tonttuLotteryHeader_period {
        font-size: 16px
    }
}

.uq-tonttuLotteryHeader_end {
    box-sizing: border-box;
    font-size: 24px;
    font-weight: 700;
    line-height: 1;
    color: #ef0d0d;
    margin: 30px auto 0
}

@media only screen and (max-width:799px) {
    .uq-tonttuLotteryHeader_end {
        font-size: 20px
    }
}

.uq-tonttuLotteryNav {
    z-index: 1000;
    margin-bottom: 20px;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .5s;
    transition-property: all
}

@media only screen and (max-width:799px) {
    .uq-tonttuLotteryNav {
        display: block;
        margin-bottom: 40px
    }
}

.uq-tonttuLotteryNav_lists {
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 440px;
    margin: auto
}

@media only screen and (max-width:799px) {
    .uq-tonttuLotteryNav_lists {
        width: 100%;
        padding: 0 20px
    }
}

.uq-tonttuLotteryNav_list {
    margin: 0 4px
}

@media only screen and (max-width:799px) {
    .uq-tonttuLotteryNav_list {
        margin: 0 2px
    }
}

.uq-tonttuLotteryNav_list a {
    position: relative;
    border-radius: 10px;
    background: #fff;
    display: block;
    font-weight: 700;
    text-align: center;
    width: 96px;
    padding: 5px 15px;
    cursor: pointer
}

@media only screen and (max-width:799px) {
    .uq-tonttuLotteryNav_list a {
        border-radius: 10px;
        box-sizing: border-box;
        font-size: 12px;
        width: 84px;
        padding: 6px 10px 5px
    }
}

.uq-tonttuLotteryNav_list a:after {
    content: "";
    position: relative;
    top: 2px;
    display: block;
    font-size: 8px;
    pointer-events: none
}

.uq-tonttuLotteryNav_list a:hover {
    text-decoration: none
}

@media only screen and (min-width:1024px) {
    .uq-tonttuLotteryNav_list a:hover {
        opacity: .7
    }
}

.uq-tonttuMe {
    position: fixed;
    bottom: 20px;
    left: 50%;
    border-radius: 16px;
    background: #fff;
    background: gold;
    display: flex;
    align-items: center;
    justify-content: space-between;
    box-sizing: border-box;
    font-weight: 700;
    z-index: 100;
    text-align: center;
    width: auto;
    width: 250px;
    height: 50px;
    padding: 0 20px;
    box-shadow: 0 0 5px 1px rgba(0, 0, 0, .05);
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .5s;
    transition-property: all;
    -webkit-transform: translateY(80px) translateX(-50%);
    transform: translateY(80px) translateX(-50%)
}

@media only screen and (max-width:799px) {
    .uq-tonttuMe {
        bottom: 0;
        left: 0;
        border-radius: 0;
        width: 100%;
        height: 40px;
        -webkit-transform: translateY(50px) translateX(0);
        transform: translateY(50px) translateX(0)
    }
}

.uq-tonttuMe.is-show {
    -webkit-transform: translateY(0) translateX(-50%);
    transform: translateY(0) translateX(-50%)
}

@media only screen and (max-width:799px) {
    .uq-tonttuMe.is-show {
        -webkit-transform: translateY(0) translateX(0);
        transform: translateY(0) translateX(0)
    }
}

.uq-tonttuMe p {
    font-size: 14px;
    margin-right: 10px
}

.uq-tonttuMe_tonttu {
    position: relative;
    display: flex;
    font-family: Helvetica Neue, Helvetica, sans-serif;
    font-size: 20px
}

@media only screen and (max-width:799px) {
    .uq-tonttuMe_tonttu {
        font-size: 18px
    }
}

.uq-tonttuMe_tonttu:before {
    position: relative;
    top: 5px;
    right: 0;
    background: url("../img/global/tonttu.svg");
    background-repeat: no-repeat;
    background-size: contain;
    display: block;
    content: "";
    width: 26px;
    height: 25px;
    margin-right: 5px
}

@media only screen and (max-width:799px) {
    .uq-tonttuMe_tonttu:before {
        top: 5px;
        width: 14px;
        height: 22px;
        margin-right: 10px
    }
}

.uq-login {
    width: 540px;
    background: #fff;
    overflow: hidden;
    margin: 100px auto 0;
    border-radius: 12px;
}

@media only screen and (max-width:799px) {
    .uq-login {
        width: 100%;
        margin-top: 0
    }
}

.uq-login .c-tab_action {
    margin-bottom: 30px
}

.uq-login_content {
    padding: 50px 80px
}

@media only screen and (max-width:799px) {
    .uq-login_content {
        padding: 30px 40px 60px
    }
}

.uq-login_logo {
    width: 140px;
    margin: 0 auto 40px
}

.uq-login_logo img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media only screen and (max-width:799px) {
    .uq-login_logo {
        width: 90px
    }
}

.uq-login_type {
    border-bottom: 1px solid #eee;
    padding-bottom: 30px;
    margin-bottom: 30px
}

.uq-login_type:last-of-type {
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: none
}

.uq-login_type .c-button {
    width: 100%;
    height: auto
}

@media only screen and (max-width:799px) {
    .uq-login_type .c-button--back {
        margin-top: 0
    }
}

.uq-login_type .c-button a,
.uq-login_type .c-button button {
    width: 100%;
    display: block;
    height: auto;
    line-height: 1.65;
    font-size: 16px;
    padding: 14px 64px
}

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

    .uq-login_type .c-button a,
    .uq-login_type .c-button button {
        font-size: 14px;
        padding-left: 0;
        padding-right: 0
    }
}

.uq-loginSns {
    overflow: hidden
}

.uq-loginSns_sub {
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px
}

.is-register .uq-loginSns_sub {
    display: block
}

.uq-loginSns_sub .c-button {
    margin: 0;
    width: calc(50% - 5px)
}

.is-register .uq-loginSns_sub .c-button {
    width: calc(33.333% - 5px)
}

.uq-loginSns .c-button {
    margin-bottom: 10px
}

.is-register .uq-loginSns .c-button {
    width: calc(33.333% - 5px);
    float: left;
    margin-right: 7px
}

@media only screen and (max-width:799px) {
    .is-register .uq-loginSns .c-button {
        float: none;
        margin: 0 0 5px;
        width: 100%
    }
}

.is-register .uq-loginSns .c-button:last-child {
    margin-right: 0
}

.uq-loginSns .c-button a {
    padding-left: 0;
    padding-right: 0
}

.uq-loginSns .c-button a span {
    position: relative;
    padding-left: 30px
}

.uq-loginSns .c-button a span:before {
    position: absolute;
    top: -4px;
    left: 0;
    font-size: 20px
}

.uq-loginSns .c-button.is-twitter a {
    background: #04a2f9
}

.uq-loginSns .c-button.is-twitter a span:before {
    content: ""
}

.uq-loginSns .c-button.is-line a {
    background: #00b900
}

.uq-loginSns .c-button.is-line a span:before {
    content: ""
}

.uq-loginSns .c-button.is-facebook a {
    background: #2f5bac
}

.uq-loginSns .c-button.is-facebook a span:before {
    content: ""
}

.uq-loginSns_description {
    font-size: 12px;
    line-height: 1.5
}

.uq-loginSns_description a {
    text-decoration: underline
}

.uq-loginSns_description a:hover {
    text-decoration: none
}

.uq-loginForm p {
    margin-bottom: 1.5em
}

.uq-loginForm p a {
    color: #ea4c89;
    text-decoration: underline;
    transition: all .5s cubic-bezier(.215, .61, .355, 1)
}

.uq-loginForm p a:hover {
    opacity: .7;
    text-decoration: none
}

.uq-loginForm p:last-child {
    margin-bottom: 0
}

.uq-loginForm_key {
    font-size: 12px;
    margin-bottom: 2px
}

.uq-loginForm_value {
    margin-bottom: 15px
}

.uq-loginForm .c-form_button {
    width: 100%;
    height: auto;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .uq-loginForm .c-form_button {
        padding: 0
    }
}

.uq-loginForm .c-form_button.is-double {
    overflow: hidden
}

.uq-loginForm .c-form_button.is-double .c-button {
    width: calc(50% - 20px)
}

.uq-loginForm .c-form_button.is-double .c-button--submit {
    float: right
}

.uq-loginForm_reset {
    text-align: right
}

.uq-loginForm_reset a {
    font-size: 12px;
    color: #ea4c89;
    text-decoration: underline
}

.uq-loginForm_reset a:hover {
    text-decoration: none
}

.uq-loginForm_terms {
    margin-bottom: 20px;
    font-size: 14px
}

.uq-loginForm_terms label {
    position: relative;
    top: -1px;
    height: 30px;
    float: left
}

.uq-loginForm_terms label:hover:after {
    color: #ddd
}

.desktop .uq-loginForm_terms:hover input+label:after {
    color: #fff
}

.uq-loginForm_terms a {
    text-decoration: underline
}

.uq-loginForm_attention {
    padding-left: 1em
}

.uq-loginForm_attention li {
    margin-bottom: 5px;
    list-style-type: disc;
    font-size: 12px
}

.uq-loginForm_helper {
    margin-top: 5px;
    font-size: 12px;
    color: #888
}

.uq-ionwater {
    background: #fff;
    width: 100%;
    margin: auto
}

@media only screen and (max-width:799px) {
    .uq-ionwater {
        overflow: hidden;
        min-width: 100%
    }
}

.uq-ionwater_sns {
    text-align: center;
    padding-bottom: 40px
}

.uq-ionwaterHeadline {
    font-size: 40px;
    color: #ea4c89;
    margin-bottom: 40px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterHeadline {
        font-size: 26px;
        margin-bottom: 30px
    }
}

.uq-ionwaterHeadline span {
    display: block;
    font-size: 26px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterHeadline span {
        font-size: 14px
    }
}

.uq-ionwaterButton {
    text-align: center;
    padding: 80px 0
}

@media only screen and (max-width:799px) {
    .uq-ionwaterButton {
        padding: 60px 20px
    }
}

.uq-ionwaterButton a {
    border-radius: 12px;
    background: #ea4c89;
    display: block;
    box-sizing: border-box;
    font-size: 20px;
    font-weight: 700;
    color: #fff;
    width: 500px;
    margin: auto;
    padding: 30px 50px;
    transition: all .3s cubic-bezier(.215, .61, .355, 1)
}

@media only screen and (max-width:799px) {
    .uq-ionwaterButton a {
        display: block;
        font-size: 16px;
        width: 100%;
        padding: 30px 0
    }
}

.uq-ionwaterButton a:hover {
    background: #ea4c89;
    text-decoration: none
}

.uq-ionwaterButtonPlease {
    position: relative;
    border: 2px dashed #ddd;
    border-radius: 12px;
    display: block;
    box-sizing: border-box;
    width: 500px;
    margin: 80px auto 0;
    padding: 30px 30px 50px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterButtonPlease {
        text-align: left;
        width: 100%;
        margin: 30px auto 0;
        padding: 20px 30px 30px
    }
}

@media only screen and (max-width:799px) {
    .uq-ionwaterButtonPlease br {
        display: none
    }
}

.uq-ionwaterButtonPlease strong {
    display: block;
    font-size: 20px;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterButtonPlease strong {
        font-size: 18px
    }
}

.uq-ionwaterButtonPlease span {
    display: block;
    font-size: 12px;
    margin-top: 10px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterButtonPlease span br {
        display: block
    }
}

.uq-ionwaterButtonPlease_character {
    position: absolute;
    bottom: -30px;
    left: 50%;
    width: 100px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

@media only screen and (max-width:799px) {
    .uq-ionwaterButtonPlease_character {
        bottom: -24px;
        width: 80px
    }
}

.uq-ionwaterHero {
    position: relative;
    background: #0451df;
    width: 100%;
    height: calc(100vh - 60px);
    min-height: 640px;
    max-height: 840px;
    margin-bottom: 120px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterHero {
        height: calc(100vh - 120px);
        min-height: 400px;
        margin-bottom: 160px
    }
}

.uq-ionwaterHero_logo {
    position: absolute;
    top: 20px;
    left: 20px;
    z-index: 1;
    width: 100px
}

.uq-ionwaterHero_logo img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media only screen and (max-width:799px) {
    .uq-ionwaterHero_logo {
        width: 55px
    }
}

.uq-ionwaterHero_content {
    position: relative;
    overflow: hidden;
    width: 1100px;
    height: 100%;
    min-height: 640px;
    margin: auto
}

@media only screen and (max-width:799px) {
    .uq-ionwaterHero_content {
        width: 100%;
        min-height: 400px
    }
}

.uq-ionwaterHero_wed {
    width: 527px;
    margin-bottom: -80px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterHero_wed {
        width: 100%;
        margin: 0 auto -35px
    }
}

.uq-ionwaterHero_lead {
    width: 527px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterHero_lead {
        width: 100%;
        margin: auto
    }
}

.uq-ionwaterHero_text {
    position: absolute;
    bottom: 24vh;
    left: 0
}

.uq-ionwaterHero_text img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media only screen and (max-width:799px) {
    .uq-ionwaterHero_text {
        right: 0;
        bottom: 46vh;
        z-index: 1;
        width: 66%;
        margin: auto
    }
}

.uq-ionwaterHero_illust {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 521px
}

.uq-ionwaterHero_illust img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media only screen and (max-width:799px) {
    .uq-ionwaterHero_illust {
        left: 0;
        width: 56%;
        margin: auto
    }
}

.uq-ionwaterHero_sns {
    position: absolute;
    bottom: -40px;
    left: 30px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterHero_sns {
        bottom: -90px
    }
}

.uq-ionwaterHero_update {
    position: absolute;
    bottom: -70px;
    left: 50%;
    width: 100%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.uq-ionwaterHero_update img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media only screen and (max-width:799px) {
    .uq-ionwaterHero_update {
        bottom: -35px;
        width: 100%
    }
}

@keyframes fuwafuwa {
    0% {
        -webkit-transform: translate(-50%);
        transform: translate(-50%)
    }

    50% {
        -webkit-transform: translate(-50%, -8px);
        transform: translate(-50%, -8px)
    }

    to {
        -webkit-transform: translate(-50%);
        transform: translate(-50%)
    }
}

.uq-ionwaterAbout {
    box-sizing: border-box;
    text-align: center;
    margin-bottom: 120px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterAbout {
        margin-bottom: 0
    }
}

.uq-ionwaterAbout .uq-ionwaterHeadline {
    font-size: 48px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterAbout .uq-ionwaterHeadline {
        font-size: 30px
    }
}

.uq-ionwaterAbout:after {
    background-image: url("../img/ionwater/bottle.jpg");
    background-repeat: repeat-x;
    background-size: contain;
    display: block;
    content: "";
    width: 100%;
    height: 100px;
    margin-top: 100px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterAbout:after {
        background-image: url("../img/ionwater/bottle_sp.jpg");
        height: 160px;
        margin-top: 60px
    }
}

.uq-ionwaterAbout_lead {
    font-size: 20px;
    font-weight: 700;
    line-height: 2.2;
    margin-bottom: 90px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterAbout_lead {
        font-size: 17px;
        line-height: 2;
        text-align: left;
        text-align: justify;
        margin-bottom: 50px;
        padding: 0 40px
    }

    .uq-ionwaterAbout_lead br {
        display: none
    }
}

.uq-ionwaterAboutLogo {
    display: flex;
    align-items: center;
    justify-content: center
}

.uq-ionwaterAboutLogo_logo {
    position: relative;
    width: 140px;
    margin: 0 60px
}

.uq-ionwaterAboutLogo_logo img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media only screen and (max-width:799px) {
    .uq-ionwaterAboutLogo_logo {
        width: 25%;
        margin: 0 30px
    }
}

.uq-ionwaterAboutLogo_logo.is-ikitai:after {
    position: absolute;
    top: 10px;
    right: -80px;
    display: inline-block;
    content: "×";
    font-size: 50px;
    font-weight: 400;
    color: #888;
    opacity: .4
}

@media only screen and (max-width:799px) {
    .uq-ionwaterAboutLogo_logo.is-ikitai:after {
        top: 13px;
        right: -44px;
        font-size: 30px
    }
}

.uq-ionwaterPresent {
    text-align: center;
    margin-bottom: 120px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterPresent {
        margin-bottom: 60px;
        padding: 0 20px
    }
}

.uq-ionwaterPresent_image {
    width: 600px;
    margin: 0 auto 30px
}

.uq-ionwaterPresent_image img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media only screen and (max-width:799px) {
    .uq-ionwaterPresent_image {
        width: 100%
    }
}

.uq-ionwaterPresent_body {
    font-size: 30px;
    font-weight: 700;
    text-align: left;
    width: 600px;
    margin: auto
}

@media only screen and (max-width:799px) {
    .uq-ionwaterPresent_body {
        font-size: 24px;
        width: 100%
    }
}

.uq-ionwaterPresent_body strong {
    display: block;
    font-size: 20px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterPresent_body strong {
        font-size: 18px
    }
}

.uq-ionwaterPresent_body span {
    font-size: 18px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterPresent_body span {
        display: block;
        font-size: 14px
    }
}

.uq-ionwaterPresent_update {
    border-radius: 6px;
    font-size: 14px
}

.uq-ionwaterJoin {
    position: relative;
    background: #eef8fa;
    text-align: center;
    overflow: hidden;
    padding: 110px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterJoin {
        padding: 40px 20px
    }
}

.uq-ionwaterJoin:before {
    position: absolute;
    top: 0;
    left: 0;
    background: #ea4c89;
    display: block;
    content: "";
    z-index: 0;
    width: 100%;
    height: 460px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterJoin:before {
        height: 380px
    }
}

.uq-ionwaterJoin:after {
    position: absolute;
    top: 0;
    right: -20px;
    background-image: url("../img/ionwater/join_illust.png");
    background-repeat: no-repeat;
    background-position: 0 0;
    display: block;
    content: "";
    z-index: 0;
    opacity: .15;
    width: 715px;
    height: 460px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterJoin:after {
        top: 10px;
        right: -170px;
        background-size: 300px auto;
        width: 400px;
        height: 380px
    }
}

.uq-ionwaterJoin_headline {
    position: relative;
    font-size: 40px;
    z-index: 1;
    color: #fff;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterJoin_headline {
        font-size: 26px;
        margin-bottom: 10px
    }
}

.uq-ionwaterJoin_headline span {
    position: relative
}

.uq-ionwaterJoin_headline img {
    position: absolute;
    top: -35px;
    right: -140px;
    width: 120px;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media only screen and (max-width:799px) {
    .uq-ionwaterJoin_headline img {
        top: -20px;
        right: -95px;
        width: 80px
    }
}

.uq-ionwaterJoin_date {
    position: relative;
    border-bottom: 3px solid #fff;
    display: inline-block;
    font-size: 18px;
    font-weight: 700;
    z-index: 1;
    color: #fff;
    text-align: center;
    margin-bottom: 80px;
    padding-bottom: 10px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterJoin_date {
        border-bottom: 2px solid #fff;
        font-size: 14px;
        margin-bottom: 40px
    }
}

.uq-ionwaterJoin_content {
    position: relative;
    z-index: 1;
    max-width: 1100px;
    margin: auto
}

@media only screen and (max-width:799px) {
    .uq-ionwaterJoin_content {
        width: 100%;
        max-width: 100%
    }
}

.uq-ionwaterJoin_steps {
    display: flex;
    justify-content: space-between;
    margin-bottom: 40px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterJoin_steps {
        display: block
    }
}

.uq-ionwaterJoinItem {
    position: relative;
    border-radius: 20px;
    background: #fff;
    box-sizing: border-box;
    text-align: center;
    width: calc(50% - 20px);
    padding: 60px 50px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterJoinItem {
        width: 100%;
        margin-bottom: 40px;
        padding: 50px 20px
    }
}

.uq-ionwaterJoinItem.is-sakatsu {
    display: flex;
    justify-content: space-between;
    text-align: left;
    width: 100%
}

@media only screen and (max-width:799px) {
    .uq-ionwaterJoinItem.is-sakatsu {
        display: block;
        padding: 30px
    }
}

.is-sakatsu .uq-ionwaterJoinItem_body {
    width: 55%
}

@media only screen and (max-width:799px) {
    .is-sakatsu .uq-ionwaterJoinItem_body {
        width: 100%
    }
}

.uq-ionwaterJoinItem_step {
    position: absolute;
    top: -40px;
    left: 40px;
    border-radius: 50%;
    background: #00b2d7;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: Montserrat;
    font-size: 12px;
    line-height: 1;
    z-index: 1;
    color: #fff;
    width: 85px;
    height: 85px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterJoinItem_step {
        top: -20px;
        left: 20px;
        font-size: 8px;
        width: 50px;
        height: 50px
    }
}

.uq-ionwaterJoinItem_step strong {
    display: block;
    font-size: 26px;
    line-height: 1;
    margin-top: 5px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterJoinItem_step strong {
        font-size: 14px;
        margin-top: 3px
    }
}

.uq-ionwaterJoinItem_image {
    width: 300px;
    margin: auto auto 40px
}

.uq-ionwaterJoinItem_image img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media only screen and (max-width:799px) {
    .uq-ionwaterJoinItem_image {
        width: 80%;
        margin-bottom: 20px
    }
}

.is-sakatsu .uq-ionwaterJoinItem_image {
    width: calc(45% - 60px);
    margin: 0
}

@media only screen and (max-width:799px) {
    .is-sakatsu .uq-ionwaterJoinItem_image {
        width: 100%;
        margin-top: 20px
    }
}

.uq-ionwaterJoinItem_headline {
    position: relative;
    display: block;
    font-size: 28px;
    color: #ea4c89;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterJoinItem_headline {
        font-size: 20px;
        margin-bottom: 15px
    }
}

.is-sakatsu .uq-ionwaterJoinItem_headline {
    padding: 0 0 0 40px
}

@media only screen and (max-width:799px) {
    .is-sakatsu .uq-ionwaterJoinItem_headline {
        padding: 0 0 0 28px
    }
}

.is-sakatsu .uq-ionwaterJoinItem_headline:before {
    position: absolute;
    top: 5px;
    left: 0;
    background-image: url("../img/ionwater/beginner.png");
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: contain;
    display: block;
    content: "";
    z-index: 0;
    width: 28px;
    height: 37px
}

@media only screen and (max-width:799px) {
    .is-sakatsu .uq-ionwaterJoinItem_headline:before {
        top: 5px;
        width: 18px;
        height: 28px
    }
}

.uq-ionwaterJoinItem_description {
    font-size: 18px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterJoinItem_description {
        font-size: 14px
    }
}

.is-sakatsu .uq-ionwaterJoinItem_description {
    font-size: 16px
}

.uq-ionwaterTerms {
    background: #f3f3f3;
    padding: 140px 0 0
}

@media only screen and (max-width:799px) {
    .uq-ionwaterTerms {
        padding: 70px 0
    }
}

.uq-ionwaterTerms_content {
    border-radius: 20px;
    background: #fff;
    box-sizing: border-box;
    text-align: center;
    width: 1100px;
    margin: auto;
    padding: 100px 150px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterTerms_content {
        width: 100%;
        padding: 50px 40px
    }
}

.uq-ionwaterTerms_content dl {
    text-align: left;
    width: 640px;
    margin: auto
}

@media only screen and (max-width:799px) {
    .uq-ionwaterTerms_content dl {
        width: 100%
    }
}

.uq-ionwaterTerms_content dl dt {
    font-size: 16px;
    font-weight: 700
}

@media only screen and (max-width:799px) {
    .uq-ionwaterTerms_content dl dt {
        font-size: 14px
    }
}

.uq-ionwaterTerms_content dl dd {
    font-size: 16px;
    margin-bottom: 2em
}

@media only screen and (max-width:799px) {
    .uq-ionwaterTerms_content dl dd {
        font-size: 14px
    }
}

.uq-ionwaterTerms_content dl dd p {
    margin-bottom: 1.5em
}

.uq-ionwaterPop {
    background: #f3f3f3;
    padding: 60px 0 70px
}

.uq-ionwaterPop_content {
    border-radius: 20px;
    background: #fff;
    box-sizing: border-box;
    text-align: center;
    width: 1100px;
    margin: auto;
    padding: 100px 150px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterPop_content {
        width: 100%;
        padding: 50px 40px
    }
}

.uq-ionwaterPop p {
    margin-bottom: 2em
}

.uq-ionwaterPop_image {
    width: 600px;
    margin: 0 auto 20px
}

.uq-ionwaterPop_image img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media only screen and (max-width:799px) {
    .uq-ionwaterPop_image {
        width: 100%
    }
}

.uq-ionwaterBanner {
    text-align: center;
    margin-bottom: 35px
}

@media only screen and (max-width:799px) {
    .uq-ionwaterBanner {
        box-sizing: border-box;
        width: 100%;
        margin-bottom: 20px;
        padding: 0 20px
    }
}

@media only screen and (min-width:641px) and (max-width:1023px) {
    .uq-ionwaterBanner .u-desktopBlock {
        display: block
    }
}

@media only screen and (max-width:799px) {
    .uq-ionwaterBanner .u-desktopBlock {
        display: none
    }
}

@media only screen and (min-width:641px) and (max-width:1023px) {
    .uq-ionwaterBanner .u-mobileBlock {
        display: none
    }
}

.uq-ionwaterBanner a {
    display: block;
    width: 1100px;
    margin: auto
}

.uq-ionwaterBanner a img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media only screen and (max-width:799px) {
    .uq-ionwaterBanner a {
        width: 100%
    }
}

.uq-ionwaterBanner a img {
    margin: auto
}

.desktop .uq-ionwaterBanner a:hover {
    opacity: .7
}

.uq-advend {
    width: 100%;
    margin: auto
}

.uq-advendHero {
    border-radius: 20px;
    background: #ea4c89;
    color: #fff;
    text-align: center;
    margin-bottom: 40px;
    padding: 100px 0
}

@media only screen and (max-width:799px) {
    .uq-advendHero {
        border-radius: 0;
        margin-bottom: 20px;
        padding: 40px 0
    }
}

.p-article--magazine .uq-advendHero {
    padding: 0
}

@media only screen and (max-width:799px) {
    .p-article--magazine .uq-advendHero {
        padding: 0
    }
}

.p-article--magazine .uq-advendHero a {
    display: block;
    color: #fff;
    text-decoration: none;
    padding: 40px 0
}

@media only screen and (max-width:799px) {
    .p-article--magazine .uq-advendHero a {
        padding: 20px 0
    }
}

.p-article--magazine .uq-advendHero .uq-advendHero_headline {
    margin: 0
}

@media only screen and (max-width:799px) {
    .p-article--magazine .uq-advendHero .uq-advendHero_headline {
        font-size: 20px;
        margin: 0
    }
}

.uq-advendHero_headline {
    font-size: 36px;
    letter-spacing: .05em
}

@media only screen and (max-width:799px) {
    .uq-advendHero_headline {
        font-size: 22px
    }
}

.uq-advendHero_headline strong {
    display: block;
    font-size: 24px
}

@media only screen and (max-width:799px) {
    .uq-advendHero_headline strong {
        font-size: 16px
    }
}

.uq-advendHero_headline span {
    display: block;
    font-size: 13px;
    margin-top: 10px
}

@media only screen and (max-width:799px) {
    .uq-advendHero_headline span {
        font-size: 8px;
        letter-spacing: .2em
    }
}

.uq-advendNav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 20px 0 40px
}

@media only screen and (max-width:799px) {
    .uq-advendNav {
        margin: 0 0 20px
    }
}

.uq-advendNav_link {
    display: inline-block;
    margin: 0 10px
}

@media only screen and (max-width:799px) {
    .uq-advendNav_link {
        font-size: 14px
    }
}

.uq-advendNav_link a {
    font-weight: 700
}

@media only screen and (max-width:799px) {
    .uq-advendNav_share {
        background: #f5f5f5;
        display: inline-block;
        text-align: center;
        width: 100%;
        padding: 10px 0 5px
    }
}

@media only screen and (max-width:799px) {
    .uq-advendNav_share.is-desktop {
        display: none
    }
}

.uq-advendNav_share.is-mobile {
    display: none
}

@media only screen and (max-width:799px) {
    .uq-advendNav_share.is-mobile {
        display: block
    }
}

@media only screen and (max-width:799px) {
    .uq-advendNav_share .c-share {
        margin-bottom: 0
    }
}

.uq-advendCalendar {
    border-radius: 20px;
    background: #fff;
    box-sizing: border-box;
    margin-bottom: 40px;
    padding: 40px
}

@media only screen and (max-width:799px) {
    .uq-advendCalendar {
        border-top: 1px solid #ddd;
        border-radius: 0;
        margin-bottom: 0;
        padding: 10px 0 0
    }
}

.uq-advendCalendar table {
    width: 100%
}

@media only screen and (max-width:799px) {
    .uq-advendCalendar table {
        table-layout: fixed
    }
}

.uq-advendCalendar table td,
.uq-advendCalendar table th {
    position: relative;
    box-sizing: border-box;
    width: 14.28571%;
    padding: 10px
}

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

    .uq-advendCalendar table td,
    .uq-advendCalendar table th {
        text-align: center;
        padding: 5px
    }
}

.uq-advendCalendar table th {
    border-bottom: 2px solid #888
}

.uq-advendCalendar table th.is-sun {
    color: #ef0d0d
}

.uq-advendCalendar table th.is-sat {
    color: #ea4c89
}

.uq-advendCalendar table td {
    border-bottom: 1px solid #e2e2e2;
    vertical-align: top;
    padding-top: 40px
}

@media only screen and (max-width:799px) {
    .uq-advendCalendar table td {
        padding-top: 20px
    }
}

.uq-advendCalendar table td.is-disabled {
    color: #ccc
}

.uq-advendCalendar_content {
    box-sizing: border-box;
    min-height: 80px
}

@media only screen and (max-width:799px) {
    .uq-advendCalendar_content {
        white-space: nowrap;
        text-overflow: ellipsis;
        overflow: hidden;
        width: 100%;
        min-height: 40px
    }
}

.uq-advendCalendar_user {
    font-size: 12px;
    margin-bottom: 10px
}

.uq-advendCalendar_user img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media only screen and (max-width:799px) {
    .uq-advendCalendar_user {
        margin-right: 0
    }
}

.uq-advendCalendar_user img {
    border-radius: 100%;
    display: inline;
    width: 18px;
    height: 18px;
    margin-right: 5px
}

@media only screen and (max-width:799px) {
    .uq-advendCalendar_user img {
        display: block;
        width: 24px;
        height: 24px;
        margin: auto
    }
}

@media only screen and (max-width:799px) {
    .uq-advendCalendar_user a {
        display: block
    }
}

.uq-advendCalendar_user p {
    display: inline;
    line-height: 1
}

@media only screen and (max-width:799px) {
    .uq-advendCalendar_user p {
        display: block;
        font-size: 8px;
        margin-top: 3px
    }
}

.uq-advendCalendar_day {
    position: absolute;
    top: 10px;
    left: 10px;
    font-size: 14px;
    font-weight: 700
}

@media only screen and (max-width:799px) {
    .uq-advendCalendar_day {
        top: 5px;
        left: 5px;
        font-size: 11px
    }
}

.uq-advendCalendar_post {
    font-size: 14px;
    line-height: 1.5
}

@media only screen and (max-width:799px) {
    .uq-advendCalendar_post {
        display: none
    }
}

.uq-advendCalendar_post a {
    color: #ea4c89
}

.uq-advendCalendar_button {
    position: relative
}

.uq-advendCalendar_button a {
    border: 2px solid #ea4c89;
    border-radius: 8px;
    display: block;
    font-size: 14px;
    font-weight: 700;
    color: #ea4c89;
    text-align: center;
    padding: 4px 10px
}

@media only screen and (max-width:799px) {
    .uq-advendCalendar_button a {
        border: 1px solid #ea4c89;
        border-radius: 4px;
        display: inline-block;
        font-size: 11px;
        padding: 2px 4px
    }
}

.uq-advendCalendar_button a:hover {
    background: #ea4c89;
    color: #fff;
    text-decoration: none
}

.uq-advendList {
    border-radius: 20px;
    background: #fff;
    padding: 40px
}

@media only screen and (max-width:799px) {
    .uq-advendList {
        padding: 20px
    }
}

.uq-advendList ul li {
    border-bottom: 1px solid #e2e2e2;
    display: flex;
    align-items: center;
    font-size: 16px;
    padding: 10px 0
}

@media only screen and (max-width:799px) {
    .uq-advendList ul li {
        font-size: 14px
    }
}

.uq-advendList_date {
    font-size: 14px;
    font-weight: 700;
    width: 44px;
    margin-right: 10px
}

@media only screen and (max-width:799px) {
    .uq-advendList_date {
        font-size: 12px
    }
}

.uq-advendList_content {
    display: flex;
    font-size: 14px;
    width: 100%
}

@media only screen and (max-width:799px) {
    .uq-advendList_content {
        display: block
    }
}

.uq-advendList_user {
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    width: 200px;
    margin-right: 10px
}

@media only screen and (max-width:799px) {
    .uq-advendList_user {
        font-size: 11px;
        width: 100%;
        margin-top: 3px
    }
}

.uq-advendList_user img {
    position: relative;
    top: -3px;
    border-radius: 100%;
    display: inline;
    width: 20px;
    height: 20px;
    margin-right: 5px
}

@media only screen and (max-width:799px) {
    .uq-advendList_user img {
        width: 16px;
        height: 16px
    }
}

.uq-advendList_user p {
    display: inline;
    line-height: 1
}

.uq-advendList_body a {
    color: #ea4c89
}

.uq-advendList_body a[href="#"] {
    color: #333;
    pointer-events: none
}

.uq-advendList_button a {
    border: 2px solid #ea4c89;
    border-radius: 8px;
    display: block;
    font-size: 14px;
    font-weight: 700;
    color: #ea4c89;
    text-align: center;
    padding: 4px 10px
}

@media only screen and (max-width:799px) {
    .uq-advendList_button a {
        font-size: 11px;
        padding: 2px 8px
    }
}

.uq-advendList_button a:hover {
    background: #ea4c89;
    color: #fff;
    text-decoration: none
}

.uq-lotteryApply {
    position: relative;
    background-size: contain;
    overflow: hidden;
    padding: 40px 30px
}

@media only screen and (max-width:799px) {
    .uq-lotteryApply {
        overflow: visible;
        padding: 5px 0 30px
    }
}

.uq-lotteryApply_title {
    position: absolute;
    top: 10px;
    left: 20px;
    font-size: 18px;
    font-weight: 700;
    color: #fff;
    text-align: left
}

@media only screen and (max-width:799px) {
    .uq-lotteryApply_title {
        top: -10px;
        left: -5px;
        font-size: 16px
    }
}

.uq-lotteryApply_title span {
    border-bottom: 2px solid #fff;
    display: inline-block;
    line-height: 1;
    margin-bottom: 5px;
    padding-bottom: 3px
}

@media only screen and (max-width:799px) {
    .uq-lotteryApply_title span {
        margin-bottom: 3px
    }
}

.uq-lotteryApply_bg {
    position: relative;
    top: -40px;
    left: -31px;
    background-position: 50%;
    background-size: cover;
    width: calc(100% + 62px);
    height: auto;
    margin-bottom: -20px
}

@media only screen and (max-width:799px) {
    .uq-lotteryApply_bg {
        top: -25px;
        left: -21px;
        width: calc(100% + 42px);
        margin-bottom: 0
    }
}

.uq-lotteryApply_bg:before {
    display: block;
    content: "";
    padding-top: 63.33333%
}

.uq-lotteryApply_logo {
    position: absolute;
    top: 50%;
    left: 50%;
    overflow: hidden;
    width: 190px;
    height: 146px;
    margin: 0 auto 10px;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

@media only screen and (max-width:799px) {
    .uq-lotteryApply_logo {
        width: 150px;
        height: 115px
    }
}

.uq-lotteryApply_logo img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    position: absolute;
    top: 50%;
    left: 50%;
    width: 200px;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

@media only screen and (max-width:799px) {
    .uq-lotteryApply_logo img {
        width: 160px
    }
}

.uq-lotteryApply_done {
    display: block;
    font-size: 20px;
    color: #ea4c89;
    text-align: center;
    margin-bottom: 20px
}

.uq-lotteryApply_done:after,
.uq-lotteryApply_done:before {
    position: relative;
    top: 3px;
    background: #ea4c89;
    display: inline-block;
    content: "";
    font-weight: 700;
    width: 2px;
    height: 20px;
    margin: 0 10px
}

.uq-lotteryApply_done:before {
    -webkit-transform: translateX(-7px) rotate(-35deg);
    transform: translateX(-7px) rotate(-35deg)
}

.uq-lotteryApply_done:after {
    -webkit-transform: translateX(2px) rotate(35deg);
    transform: translateX(2px) rotate(35deg)
}

.uq-lotteryApply_headline {
    font-size: 20px;
    line-height: 1.5;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .uq-lotteryApply_headline {
        margin-bottom: 10px
    }
}

.uq-lotteryApply_list {
    margin-bottom: 20px
}

.uq-lotteryApply_list strong {
    display: block;
    font-size: 14px;
    font-weight: 400;
    margin-bottom: 10px
}

.uq-lotteryApply_list ul {
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto 10px
}

.uq-lotteryApply_list ul li {
    background: #f3f3f3;
    box-sizing: border-box;
    font-size: 14px;
    text-align: center;
    width: 25%;
    margin: 0 1px 2px;
    padding: 4px 10px
}

@media only screen and (max-width:799px) {
    .uq-lotteryApply_list ul li {
        box-sizing: border-box;
        font-size: 12px;
        width: calc(33.3333% - 2px)
    }
}

.uq-lotteryApply_list ul li:last-child {
    margin-bottom: 0
}

.uq-lotteryApply_button {
    display: flex;
    justify-content: space-between
}

.uq-lotteryApply_button .c-button,
.uq-lotteryApply_button .c-share {
    width: calc(50% - 10px);
    margin: auto
}

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

    .uq-lotteryApply_button .c-button,
    .uq-lotteryApply_button .c-share {
        height: auto
    }
}

.uq-lotteryApply_button .c-button a,
.uq-lotteryApply_button .c-share a {
    box-sizing: border-box;
    line-height: 1.65;
    height: auto;
    padding: 10px 0
}

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

    .uq-lotteryApply_button .c-button a,
    .uq-lotteryApply_button .c-share a {
        display: block;
        font-size: 14px;
        padding: 10px 0
    }
}

.uq-lotteryApply_button .c-button a span,
.uq-lotteryApply_button .c-share a span {
    top: 0
}

@media only screen and (max-width:799px) {
    .uq-lotteryApply .c-button a {
        padding-top: 8px;
        padding-bottom: 8px
    }
}

@media only screen and (max-width:799px) {
    .uq-lotteryResult {
        margin-bottom: 60px
    }
}

.uq-lotteryResult_notfound {
    text-align: center;
    margin: 40px 0 0
}

.uq-lotteryResultHero {
    position: relative;
    top: -80px;
    left: -80px;
    border-radius: 12px 12px 0 0;
    background-image: url("../img/tonttu/result_bg.png");
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    width: calc(100% + 160px);
    height: 320px;
    margin-bottom: -60px
}

@media only screen and (max-width:799px) {
    .uq-lotteryResultHero {
        top: 0;
        height: 240px;
        margin-bottom: 0
    }
}

.uq-lotteryResultHero_copy {
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 15px
}

@media only screen and (max-width:799px) {
    .uq-lotteryResultHero_copy {
        font-size: 14px
    }
}

.uq-lotteryResultHero_title {
    font-size: 60px;
    font-weight: 700;
    line-height: 1;
    color: #fff;
    letter-spacing: .1em;
    text-shadow: #000 2px 0, #000 -2px 0, #000 0 -2px, #000 0 2px, #000 2px 2px, #000 -2px 2px, #000 2px -2px, #000 -2px -2px, #000 1px 2px, #000 -1px 2px, #000 1px -2px, #000 -1px -2px, #000 2px 1px, #000 -2px 1px, #000 2px -1px, #000 -2px -1px;
    margin-bottom: 25px
}

@media only screen and (max-width:799px) {
    .uq-lotteryResultHero_title {
        font-size: 45px;
        margin-bottom: 15px
    }
}

.uq-lotteryResultHero_character {
    width: 308px;
    margin: auto
}

.uq-lotteryResultHero_character img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media only screen and (max-width:799px) {
    .uq-lotteryResultHero_character {
        width: 200px
    }
}

.uq-lotteryResult_content .p-localNav {
    margin-bottom: 30px
}

@media only screen and (max-width:799px) {
    .uq-lotteryResult_content .p-localNav {
        margin-bottom: 20px
    }
}

.uq-lotteryResult_filter {
    float: right;
    margin-bottom: 20px
}

.uq-lotteryResult_header {
    border-bottom: 1px solid #eee;
    font-size: 16px;
    clear: both;
    padding-bottom: 40px
}

@media only screen and (max-width:799px) {
    .uq-lotteryResult_header {
        font-size: 14px;
        padding-bottom: 20px
    }
}

.uq-lotteryResult_headline {
    font-size: 22px
}

@media only screen and (max-width:799px) {
    .uq-lotteryResult_headline {
        font-size: 18px
    }
}

.uq-lotteryResultAnnounce_lucky {
    background: #ef0d0d;
    display: inline-block;
    font-size: 14px;
    color: #fff;
    margin: 0 4px;
    padding: 0 4px
}

@media only screen and (max-width:799px) {
    .uq-lotteryResultAnnounce_lucky {
        font-size: 12px
    }
}

.uq-resultItem {
    border-bottom: 1px solid #eee;
    padding: 30px 0
}

@media only screen and (max-width:799px) {
    .uq-resultItem {
        border-radius: 8px;
        overflow: hidden;
        padding: 20px 0
    }
}

.uq-resultItem:last-child {
    border-bottom: 0
}

.uq-resultItem_content {
    display: flex
}

@media only screen and (max-width:799px) {
    .uq-resultItem_content {
        display: block
    }
}

.uq-resultItem_image {
    width: 33.33333%;
    margin-right: 20px
}

.uq-resultItem_image img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media only screen and (max-width:799px) {
    .uq-resultItem_image {
        width: 70%;
        margin: auto auto 20px
    }
}

.uq-resultItem_body {
    width: 60%
}

@media only screen and (max-width:799px) {
    .uq-resultItem_body {
        width: 100%
    }
}

.uq-resultItem_header {
    position: relative;
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 10px
}

.uq-resultItem_title {
    font-size: 22px;
    width: calc(100% - 60px)
}

@media only screen and (max-width:799px) {
    .uq-resultItem_title {
        font-size: 16px
    }
}

.uq-resultItem_count {
    right: 0;
    border-radius: 30px;
    background: gold;
    box-sizing: border-box;
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    width: 60px;
    height: 60px;
    padding: 12px 0 0
}

@media only screen and (max-width:799px) {
    .uq-resultItem_count {
        font-size: 9px;
        width: 50px;
        height: 50px
    }
}

.uq-resultItem_count span {
    display: block;
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 28px;
    font-weight: 700;
    line-height: 1
}

@media only screen and (max-width:799px) {
    .uq-resultItem_count span {
        font-size: 22px
    }
}

.uq-resultItemNumbers_headline {
    display: block;
    font-size: 12px;
    line-height: 1;
    color: #888;
    margin-bottom: 5px
}

.uq-resultItemNumbers_lists {
    width: calc(100% + 2px)
}

.uq-resultItemNumbers_list {
    background: #f3f3f3;
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    text-align: center;
    float: left;
    width: calc(33.3333% - 2px);
    margin-right: 2px;
    margin-bottom: 2px;
    padding: 4px 0
}

@media only screen and (max-width:799px) {
    .uq-resultItemNumbers_list {
        font-size: 12px
    }
}

.uq-resultItemNumbers_list.is-lucky {
    background: #ef0d0d;
    color: #fff
}

.uq-resultItemNumbers_list:nth-of-type(3n) {
    margin-right: 0
}

.uq-resultListItem {
    display: flex;
    margin-bottom: 40px
}

.uq-resultListItem:last-of-type {
    margin-bottom: 0
}

.uq-resultListItem_headline {
    font-size: 22px;
    line-height: 1;
    margin-right: 50px
}

@media only screen and (max-width:799px) {
    .uq-resultListItem_headline {
        box-sizing: border-box;
        font-size: 18px;
        margin-right: 30px
    }
}

.uq-resultListItem_list {
    line-height: 1;
    margin-bottom: 15px
}

.uq-resultListItem_list:last-child {
    margin-bottom: 0
}

.uq-steamOfLife {
    background: #fff;
    font-family: 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, メイリオ, sans-serif;
    font-weight: 500
}

.uq-steamOfLife img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.uq-steamOfLifeButton {
    text-align: center
}

.uq-steamOfLifeButton a {
    border: 1px solid #ea4c89;
    display: block;
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
    color: #ea4c89;
    text-decoration: none;
    width: 370px;
    margin: auto;
    padding: 20px 0;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: all
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeButton a {
        font-size: 14px;
        width: 100%;
        padding: 15px 0
    }
}

@media only screen and (min-width:1024px) {
    .uq-steamOfLifeButton a:hover {
        background: #ea4c89;
        color: #fff
    }
}

.uq-steamOfLifeHero {
    position: relative;
    height: 100vh;
    margin-bottom: 150px
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeHero {
        margin-bottom: 50px
    }
}

.uq-steamOfLifeHeroTitle {
    position: absolute;
    top: 145px;
    left: -80px;
    font-family: Montserrat;
    z-index: 2;
    color: #fff;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg)
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeHeroTitle {
        top: 84px;
        left: -35px
    }
}

.uq-steamOfLifeHeroTitle_main {
    font-size: 125px;
    font-weight: 700;
    line-height: 1
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeHeroTitle_main {
        font-size: 60px
    }
}

.uq-steamOfLifeHeroTitle_sub {
    position: absolute;
    bottom: 12px;
    left: 390px;
    font-size: 25px;
    font-weight: 700;
    line-height: 1.2
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeHeroTitle_sub {
        bottom: 7px;
        left: 195px;
        font-size: 14px
    }
}

.uq-steamOfLifeHero_image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeHero_image {
        width: calc(100% + 300px)
    }
}

.uq-steamOfLifeHero_image img {
    position: relative;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.uq-steamOfLifeAbout {
    position: relative;
    text-align: center;
    padding-bottom: 150px
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeAbout {
        padding-bottom: 50px
    }
}

.uq-steamOfLifeAbout_bg {
    position: absolute;
    top: 0;
    left: 50%;
    z-index: 0;
    pointer-events: none;
    opacity: .07;
    width: 1373px;
    height: 978px;
    margin: -50px 0 0 -90px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeAbout_bg {
        width: 400px;
        height: 285px;
        margin-top: -30px;
        margin-left: -10px
    }
}

.uq-steamOfLifeAbout_image {
    position: relative;
    width: 600px;
    margin: 0 auto 50px
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeAbout_image {
        width: 75%;
        margin: auto auto 30px
    }
}

.uq-steamOfLifeAboutHeadline {
    font-weight: 700;
    margin-bottom: 30px
}

.uq-steamOfLifeAboutHeadline_sub {
    font-size: 16px;
    line-height: 1;
    margin-bottom: 25px
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeAboutHeadline_sub {
        font-size: 12px;
        margin-bottom: 15px
    }
}

.uq-steamOfLifeAboutHeadline_main {
    font-size: 40px;
    line-height: 1
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeAboutHeadline_main {
        font-size: 20px
    }
}

.uq-steamOfLifeAbout_body {
    font-size: 18px;
    line-height: 2.6
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeAbout_body {
        box-sizing: border-box;
        font-size: 14px;
        line-height: 2.2;
        padding: 0 30px
    }
}

.uq-steamOfLifeGoods {
    width: 1000px;
    margin: auto auto 150px
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeGoods {
        width: 100%;
        margin-bottom: 50px
    }
}

.uq-steamOfLifeGoods_main {
    margin-bottom: 50px
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeGoods_main {
        margin-bottom: 30px
    }
}

.uq-steamOfLifeGoods_images {
    display: flex;
    justify-content: space-between;
    margin-bottom: 50px
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeGoods_images {
        margin-bottom: 30px;
        padding: 0 20px
    }
}

.uq-steamOfLifeGoods_image {
    width: 475px
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeGoods_image {
        width: 100%;
        margin: 0 10px
    }
}

.uq-steamOfLifeGoods_title {
    font-size: 20px;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeGoods_title {
        font-size: 18px;
        margin-bottom: 15px
    }
}

.uq-steamOfLifeGoods_body {
    text-align: center
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeGoods_body {
        padding: 0 30px
    }
}

.uq-steamOfLifeGoods_price {
    font-size: 34px;
    font-weight: 700;
    line-height: 1;
    color: #ea4c89;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeGoods_price {
        font-size: 28px
    }
}

.uq-steamOfLifeGoods_price small {
    font-size: 28px
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeGoods_price small {
        font-size: 20px
    }
}

.uq-steamOfLifeGoods_size {
    font-size: 14px;
    margin-bottom: 30px
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeGoods_size {
        font-size: 12px;
        margin-bottom: 20px
    }
}

.uq-steamOfLifeGoods_description {
    font-size: 14px;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeGoods_description {
        font-size: 12px;
        margin-bottom: 20px
    }
}

.uq-steamOfLifeMovie {
    background: url("../img/special/steam_of_life/movie_bg.jpg");
    width: 1000px;
    margin: auto auto 100px
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeMovie {
        width: 100%;
        margin-bottom: 50px
    }
}

.uq-steamOfLifeMovie_content {
    width: 600px;
    margin: auto;
    padding: 100px 0
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeMovie_content {
        box-sizing: border-box;
        width: 100%;
        padding: 60px 30px
    }
}

.uq-steamOfLifeMovie_headline {
    width: 320px;
    margin: 0 auto 50px
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeMovie_headline {
        width: 220px;
        margin-bottom: 30px
    }
}

.uq-steamOfLifeMovie_body {
    margin-bottom: 80px
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeMovie_body {
        margin-bottom: 40px
    }
}

.uq-steamOfLifeMovie_body strong {
    display: block;
    font-size: 18px;
    margin-bottom: .8em
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeMovie_body strong {
        font-size: 14px
    }
}

.uq-steamOfLifeMovie_body p {
    margin-bottom: 50px
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeMovie_body p {
        margin-bottom: 30px
    }
}

.uq-steamOfLifeMovie_youtube {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 56.25%
}

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

.uq-steamOfLifeCredit {
    text-align: center;
    width: 600px;
    margin: 0 auto 100px
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeCredit {
        width: 100%;
        margin-bottom: 50px
    }
}

.uq-steamOfLifeCreditItem {
    margin-bottom: 60px
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeCreditItem {
        margin-bottom: 40px
    }
}

.uq-steamOfLifeCreditItem:last-of-type {
    margin-bottom: 0
}

.uq-steamOfLifeCreditItem_headline {
    font-size: 16px;
    font-weight: 400;
    line-height: 1;
    margin-bottom: 30px
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeCreditItem_headline {
        font-size: 14px;
        margin-bottom: 20px
    }
}

.uq-steamOfLifeCreditItem_name {
    font-size: 30px;
    line-height: 1;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeCreditItem_name {
        font-size: 20px
    }
}

.uq-steamOfLifeCreditItem_name span {
    display: block;
    font-size: 16px;
    margin-top: 10px
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeCreditItem_name span {
        font-size: 12px
    }
}

.uq-steamOfLifeCreditItem_image {
    margin-top: 40px;
    margin-bottom: 20px
}

.uq-steamOfLifeCreditItem_body {
    text-align: left;
    margin-bottom: 30px
}

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

    .uq-steamOfLifeCreditItem .uq-steamOfLifeButton,
    .uq-steamOfLifeCreditItem_body {
        padding: 0 30px
    }
}

.uq-steamOfLifeCreditItem_link {
    display: flex;
    justify-content: center
}

.uq-steamOfLifeCreditItem_link a {
    font-size: 14px;
    color: #ea4c89;
    margin: 0 5px
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeCreditItem_link a {
        font-size: 12px;
        margin: 0 5px
    }
}

.uq-steamOfLifeFooter {
    border-top: 1px solid #ddd;
    text-align: center;
    width: 1000px;
    margin: auto;
    padding-top: 50px;
    padding-bottom: 100px
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeFooter {
        width: 100%;
        padding-top: 10px;
        padding-bottom: 50px
    }
}

.uq-steamOfLifeFooter_logo {
    width: 120px;
    margin: 0 auto;
    padding: 40px 0 90px
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeFooter_logo {
        width: 100px;
        margin-bottom: 10px
    }
}

.uq-steamOfLifeFooter_logo .svgLogo {
    fill: #ea4c89
}

.uq-steamOfLifeFooter_copylight {
    display: block;
    font-size: 10px;
    font-weight: 700;
    color: #ea4c89;
    margin-bottom: 100px
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeFooter_copylight {
        margin-bottom: 50px
    }
}

.uq-steamOfLifeFooter_image {
    width: 600px;
    margin: auto
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeFooter_image {
        width: calc(100% - 60px)
    }
}

.uq-steamOfLifeFooter_image img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.uq-steamOfLifeShare {
    display: flex;
    justify-content: space-between;
    width: 600px;
    margin: 0 auto;
    padding-bottom: 150px
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeShare {
        box-sizing: border-box;
        width: 100%;
        padding: 0 30px 50px
    }
}

.uq-steamOfLifeShare .uq-steamOfLifeButton {
    width: calc(50% - 10px)
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeShare .uq-steamOfLifeButton {
        width: calc(50% - 10px)
    }
}

.uq-steamOfLifeShare .uq-steamOfLifeButton.is-twitter span:before {
    content: ""
}

.uq-steamOfLifeShare .uq-steamOfLifeButton.is-facebook span:before {
    content: ""
}

.uq-steamOfLifeShare .uq-steamOfLifeButton a {
    width: 100%
}

.uq-steamOfLifeShare .uq-steamOfLifeButton a span:before {
    position: relative;
    top: 3px;
    font-size: 18px;
    margin-right: 10px
}

@media only screen and (max-width:799px) {
    .uq-steamOfLifeShare .uq-steamOfLifeButton a span:before {
        top: 2px;
        font-size: 16px;
        margin-right: 7px
    }
}

.uq-ssp {
    letter-spacing: .04em
}

.uq-ssp.is-top {
    background: #fff
}

[data-page-id=sauna_support] .l-footer {
    padding-top: 80px
}

.uq-sspHero {
    background-image: url("");
    background-repeat: no-repeat;
    background-position: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    text-align: center;
    height: 640px;
    margin-top: -100px
}

@media only screen and (max-width:799px) {
    .uq-sspHero {
        background-image: url("");
        background-size: 100%;
        height: 280px;
        margin-top: 0
    }
}

.uq-sspHero.is-mini {
    background-size: contain;
    height: 320px
}

@media only screen and (max-width:799px) {
    .uq-sspHero.is-mini {
        background-image: url("");
        background-position: 50%;
        background-size: contain;
        height: 82px
    }
}

.uq-sspHero_content {
    display: inline-block
}

.uq-sspHero_content a {
    color: #fff;
    text-decoration: none
}

.uq-sspHero_title span {
    display: block;
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .uq-sspHero_title span {
        font-size: 12px
    }
}

.is-mini .uq-sspHero_title span {
    display: none
}

.uq-sspHero_title h1 {
    font-size: 80px;
    line-height: 1.3
}

@media only screen and (max-width:799px) {
    .uq-sspHero_title h1 {
        font-size: 36px
    }
}

.is-mini .uq-sspHero_title h1 {
    font-size: 40px
}

@media only screen and (max-width:799px) {
    .is-mini .uq-sspHero_title h1 {
        font-size: 16px
    }
}

.is-mini .uq-sspHero_title h1 br {
    display: none
}

.uq-sspHero+.uq-sspNav {
    margin-top: -28px
}

.uq-sspHero.is-mini+.uq-sspNav {
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-sspHero.is-mini+.uq-sspNav {
        margin-top: 20px;
        margin-bottom: 20px
    }
}

.uq-sspHeadline {
    text-align: center;
    margin-bottom: 60px
}

@media only screen and (max-width:799px) {
    .uq-sspHeadline {
        margin-bottom: 30px
    }
}

.uq-sspHeadline_sub {
    font-size: 24px;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-sspHeadline_sub {
        font-size: 12px;
        margin-bottom: 10px
    }
}

.uq-sspHeadline_main {
    font-size: 40px;
    line-height: 1
}

@media only screen and (max-width:799px) {
    .uq-sspHeadline_main {
        font-size: 24px
    }
}

.is-level2 .uq-sspHeadline_main {
    font-size: 30px
}

@media only screen and (max-width:799px) {
    .is-level2 .uq-sspHeadline_main {
        font-size: 20px
    }
}

.uq-sspHeadline_lead {
    font-size: 16px;
    line-height: 2;
    margin-top: 30px
}

@media only screen and (max-width:799px) {
    .uq-sspHeadline_lead {
        font-size: 14px;
        margin-top: 20px
    }
}

.is-level2 .uq-sspHeadline_lead {
    margin-top: 15px
}

.uq-sspPageTitle_main {
    font-size: 22px
}

@media only screen and (max-width:799px) {
    .uq-sspPageTitle_main {
        font-size: 18px
    }
}

.uq-sspNav {
    position: relative;
    border: 2px solid #222;
    border-radius: 12px;
    background: #fff;
    box-sizing: border-box;
    z-index: 2;
    overflow: hidden;
    width: 760px;
    margin: auto auto 60px
}

@media only screen and (max-width:799px) {
    .uq-sspNav {
        border-radius: 8px;
        width: calc(100% - 40px);
        height: 50px;
        margin-top: 20px;
        margin-bottom: 20px
    }
}

@media only screen and (max-width:799px) {
    .uq-sspNav_content {
        position: relative;
        left: 2px;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch
    }
}

.uq-sspNav .p-localNav_links {
    display: flex;
    align-items: center;
    justify-content: center
}

@media only screen and (max-width:799px) {
    .uq-sspNav .p-localNav_links {
        justify-content: inherit;
        width: 150%;
        padding: 0 10px
    }
}

.uq-sspNav .p-localNav_link.is-active a {
    color: #222
}

.uq-sspNav .p-localNav_link.is-active a span:before {
    opacity: 1
}

.uq-sspNav .p-localNav_link.is-comingsoon a {
    color: #ddd
}

[data-page-id=tonttu] .uq-sspNav .p-localNav_link[data-nav=tonttu] span:before,
[data-page-id=tonttuAbout] .uq-sspNav .p-localNav_link[data-nav=tonttuAbout] span:before,
[data-page-id=tonttuGoods] .uq-sspNav .p-localNav_link[data-nav=tonttuGoods] span:before,
[data-page-id=tonttuSponsor] .uq-sspNav .p-localNav_link[data-nav=tonttuSponsor] span:before,
[data-page-id=tonttuWinning] .uq-sspNav .p-localNav_link[data-nav=tonttuWinning] span:before {
    opacity: 1
}

.uq-sspNav .p-localNav_link a {
    display: block;
    font-size: 18px;
    font-weight: 700;
    line-height: 1;
    padding: 18px 15px
}

@media only screen and (max-width:799px) {
    .uq-sspNav .p-localNav_link a {
        font-size: 14px;
        padding: 15px 10px
    }
}

.uq-sspNav .p-localNav_link a.is-comingsoon {
    color: #ccc
}

@media only screen and (min-width:1024px) {
    .uq-sspNav .p-localNav_link a:hover span:before {
        opacity: 1
    }
}

.uq-sspNav .p-localNav_link a span {
    position: relative
}

.uq-sspNav .p-localNav_link a span:before {
    position: absolute;
    bottom: 2px;
    left: 0;
    background: #ea4c89;
    content: "";
    z-index: -1;
    opacity: 0;
    width: 100%;
    height: 3px;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: color opacity
}

.uq-sspNav_arrow {
    position: absolute;
    top: 0;
    right: 0;
    display: none;
    z-index: 100;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: all
}

.uq-sspNav_arrow:after {
    content: ""
}

@media only screen and (max-width:799px) {
    .uq-sspNav_arrow {
        display: block
    }
}

.is-touch .uq-sspNav_arrow {
    opacity: 0
}

.uq-sspNav_arrow:before {
    position: absolute;
    top: 1px;
    background: #fff;
    display: block;
    content: "";
    width: 44px;
    height: 44px
}

.uq-sspNav_arrow:after {
    position: relative;
    display: block;
    line-height: 44px;
    z-index: 1;
    text-align: center;
    width: 44px;
    height: 44px;
    -webkit-animation-name: localNavArrow;
    animation-name: localNavArrow;
    -webkit-animation-duration: .9s;
    animation-duration: .9s;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards
}

@keyframes localNavArrow {
    0% {
        -webkit-transform: translatex(-3px);
        transform: translatex(-3px)
    }

    50% {
        -webkit-transform: translatex(3px);
        transform: translatex(3px)
    }

    to {
        -webkit-transform: translatex(-3px);
        transform: translatex(-3px)
    }
}

.uq-sspNav+.l-containers_main {
    margin-bottom: 80px
}

@media only screen and (max-width:799px) {
    .uq-sspNav+.l-containers_main {
        margin-bottom: 0
    }
}

.uq-sspAbout {
    width: 1100px;
    margin: 100px auto
}

@media only screen and (max-width:799px) {
    .uq-sspAbout {
        box-sizing: border-box;
        width: 100%;
        margin: 40px auto 50px;
        padding: 0 20px
    }
}

.uq-sspAbout_content {
    display: flex;
    justify-content: space-between
}

@media only screen and (max-width:799px) {
    .uq-sspAbout_content {
        display: block
    }
}

.uq-sspAbout_headline {
    font-size: 30px;
    margin-bottom: 30px
}

@media only screen and (max-width:799px) {
    .uq-sspAbout_headline {
        font-size: 20px;
        margin-bottom: 20px
    }
}

.uq-sspAbout_body {
    width: 560px
}

@media only screen and (max-width:799px) {
    .uq-sspAbout_body {
        width: 100%
    }
}

.uq-sspAbout_body p {
    font-size: 18px;
    line-height: 2;
    margin-bottom: 30px
}

@media only screen and (max-width:799px) {
    .uq-sspAbout_body p {
        font-size: 14px
    }
}

.uq-sspAbout_image {
    position: relative;
    width: 465px
}

@media only screen and (max-width:799px) {
    .uq-sspAbout_image {
        width: 100%
    }
}

.uq-sspAbout_image img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.uq-sspAbout_neppa {
    position: absolute;
    right: -12px;
    bottom: 22px;
    z-index: 1
}

@media only screen and (max-width:799px) {
    .uq-sspAbout_neppa {
        bottom: -22px;
        width: 40px
    }
}

.uq-sspMarket {
    border-top: 1px solid #f1f1f1;
    margin: 100px auto;
    padding-top: 100px
}

@media only screen and (max-width:799px) {
    .uq-sspMarket {
        border: none;
        margin: 50px auto 60px;
        padding: 0 20px
    }
}

.uq-sspMarketFigure {
    border: 1px solid #f1f1f1;
    border-radius: 12px;
    text-align: center;
    width: 1100px;
    margin: 0 auto 60px;
    padding: 80px 0
}

@media only screen and (max-width:799px) {
    .uq-sspMarketFigure {
        border-left: 0;
        border-radius: 0;
        width: 100%;
        width: 100vw;
        margin-bottom: 40px;
        margin-left: -20px;
        padding: 40px 0
    }

    .uq-sspMarketFigure img {
        width: 100%;
        height: auto;
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

.uq-sspMarketFigure img {
    width: 762px;
    margin: auto
}

@media only screen and (max-width:799px) {
    .uq-sspMarketFigure img {
        width: calc(100% - 30px)
    }
}

.uq-sspMarketFigure>p {
    font-size: 14px;
    margin-top: 20px
}

@media only screen and (max-width:799px) {
    .uq-sspMarketFigure>p {
        font-size: 10px;
        line-height: 1.65;
        margin: 10px 10px 0
    }
}

.uq-sspMarket_content {
    display: flex;
    justify-content: space-between;
    width: 1100px;
    margin: 0 auto
}

@media only screen and (max-width:799px) {
    .uq-sspMarket_content {
        display: block;
        width: 100%
    }
}

.uq-sspMarketData {
    width: calc(50% - 20px)
}

@media only screen and (max-width:799px) {
    .uq-sspMarketData {
        border-bottom: 1px solid #f1f1f1;
        width: 100%;
        width: 100vw;
        margin-bottom: 40px;
        margin-left: -20px
    }
}

@media only screen and (max-width:799px) {
    .uq-sspMarketData:last-of-type {
        border-bottom: none;
        margin-bottom: 0
    }
}

.uq-sspMarketData_note {
    font-size: 14px
}

@media only screen and (max-width:799px) {
    .uq-sspMarketData_note {
        font-size: 12px;
        text-align: center;
        margin: 0 0 30px
    }
}

.uq-sspMarketData_content {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

@media only screen and (max-width:799px) {
    .uq-sspMarketData_content {
        padding: 0 40px
    }
}

.uq-sspMarketDataItem {
    display: flex;
    justify-content: space-between;
    width: calc(50% - 10px);
    margin-bottom: 30px
}

@media only screen and (max-width:799px) {
    .uq-sspMarketDataItem {
        display: block;
        text-align: center;
        margin-bottom: 30px
    }
}

.uq-sspMarketDataItem_icon {
    width: 60px;
    margin-right: 20px
}

@media only screen and (max-width:799px) {
    .uq-sspMarketDataItem_icon {
        width: 50px;
        margin: auto auto 5px
    }
}

.uq-sspMarketDataItem_body {
    flex: 1
}

.uq-sspMarketDataItem strong {
    display: block;
    font-size: 14px;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .uq-sspMarketDataItem strong {
        font-size: 12px
    }
}

.uq-sspMarketDataItem p {
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
    margin-top: -5px
}

@media only screen and (max-width:799px) {
    .uq-sspMarketDataItem p {
        font-size: 18px
    }
}

.uq-sspMarketDataItem p span {
    font-size: 14px;
    margin-left: 5px
}

@media only screen and (max-width:799px) {
    .uq-sspMarketDataItem p span {
        font-size: 12px;
        margin-left: 3px
    }
}

.uq-sspMarketDataItem p.uq-sspMarketDataItem_num {
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 28px;
    font-weight: 700;
    margin-top: -5px
}

@media only screen and (max-width:799px) {
    .uq-sspMarketDataItem p.uq-sspMarketDataItem_num {
        font-size: 24px
    }
}

.uq-sspMarketDataItem p.uq-sspMarketDataItem_num.is-comingsoon {
    font-size: 22px;
    color: #888
}

@media only screen and (max-width:799px) {
    .uq-sspMarketDataItem p.uq-sspMarketDataItem_num.is-comingsoon {
        font-size: 18px
    }
}

.uq-sspMarketDataItem p.uq-sspMarketDataItem_num span {
    font-size: 14px;
    margin-left: 5px
}

@media only screen and (max-width:799px) {
    .uq-sspMarketDataItem p.uq-sspMarketDataItem_num span {
        font-size: 12px;
        margin-left: 3px
    }
}

.uq-sspMarket_button {
    text-align: center;
    margin-top: 40px
}

@media only screen and (max-width:799px) {
    .uq-sspMarket_button {
        margin-top: 20px
    }
}

.uq-sspSauna {
    background: #f3f3f3;
    padding: 100px 0
}

@media only screen and (max-width:799px) {
    .uq-sspSauna {
        padding: 60px 0
    }
}

.uq-sspSauna_content {
    width: 1100px;
    margin: auto
}

@media only screen and (max-width:799px) {
    .uq-sspSauna_content {
        box-sizing: border-box;
        width: 100%;
        padding: 0 20px
    }
}

.uq-sspSaunner {
    width: 1100px;
    margin: auto auto 90px;
    padding-top: 100px
}

@media only screen and (max-width:799px) {
    .uq-sspSaunner {
        box-sizing: border-box;
        width: 100%;
        margin-bottom: 50px;
        padding: 50px 20px 0
    }
}

.uq-sspSaunner_content {
    display: flex;
    justify-content: space-between
}

@media only screen and (max-width:799px) {
    .uq-sspSaunner_content {
        display: block
    }
}

.uq-sspSaunnerItem {
    width: calc(50% - 20px)
}

@media only screen and (max-width:799px) {
    .uq-sspSaunnerItem {
        width: 100%;
        margin-bottom: 40px
    }
}

.uq-sspSaunnerItem_headline {
    font-size: 20px;
    text-align: center;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-sspSaunnerItem_headline {
        font-size: 20px;
        text-align: left;
        margin-bottom: 10px
    }
}

.uq-sspSaunner_yodare {
    font-size: 16px;
    font-weight: 700;
    color: #ea4c89;
    text-align: center;
    width: 100%;
    margin-top: 40px;
    margin-bottom: 90px
}

@media only screen and (max-width:799px) {
    .uq-sspSaunner_yodare {
        font-size: 14px;
        margin-bottom: 0
    }
}

.uq-sspSaunner_yodare p {
    margin-bottom: 0
}

.uq-sspSaunner_yodare img {
    width: 75px;
    margin: auto
}

.uq-sspContact {
    background: #ea4c89;
    color: #fff;
    text-align: center;
    margin-bottom: 100px;
    padding: 100px 0
}

@media only screen and (max-width:799px) {
    .uq-sspContact {
        margin-bottom: 50px;
        padding: 40px 20px 50px
    }
}

.uq-sspContact_headline {
    font-size: 40px;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-sspContact_headline {
        font-size: 20px
    }
}

.uq-sspContact_headline strong {
    display: block;
    font-size: 40px
}

@media only screen and (max-width:799px) {
    .uq-sspContact_headline strong {
        font-size: 20px
    }
}

.uq-sspContact_action {
    display: flex;
    justify-content: center;
    margin-top: 40px
}

@media only screen and (max-width:799px) {
    .uq-sspContact_action {
        margin-top: 30px
    }
}

.uq-sspContactButton {
    width: 320px;
    margin: 0 10px
}

@media only screen and (max-width:799px) {
    .uq-sspContactButton {
        width: calc(50% - 20px)
    }
}

.uq-sspContactButton img {
    display: block;
    width: 40px;
    margin: 0 auto
}

.uq-sspContactButton a {
    border-radius: 12px;
    background: #fff;
    display: block;
    font-size: 20px;
    font-weight: 700;
    width: 100%;
    padding: 30px 0
}

@media only screen and (max-width:799px) {
    .uq-sspContactButton a {
        font-size: 14px
    }
}

.uq-sspContactButton a:hover {
    background: #eff4ff;
    text-decoration: none
}

.uq-sspShare {
    text-align: center;
    padding-bottom: 100px
}

@media only screen and (max-width:799px) {
    .uq-sspShare {
        padding-bottom: 50px
    }
}

.uq-sspShare_headline {
    font-size: 20px;
    line-height: 1;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-sspShare_headline {
        margin-bottom: 15px
    }
}

.uq-sspShare_lead {
    margin-bottom: 20px
}

.uq-sspShare_content {
    display: flex;
    justify-content: center
}

.uq-sspShare_content a {
    display: block;
    width: 40px;
    height: 40px;
    margin: 0 15px
}

.uq-sspShare_content a:hover {
    opacity: .7
}

.uq-sspShare_content a path,
.uq-sspShare_content a svg {
    fill: #ea4c89
}

.uq-sspSaunaCardList {
    position: relative;
    width: 1100px;
    margin: auto
}

@media only screen and (max-width:799px) {
    .uq-sspSaunaCardList {
        background: #f3f3f3;
        box-sizing: border-box;
        width: 100%;
        padding: 60px 20px 40px
    }
}

.uq-sspSaunaCardList .p-goodsList_content+.c-headline {
    margin-top: 30px
}

.uq-sspSaunaCardList_header {
    text-align: center;
    margin-bottom: 60px
}

@media only screen and (max-width:799px) {
    .uq-sspSaunaCardList_header {
        margin-bottom: 30px
    }
}

.uq-sspSaunaCardList_header .c-lead {
    font-family: Montserrat;
    font-weight: 700
}

.uq-sspSaunaCardList_content {
    position: relative;
    overflow: hidden;
    width: calc(100% + 20px);
    margin-left: -10px
}

@media only screen and (max-width:799px) {
    .uq-sspSaunaCardList_content {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        width: 100%;
        margin-left: 0
    }
}

.uq-sspSaunaFilter {
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-sspSaunaFilter {
        margin-bottom: 10px
    }
}

@media only screen and (max-width:799px) {
    .uq-sspSaunaFilter .c-formRadio input[type=radio]+label:after {
        top: 12px;
        font-size: 14px;
        line-height: 19px;
        width: 24px;
        height: 24px
    }
}

@media only screen and (max-width:799px) {
    .uq-sspSaunaFilter .c-formRadio label {
        font-size: 14px;
        padding-left: 30px
    }
}

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

    .uq-sspSaunaFilter .c-formRadio label:after,
    .uq-sspSaunaFilter .c-formRadio label:before {
        top: 12px;
        width: 24px;
        height: 24px
    }
}

.uq-sspSaunaCard {
    position: relative;
    border-radius: 12px;
    background: #fff;
    float: left;
    width: 259px;
    margin: 0 10px 21px
}

@media only screen and (max-width:799px) {
    .uq-sspSaunaCard {
        float: none;
        width: calc(50% - 2.5px);
        margin: 0 0 5px
    }
}

.uq-sspSaunaCard_tag {
    position: absolute;
    top: 20px;
    left: 20px;
    border-radius: 4px;
    background: #333;
    display: inline-block;
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    z-index: 2;
    color: #ea4c89;
    color: #fff;
    padding: 4px 8px
}

@media only screen and (max-width:799px) {
    .uq-sspSaunaCard_tag {
        border-radius: 2px;
        font-size: 7px;
        padding: 3px 6px
    }
}

.uq-sspSaunaCard_image {
    position: relative;
    z-index: 1;
    width: 220px;
    margin: 0 auto;
    padding-top: 10px
}

.uq-sspSaunaCard_image img {
    width: 100%;
    height: auto;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media only screen and (max-width:799px) {
    .uq-sspSaunaCard_image {
        width: 80%;
        padding-top: 20px
    }
}

@media only screen and (min-width:1024px) {
    .uq-sspSaunaCard_image a:hover {
        opacity: .7
    }
}

.uq-sspSaunaCard_name {
    display: block;
    font-size: 14px;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .uq-sspSaunaCard_name {
        font-size: 12px;
        margin-bottom: 5px
    }
}

.uq-sspSaunaCard_name a:hover {
    text-decoration: none
}

@media only screen and (min-width:1024px) {
    .uq-sspSaunaCard_name a:hover {
        opacity: .7
    }
}

.uq-sspSaunaCard_content {
    padding: 0 20px 20px
}

@media only screen and (max-width:799px) {
    .uq-sspSaunaCard_content {
        padding: 0 12px 12px
    }
}

.uq-sspSaunaCard_buttons {
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .uq-sspSaunaCard_buttons {
        margin-bottom: 5px
    }
}

.uq-sspSaunaCard_button {
    border: 1px solid #ea4c89;
    border-radius: 6px;
    display: block;
    box-sizing: border-box;
    font-size: 14px;
    font-weight: 700;
    color: #ea4c89;
    text-align: center;
    text-decoration: none;
    width: calc(50% - 5px);
    width: 100%;
    padding: 6px 10px
}

@media only screen and (max-width:799px) {
    .uq-sspSaunaCard_button {
        font-size: 12px;
        width: 100%;
        padding: 5px 0
    }
}

.uq-sspSaunaCard_button:hover {
    text-decoration: none;
    opacity: .7
}

.uq-sspSaunaCard_button:nth-of-type(2) {
    margin-left: 10px
}

@media only screen and (max-width:799px) {
    .uq-sspSaunaCard_button:nth-of-type(2) {
        margin-left: 4px
    }
}

.uq-sspSaunaCard_button:visited {
    color: #ea4c89
}

.uq-sspSaunaCardData {
    display: flex
}

@media only screen and (max-width:799px) {
    .uq-sspSaunaCardData {
        display: block
    }
}

.uq-sspSaunaCardData_ikitai {
    letter-spacing: -.05em
}

.uq-sspSaunaCardData_item {
    display: flex;
    align-items: baseline;
    font-size: 12px;
    margin-right: 10px
}

@media only screen and (max-width:799px) {
    .uq-sspSaunaCardData_item {
        font-size: 10px;
        margin-right: 15px
    }
}

.uq-sspSaunaCardData_item a {
    text-decoration: underline
}

.uq-sspSaunaCardData_item a:hover {
    text-decoration: none
}

.uq-sspSaunaCardData_item strong {
    display: block;
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 12px;
    font-weight: 700;
    color: #ea4c89;
    margin-left: 5px
}

@media only screen and (max-width:799px) {
    .uq-sspSaunaCardData_item strong {
        font-size: 10px
    }
}

.uq-sspSaunaCardData_item strong span {
    font-size: 15px
}

@media only screen and (max-width:799px) {
    .uq-sspSaunaCardData_item strong span {
        font-size: 13px
    }
}

@media only screen and (max-width:799px) {
    .uq-ticketUse {
        background: #f3f3f3
    }
}

.uq-ticketUseHero {
    background: #ea4c89;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    height: 640px;
    margin-top: -100px;
    margin-bottom: 120px
}

@media only screen and (max-width:799px) {
    .uq-ticketUseHero {
        height: 280px;
        margin-top: 0;
        margin-bottom: 60px
    }
}

.uq-ticketUseHero_logo {
    text-align: center;
    width: 530px
}

@media only screen and (max-width:799px) {
    .uq-ticketUseHero_logo {
        width: 320px
    }
}

.uq-ticketUseHero_logo img {
    width: 100%;
    height: auto
}

.uq-ticketUseHeadline {
    font-size: 36px;
    line-height: 1;
    color: #ea4c89;
    text-align: center;
    margin-bottom: 50px
}

@media only screen and (max-width:799px) {
    .uq-ticketUseHeadline {
        font-size: 20px;
        margin-bottom: 30px
    }
}

.uq-ticketUseAbout_content {
    display: flex;
    justify-content: space-between;
    margin-bottom: 60px
}

@media only screen and (max-width:799px) {
    .uq-ticketUseAbout_content {
        display: block;
        margin-bottom: 30px
    }
}

.uq-ticketUseAboutItem {
    border-radius: 16px;
    background: #fff;
    box-sizing: border-box;
    text-align: center;
    width: 350px;
    padding: 50px 30px
}

@media only screen and (max-width:799px) {
    .uq-ticketUseAboutItem {
        text-align: left;
        width: calc(100% - 40px);
        margin: 0 auto 10px;
        padding: 20px 30px
    }
}

@media only screen and (max-width:799px) {
    .uq-ticketUseAboutItem_content {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-bottom: 10px
    }
}

.uq-ticketUseAboutItem_step {
    display: block;
    font-family: Montserrat;
    font-size: 12px;
    font-weight: 400;
    line-height: 1;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-ticketUseAboutItem_step {
        display: flex;
        align-items: center;
        font-size: 7px;
        margin-bottom: 5px
    }
}

.uq-ticketUseAboutItem_step span {
    display: block;
    font-size: 36px;
    font-weight: 700;
    color: #ea4c89;
    margin-top: 10px
}

@media only screen and (max-width:799px) {
    .uq-ticketUseAboutItem_step span {
        font-size: 16px;
        line-height: 1;
        margin-top: 0;
        margin-left: 5px
    }
}

@media only screen and (max-width:799px) {
    .uq-ticketUseAboutItem_header {
        flex: 1;
        margin-right: 10px
    }
}

.uq-ticketUseAboutItem_icon {
    width: 130px;
    margin: 0 auto 20px
}

@media only screen and (max-width:799px) {
    .uq-ticketUseAboutItem_icon {
        width: 80px;
        margin-bottom: 0
    }
}

.uq-ticketUseAboutItem_icon img {
    width: 100%;
    height: auto
}

.uq-ticketUseAboutItem_headline {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-ticketUseAboutItem_headline {
        font-size: 16px;
        margin-bottom: 0
    }
}

.uq-ticketUseAboutItem>p {
    font-size: 14px;
    text-align: left
}

.uq-ticketUseFaq {
    position: relative;
    border: 4px solid #fff;
    border-radius: 16px;
    box-sizing: border-box;
    margin-bottom: 120px;
    padding: 50px 100px
}

@media only screen and (max-width:799px) {
    .uq-ticketUseFaq {
        width: calc(100% - 40px);
        margin: 0 auto 60px;
        padding: 30px
    }
}

.uq-ticketUseFaq_headline {
    position: absolute;
    top: -20px;
    left: 50%;
    background: #f3f3f3;
    font-size: 24px;
    font-weight: 700;
    color: #ea4c89;
    padding: 0 30px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

@media only screen and (max-width:799px) {
    .uq-ticketUseFaq_headline {
        top: -16px;
        font-size: 18px;
        word-break: keep-all
    }
}

.uq-ticketUseFaq_q {
    display: block;
    font-size: 20px;
    color: #ea4c89;
    margin-bottom: 5px
}

@media only screen and (max-width:799px) {
    .uq-ticketUseFaq_q {
        font-size: 16px
    }
}

.uq-ticketUseFaq_q span {
    font-family: Montserrat;
    margin-right: 5px
}

.uq-ticketUseFaq_a {
    font-size: 18px;
    font-weight: 700
}

@media only screen and (max-width:799px) {
    .uq-ticketUseFaq_a {
        font-size: 14px
    }
}

.uq-ticketUseFeature {
    border-radius: 16px;
    margin-bottom: 120px
}

@media only screen and (max-width:799px) {
    .uq-ticketUseFeature {
        margin-bottom: 60px
    }
}

.uq-ticketUseFeature_content {
    display: flex;
    justify-content: space-between
}

@media only screen and (max-width:799px) {
    .uq-ticketUseFeature_content {
        display: block;
        padding: 0 20px
    }
}

.uq-ticketUseFeatureItem {
    border-radius: 16px;
    background: #fff;
    box-sizing: border-box;
    text-align: center;
    width: 259px;
    padding: 50px 30px
}

@media only screen and (max-width:799px) {
    .uq-ticketUseFeatureItem {
        display: flex;
        align-items: center;
        text-align: left;
        width: 100%;
        margin-bottom: 10px;
        padding: 20px
    }
}

.uq-ticketUseFeatureItem_icon {
    width: 130px;
    margin: 0 auto 20px
}

@media only screen and (max-width:799px) {
    .uq-ticketUseFeatureItem_icon {
        width: 80px;
        margin: 0 20px 0 0
    }
}

.uq-ticketUseFeatureItem_icon img {
    width: 100%
}

@media only screen and (max-width:799px) {
    .uq-ticketUseFeatureItem_content {
        flex: 1
    }
}

.uq-ticketUseFeatureItem_content>p {
    font-size: 14px
}

@media only screen and (max-width:799px) {
    .uq-ticketUseFeatureItem_content>p br {
        display: none
    }
}

.uq-ticketUseFeatureItem_headline {
    display: block;
    font-size: 18px;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-ticketUseFeatureItem_headline {
        font-size: 16px;
        margin-bottom: 5px
    }
}

/*
.uq-ticketUseFeatureItem.is-coming .uq-ticketUseFeatureItem_headline,
.uq-ticketUseFeatureItem.is-coming .uq-ticketUseFeatureItem_icon {
    opacity: .2
}
*/
.uq-ticketUseList {
    text-align: center;
    margin-bottom: 120px
}

@media only screen and (max-width:799px) {
    .uq-ticketUseList {
        margin-bottom: 60px
    }
}

.uq-ticketUseList .c-button {
    text-align: center;
    width: 250px;
    margin-top: 40px
}

@media only screen and (max-width:799px) {
    .uq-ticketUseList .c-button {
        margin-top: 20px
    }
}

@media only screen and (max-width:799px) {
    .uq-ticketUseList_content {
        display: block;
        box-sizing: border-box;
        overflow-x: scroll;
        width: 100vw;
        padding: 0 20px;
        scroll-behavior: smooth;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch
    }

    .uq-ticketUseList_content ::-webkit-scrollbar {
        display: none;
        -webkit-appearance: none
    }
}

.uq-ticketUseApply {
    border: 4px solid #ea4c89;
    border-radius: 16px;
    text-align: center;
    padding: 60px 0
}

.uq-ticketUseApply_headline {
    font-size: 36px;
    line-height: 1.5;
    color: #ea4c89;
    margin-bottom: 20px
}

.uq-ticketUseApply p {
    margin-bottom: 10px
}

.uq-ticketUseApply .c-button {
    text-align: center;
    width: 250px;
    margin-top: 40px
}

@media only screen and (max-width:799px) {
    .uq-ticketUseApply .c-button {
        margin-top: 20px
    }
}

.uq-ticketUseContact {
    background: #ea4c89;
    color: #fff;
    text-align: center;
    margin-bottom: 100px;
    padding: 100px 0
}

@media only screen and (max-width:799px) {
    .uq-ticketUseContact {
        margin-bottom: 0;
        padding: 40px 20px 50px
    }
}

.uq-ticketUseContact_headline {
    font-size: 40px;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-ticketUseContact_headline {
        font-size: 20px
    }
}

.uq-ticketUseContact_headline strong {
    border-bottom: 4px solid #fff;
    display: inline-block;
    font-size: 30px;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-ticketUseContact_headline strong {
        border-bottom: 2px solid #fff;
        font-size: 16px;
        margin-bottom: 10px
    }
}

.uq-ticketUseContact_action {
    display: flex;
    justify-content: center;
    margin-top: 40px
}

@media only screen and (max-width:799px) {
    .uq-ticketUseContact_action {
        margin-top: 30px
    }
}

.uq-ticketUseContactButton {
    width: 320px;
    margin: 0 10px
}

@media only screen and (max-width:799px) {
    .uq-ticketUseContactButton {
        width: calc(50% - 20px)
    }
}

.uq-ticketUseContactButton img {
    display: block;
    width: 40px;
    margin: 0 auto
}

.uq-ticketUseContactButton a {
    border-radius: 12px;
    background: #fff;
    display: block;
    font-size: 20px;
    font-weight: 700;
    width: 100%;
    padding: 30px 0
}

@media only screen and (max-width:799px) {
    .uq-ticketUseContactButton a {
        font-size: 14px
    }
}

.uq-ticketUseContactButton a:hover {
    background: #eff4ff;
    text-decoration: none
}

.uq-3rd {
    background: #fff;
    width: 720px;
    margin: auto
}

@media only screen and (max-width:799px) {
    .uq-3rd {
        width: 100%
    }
}

.uq-3rd_content {
    padding: 40px
}

@media only screen and (max-width:799px) {
    .uq-3rd_content {
        padding: 20px
    }
}

.uq-3rd_attention {
    font-size: 14px;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-3rd_attention {
        font-size: 10px
    }
}

.uq-3rdOgp {
    position: relative;
    background: #ea4c89;
    box-sizing: border-box;
    z-index: 1;
    color: #fff;
    width: 720px;
    height: 376px;
    margin: auto;
    padding: 40px
}

@media only screen and (max-width:799px) {
    .uq-3rdOgp {
        width: 100%;
        max-width: 400px;
        height: 189px;
        margin: auto;
        padding: 20px
    }
}

.uq-3rdOgp.is-image {
    position: absolute;
    left: 50%;
    z-index: 0;
    width: 720px;
    height: 380px;
    margin: auto;
    padding: 40px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

@media only screen and (max-width:799px) {
    .uq-3rdOgp.is-image {
        width: 360px;
        height: 189px;
        padding: 20px
    }
}

.uq-3rdOgp_logo {
    position: absolute;
    top: 37px;
    right: 40px;
    width: 76px
}

@media only screen and (max-width:799px) {
    .uq-3rdOgp_logo {
        top: 17px;
        right: 20px;
        width: 50px
    }
}

.uq-3rdOgp_logo path,
.uq-3rdOgp_logo svg {
    fill: #fff
}

.uq-3rdOgp_logo img {
    width: 100%;
    height: auto
}

.uq-3rdOgp_headline {
    font-size: 38px;
    line-height: 1;
    width: calc(100% - 100px);
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-3rdOgp_headline {
        font-size: 18px;
        margin-bottom: 7px
    }
}

.uq-3rdOgp_headline span {
    display: block;
    font-size: 18px;
    line-height: 1;
    white-space: nowrap;
    text-overflow: ellipsis;
    margin-bottom: 15px
}

@media only screen and (max-width:799px) {
    .uq-3rdOgp_headline span {
        font-size: 10px;
        margin-bottom: 5px
    }
}

.uq-3rdOgpData {
    display: flex;
    font-weight: 700;
    margin-bottom: 20px
}

@media only screen and (max-width:799px) {
    .uq-3rdOgpData {
        margin-bottom: 10px
    }
}

.uq-3rdOgpDataItem:first-of-type {
    margin-right: 30px
}

@media only screen and (max-width:799px) {
    .uq-3rdOgpDataItem:first-of-type {
        margin-right: 10px
    }
}

.uq-3rdOgpDataItem_content {
    display: flex;
    align-items: flex-end
}

.uq-3rdOgpDataItem_headline {
    font-size: 14px;
    margin-bottom: 5px
}

@media only screen and (max-width:799px) {
    .uq-3rdOgpDataItem_headline {
        font-size: 10px;
        margin-bottom: 3px
    }
}

.uq-3rdOgpDataItem_num {
    border-radius: 8px;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 68px;
    line-height: 1;
    color: #ea4c89;
    width: 60px;
    height: 70px;
    margin-right: 2px
}

@media only screen and (max-width:799px) {
    .uq-3rdOgpDataItem_num {
        border-radius: 4px;
        font-size: 38px;
        width: 34px;
        height: 38px
    }
}

.uq-3rdOgpDataItem_string {
    font-size: 16px;
    line-height: 1;
    margin-left: 5px
}

@media only screen and (max-width:799px) {
    .uq-3rdOgpDataItem_string {
        font-size: 10px;
        margin-left: 5px
    }
}

.uq-3rdOgpSauna {
    display: flex;
    font-weight: 700
}

.uq-3rdOgpSauna_image {
    position: relative;
    border-radius: 6px;
    overflow: hidden;
    width: 120px;
    height: 90px;
    margin-right: 20px
}

@media only screen and (max-width:799px) {
    .uq-3rdOgpSauna_image {
        width: 56px;
        height: 42px;
        margin-right: 10px
    }
}

.uq-3rdOgpSauna_image img {
    position: absolute;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.uq-3rdOgpSauna_content {
    display: flex;
    align-items: center;
    width: calc(100% - 148px)
}

@media only screen and (max-width:799px) {
    .uq-3rdOgpSauna_content {
        width: calc(100% - 84px)
    }
}

.uq-3rdOgpSauna_content strong {
    font-size: 12px
}

@media only screen and (max-width:799px) {
    .uq-3rdOgpSauna_content strong {
        font-size: 10px
    }
}

.uq-3rdOgpSauna_body {
    width: 100%
}

@media only screen and (max-width:799px) {
    .uq-3rdOgpSauna_body {
        margin-top: -3px
    }
}

.uq-3rdOgpSauna_name {
    font-size: 28px;
    white-space: nowrap;
    text-overflow: ellipsis
}

@media only screen and (max-width:799px) {
    .uq-3rdOgpSauna_name {
        font-size: 14px;
        margin-top: -2px
    }
}

.uq-3rdShare {
    background: #f8f8f8;
    box-sizing: border-box;
    text-align: center;
    padding: 20px
}

@media only screen and (max-width:799px) {
    .uq-3rdShare {
        max-width: 400px;
        margin: auto
    }
}

.uq-3rdShare_headline {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 15px
}

@media only screen and (max-width:799px) {
    .uq-3rdShare_headline {
        font-size: 14px;
        margin-bottom: 10px
    }
}

.uq-3rdShare_button button {
    position: relative;
    border: none;
    border-radius: 6px;
    background: #1da2f1;
    font-size: 16px;
    font-weight: 700;
    color: #fff;
    padding: 10px 20px;
    cursor: pointer;
    outline: none
}

@media only screen and (max-width:799px) {
    .uq-3rdShare_button button {
        font-size: 14px
    }
}

.uq-3rdShare_button button i {
    position: relative;
    top: 0;
    left: 0;
    padding-right: 26px
}

@media only screen and (max-width:799px) {
    .uq-3rdShare_button button i {
        padding-right: 23px
    }
}

.uq-3rdShare_button button i:before {
    content: "";
    position: absolute;
    top: -1px;
    left: 0;
    font-size: 18px;
    margin-right: 12px
}

@media only screen and (max-width:799px) {
    .uq-3rdShare_button button i:before {
        top: 1px;
        font-size: 16px;
        margin-right: 8px
    }
}

.uq-3rdList {
    margin-bottom: 40px
}

.uq-3rdList .p-reportCardRanking {
    border: none;
    margin-bottom: 0;
    padding-bottom: 0
}

.uq-3rdList .p-reportCardRanking .p-reportCardRanking_headline {
    font-size: 18px;
    color: #ea4c89;
    padding-left: 30px
}

@media only screen and (max-width:799px) {
    .uq-3rdList .p-reportCardRanking .p-reportCardRanking_headline {
        font-size: 14px;
        padding-left: 25px
    }
}

.uq-3rdList .p-reportCardRanking .p-reportCardRanking_headline:before {
    top: -20px;
    font-size: 44px
}

@media only screen and (max-width:799px) {
    .uq-3rdList .p-reportCardRanking .p-reportCardRanking_headline:before {
        font-size: 40px
    }
}

.uq-3rdList .p-reportCardRanking a {
    text-decoration: underline
}

.uq-3rdList .p-reportCardRanking a:hover {
    text-decoration: none
}

.uq-3rdBanner {
    border: 3px solid #ea4c89;
    border-radius: 12px;
    text-align: center;
    margin: 0 auto 10px;
    padding: 35px 25px
}

@media only screen and (max-width:799px) {
    .uq-3rdBanner {
        display: block;
        box-sizing: border-box;
        width: 100%
    }
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .uq-3rdBanner {
        padding: 20px
    }
}

.uq-3rdBanner_logo {
    width: 220px;
    margin: 0 auto 10px
}

@media only screen and (max-width:799px) {
    .uq-3rdBanner_logo {
        width: 80%;
        width: 200px;
        max-width: 300px;
        margin-bottom: 20px
    }
}

.uq-3rdBanner_headline {
    font-size: 18px;
    font-weight: 700;
    line-height: 1;
    color: #ea4c89;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .uq-3rdBanner_headline {
        font-size: 16px
    }
}

.uq-3rdBanner p {
    font-size: 14px;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .uq-3rdBanner p {
        font-size: 14px
    }
}

@media only screen and (min-width:320px) and (max-width:374px) {
    .uq-3rdBanner p {
        font-size: 13px
    }
}

@media only screen and (max-width:799px) {
    .uq-3rdBanner .c-button a {
        display: inline-block;
        width: auto;
        padding: 13px 35px
    }
}

.uq-3rdBeginner {
    margin-top: 40px;
    margin-bottom: 20px
}

.uq-3rdBeginnerHeadline {
    position: relative;
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 30px
}

@media only screen and (max-width:799px) {
    .uq-3rdBeginnerHeadline {
        font-size: 20px;
        margin-bottom: 20px
    }
}

.uq-3rdBeginnerHeadline img {
    position: absolute;
    top: -3px;
    right: -25px;
    right: 10px;
    width: 100px
}

@media only screen and (max-width:799px) {
    .uq-3rdBeginnerHeadline img {
        right: -25px;
        right: 10px;
        width: 80px
    }
}

.uq-3rdBeginnerItems {
    display: flex;
    flex-wrap: wrap
}

@media only screen and (max-width:799px) {
    .uq-3rdBeginnerItems {
        display: block
    }
}

.uq-3rdBeginnerItem {
    box-sizing: border-box;
    width: 50%;
    margin-bottom: 30px;
    padding-right: 30px
}

@media only screen and (max-width:799px) {
    .uq-3rdBeginnerItem {
        width: 100%;
        margin-bottom: 20px;
        padding-right: 0
    }
}

.uq-3rdBeginnerItem_headline {
    position: relative;
    font-size: 20px;
    font-weight: 700;
    color: #ea4c89;
    margin-bottom: 5px;
    padding-left: 33px
}

@media only screen and (max-width:799px) {
    .uq-3rdBeginnerItem_headline {
        font-size: 16px;
        padding-left: 28px
    }
}

.uq-3rdBeginnerItem_headline i {
    position: absolute;
    top: 0;
    left: 0
}

.is-item1 .uq-3rdBeginnerItem_headline i {
    top: -9px;
    left: -3px;
    font-weight: 700
}

.is-item1 .uq-3rdBeginnerItem_headline i:before {
    content: ""
}

@media only screen and (max-width:799px) {
    .is-item1 .uq-3rdBeginnerItem_headline i {
        top: -9px;
        left: -3px
    }
}

.is-item1 .uq-3rdBeginnerItem_headline i:before {
    font-size: 33px
}

@media only screen and (max-width:799px) {
    .is-item1 .uq-3rdBeginnerItem_headline i:before {
        font-size: 27px
    }
}

.is-item2 .uq-3rdBeginnerItem_headline i {
    top: -5px
}

.is-item2 .uq-3rdBeginnerItem_headline i:before {
    content: ""
}

@media only screen and (max-width:799px) {
    .is-item2 .uq-3rdBeginnerItem_headline i {
        top: -5px
    }
}

.is-item2 .uq-3rdBeginnerItem_headline i:before {
    font-size: 27px
}

@media only screen and (max-width:799px) {
    .is-item2 .uq-3rdBeginnerItem_headline i:before {
        font-size: 22px
    }
}

.is-item3 .uq-3rdBeginnerItem_headline i {
    top: -5px
}

.is-item3 .uq-3rdBeginnerItem_headline i:before {
    content: "";
    font-size: 27px
}

@media only screen and (max-width:799px) {
    .is-item3 .uq-3rdBeginnerItem_headline i:before {
        font-size: 22px
    }
}

.is-item4 .uq-3rdBeginnerItem_headline i {
    top: -4px
}

.is-item4 .uq-3rdBeginnerItem_headline i:before {
    content: "";
    font-size: 26px
}

@media only screen and (max-width:799px) {
    .is-item4 .uq-3rdBeginnerItem_headline i:before {
        font-size: 21px
    }
}

.is-item5 .uq-3rdBeginnerItem_headline i {
    top: -3px;
    left: 2px
}

.is-item5 .uq-3rdBeginnerItem_headline i:before {
    content: "";
    font-size: 25px
}

@media only screen and (max-width:799px) {
    .is-item5 .uq-3rdBeginnerItem_headline i:before {
        font-size: 20px
    }
}

.uq-3rdBeginnerItem p {
    font-size: 14px
}

@media only screen and (max-width:799px) {
    .uq-3rdBeginnerItem p {
        font-size: 12px
    }
}

.uq-3rdBeginner .c-button {
    display: block;
    width: 300px;
    margin: auto
}

@media only screen and (max-width:799px) {
    .uq-3rdBeginner .c-button {
        width: 100%
    }
}

[data-page-id=walk] {
    position: relative;
    top: -100px;
    background: #cdf1fc;
    background-image: url("../img/walk/bg_top_pc.png");
    background-repeat: no-repeat;
    background-position: top;
    height: 100vh;
    margin-bottom: -100px;
    padding-top: 100px
}

@media only screen and (max-width:799px) {
    [data-page-id=walk] {
        top: 0;
        background-image: none;
        height: 100%;
        margin-bottom: 0;
        padding-top: 0
    }
}

[data-page-id=walk]:after {
    position: absolute;
    bottom: 0;
    left: 0;
    background-image: url("../img/walk/bg_bottom_pc.png");
    background-repeat: no-repeat;
    background-position: bottom;
    display: block;
    content: "";
    z-index: 0;
    width: 100%;
    height: 384px
}

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

    [data-page-id=walk]+.c-breadcrumb,
    [data-page-id=walk]+.c-breadcrumb+.l-footer {
        display: block
    }
}

.uq-walk {
    background-size: cover;
    margin-top: -30px
}

@media only screen and (max-width:799px) {
    .uq-walk {
        margin-top: 0
    }
}

.uq-walk_main {
    position: absolute;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
    width: calc(100% - 375px - 15vw);
    height: 100vh;
    margin-top: -30px
}

@media only screen and (min-width:1130px) and (max-width:1399px) {
    .uq-walk_main {
        width: calc(100% - 375px - 12vw)
    }
}

@media only screen and (min-width:1400px) {
    .uq-walk_main {
        width: calc(100% - 375px - 15vw)
    }
}

@media only screen and (min-width:1780px) {
    .uq-walk_main {
        width: calc(100% - 375px - 20vw)
    }
}

@media only screen and (max-width:799px) {
    .uq-walk_main {
        display: none
    }
}

.uq-walk_main img {
    width: 37vw;
    min-width: 460px;
    max-width: 630px;
    margin-bottom: 40px
}

.uq-walk_main .c-shareCircle_item {
    margin: 0 20px
}

.uq-walk_main .c-shareCircle_item .c-shareCircle_icon {
    width: 80px;
    height: 80px;
    margin-bottom: 10px
}

.uq-walk_main .c-shareCircle_item .c-shareCircle_icon:after {
    font-size: 40px
}

.uq-walk_main .c-shareCircle_item span {
    font-size: 16px
}

.uq-walk_content {
    position: relative;
    background: #cdf1fc;
    z-index: 1;
    float: right;
    overflow: hidden;
    overflow-y: scroll;
    width: 375px;
    height: calc(100vh - 30px);
    margin-right: 15vw;
    box-shadow: 0 0 30px -5px rgba(0, 0, 0, .1)
}

@media only screen and (min-width:1130px) and (max-width:1399px) {
    .uq-walk_content {
        margin-right: 12vw
    }
}

@media only screen and (min-width:1400px) {
    .uq-walk_content {
        margin-right: 15vw
    }
}

@media only screen and (min-width:1780px) {
    .uq-walk_content {
        margin-right: 20vw
    }
}

@media only screen and (max-width:799px) {
    .uq-walk_content {
        width: 100%;
        height: 100%;
        margin-right: 0;
        padding-bottom: 0;
        box-shadow: none
    }
}

.uq-walkHero {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    padding: 80px 0 30px
}

@media only screen and (max-width:799px) {
    .uq-walkHero {
        padding: 50px 0 30px
    }
}

.uq-walkHero_content {
    position: relative
}

.uq-walkHero img {
    width: 100%;
    height: auto
}

.uq-walkHero_logo {
    position: relative;
    z-index: 1;
    width: 315px;
    margin: 0 auto 15px
}

.uq-walkHero_illust {
    position: relative;
    z-index: 1;
    width: 270px;
    margin: 0 auto 20px
}

.uq-walkHero_illust img {
    position: relative;
    left: -8px
}

.uq-walkHero_campaign {
    position: absolute;
    top: 265px;
    right: -20px;
    z-index: 1;
    width: 85px
}

@media only screen and (max-width:799px) {
    .uq-walkHero_campaign {
        top: 265px;
        right: -20px
    }
}

.uq-walkHero_campaign a {
    display: block;
    cursor: pointer
}

.uq-walkHero_button {
    position: relative;
    z-index: 1;
    margin-bottom: 15px
}

.uq-walkHero_button a {
    border-radius: 50px;
    background: #ea4c89;
    display: block;
    font-weight: 700;
    color: #fff;
    text-align: center;
    width: 280px;
    margin: auto;
    padding: 14px 0;
    cursor: pointer;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: all
}

.uq-walkHero_button a:hover {
    text-decoration: none
}

.desktop .uq-walkHero_button a:hover {
    background: #ea4c89
}

.uq-walkHero_button a span {
    font-size: 12px
}

.uq-walkHero_button a span img {
    position: relative;
    top: -2px;
    width: 23px
}

.uq-walkHero_button a p {
    font-size: 18px
}

.uq-walkHero_sponsored {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
    color: #00b2d7
}

.uq-walkHero_sponsored span {
    display: block;
    font-size: 10px;
    margin-right: 5px
}

.uq-walkHero_sponsored p img {
    vertical-align: inherit;
    width: auto;
    height: 14px
}

.uq-walkHero_cloud {
    position: absolute;
    top: -70px;
    left: -30px;
    z-index: 0;
    width: 845px;
    height: 275px
}

@media only screen and (max-width:799px) {
    .uq-walkHero_cloud {
        top: -40px
    }
}

.uq-walkHero_cloud img {
    position: relative;
    top: -15px;
    -webkit-transform: translateX(-60px);
    transform: translateX(-60px)
}

.uq-walkHero_bg {
    position: absolute;
    bottom: 0;
    z-index: 0;
    width: 780px;
    height: 195px
}

.uq-walkHeroScroll {
    position: absolute;
    right: -5px;
    bottom: 60px;
    z-index: 1;
    transition: all .5s cubic-bezier(.215, .61, .355, 1)
}

@media only screen and (max-width:799px) {
    .uq-walkHeroScroll {
        display: none
    }
}

.is-scroll .uq-walkHeroScroll {
    opacity: 0
}

.uq-walkHeroScroll_bar {
    position: relative;
    background: #ea4c89;
    width: 1px;
    height: 50px
}

@-webkit-keyframes walkScroll {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    50% {
        -webkit-transform: translateY(50px);
        transform: translateY(50px)
    }

    to {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes walkScroll {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    50% {
        -webkit-transform: translateY(50px);
        transform: translateY(50px)
    }

    to {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

.uq-walkHeroScroll_ball {
    position: absolute;
    left: -3px;
    border-radius: 7px;
    background: #ea4c89;
    display: block;
    content: "";
    width: 7px;
    height: 7px;
    -webkit-animation: walkScroll 2s cubic-bezier(.645, .045, .355, 1) infinite alternate;
    animation: walkScroll 2s cubic-bezier(.645, .045, .355, 1) infinite alternate
}

.uq-walkHeroScroll_string {
    position: absolute;
    bottom: 10px;
    font-size: 10px
}

.uq-walkHeroScroll_string img {
    width: 8px
}

.uq-walkAbout {
    position: relative;
    border-bottom: 10px solid #dedede;
    background: #b8ecf9;
    font-weight: 700;
    z-index: 1;
    text-align: center;
    padding: 30px 0
}

.uq-walkAbout_headline {
    width: 224px;
    margin: 0 auto 30px
}

.uq-walkAbout p {
    position: relative;
    display: inline-block;
    font-size: 16px;
    line-height: 1.9;
    letter-spacing: .1em;
    margin-bottom: 1.8em
}

.uq-walkAbout p i {
    position: absolute
}

.uq-walkAbout p i img {
    width: 100%;
    height: auto
}

.uq-walkAbout p i.is-sauna {
    top: 56px;
    left: -1px;
    width: 40px
}

.uq-walkAbout p i.is-fresh {
    top: 56px;
    right: 15px;
    width: 26px
}

.uq-walkAbout p i.is-saunaroom {
    top: 86px;
    left: 18px;
    width: 27px
}

.uq-walkAbout p i.is-mizuburo {
    top: 86px;
    right: 20px;
    width: 27px
}

.uq-walkAbout p i.is-iki {
    top: 36px;
    left: 35px;
    width: 27px
}

.uq-walkAbout p i.is-ionwater {
    top: 39px;
    right: 36px;
    width: 28px
}

.uq-walkAbout_saupo {
    position: absolute;
    bottom: -7px;
    left: 35px;
    width: 60px
}

.uq-walkPresent {
    background: #ea4c89;
    color: #fff;
    padding: 60px 20px
}

.uq-walkPresent_headline {
    font-size: 22px;
    text-align: center;
    margin-bottom: 30px
}

.uq-walkPresent_attention {
    font-size: 12px;
    margin-top: 20px;
    margin-bottom: 30px
}

.uq-walkPresentItem {
    border-radius: 12px;
    background: #fff;
    box-sizing: border-box;
    margin-bottom: 10px
}

.uq-walkPresentItem_target {
    border-radius: 12px 12px 0 0;
    background: #0040cb;
    font-weight: 700;
    color: #fff;
    text-align: center;
    padding: 10px 0
}

.is-ionwater .uq-walkPresentItem_target {
    background: #1fc5e7
}

.uq-walkPresentItem_headline {
    font-size: 18px;
    text-align: center;
    margin-bottom: 20px
}

.uq-walkPresentItem_headline span {
    font-size: 14px
}

.uq-walkPresentItem_content {
    color: #222;
    padding: 20px 30px
}

.uq-walkPresentItem_content p {
    font-size: 12px
}

.uq-walkPresentItem_content p span {
    position: relative;
    font-weight: 700;
    color: #ea4c89
}

.is-ionwater .uq-walkPresentItem_content p span {
    color: #1fc5e7
}

.uq-walkPresentItem_content p span:before {
    position: absolute;
    bottom: -2px;
    left: 0;
    background: #f30;
    width: 100%;
    height: 1px
}

.uq-walkPresentItem_content img {
    width: 257px;
    margin: 0 auto 20px
}

.uq-walkPlay_border {
    padding-bottom: 40px
}

.uq-walkPlay_border img {
    width: 100%;
    height: auto
}

.uq-walkPlay_headline {
    font-size: 20px;
    text-align: center;
    margin-bottom: 10px
}

.uq-walkPlay_lead {
    font-size: 14px;
    text-align: center;
    margin-bottom: 20px
}

.uq-walkPlayItem {
    position: relative;
    border-radius: 12px;
    background: #fff;
    display: flex;
    color: #222;
    margin-bottom: 10px;
    padding: 20px
}

.uq-walkPlayItem_number {
    position: absolute;
    top: 10px;
    left: 10px;
    font-family: Montserrat;
    font-size: 15px;
    font-weight: 700;
    color: #ea4c89
}

.uq-walkPlayItem_icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 90px
}

.uq-walkPlayItem_icon img {
    width: 80%;
    height: auto;
    margin-left: -10px
}

.uq-walkPlayItem_headline {
    font-size: 16px;
    margin-bottom: 5px
}

.uq-walkPlayItem p {
    font-size: 14px
}

.uq-walkPlayItem p span {
    font-size: 10px
}

.uq-walkPlayTonttu {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 20px
}

@-webkit-keyframes walkTonttu {
    0% {
        -webkit-transform: translate(0);
        transform: translate(0)
    }

    90% {
        -webkit-transform: translate(0);
        transform: translate(0)
    }

    91% {
        -webkit-transform: translate(3px);
        transform: translate(3px)
    }

    to {
        -webkit-transform: translate(0);
        transform: translate(0)
    }
}

@keyframes walkTonttu {
    0% {
        -webkit-transform: translate(0);
        transform: translate(0)
    }

    90% {
        -webkit-transform: translate(0);
        transform: translate(0)
    }

    91% {
        -webkit-transform: translate(3px);
        transform: translate(3px)
    }

    to {
        -webkit-transform: translate(0);
        transform: translate(0)
    }
}

.uq-walkPlayTonttu_icon {
    width: 35px;
    margin-right: 10px
}

.uq-walkPlayTonttu_icon img {
    width: 100%;
    height: auto
}

.uq-walkPlayTonttu p {
    font-size: 12px
}

.uq-walkPlayTonttu p>span:first-of-type {
    margin-left: -6px
}

.uq-walkPlayTonttu p>span:nth-of-type(2) {
    margin-right: -4px
}

.uq-walkMap {
    background: #fff;
    padding-top: 10px;
    padding-bottom: 10px
}

.uq-walkMap_content {
    position: relative;
    margin: 0 10px
}

[data-mode=fullscreen] .uq-walkMap_content {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10000;
    width: 100vw;
    height: 100vh
}

[data-mode=fullscreen] .uq-walkMap_content #map,
[data-mode=fullscreen] .uq-walkMap_content #rootMap {
    height: 100vh;
    outline: none
}

.uq-walkMapDefault {
    position: absolute;
    top: 0;
    left: 0;
    background: hsla(0, 0%, 100%, .9);
    background-image: url("../img/walk/dummy_map.png");
    background-size: cover;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 100;
    width: 100%;
    height: 100%
}

.uq-walkMapDefault.is-hide {
    display: none
}

.uq-walkMapDefault_content {
    font-weight: 700;
    text-align: center
}

.uq-walkMapDefault_logo {
    margin-bottom: 20px
}

.uq-walkMapDefault_logo span {
    display: block;
    font-size: 15px;
    color: #ea4c89;
    letter-spacing: .5em;
    margin-top: 10px
}

.uq-walkMapDefault_lead {
    font-size: 16px;
    margin-bottom: 30px
}

.uq-walkMapDefault_button {
    position: relative;
    border: none;
    border-radius: 60px;
    background: #ea4c89;
    color: #fff;
    padding: 20px 40px;
    cursor: pointer;
    outline: none;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: all
}

.uq-walkMapDefault_button:hover {
    text-decoration: none
}

.desktop .uq-walkMapDefault_button:hover {
    background: #ea4c89
}

.uq-walkMapDefault_button.is-active {
    pointer-events: none;
    opacity: 0
}

.uq-walkMapDefault_button p {
    font-size: 16px;
    font-weight: 700
}

.uq-walkMapDefault_button span {
    font-size: 12px
}

.uq-walkMapDefault_button img {
    position: absolute;
    top: -15px;
    left: 50%;
    pointer-events: none;
    width: 24px;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.uq-walkMapDefault_button.is-active+.uq-walkMapDefaultLoading {
    opacity: 1
}

.uq-walkMapDefaultLoading {
    position: absolute;
    bottom: 110px;
    left: 50%;
    z-index: 1;
    pointer-events: none;
    opacity: 0;
    margin: auto;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: all;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.uq-walkMapDefaultLoading_icon {
    position: relative;
    right: -12px;
    background: url("../img/loading.gif");
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: cover;
    width: 100px;
    height: 100px
}

.uq-walkMap_headline {
    display: none;
    font-size: 22px;
    text-align: center;
    margin-bottom: 30px
}

.uq-walkMapBanner {
    margin: 20px 0 10px;
    padding: 0 20px
}

.uq-walkMapBanner.is-hide {
    opacity: 0
}

.uq-walkMapBanner_contents {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%
}

.uq-walkMapBanner_contents:hover {
    text-decoration: none
}

.uq-walkMapBanner_contents:after {
    position: absolute;
    top: 50%;
    right: 5px;
    font-size: 26px;
    color: #ccc;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.uq-walkMapBanner_icon {
    border-radius: 12px;
    overflow: hidden;
    width: 70px;
    margin-right: 20px;
    flex-shrink: 0
}

.uq-walkMapBanner_icon img {
    width: 100%;
    height: auto
}

.uq-walkMapBanner_headline {
    font-size: 14px;
    margin-bottom: 5px
}

.uq-walkMapBanner p {
    font-size: 10px
}

.uq-walkIonwater {
    background: #1fc5e7;
    display: flex;
    align-items: center;
    color: #fff;
    padding: 60px 20px
}

.uq-walkIonwater_image {
    width: 45px;
    margin-right: 25px;
    margin-left: 15px
}

.uq-walkIonwater_image img {
    width: 100%;
    height: auto
}

.uq-walkIonwater_body {
    margin-bottom: 5px
}

.uq-walkIonwater_headline {
    font-size: 18px;
    line-height: 1;
    margin-bottom: 15px
}

.uq-walkIonwater p {
    font-size: 14px;
    margin-bottom: 10px
}

.uq-walkIonwater a {
    border-bottom: 2px solid #fff;
    font-size: 14px;
    font-weight: 700;
    color: #fff;
    padding-bottom: 5px;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: all
}

.uq-walkIonwater a:hover {
    text-decoration: none
}

.desktop .uq-walkIonwater a:hover {
    opacity: .7
}

.uq-walkHistory {
    position: relative;
    background: #fff;
    padding: 60px 20px
}

.uq-walkHistory_headline {
    margin-bottom: 20px
}

.uq-walkHistory_headline>span {
    background: #868686;
    display: inline-block;
    font-size: 22px;
    line-height: 1;
    color: #fff;
    margin-bottom: 10px;
    padding: 2px 4px
}

.uq-walkHistory_headline>span>span:first-of-type {
    margin-left: -12px
}

.uq-walkHistory_headline>span>span:nth-of-type(2) {
    margin-right: -10px
}

.uq-walkHistory p {
    font-size: 14px
}

.uq-walkHistory_road {
    position: absolute;
    top: 60px;
    right: -5px;
    opacity: .065;
    width: 130px
}

.uq-walkHistoryPost {
    margin-top: 20px
}

.uq-walkHistoryPost a {
    position: relative;
    border: 2px solid #e8e8e8;
    border-radius: 8px;
    display: flex;
    align-items: center;
    padding: 15px;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transition-duration: .3s;
    transition-property: all
}

.uq-walkHistoryPost a:hover {
    text-decoration: none
}

.desktop .uq-walkHistoryPost a:hover {
    opacity: .7
}

.uq-walkHistoryPost_image {
    border-radius: 30px;
    overflow: hidden;
    width: 60px;
    margin-right: 10px;
    flex-shrink: 0
}

.uq-walkHistoryPost_image img {
    width: 100%;
    height: auto
}

.uq-walkHistoryPost_body {
    font-weight: 700
}

.uq-walkHistoryPost_body span {
    display: block;
    font-size: 10px;
    font-weight: 400;
    margin-bottom: 5px
}

.uq-walkTerms {
    background: #f8f8f8;
    padding: 60px 20px
}

.uq-walkTerms_headline {
    font-size: 22px;
    margin-bottom: 20px
}

.uq-walkTerms_target {
    margin-bottom: 10px
}

.uq-walkTerms_content dl {
    text-align: left
}

.uq-walkTerms_content dl dt {
    font-size: 14px;
    font-weight: 700
}

.uq-walkTerms_content dl dd {
    font-size: 14px;
    margin-bottom: 2em
}

.uq-walkTerms_content dl dd span {
    font-size: 12px
}

.uq-walkTerms_content dl dd:last-of-type {
    margin-bottom: 0
}

.uq-walkTerms_content dl dd p {
    margin-bottom: 1.5em
}

.uq-walkShare {
    padding: 60px 0
}

.uq-walkShare_headline {
    font-size: 22px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 30px
}

.uq-walkOgp {
    position: relative;
    background-color: #cdf1fc;
    background-image: url("../img/walk/ogp_bg.png");
    background-repeat: no-repeat;
    background-size: 100%;
    box-sizing: border-box;
    z-index: -1;
    width: 360px;
    height: 189px;
    margin: -189px auto 0;
    padding: 20px
}

.uq-walkOgp_ikitai {
    position: absolute;
    top: 20px;
    right: 20px;
    width: 42px
}

.uq-walkOgp_logo {
    width: 250px;
    margin-bottom: 10px
}

.uq-walkOgp_logo img {
    width: 100%;
    height: auto
}

.uq-walkOgpInfo {
    display: flex
}

.uq-walkOgpInfo_image {
    position: relative;
    border-radius: 6px;
    overflow: hidden;
    width: 100px;
    height: 75px;
    margin-right: 10px
}

.uq-walkOgpInfo_image img {
    position: absolute;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.uq-walkOgpInfo_body {
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: center;
    font-weight: 700
}

.uq-walkOgpInfo_body p {
    font-size: 10px;
    line-height: 1;
    margin-bottom: 5px
}

.uq-walkOgpInfo_body strong {
    font-size: 16px;
    line-height: 1.3
}

.uq-walkOgpInfo_body strong i {
    font-size: 12px;
    font-style: normal
}

.uq-walkOgpInfo_body strong span {
    font-size: 16px
}

.uq-walkOgpInfo_body strong span.is-num {
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 18px;
    margin: 0 3px
}

.uq-walkOgp_saupo {
    position: absolute;
    right: 20px;
    bottom: 0;
    width: 50px
}




/*追加分*/
/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc {
    display: block !important;
}

.sp {
    display: none !important;
}

/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 750px) {
    .pc {
        display: none !important;
    }

    .sp {
        display: block !important;
    }
}




.box_compare,
.box_compare>li,
.box_compare>li {
    box-sizing: border-box;
}


@media print,
(min-width: 768px) {
    .box_compare {
        display: flex;
        justify-content: space-between;
        max-width: 600px;
        margin: auto;
    }

    .box_compare>li {
        width: calc(50% - 15px);
    }
}



.star5_rating {
    position: relative;
    z-index: 0;
    display: inline-block;
    white-space: nowrap;
    color: #CCCCCC;
}

.star5_rating:before,
.star5_rating:after {
    content: '★★★★★';
}

.star5_rating:after {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    overflow: hidden;
    white-space: nowrap;
    color: #ffcf32;
}

.star5_rating[data-rate="5"]:after {
    width: 100%;
}

.star5_rating[data-rate="4.9"]:after {
    width: 98%;
}

.star5_rating[data-rate="4.8"]:after {
    width: 96%;
}

.star5_rating[data-rate="4.7"]:after {
    width: 94%;
}

.star5_rating[data-rate="4.6"]:after {
    width: 92%;
}

.star5_rating[data-rate="4.5"]:after {
    width: 90%;
}

.star5_rating[data-rate="4.4"]:after {
    width: 88%;
}

.star5_rating[data-rate="4.3"]:after {
    width: 86%;
}

.star5_rating[data-rate="4.2"]:after {
    width: 84%;
}

.star5_rating[data-rate="4.1"]:after {
    width: 82%;
}

.star5_rating[data-rate="4"]:after {
    width: 80%;
}

.star5_rating[data-rate="3.9"]:after {
    width: 78%;
}

.star5_rating[data-rate="3.8"]:after {
    width: 76%;
}

.star5_rating[data-rate="3.7"]:after {
    width: 74%;
}

.star5_rating[data-rate="3.6"]:after {
    width: 72%;
}

.star5_rating[data-rate="3.5"]:after {
    width: 70%;
}

.star5_rating[data-rate="3.4"]:after {
    width: 68%;
}

.star5_rating[data-rate="3.3"]:after {
    width: 66%;
}

.star5_rating[data-rate="3.2"]:after {
    width: 64%;
}

.star5_rating[data-rate="3.1"]:after {
    width: 62%;
}

.star5_rating[data-rate="3"]:after {
    width: 60%;
}

.star5_rating[data-rate="2.9"]:after {
    width: 58%;
}

.star5_rating[data-rate="2.8"]:after {
    width: 56%;
}

.star5_rating[data-rate="2.7"]:after {
    width: 54%;
}

.star5_rating[data-rate="2.6"]:after {
    width: 52%;
}

.star5_rating[data-rate="2.5"]:after {
    width: 50%;
}

.star5_rating[data-rate="2.4"]:after {
    width: 48%;
}

.star5_rating[data-rate="2.3"]:after {
    width: 46%;
}

.star5_rating[data-rate="2.2"]:after {
    width: 44%;
}

.star5_rating[data-rate="2.1"]:after {
    width: 42%;
}

.star5_rating[data-rate="2"]:after {
    width: 40%;
}

.star5_rating[data-rate="1.9"]:after {
    width: 38%;
}

.star5_rating[data-rate="1.8"]:after {
    width: 36%;
}

.star5_rating[data-rate="1.7"]:after {
    width: 34%;
}

.star5_rating[data-rate="1.6"]:after {
    width: 32%;
}

.star5_rating[data-rate="1.5"]:after {
    width: 30%;
}

.star5_rating[data-rate="1.4"]:after {
    width: 28%;
}

.star5_rating[data-rate="1.3"]:after {
    width: 26%;
}

.star5_rating[data-rate="1.2"]:after {
    width: 24%;
}

.star5_rating[data-rate="1.1"]:after {
    width: 22%;
}

.star5_rating[data-rate="1"]:after {
    width: 20%;
}

.star5_rating[data-rate="0.9"]:after {
    width: 18%;
}

.star5_rating[data-rate="0.8"]:after {
    width: 16%;
}

.star5_rating[data-rate="0.7"]:after {
    width: 14%;
}

.star5_rating[data-rate="0.6"]:after {
    width: 12%;
}

.star5_rating[data-rate="0.5"]:after {
    width: 10%;
}

.star5_rating[data-rate="0.4"]:after {
    width: 8%;
}

.star5_rating[data-rate="0.3"]:after {
    width: 6%;
}

.star5_rating[data-rate="0.2"]:after {
    width: 4%;
}

.star5_rating[data-rate="0.1"]:after {
    width: 2%;
}

.star5_rating[data-rate="0"]:after {
    width: 0%;
}





/*クチコミ投稿*/

.rate-form {
    display: flex;
    flex-direction: row-reverse;
    justify-content: flex-end;
}

.rate-form input[type=radio] {
    display: none;
}

.rate-form label {
    position: relative;
    padding: 0 5px;
    color: #ccc;
    cursor: pointer;
    font-size: 35px;
}

.rate-form label:hover {
    color: #ffcc00;
}

.rate-form label:hover~label {
    color: #ffcc00;
}

.rate-form input[type=radio]:checked~label {
    color: #ffcc00;
}



.c-formBusinessTimes {
    position: relative
}

.c-formBusinessTimesTab {
    width: 380px
}

@media only screen and (max-width:799px) {
    .c-formBusinessTimesTab {
        width: 100%
    }
}

.c-formBusinessTimesSlot_content {
    display: flex;
    align-items: center
}

.c-formBusinessTimesSlot.is-clone {
    display: none
}

.c-formBusinessTimesSlot span {
    margin: 0 10px
}

.c-formBusinessTimesTime {
    width: calc(50% - 30px);
    position: relative;
    margin-bottom: 10px
}

.c-formBusinessTimesTime_label {
    position: absolute;
    font-size: 12px;
    padding: 0 5px;
    line-height: 1;
    top: -5px;
    left: 10px;
    color: #888;
    background: #fff;
    z-index: 1
}

.c-formBusinessTimesTime input {
    border: 3px solid #eee;
    border-radius: 8px;
    background: #fff;
    background: none;
    display: inline-block;
    box-sizing: border-box;
    font-size: 16px;
    vertical-align: middle;
    width: 100%;
    padding: 14px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
    margin-bottom: 5px
}

@media only screen and (max-width:799px) {
    .c-formBusinessTimesTime input {
        font-size: 14px
    }
}

.c-formBusinessTimesCause {
    position: relative;
    display: flex;
    align-items: center;
    margin-bottom: 20px
}

.c-formBusinessTimesCause_headline {
    margin-right: 20px
}

.c-formBusinessTimesCause .c-formSelect {
    width: 100%;
    margin-right: 10px
}

.c-formBusinessTimesCause_other {
    display: none
}

.c-formBusinessTimes_holiday {
    margin-bottom: 20px
}

.c-formBusinessTimes_add {
    margin-top: 15px;
    margin-bottom: 20px;
    text-align: center;
    color: #ea4c89;
    pointer-events: all;
    cursor: pointer
}

.c-formBusinessTimes_add:hover {
    opacity: .75
}






.c-formRadios {
    position: relative;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .c-formRadios {
        margin-top: 5px;
        margin-bottom: 5px
    }
}

.c-formRadios.has-marginTop {
    margin-bottom: 0;
    margin-top: 15px
}

.c-formRadios.is-group {
    padding: 30px;
    border-radius: 12px;
    border: 1px solid #ddd;
    margin-bottom: 30px
}

@media only screen and (max-width:799px) {
    .c-formRadios.is-group {
        padding-left: 20px;
        padding-right: 20px;
        padding-bottom: 0;
        margin-bottom: 20px
    }
}

@media only screen and (max-width:799px) {
    .c-formRadios.is-group .c-formRadio {
        margin-bottom: 20px;
        display: block
    }
}

.c-formRadios.is-group:last-of-type {
    margin-bottom: 0
}

.c-formRadios.is-group .c-headline {
    position: absolute;
    top: -8px;
    left: 20px;
    background: #fff;
    padding: 0 10px;
    line-height: 1
}

@media only screen and (max-width:799px) {
    .c-formRadios.is-group .c-headline {
        left: 12px
    }
}

.c-formRadio {
    display: inline-block;
    padding-bottom: 5px
}

@media only screen and (max-width:799px) {
    .c-formRadio {
        margin: 0 0 10px
    }
}

.c-formRadio.is-required {
    background: #faeef0
}

.c-formRadio.is-required--clear {
    border: 2px solid #dedede !important;
    background: #fff !important
}

.c-formRadio.is-error,
.is-error .c-formRadio {
    border-color: red
}

.c-formRadio input {
    display: none
}

.c-formRadio:hover input[type=radio]+label:after {
    color: #dedede
}

.c-formRadio label {
    position: relative;
    display: inline-block;
    font-size: 16px;
    line-height: 16px;
    text-align: center;
    vertical-align: middle;
    padding: 0 0 0 40px;
    cursor: pointer
}

.c-formRadio label:after {
    content: "";
}

@media only screen and (max-width:799px) {
    .c-formRadio label {
        font-size: 14px
    }
}

.c-formRadio label:before {
    position: absolute;
    top: 9px;
    left: 0;
    border: 3px solid #eee;
    border-radius: 50%;
    background: #f7f7f7;
    box-sizing: border-box;
    content: "";
    width: 30px;
    height: 30px;
    margin-top: -15px
}

.c-formRadio label:nth-child(2) {
    margin-right: 20px
}

.c-formRadio input[type=radio]+label:after {
    position: absolute;
    top: 9px;
    left: 0;
    border: 3px solid #eee;
    border-radius: 50%;
    background: #f7f7f7;
    box-sizing: border-box;
    font-size: 16px;
    line-height: 25px;
    color: transparent;
    width: 30px;
    height: 30px;
    margin-top: -15px;
    transition: all .1s ease-out
}

.c-formRadio input[type=radio]:checked+label:after {
    border: 3px solid #ea4c89;
    background: #ea4c89;

}

.c-formRadios {
    position: relative;
    margin-bottom: 10px
}

@media only screen and (max-width:799px) {
    .c-formRadios {
        margin-top: 5px;
        margin-bottom: 5px
    }
}

.c-formRadios.has-marginTop {
    margin-bottom: 0;
    margin-top: 15px
}

.c-formRadios.is-group {
    padding: 30px;
    border-radius: 12px;
    border: 1px solid #ddd;
    margin-bottom: 30px
}

@media only screen and (max-width:799px) {
    .c-formRadios.is-group {
        padding-left: 20px;
        padding-right: 20px;
        padding-bottom: 0;
        margin-bottom: 20px
    }
}

@media only screen and (max-width:799px) {
    .c-formRadios.is-group .c-formRadio {
        margin-bottom: 20px;
        display: block
    }
}

.c-formRadios.is-group:last-of-type {
    margin-bottom: 0
}

.c-formRadios.is-group .c-headline {
    position: absolute;
    top: -8px;
    left: 20px;
    background: #fff;
    padding: 0 10px;
    line-height: 1
}

@media only screen and (max-width:799px) {
    .c-formRadios.is-group .c-headline {
        left: 12px
    }
}

.c-formRadio {
    display: inline-block;
    padding-bottom: 5px
}

@media only screen and (max-width:799px) {
    .c-formRadio {
        margin: 0 0 10px
    }
}

.c-formRadio.is-required {
    background: #faeef0
}

.c-formRadio.is-required--clear {
    border: 2px solid #dedede !important;
    background: #fff !important
}

.c-formRadio.is-error,
.is-error .c-formRadio {
    border-color: red
}

.c-formRadio input {
    display: none
}

.c-formRadio:hover input[type=radio]+label:after {
    color: #dedede
}

.c-formRadio label {
    position: relative;
    display: inline-block;
    font-size: 16px;
    line-height: 16px;
    text-align: center;
    vertical-align: middle;
    padding: 0 0 0 40px;
    cursor: pointer
}

.c-formRadio label:after {
    content: "";
}

@media only screen and (max-width:799px) {
    .c-formRadio label {
        font-size: 14px
    }
}

.c-formRadio label:before {
    position: absolute;
    top: 9px;
    left: 0;
    border: 3px solid #eee;
    border-radius: 50%;
    background: #f7f7f7;
    box-sizing: border-box;
    content: "";
    width: 30px;
    height: 30px;
    margin-top: -15px
}

.c-formRadio label:nth-child(2) {
    margin-right: 20px
}

.c-formRadio input[type=radio]+label:after {
    position: absolute;
    top: 9px;
    left: 0;
    border: 3px solid #eee;
    border-radius: 50%;
    background: #f7f7f7;
    box-sizing: border-box;
    font-size: 16px;
    line-height: 25px;
    color: transparent;
    width: 30px;
    height: 30px;
    margin-top: -15px;
    transition: all .1s ease-out
}

.c-formRadio input[type=radio]:checked+label:after {
    border: 3px solid #ea4c89;
    background: #ea4c89;
    color: #fff
}


.pagination {
    position: relative;
    text-align: center;
    margin: 0;
    padding: 0;
    height: 40px;
    background: #f3f3f3;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
}

.pagination a.page-numbers {
    display: block;
    margin: 0 2px;
    padding: 7px 5px 0px;
    border: 1px solid #fff;
    background: #fff;
    min-width: 35px;
    height: 40px;
    text-align: center;
    position: relative;
}

.pagination span.page-numbers a {
    display: block;
    min-width: 35px;
    padding: 7px 5px 0px;
    height: 40px;
    text-align: center;
    color: #684736;
    text-decoration: none;
}

.pagination span.current {
    min-width: 35px;
    height: 40px;
    padding: 7px 5px 0px;
    text-align: center;
    color: #fff;
    background: #ea4c89;
}

.pagination .prev,
.pagination .next {
    display: block;
    min-width: 30px;
    min-height: 40px;
    text-align: center;
}

.page-numbers.dots {
    padding: 7px 5px 0px;
}



.area_grid {
  display: grid;
  gap: 3px;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr  1fr 1fr;
  margin: 10px auto 20px
}

@media screen and (max-width: 799px) {
.area_grid {
    margin: 10px auto 70px;
    padding: 0 20px;
     grid-template-columns: 1fr 1fr 1fr;
}
}
.area_grid_todouhuken {
     background: #fff;
    text-align: center;
    font-size: 14px;
    padding: 15px 0;
    border-radius: 6px;
 
    border: 2px solid #eee;
}
a.area_grid_link {
    display: block;
    font-weight: 600;
}




.current_area .area_grid_todouhuken {
   background: #ea4c89;
   color: #fff;
}