html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font: inherit;
    font-size: 100%;
    vertical-align: baseline;
}

html {
    line-height: 1;
    overflow-y: scroll;
}

ol, ul {
    list-style: none;
}

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

caption, th, td {
    text-align: left;
    font-weight: normal;
    vertical-align: middle;
}
a img {
    border: none;
}

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

*, *:before, *:after {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

body img {
    max-height: none;
}

input, label, select, button, textarea {
    margin: 0;
    border: 0;
    padding: 0;
    display: inline-block;
    vertical-align: middle;
    white-space: normal;
    background: none;
    font: inherit;
    line-height: 1;
}
body {
    color: #333;
    font-family: -apple-system,BlinkMacSystemFont,"Helvetica Neue","游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN",メイリオ,Meiryo,sans-serif;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.73;
    -webkit-text-size-adjust: none;
    -moz-text-size-adjust: none;
    -ms-text-size-adjust: none;
    letter-spacing: 0.02em;
}

.ft-serif {
    font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "Times New Roman", "游明朝", YuMincho, "メイリオ", Meiryo, Georgia, serif;
}
a {
    color: #333;
    text-decoration: none;
}
.flex {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.flex-lg-center {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.container {
    /*overflow: hidden;*/
}

@media print, (min-width: 768px) {
    body {
        position: static !important;
        top: auto !important;
    }

    .navigation {
        display: block !important;
    }

    .trans {
        filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
        opacity: 1;
        -moz-transition: opacity 0.26s ease;
        -o-transition: opacity 0.26s ease;
        -webkit-transition: opacity 0.26s ease;
        transition: opacity 0.26s ease;
    }

    .trans:hover {
        filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
        opacity: 0.8;
    }

    .flex-md {
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -ms-flex-wrap: wrap;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .flex-center {
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -ms-flex-wrap: wrap;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

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

    .flex-align {
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -ms-flex-wrap: wrap;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        -ms-flex-align: center;
        -webkit-align-items: center;
        align-items: center;
    }

    .order1 {
        -ms-flex-order: 1;
        -webkit-order: 1;
        order: 1;
    }

    .order2 {
        -ms-flex-order: 2;
        -webkit-order: 2;
        order: 2;
    }

    .container {
        min-width: 1024px;
    }

    .wrapper {
        width: 980px;
        margin-left: auto;
        margin-right: auto;
    }
}
.sm {
    display: none !important;
}

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

    .sm {
        display: block !important;
    }

    html {
        font-size: 15.625vw;
    }

    body {
        font-size: 0.27rem;
        line-height: 1.333;
        padding-top: 68px;
        position: relative;
        width: 100%;
        height: 100%;
    }

    .container {
        min-width: 320px;
    }

    .wrapper {
        width: auto;
        margin: 0;
        padding-left: 0.2rem;
        padding-right: 0.2rem;
    }

    .flex-sm {
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -ms-flex-wrap: wrap;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
    }
}
.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list {
    position: relative;
    overflow: hidden;
    display: block;
    margin: 0;
    padding: 0;
}
.slick-slider .slick-track, .slick-slider .slick-list {
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

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

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

.slick-track:after {
    clear: both;
}

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

.slick-slide {
    float: left;
    height: 100%;
    min-height: 1px;
}
.slick-slide img {
}
.slick-initialized .slick-slide {
    /*  display: block; */
}

.slick-loading .slick-slide {
    visibility: hidden;
}
.slick-arrow, .slick-dots button {
    background-position: 0 0;
    background-repeat: no-repeat;
    text-indent: -1000px;
    overflow: hidden;
    padding: 0;
    border: none;
    background-color: transparent;
    outline: none;
    display: block;
    cursor: pointer;
}
header .wrapper {
    position: relative;
}

header .header-site {
    background: #fff;
}

header .header-top {
    background: #955c9f;
    line-height: 1;
    color: #fff;
}

header .header-r .btn-login {
    height: auto;
}

header .header-r .btn-login:after {
    display: none;
}
header .header-button .btn-register, header .header-button .btn-login {
    height: 46px;
}

/* バーガーここから */
/*ボタン外側※レイアウトによってpositionや形状は適宜変更してください*/
.openbtn4 {
    position: absolute;
    cursor: pointer;
    width: 40px;
    height: 40px;
    top: 50%;
    transform: translate(0px, -50%);
}

/*ボタン内側*/
.openbtn4 span {
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 50%;
    transform: translate(-50%, 0px);
    height: 4px;
    background: #8d5f9b;
    width: 80%;
}

.openbtn4 span:nth-of-type(1) {
    top: 5px;
}

.openbtn4 span:nth-of-type(2) {
    top: 14px;
}

.openbtn4 span:nth-of-type(3) {
    top: 23px;
}

.openbtn4 span:nth-of-type(3)::after {
    content: "Menu";
    position: absolute;
    top: 5px;
    left: 50%;
    transform: translate(-50%, 0px);
    color: #8d5f9b;
    font-size: 10px;
    text-transform: uppercase;
    font-weight: bold;
}

/*activeクラスが付与されると線が回転して×になり、Menu⇒Closeに変更*/
.openbtn4.active span:nth-of-type(1) {
    top: 13px;
    left: 50%;
    transform: translate(-50%, 0px) rotate(-45deg);
}

.openbtn4.active span:nth-of-type(2) {
    opacity: 0;
}

.openbtn4.active span:nth-of-type(3) {
    top: 13px;
    left: 50%;
    transform: translate(-50%, 0px) rotate(45deg);
}

.openbtn4.active span:nth-of-type(3)::after {
    content: "Close";
    /*3つ目の要素のafterにClose表示を指定*/
    transform: translateY(0) rotate(-45deg);
    top: 10px;
    left: 12px;
}

/*========= メニュー中身 ===============*/
.brgr_hidden {
}

.brgr_hidden .brgr_menubox {
    background-color: #efefef;
    position: fixed;
    width: 300px;
    height: 100%;
    z-index: 1999;
    left: -310px;
    transition-duration: .3s;
    transition-property: all;
    padding-top: 85px;
    top: 0;
    overflow-x: hidden;
    overflow-y: scroll;
}

.brgr_hidden .brgr_menu_bg {
    z-index: 1260;
    position: fixed;
    height: 100%;
    width: 100%;
    top: 0;
    background-color: rgb(0 0 0 / 50%);
    display: none;
}

.brgr_hidden.active .brgr_menubox {
    left: 0;
}

.brgr_hidden.active .brgr_menu_bg {
    display: block;
    transition-duration: .3s;
    transition-property: all;
}

/* 背景を固定する */
.kote {
    width: 100%;
    height: 100%;
    position: fixed;
}

/* menu中身 */
.brgr_hidden .brgr_menubox .brgr_menu {
    margin-top: 15px;
    margin-bottom: 20px;
}

.brgr_hidden .brgr_menubox .brgr_regi_bt a img {
    width: 90%;
    margin: 0 auto;
    display: block;
}

.brgr_hidden .brgr_menubox .brgr_menu dt {
    font-size: 13px;
    font-family: serif;
    font-weight: bold;
    margin-top: 0px;
    padding: 5px 10px;
    background: linear-gradient(45deg, #714680, #9973a6);
    color: #fff;
    letter-spacing: 1.5px;
}

.brgr_hidden .brgr_menubox .brgr_menulist li {
    border-bottom: 1px solid #cabcd0;
    font-size: 15px;
    position: relative;
    background-color: #fff;
}

.brgr_hidden .brgr_menubox .brgr_menulist li::before {
    content: '';
    width: 10px;
    height: 10px;
    border-top: solid 2px #9172a0;
    border-right: solid 2px #9172a0;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: rotate(45deg)translate(0px, -50%);
}
.brgr_hidden .brgr_menubox .brgr_menulist li a {
    display: block;
    padding: 10px 0px 10px 15px;
}
/* バーガーここまで */

@media print, (min-width: 768px) {
    header {
       /* height: 180px; */
    }
    header .header-site {
    padding: 10px 0;
    }

    header .header-top {
        font-size: 11px;
        padding: 5px 0;
    }

    header .header-logo {
        width: 390px;
        margin: 0;
    }

    header .mon_bn {
        animation: 4.5s fuwafuwa infinite;
        margin-left: 22px;
        margin-top: 4px;
        width: 100%;
    }

    header .mon_bn img {
        width: 100%;
        height: auto;
    }

    @keyframes fuwafuwa {
        0%, 17%, 32%, 100% {
            transform: rotate(0deg);
        }

        20% {
            transform: rotate(0.8deg);
        }

        23% {
            transform: rotate(-0.8deg);
        }

        26% {
            transform: rotate(0.8deg);
        }

        29% {
            transform: rotate(-0.8deg);
        }
    }
    header .header-logo .on {
        display: none;
    }
    header .header-r {
        position: absolute;
        top: -11px;
        right: 0;
        width: 145px;
    }
    header .header-tel {
        padding-left: 84px;
        position: absolute;
        right: 174px;
        font-size: 13px;
        letter-spacing: 0.01em;
        top: 11px;
        color: #000;
    }
    header .header-tel.mr {
        right: 275px;
    }
    header .header-tel img {
        height: 25px;
    }
    header .header-tel .txt-large {
        font-size: 14px;
    }
    header .header-tel .txt-small {
        position: absolute;
        width: 70px;
        height: 70px;
        top: 0;
        left: 0;
        -moz-border-radius: 5px;
        -webkit-border-radius: 5px;
        border-radius: 5px;
        border: 1px solid #d5d5d5;
        font-size: 11px;
        background: url(../img/common/icn_phone.png) no-repeat center 9px;
        background-size: 45px auto;
        padding: 47px 5px 0;
        text-align: center;
        letter-spacing: 0.025em;
        color: #333;
    }
    header .header-contact {
        position: absolute;
        right: 0;
    }
    header .header-contact {
        top: 16px;
        width: 145px;
        right: 2px;
        font-size: 17px;
        -moz-border-radius: 5px;
        -webkit-border-radius: 5px;
        border-radius: 5px;
        height: 36px;
        color: #fff;
        display: flex;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        justify-content: center;
        font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "Times New Roman", "游明朝", YuMincho, "メイリオ", Meiryo, Georgia, serif;
    }
    header .regist_pc {
        background: #79397f;
        background: linear-gradient(4deg, #581c5e , #79397f, #a467b7);
        -moz-background: linear-gradient(4deg, #581c5e , #79397f, #a467b7);
        -webkit-background: linear-gradient(4deg, #581c5e , #79397f, #a467b7);
    }
    header .header-r .btn-login {
        top: 57px;
        width: 145px;
        right: 2px;
        font-size: 17px;
        -moz-border-radius: 5px;
        -webkit-border-radius: 5px;
        border-radius: 5px;
        height: 36px;
    }
    header .header-r .btn-login > span {
        background-size: 22px auto;
        padding: 4px 0 5px 26px;
    }
    header .header-r .regist_pc > span {
        background-size: 22px auto;
        padding: 4px 0 5px 26px;
        background-image: url(../img/common/icn_registration2.png);
        background-position: 0 center;
        background-repeat: no-repeat;
        text-align: left;
    }
    .ie header .header-r .btn-login > span {
        padding-top: 8px;
    }
    header .btn-guide {
        top: 29px;
        right: 154px;
        padding-top: 38px;
        width: 70px;
    }
    header .btn01 {
        -moz-border-radius: 5px;
        -webkit-border-radius: 5px;
        border-radius: 5px;
        top: 51px;
        width: 145px;
        right: 2px;
        font-size: 17px;
        height: 38px;
    }
    header .btn01 > span {
        padding: 2px 0 3px 30px;
    }
    .ie header .btn01 > span {
        padding-top: 6px;
    }
    header.header-sub {
        margin-bottom: 0px;
    }
    .header-button {
        position: absolute;
        right: 0;
        top: 12px;
        display: none;
    }
    .header-button .btn-register, .header-button .btn-login {
        width: 230px;
        font-size: 18px;
    }
    .header-button .btn-register > span, .header-button .btn-login > span {
        padding: 0px 27px 0px 35px;
        /*    padding: 6px 27px 9px 35px; */
        background-size: 27px auto;
        background-position: 0 42%;
    }
    .ie .header-button .btn-register > span, .ie .header-button .btn-login > span {
        padding-top: 13px;
    }
    .header-button .btn-register:after, .header-button .btn-login:after {
        width: 10px;
        right: 15px;
    }
    .header-button .btn-login {
        margin-left: 20px;
    }
    .header-block.header-fixed {
        position: fixed;
        top: 0;
        left: 0;
        z-index: 9999;
        -moz-animation: smoothScroll 0.4s forwards;
        -webkit-animation: smoothScroll 0.4s forwards;
        animation: smoothScroll 0.4s forwards;
        width: 100%;
        min-width: 1024px;
        background: #fff;
        -moz-box-shadow: 0 1px 3px #d0d0d0;
        -webkit-box-shadow: 0 1px 3px #d0d0d0;
        box-shadow: 0 1px 3px #d0d0d0;
    }

    .header-block.header-fixed .header-r, .header-block.header-fixed .header-tel {
        display: none;
    }

    .header-block.header-fixed .header-logo {
        width: 238px !important;
        margin-top: 0;
    }
    .header-block.header-fixed .header-logo .on {
        display: block !important;
    }
    .header-block.header-fixed .header-button {
        display: block;
    }
}
@media only screen and (max-width: 767px) {
    header {
        box-shadow: 0 0px 7px rgb(155 155 155 / 50%);
        position: fixed;
        right: 0;
        left: 0;
        top: 0;
        z-index: 2000;
    }

    header .header-r {
        position: absolute;
        right: 0.2rem;
        top: 48%;
        transform: translateY(-50%);
    }

    header .header-top {
        font-size: 10px;
        padding: 3px 0;
    }

    header .header-logo {
        width: 170px;
        margin: 0 auto;
    }

    header .header-contact, header .header-r .btn-login, header .btn-tel {
        width: 70px;
    }

    header .header-r .btn-login {
        -moz-border-radius: 0;
        -webkit-border-radius: 0;
        border-radius: 0;
        background: none;
    }

    header .header-r .btn-login > span {
        background: none;
    }

    header .btn-guide {
        top: 0.04rem;
        right: 1.86rem;
        padding-top: 0.48rem;
        background-image: url(../img/common/sm/icn_guide.png);
        background-size: 0.4rem auto;
        line-height: 1;
        font-size: 0.17rem;
        width: 0.7rem;
    }

    header .btn01 {
        -moz-border-radius: 0.3rem;
        -webkit-border-radius: 0.3rem;
        border-radius: 0.3rem;
        top: 0.14rem;
        width: 1.74rem;
        right: 0;
        font-size: 0.2rem;
        height: 0.48rem;
    }

    header .btn01 > span {
        padding: 0.08rem 0 0.08rem 0.36rem;
        background-image: url(../img/common/sm/icn_home.png);
        background-size: 0.3rem auto;
    }

    header .header-site {
        padding: 6px 0;
    }

    .header-site .header-button {
        position: fixed;
        left: 0;
        z-index: 9999;
        width: 100%;
        min-width: 320px;
        bottom: 0;
    }

    .header-site .header-button .tracking_bt {
        position: relative;
        /* 20221006 isk 
    height: 1.65rem; */
        height: 1.45rem;
    }

    .header-site .header-button .tracking_bt a {
        height: 100%;
        max-width: 500px;
    }

    .header-site .header-button .tracking_bt img {
    }

    /* ===== isk new ====== */
    .tracking_bt {
    position: fixed;
    bottom: -100vh; /* 画面外に隠す */
    width: 100%;
    min-width: 320px;
    background-color: rgb(0 0 0 / 50%);
    padding: 35px 20px 25px;
    transition: bottom 0.3s ease-out;
    z-index: 1100;
    text-align: center;
    visibility: hidden; /* 最初は非表示 */
    }

.tracking_bt.tracking_on .regi_a {
    width: 90%;
    max-width: 400px;
    display: block;
    margin: 0 auto;
}
.tracking_bt.tracking_on .regi_a img {
    width: 100%;
    height: auto;
}
    /* ================= */
    .header-site.header-block .header-button {
        display: none;
    }

    .header-site .header-button .flex {
        -webkit-justify-content: center;
        justify-content: center;
    }

    .header-site .header-button a {
        margin: 0 auto;
        height: 0.68rem;
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center;
    }

    .header-site .header-button a > span {
        padding: 0rem 0.3rem 0rem 0.5rem;
    }

    .header-site .header-button .btn-register {
        margin-left: 0;
    }

    .header-site .header-button .btn-login {
        margin-right: 0;
    }

    .header-site.header-block.header-fixed .header-button {
        display: block;
        -moz-animation: smoothScroll 0.4s forwards;
        -webkit-animation: smoothScroll 0.4s forwards;
        animation: smoothScroll 0.4s forwards;
    }
}

    .header-block.header-fixed .header-logo .off {
        display: none !important;
    }

@media only screen and (max-width: 767px) {
.before_login .i_catch_box {
    position: relative;
}
.before_login .i_catch_box img {
    width: 100%;
    height: auto;
    display: block;
}
.before_login .i_catch_box .top_regist_bt {
    position: absolute;
    bottom: 0;
    width: 90%;
    max-width: 520px;
    margin: 0 auto;
    left: 50%;
    transform: translateX(-50%);
}
/* 20250619 isk */
.before_login .i_catch_box .top_regist_bt a, .tracking_bt a {
    position: relative;
    width: 100%;
    margin: 0 auto;
    display: block;
    border-radius: 100px;
    text-align: center;
    padding: 16px 0 15px;

    background: linear-gradient(164deg, #4bdf64 0%, #169832 36%, #068944 100%);
    box-shadow: 0px 6px 16px rgb(119 240 164 / 50%) inset, 0px -5px 10px rgb(12 101 46 / 60%) inset, 0px 7px 7px rgb(0 0 0 / 30%);
    border: 2px solid #fffa8f;

/*
オレンジ
        background: linear-gradient(164deg, #ffca81 0%, #f87f1b 36%, #cd7208 100%);
        box-shadow: 0px 6px 16px rgb(255 229 197 / 50%) inset, 0px -5px 10px rgb(182 98 27 / 60%) inset, 0px 7px 7px rgb(0 0 0 / 30%);
黄色
        background: linear-gradient(164deg, #f9e0b0 0%, #e99e12 36%, #d98409 100%);
        box-shadow: 0px 6px 16px rgb(255 239 197 / 50%) inset, 0px -7px 13px rgb(160 116 19 / 60%) inset, 0px 7px 7px rgb(0 0 0 / 30%);

赤
        background: linear-gradient(164deg, #e79299 0%, #e64f63 36%, #e84646 100%);
        box-shadow: 0px 6px 16px rgb(255 218 218 / 50%) inset, 0px -5px 10px rgb(157 36 36 / 60%) inset, 0px 7px 7px rgb(0 0 0 / 30%);

ピンク
        background: linear-gradient(164deg, #ffa8af 0%, #e85f93 36%, #f65f7b 100%);
        box-shadow: 0px 6px 16px rgb(255 181 181 / 50%) inset, 0px -5px 10px rgb(157 36 87 / 60%) inset, 0px 7px 7px rgb(0 0 0 / 30%);

青
        background: linear-gradient(164deg, #b0c3f9 0%, #4970ea 36%, #2b4aa5 100%);
        box-shadow: 0px 6px 16px rgb(197 218 255 / 50%) inset, 0px -5px 10px rgb(30 71 150 / 60%) inset, 0px 7px 7px rgb(0 0 0 / 30%);

白double線
        border: 6px double #ffffff;
*/

    background-origin: border-box;
    background-clip: border-box;
}
.before_login .i_catch_box .top_regist_bt a::before, .tracking_bt a::before {
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 17px;
    width: 26px;
    height: 26px;
    background-image: url(https://feel-i.jp/tmpl_smart_phone/assets/img/common/regi_bt_icon.png);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}
.before_login .i_catch_box .top_regist_bt a::after, .tracking_bt a::after {
    content: '';
    display: block;
    width: 17px;
    height: 17px;
    border-top: 3.5px solid #ffffff;
    border-right: 3.5px solid #ffffff;
    top: 50%;
    transform: translateY(-50%) rotate(45deg) skew(0deg, 0deg);
    position: absolute;
    right: 18px;
}
.before_login .i_catch_box .top_regist_bt a .fuki_min, .tracking_bt a .fuki_min {
    position: absolute;
    top: -18px;
    left: 50%;
    transform: translateX(-50%);
    width: 50%;
    background-color: #fffee8;
    font-size: 13px;
    border-radius: 50px;
    padding: 3px 0;
    letter-spacing: 0;
    font-family: sans-serif;
    font-weight: bold;
    color: #d02c6b;
    box-shadow: 0 2px 5px rgb(0 0 0 / 17%);
    animation: fuki_min 3.5s cubic-bezier(0.39, 0.58, 0.57, 1) infinite;
}

@keyframes fuki_min {
0% { transform: translate(-50%, 0);}
5% { transform: translate(-50%, 0);}
10% { transform: translate(-50%, 0);}
20% { transform: translate(-50%, 0);}
25% { transform: translate(-50%, 0);}
30% { transform: translate(-50%, 0);}

50% { transform: translate(-50%, -5px);}
100% { transform: translate(-50%, 0);}
}

.before_login .i_catch_box .top_regist_bt a .fuki_min::after, .tracking_bt a .fuki_min::after {
    content: '';
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    left: 50%;
    transform: translateX(-50%);
    bottom: -8px;
    border-top: 10px solid #fffee8;
    border-right: 6px solid transparent;
    border-left: 6px solid transparent;
}
.before_login .i_catch_box .top_regist_bt a .fuki_main, .tracking_bt a .fuki_main {
    font-size: 26px;
    font-weight: bold;
    color: #fff;
    text-shadow: 0 2px 2px rgb(0 0 0 / 40%);
    margin-left: 7px;
}


.before_login .already_regi { text-align: center; margin-top: 20px;}
.before_login .already_regi a { text-decoration: underline; font-size: 16px;}
}

@-webkit-keyframes smoothScroll {
  0% {
    -moz-transform: translateY(-120px);
    -ms-transform: translateY(-120px);
    -webkit-transform: translateY(-120px);
    transform: translateY(-120px);
  }
  100% {
    -moz-transform: translateY(0px);
    -ms-transform: translateY(0px);
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
}
@keyframes smoothScroll {
  0% {
    -moz-transform: translateY(-100px);
    -ms-transform: translateY(-100px);
    -webkit-transform: translateY(-100px);
    transform: translateY(-100px);
  }
  100% {
    -moz-transform: translateY(0px);
    -ms-transform: translateY(0px);
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
}



.nav_menu ul {
    text-align: center;
}

.nav_menu ul a {
    display: block;
    color: #000;
}
@media print, (min-width: 768px) {
/* tracking_bt PCの時は非表示 */ 
    .tracking_bt {
        display: none;
    }

    .nav_menu {
        margin: 5px 0 0 0;
    }

    .nav_menu ul {
        font-size: 17px;
    }

    .nav_menu ul > li {
        width: 16.6667%;
        border-left: 2px solid #d5d5d5;
        padding: 5px 12px;
    }

    .nav_menu ul > li:last-child {
        border-right: 2px solid #d5d5d5;
    }

    .nav_menu ul a:hover {
        background: #ede2ef;
        background: linear-gradient(45deg, #955c9f, #ba60c9);
        color: #fff;
        -moz-border-radius: 15px;
        -webkit-border-radius: 15px;
        border-radius: 15px;
    }

/* 202503 占い師一覧ホバー */
#headermenu_hover {
    position: absolute;
    left: 0;
    top: 100%; /* .nav-fortune のすぐ下に配置 */
    width: 100%;
    background: white; /* 背景色（適宜変更してください） */
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
    max-height: 0;
    overflow: hidden; /* はみ出した部分を隠す */
    transition: max-height 0.3s ease-in-out;
    z-index:1;
}
#headermenu_hover li {
    width: 100% !important;
    text-align: left;
    border-bottom: 1px solid #ccc;
    border-left: none !important;
    padding: 0 !important;
    font-size: 15px;
}
#headermenu_hover li:first-child { border-top: 1px solid #ccc;}
#headermenu_hover li:last-child {
    border-right: none !important;
    border-bottom: 4px solid #a376ab;
}
.nav-fortune {
    position: relative; /* 親要素として基準を作る */
}

.nav-fortune:hover #headermenu_hover { max-height: 213px; /* 充分大きめの値を指定 */}
.nav-fortune #headermenu_hover li a { 
    padding: 12px 10px;
}
.nav-fortune #headermenu_hover li a:hover { 
    background: linear-gradient(45deg, #fefcff, #fdf4ff);
    border-radius: 0;
    color: #955e9f;
    font-weight: bold;
    text-decoration: underline;
    }
}
@media only screen and (max-width: 767px) {
    .nav_menu {
        padding: 10px 0 8px;
        background-color: #eee;
        width: 100%;
    }

    .nav_menu .wrapper {
        padding: 0 0.1rem 0 0.07rem;
    }

    .nav_menu ul {
        padding: 0.09rem 0.05rem 0.07rem;
        background-color: #fff;
        width: 92%;
        margin: 0 auto 0;
        border-radius: 10px;
        justify-content: space-around;
    }

    .nav_menu ul li {
        width: 25%;
        border-right: 1px solid #ccc;
    }

    .nav_menu ul li:last-child {
        border-right: none;
    }

    .nav_menu ul .nav-guide {
        /* width: 18.9%; */
        width: 17.9%;
    }

    .nav_menu ul .nav-system a {
        background-image: url(../img/common/sm/icn_nav07.png);
    }

    .nav_menu ul .nav-guide a {
        background-image: url(../img/common/sm/icn_nav01.png);
    }

    .nav_menu ul .nav-word-mouth {
        width: 13.2%;
    }

    .nav_menu ul .nav-word-mouth a {
        background-image: url(../img/common/sm/icn_nav02.png);
    }

    .nav_menu ul .nav-how-use {
        /* width: 17.8%; */
    }

    .nav_menu ul .nav-how-use a {
        background-image: url(../img/common/sm/icn_nav09.png);
    }

    .nav_menu ul .nav-fortune {
        /*  width: 17.6%; */
    }

    .nav_menu ul .nav-fortune a {
        background-image: url(../img/common/sm/icn_nav04.png);
    }

    .nav_menu ul .nav-divination {
        /*   width: 19.3%;*/
        width: 18.2%;
    }

    .nav_menu ul .nav-divination a {
        background-image: url(../img/common/sm/icn_nav05.png);
    }

    .nav_menu ul .nav-faq {
        width: 10.7%;
    }

    .nav_menu ul .nav-faq a {
        background-image: url(../img/common/sm/icn_nav06.png);
    }

    .nav_menu ul a {
        font-size: 0.18rem;
        font-weight: bold;
        background-position: center 3px;
        background-repeat: no-repeat;
        background-size: auto 0.43rem;
        padding: 0.53rem 0 0;
        font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    }
}

/* COMMON FOOTER
 * ----------------------------------------------- */
footer {
    background: #f3f3f3;
}

footer .wrapper {
    position: relative;
}

footer .footer-menu {
    line-height: 1.85;
}

footer .footer-menu > li {
    position: relative;
}

footer .footer-menu > li:before {
    content: ">";
    position: absolute;
    left: 0;
    top: 0;
    color: #a1a1a1;
    line-height: 1.41;
}

footer .footer-menu > li.link {
    font-weight: bold;
}

footer .footer-menu > li.link:before {
    color: #b585be;
    line-height: 1.85;
    font-weight: bold;
}

footer .btn-login, footer .btn-register {
    height: 38px;
}

footer .btn-login:after, footer .btn-register:after {
    display: none;
}
footer .copyright {
    text-align: center;
}

@media print, (min-width: 768px) {
    footer {
        padding: 16px 0 35px;
    }

    footer .wrapper {
        padding: 0 20px;
    }

    footer .footer-btn {
        position: absolute;
        right: 20px;
        top: 60px;
    }

    footer .btn-login, footer .btn-register {
        -moz-border-radius: 5px;
        -webkit-border-radius: 5px;
        border-radius: 5px;
        width: 175px;
        font-size: 17px;
        margin-left: 10px;
    }

    footer .btn-login:after, footer .btn-register:after {
        display: none;
    }

    footer .btn-login > span, footer .btn-register > span {
        padding: 4px 10px 5px 26px;
        background-size: 22px auto;
    }

    .ie footer .btn-login > span, .ie footer .btn-register > span {
        padding-bottom: 0;
        padding-top: 4px;
    }

    .edge footer .btn-login > span, .edge footer .btn-register > span {
        padding-top: 2px;
    }

    footer .btn-register > span {
        background-size: 23px;
    }

    footer .btn-login.btn > span {
        background-image: url(../img/common/icn_home.png);
        background-size: auto;
        padding-left: 31px;
        padding-right: 0;
    }

    footer .btn-register.btn > span {
        background-image: url(../img/common/icn_sign.png);
        background-size: auto;
        padding-right: 0;
    }

    footer .footer-logo {
        width: 408px;
        margin-bottom: 20px;
    }

    footer .footer-col {
        margin-bottom: 54px;
    }

    footer .col {
        border-right: 1px solid #d5d5d5;
        /* padding-left: 30px;
        padding-bottom: 11px;*/
        padding:0 30px 11px 20px;
    }

    footer .col01 {
        /* width: 193px; */
        padding-left: 40px;
    }

    footer .col02 {
       /* width: 220px;
        padding-left: 20px;*/
    }

    footer .col03 {
       /* width: 146px; */
    }

    footer .col04 {
       /* width: 178px; */
    }

    footer .col05 {
    /* width: 203px;*/
    /*padding-left: 20px;*/
    padding: 0 30px 0 20px;
    border-right: 1px solid #d5d5d5;
    }

    footer .footer-menu {
        font-size: 13px;
        line-height: 1.4;
        padding-top: 5px;
    }

    footer .footer-menu > li {
        padding-left: 14px;
    }

    footer .footer-menu > li + li {
        margin-top: 6px;
    }

    footer .footer-menu > li:before {
        font-size: 17px;
        line-height: 1;
    }

    footer .footer-menu > li.link:before {
        font-size: 13px;
        line-height: 1.4;
    }

    footer .js-accordion {
        display: block !important;
    }

    footer .copyright {
        font-size: 11px;
    }

    .footer-sub .footer-col {
        margin-left: -20px;
        margin-right: -20px;
    }

    .footer-sub .col {
        padding-left: 24px;
        padding-right: 5px;
    }

    .footer-sub .col01 {
        width: 134px;
        padding-left: 10px;
    }

    .footer-sub .col02 {
        width: 160px;
    }

    .footer-sub .col03 {
        width: 134px;
    }

    .footer-sub .col04 {
        width: 168px;
    }

    .footer-sub .col05 {
        width: 206px;
        padding-left: 24px;
    }

    .footer-sub .col06 {
        width: 168px;
    }
}
@media only screen and (max-width: 767px) {
    footer {
        padding: 0.32rem 0 0.55rem;
    }

    footer .wrapper {
        padding: 0;
    }

    footer .footer-logo {
        width: 4.54rem;
        margin: 0 auto 0.24rem;
    }

    footer .footer-btn {
        margin-bottom: 0.38rem;
        padding: 0 0.2rem;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        justify-content: space-between;
    }

    footer .footer-btn a {
        width: 48.3%;
    }

    footer .btn-login, footer .btn-register {
        -moz-border-radius: 0.05rem;
        -webkit-border-radius: 0.05rem;
        border-radius: 0.05rem;
        font-size: 0.32rem;
        height: 0.68rem;
        font-weight: bold;
    }

    footer .btn-login > span, footer .btn-register > span {
        /*    padding: 0.12rem 0 0.12rem 0.52rem; */
        padding: 0.12rem 0 0.12rem 0.48rem;
        background-size: 0.4rem;
    }

    footer .btn-login.btn > span {
        background-image: url(../img/common/sm/icn_home.png);
        background-size: 0.38rem auto;
        padding-left: 0.5rem;
        padding-right: 0;
    }

    footer .btn-register.btn > span {
        background-image: url(../img/common/sm/icn_sign.png);
        background-size: 0.37rem auto;
        padding-right: 0;
        padding-left: 0.5rem;
    }

    footer .footer-col {
        margin-bottom: 0.5rem;
    }

    footer .footer-menu {
        font-size: 0.27rem;
        line-height: 1.4;
    }

    footer .footer-menu > li {
        padding-left: 0.45rem;
    }

    footer .footer-menu > li.link:before {
        font-weight: bold;
    }

    footer .col01 {
        border-top: 1px solid #c6c6c6;
    }

    footer .col {
        background: #fff;
        overflow: hidden;
        border-bottom: 1px solid #c6c6c6;
    }

    footer .col .footer-menu {
        font-size: 0.27rem;
        background: #fff;
        margin-right: -1px;
    }

    footer .col .footer-menu > li {
        padding-left: 0.45rem;
        width: 50%;
        border-bottom: 1px solid #c6c6c6;
        border-right: 1px solid #c6c6c6;
        margin-bottom: -1px;
    }

    footer .col .footer-menu > li > a {
        height: 0.8rem;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-align-items: center;
        align-items: center;
    }

    footer .col .footer-menu > li:before {
        content: "";
        left: 0.16rem;
        top: 50%;
        margin-top: -0.12rem;
        width: 0.24rem;
        height: 0.24rem;
        background: url(../img/common/sm/icn_bullet02.png) no-repeat 0 0;
        background-size: 100% 100%;
    }

    footer .col .footer-menu > li.link:before {
        background-image: url(../img/common/sm/icn_bullet01.png);
    }

    footer .col .ttl {
        background: #b585be url(../img/common/sm/icn_expand_off.png) no-repeat 97.5% center;
        background-size: 0.24rem;
        padding: 0.22rem 0.5rem 0.22rem 0.16rem;
        position: relative;
        color: #fff;
        font-weight: bold;
        font-size: 0.27rem;
    }

    footer .col .ttl.is-active {
        background-image: url(../img/common/sm/icn_expand_on.png);
    }

    footer .col .js-accordion {
        display: none;
    }

    footer .col .js-accordion .footer-menu {
        border-top: 1px solid #c6c6c6;
    }

    footer .col .js-accordion .footer-menu > li.link {
        width: 100%;
    }

    footer .col .js-accordion .footer-menu a {
        height: 0.95rem;
    }

    footer .col05 {
        background: none;
        padding-top: 0.62rem;
    }

    footer .col05 .footer-menu {
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center;
        line-height: 1;
        font-weight: normal;
    }

    footer .col05 .footer-menu a {
        padding: 0 0.25rem;
    }

    footer .col05 .footer-menu > li {
        border-right: 1px solid #333;
        padding: 0;
        font-weight: normal;
        margin-bottom: 0.2rem;
    }

    footer .col05 .footer-menu > li:last-child, footer .col05 .footer-menu > li:nth-child(2) {
        /* border-right: none; */
    }

    footer .col05 .footer-menu > li:before {
        display: none;
    }

    footer .copyright {
        font-size: 0.18rem;
        line-height: 1.67;
    }
}

/* COMMON TITLES
 * ----------------------------------------------- */
.sec-title {
    letter-spacing: 0.05em;
    color: #000;
    text-align: center;
}
.sec-title > span {
    display: inline-block;
    background: url(../img/common/icn_icon01.png) no-repeat 0 center;
    text-align: left;
}
.sec-title.Ind_icn01 > span {
    background-image: url(../img/common/Ind_icn01.gif);
}

.sec-title.Ind_icn02 > span {
    background-image: url(../img/common/Ind_icn02.gif);
}

.sec-title.Ind_icn03 > span {
    background-image: url(../img/common/Ind_icn03.gif);
}

.sec-title.Ind_icn04 > span {
    background-image: url(../img/common/Ind_icn04.gif);
}

.sec-title.Ind_icn05 > span {
    background-image: url(../img/common/Ind_icn05.gif);
}

.sec-title.Ind_icn06 > span {
    background-image: url(../img/common/Ind_icn06.gif);
}

.sec-title.Ind_icn07 > span {
    background-image: url(../img/common/Ind_icn07.gif);
}

.sec-title.Ind_icn08 > span {
    background-image: url(../img/common/Ind_icn08.gif);
}

.sec-title.Ind_icn09 > span {
    background-image: url(../img/common/Ind_icn09.gif);
}

.sec-title.Ind_icn10 > span {
    background-image: url(../img/common/Ind_icn10.gif);
}

.sec-pttl {
    font-weight: bold;
}

.sec-pttl01 {
    overflow: hidden;
    color: #8e2b9f;
    font-weight: bold;
}

.sec-pttl01:after {
    content: "";
    background: #cdcdcd;
    display: inline-block;
    position: relative;
    vertical-align: super;
}

@media print, (min-width: 768px) {
    .sec-title {
        font-size: 26px;
        font-weight: bold;
    }

    .sec-title > span {
        background-size: 60px;
        padding: 1.5rem 0 1.5rem 4.5rem;
    }

    .ie .sec-title > span {
        padding-top: 5px;
    }

    .sec-title small {
        font-size: 30px;
    }

    .sec-pttl {
        font-size: 17px;
        border-left: 5px solid #b585be;
        padding: 1px 0 1px 10px;
    }

    .sec-pttl01 {
        font-size: 24px;
    }

    .sec-pttl01:after {
        height: 2px;
        width: 100%;
        left: 10px;
        margin-right: -100%;
    }
}
@media only screen and (max-width: 767px) {
    .sec-title {
        font-size: 0.324rem;
        font-weight: bold;
    }

    .sec-title > span {
        padding: 0.1rem 0 0.1rem 0.6rem;
        background-size: 0.42rem;
    }

    .sec-title small {
        font-size: 0.28rem;
    }

    .sec-title.lh {
        width: 100vw;
        line-height: 1;
        letter-spacing: -0.05em;
        margin: 0 auto;
        text-align: center;
    }

    .sec-title.lh > span {
        display: inline-block;
    }

    .sec-title.lh small {
        display: block;
        letter-spacing: 0;
        margin-top: 0.02rem;
        text-align: left;
    }

    .sec-pttl {
        font-size: 0.32rem;
        border-left: 0.09rem solid #b585be;
        padding-left: 0.22rem;
    }

    .sec-pttl01 {
        font-size: 0.32rem;
        /* text-align: center; */
    }

    .sec-pttl01:after {
        height: 1px;
        width: 50%;
        left: 0.1rem;
        margin-right: -50%;
    }

    .sec-pttl01:before {
/*        content: "";
        width: 50%;
        height: 1px;
        background: #cdcdcd;
        display: inline-block;
        position: relative;
        vertical-align: middle;
        right: 0.2rem;
        margin-left: -50%; */
    }
}
/* COMMON BUTTONS
 * ----------------------------------------------- */
.btn-login, .btn-register, .btn-primary, .btn-cmn, .btn-favorite, .btn-review, .btn-default {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -moz-appearance: none;
    -webkit-appearance: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    line-height: 1.5;
}

.btn-login, .btn-register, .btn-primary, .btn-cmn, .btn-default {
    cursor: pointer;
}

.btn-login, .btn-register, .btn-primary, .btn-cmn, .btn-favorite, .btn-review {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
}

.btn-primary {
    border: 1px solid #845492;
    position: relative;
    margin: 30px auto 0;
    text-align: center;
    color: #845492;
    background: #fff;
}

.btn-primary:after {
    content: "";
    position: absolute;
    top: 50%;
    background: url(../img/common/icn_arrow02.png) no-repeat center center;
    background-size: 100% auto;
}

.btn-default {
    color: #fff;
    /*line-height: 1.14;*/
    line-height: 2.54;
    background-repeat: no-repeat;
    font-weight: bold;
}

.btn-default.tel {
    background-image: url(../img/common/icn_tel02.png);
}
.btn-default.pinktel {
    background-color: #f17494;
    border-bottom-color: #e55175;
}

.btn-default.greentel {
    background-color: #52be84;
    border-bottom-color: #4a9d71;
}
.btn-cmn {
    height: 34px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    color: #fff;
    font-size: 12px;
    font-weight: bold;
    width: 100%;
    background: #b585be;
    text-align: center;
    padding: 6px;
    border-bottom: 3px solid #a96cb4;
}
.btn-login, .btn-register {
    color: #fff;
    position: relative;
    -moz-appearance: none;
    -webkit-appearance: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.btn-login:after, .btn-register:after {
    content: "";
    top: 50%;
    background: url(../img/common/icn_arrow01.png) no-repeat center center;
    background-size: 100% auto;
    position: absolute;
}

.btn-login > span, .btn-register > span {
    background-position: 0 center;
    background-repeat: no-repeat;
    text-align: left;
}

.btn-login {
    background: #7c8dc0;
    background: linear-gradient(4deg, #607ac6, #83a1fb);
    -moz-background: linear-gradient(4deg, #607ac6, #83a1fb);
    -webkit-background: linear-gradient(4deg, #607ac6, #83a1fb);
}

.btn-login > span {
    background-image: url(../img/common/icn_login.png);
}

.btn-register {
    /*  background: #59c198; */
    background: #79397f;
    background: linear-gradient(4deg, #581c5e , #79397f, #a467b7);
    -moz-background: linear-gradient(4deg, #581c5e , #79397f, #a467b7);
    -webkit-background: linear-gradient(4deg, #581c5e , #79397f, #a467b7);
}

.btn-register > span {
    background-image: url(../img/common/icn_registration.png);
}
.js-expand .close {
    display: none;
}
.js-expand.is-active .open {
  display: none;
}
.js-expand.is-active .close {
  display: block;
}

@media print, (min-width: 768px) {
    .btn-primary {
        -moz-border-radius: 30px;
        -webkit-border-radius: 30px;
        border-radius: 30px;
        font-size: 22px;
        width: 450px;
        padding: 9px 30px 10px;
        height: 60px;
    }

    .btn-primary:after {
        right: 17px;
        top: 50%;
        width: 14px;
        margin-top: -10px;
        height: 20px;
    }

    .ie .btn-primary {
        padding-top: 12px;
    }

    .btn-default {
        -moz-border-radius: 5px;
        -webkit-border-radius: 5px;
        border-radius: 5px;
        height: 44px;
        padding-left: 46px;
        font-size: 14px;
        line-height: 1.14;
        background-position: 11px center;
        background-size: 21px auto;
        border-bottom: 4px solid transparent;
    }

    .btn-login, .btn-register {
        -moz-border-radius: 5px;
        -webkit-border-radius: 5px;
        border-radius: 5px;
        width: 330px;
        font-size: 22px;
        height: 60px;
    }

    .btn-login:after, .btn-register:after {
        width: 14px;
        height: 20px;
        margin-top: -10px;
        right: 20px;
    }

    .btn-login > span, .btn-register > span {
        background-size: 34px;
        padding: 9px 27px 12px 52px;
    }

    .ie .btn-login > span, .ie .btn-register > span {
        padding-top: 14px;
    }

    .btn-register > span {
        background-size: 37px;
    }

    .btn-favorite, .btn-review {
        width: 180px;
        height: 36px;
        font-size: 16px;
        -moz-border-radius: 18px;
        -webkit-border-radius: 18px;
        border-radius: 18px;
    }

    .btn-favorite > span {
        background-size: auto 26px;
        background-position: 9px 55%;
        padding: 3px 0 3px 35px;
    }

    .ie .btn-favorite > span {
        padding-top: 7px;
    }

    .btn-review > span {
        background-size: auto 30px;
        padding: 3px 0 3px 30px;
    }

    .ie .btn-review > span {
        padding-top: 7px;
    }

    .btn-favorites-like {
        width: 38px;
        height: 38px;
    }
}
@media only screen and (max-width: 767px) {
    .btn-primary {
        -moz-border-radius: 0.4rem;
        -webkit-border-radius: 0.4rem;
        border-radius: 0.4rem;
        font-size: 0.3rem;
        width: 4.94rem;
        padding: 0.16rem 0.4rem 0.14rem 0.2rem;
        height: 0.8rem;
    }

    .btn-primary:after {
        right: 0.2rem;
        top: 50%;
        width: 0.18rem;
        margin-top: -0.15rem;
        height: 0.3rem;
    }

    .btn-primary.js-expand:after {
        -moz-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
    }

    .btn-primary.js-expand.is-active:after {
        -moz-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        -webkit-transform: rotate(-90deg);
        transform: rotate(-90deg);
    }

    .btn-default {
        -moz-border-radius: 0.05rem;
        -webkit-border-radius: 0.05rem;
        border-radius: 0.05rem;
        height: 0.7rem;
        padding: 0.04rem 0 0 0.65rem;
        /*font-size: 0.24rem;*/
        font-size: 3.6vw;
        background-position: 0.2rem center;
        background-size: 0.32rem auto;
        border-bottom: 0.04rem solid transparent;
    }

    .btn-default.big {
        height: 0.94rem;
        font-size: 0.28rem;
    }

    .btn-login, .btn-register {
        -moz-border-radius: 0.4rem;
        -webkit-border-radius: 0.4rem;
        border-radius: 0.4rem;
        width: 2.94rem;
        height: 0.8rem;
        font-size: 0.28rem;
    }

    .btn-login:after, .btn-register:after {
        width: 0.18rem;
        height: 0.28rem;
        margin-top: -0.14rem;
        right: 0.2rem;
    }

    .btn-login > span, .btn-register > span {
        background-size: 0.4rem;
        padding: 0.1rem 0.3rem 0.1rem 0.5rem;
    }

    .btn-register > span {
        background-size: 0.4rem;
    }

    .btn-cmn {
        height: 0.6rem;
        -moz-border-radius: 0.05rem;
        -webkit-border-radius: 0.05rem;
        border-radius: 0.05rem;
        font-size: 0.22rem;
        padding: 0.11rem 0.1rem;
        border-bottom-width: 0.04rem;
    }

    .btn-cmn.big {
        height: 0.7rem;
        font-size: 0.24rem;
        padding-top: 0.2rem;
    }

    .btn-favorite, .btn-review {
        width: 2.7rem;
        height: 0.86rem;
        font-size: 0.3rem;
        line-height: 1;
        -moz-border-radius: 0.43rem;
        -webkit-border-radius: 0.43rem;
        border-radius: 0.43rem;
    }

    .btn-favorite > span, .btn-review > span {
        background-size: auto 0.6rem;
        background-position: 0 center;
        text-align: left;
    }

    .btn-favorite > span .sm, .btn-review > span .sm {
        display: inline !important;
    }

    .btn-favorite > span > span.sm, .btn-review > span > span.sm {
        display: block !important;
    }

    .btn-favorite > span {
        padding: 0.1rem 0 0.1rem 0.7rem;
    }

    .btn-review > span {
        padding: 0.1rem 0 0.15rem 0.55rem;
    }

    .btn-favorites-like {
        width: 0.7rem;
        height: 0.7rem;
        background-image: url(../img/common/icn_heart_on.png);
        background-size: 0.52rem auto;
        background-position: 55% 55%;
    }
}
/* COMMON OTHER
 * ----------------------------------------------- */
.img {
    display: block;
}
.list-tab a {
    display: block;
    border: 1px solid #845492;
    color: #845492;
    position: relative;
    text-align: center;
}

.list-tab .is-active {
   /* background: #a269ac; */
    background: #35ba73;
    border: none;
    color: #fff;
}

.list-tab .is-active:before {
    content: "";
    position: absolute;
    left: 50%;
    top: 100%;
}

@media print, (min-width: 768px) {
    .img {
        /* max-width: 100%; */
        height: auto;
    }

    a.link-cmn:hover, a.link-clr:hover, a.link-un:hover, a.link-bullet:hover {
        text-decoration: none;
    }

    .link-bullet:before {
        top: 5px;
    }

    .desc-cmn {
        text-align: center;
    }

    .list-tab > li {
        width: 150px;
        margin: 0 5px;
    }

    .list-tab a {
        font-size: 18px;
        height: 44px;
        -moz-border-radius: 10px;
        -webkit-border-radius: 10px;
        border-radius: 10px;
        padding-top: 4px;
    }

    .ie .list-tab a {
        padding-top: 8px;
    }

    .list-tab .is-active {
        padding-top: 5px;
    }

    .ie .list-tab .is-active {
        padding-top: 9px;
    }

    .list-tab .is-active:before {
        margin: -1px 0 0 -8px;
        border-left: 8px solid transparent;
        border-right: 8px solid transparent;
    /*border-top: 12px solid #a269ac;*/
        border-top: 12px solid #35ba73;
    }

    .desktop .list-tab a:hover {
       /* background: #a269ac; */
        background: #35ba73;
        color: #fff;
        border: none;
        padding-top: 5px;
    }

    .desktop .list-tab a:hover:before {
        content: "";
        position: absolute;
        left: 50%;
        top: 100%;
        margin: -1px 0 0 -8px;
        border-left: 8px solid transparent;
        border-right: 8px solid transparent;
        /*border-top: 12px solid #a269ac; */
        border-top: 12px solid #35ba73;
    }
}
@media only screen and (max-width: 767px) {
    .img {
        width: 100%;
        height: auto;
    }

    .link-bullet {
        padding-left: 0.25rem;
    }

    .link-bullet:before {
        border-left-width: 0.15rem;
        border-top-width: 0.12rem;
        border-bottom-width: 0.12rem;
        top: 0.06rem;
    }

    .list-tab {
        margin: 0 -0.1rem;
    }

    .list-tab > li {
        width: 33.33333%;
        padding: 0 0.1rem;
        margin-bottom: 0.28rem;
    }

    .list-tab a {
        font-size: 0.3rem;
        height: 0.8rem;
        -moz-border-radius: 0.1rem;
        -webkit-border-radius: 0.1rem;
        border-radius: 0.1rem;
        padding-top: 0.15rem;
    }

    .list-tab a:after {
        content: "";
        position: absolute;
        width: 0.22rem;
        height: 0.12rem;
        background: url(../img/common/icn_arrow03.png) no-repeat 0 0;
        background-size: 100% 100%;
        left: 50%;
        margin-left: -0.11rem;
        bottom: 0.12rem;
    }

    .list-tab .is-active {
        padding-top: 0.16rem;
    }

    .list-tab .is-active:before {
        margin: -1px 0 0 -0.1rem;
        border-left: 0.1rem solid transparent;
        border-right: 0.1rem solid transparent;
        /*border-top: 0.14rem solid #8c5196; */
        border-top: 0.14rem solid #35ba73;
    }

    .list-tab .is-active:after {
        display: none;
    }
}
.tab-content-cmn {
    background: #fff;
    border: 2px solid #e4d8e7;
}
@media print, (min-width: 768px) {
    .tab-cmn a {
        height: 50px;
        -moz-border-radius: 10px 10px 0 0;
        -webkit-border-radius: 10px;
        border-radius: 10px 10px 0 0;
        font-size: 16px;
    }

    .tab-cmn a > span {
        padding-top: 5px;
    }

    .tab-cmn .is-active {
        height: 62px;
        margin: -10px 0 -2px;
        position: relative;
        z-index: 5;
    }

    .ie .tab-cmn .is-active {
        margin-bottom: -3px;
    }

    .tab-cmn a:hover {
        height: 62px;
        margin: -10px 0 -2px;
        background: #fff;
        font-weight: bold;
        border-color: #e4d8e7;
        text-decoration: none;
        color: #ad53be;
        position: relative;
        z-index: 5;
    }

    .ie .tab-cmn a:hover {
        margin-bottom: -3px;
    }

    .tab-content-cmn {
        -moz-border-radius: 0 0 10px 10px;
        -webkit-border-radius: 0;
        border-radius: 0 0 10px 10px;
        padding: 40px 20px 40px;
    }
}
@media only screen and (max-width: 767px) {
    .tab-cmn a {
        height: 1.25rem;
        -moz-border-radius: 0.05rem 0.05rem 0 0;
        -webkit-border-radius: 0.05rem;
        border-radius: 0.05rem 0.05rem 0 0;
        font-size: 0.28rem;
        line-height: 1.1;
        border-width: 1px;
    }

    .tab-cmn a > span > span {
        display: block;
        width: 100%;
    }

    .tab-cmn a .small {
        text-decoration: none;
        font-size: 0.15rem;
        margin-top: 0.1rem;
    }

    .tab-cmn .is-active {
        text-decoration: none;
        position: relative;
    }

    .tab-cmn .is-active:after {
        content: "";
        position: absolute;
        background: #fff;
        left: 0;
        height: 0.1rem;
        margin-bottom: -0.05rem;
        width: 100%;
        bottom: 0;
    }

    .tab-content-cmn {
        -moz-border-radius: 0 0 0.1rem 0.1rem;
        -webkit-border-radius: 0;
        border-radius: 0 0 0.1rem 0.1rem;
        padding: 0.37rem 0.2rem 0.25rem;
        border-width: 1px;
    }

    .tab-content-cmn .free-text {
        text-align: left;
        font-size: 4.21875vw;
        line-height: 5.46875vw;
        padding: 5.9375vw 2.03125vw 6.25vw 3.125vw;
        letter-spacing: 0.125vw;
    }

    .tab-content-cmn .free-text .title {
        font-size: 4.21875vw;
        letter-spacing: 0.28125vw;
        line-height: 5.46875vw;
    }

    .tab-content-cmn .free-text p + p {
        margin-top: 5.46875vw;
    }
}

.item-cmn {
    position: relative;
}
.item-cmn .ul-txt-mypg > li {
    margin-bottom: 0;
    width: 100%;
}
/*.item-cmn*/ strong {
    font-weight: bold;
}

.item-cmn .head {
    display: table;
    width: 100%;
}

.item-cmn .head .th, .item-cmn .head .td {
    display: table-cell;
    vertical-align: top;
}
.item-cmn .head .th a {
    display: block;
}

.item-cmn .head .th img {
    width: 100%;
    height: auto;
}

.item-cmn .sec-pttl a {
    text-decoration: underline;
}

.item-cmn .txt-sns {
    background-repeat: no-repeat;
    background-position: 0 center;
    display: inline-block;
}

.item-cmn .txt-tel {
    background-image: url(../img/common/icn_tel03.png);
}

.item-cmn .txt-email {
    background-image: url(../img/common/icn_email03.png);
}

.item-cmn .box-txt {
    line-height: 1.53846;
    background: #f3f3f3;
    *zoom: 1; }

.item-cmn .box-txt:after {
    content: "";
    display: table;
    clear: both;
}
@media print, (min-width: 768px) {
    .item-cmn {
        -moz-box-shadow: 0 0 6px #e9e9e9, 0 0 6px #e9e9e9, 0 0 6px #e9e9e9;
        -webkit-box-shadow: 0 0 6px #e9e9e9, 0 0 6px #e9e9e9, 0 0 6px #e9e9e9;
        box-shadow: 0 0 6px #e9e9e9, 0 0 6px #e9e9e9, 0 0 6px #e9e9e9;
        -moz-border-radius: 10px;
        -webkit-border-radius: 10px;
        border-radius: 10px;
        padding: 22px 20px 22px;
    }

    .item-cmn .btn-favorites-like {
        right: 18px;
        top: 20px;
    }

    .item-cmn .head {
        margin: 10px 0;
    }

    .item-cmn .head .th {
        width: 115px;
        padding-right: 15px;
    }

    .item-cmn .head .td ol {
        line-height: 1.33;
        padding-top: 6px;
        margin-bottom: 10px;
    }

    .item-cmn .sec-pttl a:hover {
        text-decoration: none;
    }

    .item-cmn .btn-default.tel {
        margin-bottom: 7px;
    }

    .item-cmn .txt-sns {
        padding-left: 30px;
    }

    .item-cmn .ul-txt {
        margin-bottom: 13px;
    }

    .item-cmn .ul-txt > li {
        margin-left: 15px;
    }

    .item-cmn .ul-txt > li:first-child {
        margin-left: 0;
    }

    .item-cmn .box-txt {
        font-size: 13px;
        padding: 10px;
        -moz-border-radius: 5px;
        -webkit-border-radius: 5px;
        border-radius: 5px;
/*        min-height: 78px; */
        margin-bottom: 16px;
    }

    .item-cmn .ul-btn > li {
        width: 133px;
        margin-left: 10px;
    }

    .item-cmn .ul-btn > li:nth-child(2n+1) {
        margin-left: 0;
    }

    .item-tellers {
        padding: 20px 9px 22px 17px;
        -moz-border-radius: 5px;
        -webkit-border-radius: 5px;
        border-radius: 5px;
        background: #f3f3f3;
        -moz-box-shadow: none;
        -webkit-box-shadow: none;
        box-shadow: none;
    }

    .item-tellers .head {
        margin-top: 7px;
    }

    .item-tellers .head .th {
        width: 110px;
        padding-right: 10px;
    }

    .item-tellers .box-txt {
        background: #fff;
        margin-bottom: 0;
    }

    .item-tellers .ul-btn {
        margin-bottom: 13px;
    }

    .status {
        padding: 2px 5px 0;
        margin-bottom: 10px;
        font-size: 14px;
        -moz-border-radius: 14px;
        -webkit-border-radius: 14px;
        border-radius: 14px;
    }

    .edge .status {
        padding-top: 1px;
    }
}
@media only screen and (max-width: 767px) {
    .item-cmn {
        -moz-box-shadow: 0 0 0.06rem #e9e9e9, 0 0 0.06rem #e9e9e9, 0 0 0.06rem #e9e9e9;
        -webkit-box-shadow: 0 0 0.06rem #e9e9e9, 0 0 0.06rem #e9e9e9, 0 0 0.06rem #e9e9e9;
        box-shadow: 0 0 0.06rem #e9e9e9, 0 0 0.06rem #e9e9e9, 0 0 0.06rem #e9e9e9;
        -moz-border-radius: 0.1rem;
        -webkit-border-radius: 0.1rem;
        border-radius: 0.1rem;
        padding: 0.3rem 0.2rem 0.35rem;
    }

    .item-cmn .btn-favorites-like {
        right: 0.25rem;
        top: 0.25rem;
    }

    .item-cmn .sec-pttl {
        margin: 0 0 0.2rem 0.1rem;
    }

    .item-cmn .head {
        margin: 0 0 0.2rem;
        padding-left: 0.1rem;
    }

    .item-cmn .head .th {
        width: 1.25rem;
        padding-right: 0.25rem;
    }

    .item-cmn .head .td ol {
        margin: 0.07rem 0 0.1rem -0.3rem;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .item-cmn .head .td ol > li {
        margin-left: 0.3rem;
    }

    .item-cmn .btn-default.tel {
        margin-bottom: 0.07rem;
    }

    .item-cmn .txt-sns {
        padding-left: 0.45rem;
        padding-top: 0.03rem;
        font-size: 0.27rem;
        background-size: 0.31rem auto;
        margin-top: 0.04rem;
        line-height: 1.2;
        min-height: 0.32rem;
        display: block;
    }

    .item-cmn .txt-sns.txt-tel {
        background-image: url(../img/common/sm/icn_tel03.png);
    }

    .item-cmn .box-txt {
        padding: 0.1rem;
        -moz-border-radius: 0.1rem;
        -webkit-border-radius: 0.1rem;
        border-radius: 0.1rem;
        /*    min-height: 1.08rem; /// 伊坂20191007 */
        margin-bottom: 0.2rem;
        line-height: 1.33333;
    }

    .item-cmn .box-txt .new {
        font-size: 0.27rem;
        padding: 0.1rem 0.09rem 0.07rem;
        margin: 0 0.2rem 0 0;
    }

    .details01text {
        padding: 2vw ;
        margin: auto;
        min-height: auto !important;
    }

    .details01text > p {
        font-size: 2.5vw;
        width: 38vw;
        line-height: 1.6;
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
    }

    .item-cmn .ul-btn {
        padding: 0 0.05rem;
    }

    .item-cmn .ul-btn > li {
        width: 50%;
        padding: 0 0.1rem;
    }

    .item-tellers {
        padding: 0;
    }

    .item-tellers .head {
        padding-left: 0;
    }

    .item-tellers .head .th {
        width: 1.2rem;
        padding-right: 0.2rem;
        vertical-align: top;
    }

    .item-tellers .head .ttl {
        font-weight: bold;
        font-size: 0.26rem;
        line-height: 1.4;
        margin-bottom: 0.16rem;
    }

    .item-tellers .head .td {
        vertical-align: top;
    }

    .item-tellers .head .txt-sns {
        padding-left: 0.26rem;
        font-size: 0.16rem;
        background-size: 0.19rem auto;
        margin-top: 0.04rem;
        min-height: 0.2rem;
    }

    .status {
        padding: 0.08rem 0.1rem 0.04rem;
        font-size: 0.24rem;
        line-height: 1.2;
        -moz-border-radius: 0.2rem;
        -webkit-border-radius: 0.2rem;
        border-radius: 0.2rem;
        margin-bottom: 0.15rem;
    }
}

/* PAGES
 * ----------------------------------------------- */
/* SECTION KEYVISUAL
 * ----------------------------------------------- */
.section-top-keyvisual {
    background: #eee;
    position: relative;
}

.section-top-keyvisual .item-slide {
    /* 20230124 visibility: hidden; */
}

.section-top-keyvisual img {
    display: block;
    width: 100%;
    height: auto;
}

.section-top-keyvisual .slick-arrow {
    position: absolute;
    z-index: 1250;
}

.section-top-keyvisual .slick-initialized .item-slide {
    border-radius: 5px;
    overflow: hidden;
}

.slick-dots {
    position: absolute;
    left: 0;
    width: 100%;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.slick-dots button {
    -moz-border-radius: 100%;
    -webkit-border-radius: 100%;
    border-radius: 100%;
    background: #d2d2d2;
}

.slick-dots .slick-active button {
    background: #a269ac;
}

.slick-next {
    z-index: auto;
}

@media print, (min-width: 768px) {
    .slick-arrow {
        width: 46px;
        height: 46px;
        top: 50%;
    }

    .slick-prev {
        background-image: url(../img/common/btn_prev.png);
    }

    .slick-next {
        background-image: url(../img/common/btn_next.png);
    }

    .section-top-keyvisual {
        padding: 22px 0 54px;
    }

    .section-top-keyvisual .item-slide {
        width: 600px;
        margin: 0 10px;
    }

    .section-top-keyvisual .slick-arrow {
        margin-top: -23px;
        left: 50%;
    }

    .section-top-keyvisual .slick-prev {
        margin-left: -425px;
    }

    .section-top-keyvisual .slick-next {
        margin-left: 379px;
    }

    .section-top-keyvisual .slick-dots {
        bottom: -36px;
    }

    .slick-dots li {
        margin: 0 5px;
    }

    .slick-dots button {
        width: 10px;
        height: 10px;
    }
}
@media only screen and (max-width: 767px) {
    .section-top-keyvisual {
        overflow: hidden;
    }

    .section-top-keyvisual .keyvisual-slide {
        padding: 0 0.35rem 0.1rem;
    }

    .section-top-keyvisual .slick-list {
        overflow: visible;
    }

    .section-top-keyvisual .item-slide {
        margin: 0px 4px;
    }

    .section-top-keyvisual .slick-arrow {
        width: 0.7rem;
        height: 0.7rem;
        top: 50%;
        left: 50%;
        transform: translate(0, -40%);
        -moz-border-radius: 0.05rem;
        -webkit-border-radius: 0.05rem;
        border-radius: 30px;
        background-size: 0.3rem auto;
        background-color: #b6a5bb;
        opacity: 0.9;
        box-shadow: 0 2px 2px rgb(85 85 85 / 45%);
    }

    .section-top-keyvisual .slick-prev {
        margin-left: -3.15rem;
        background-image: url(../img/common/sm/btn_prev.png);
        background-position: 45% center;
    }

    .section-top-keyvisual .slick-next {
        background-image: url(../img/common/sm/btn_next.png);
        margin-left: 2.45rem;
        background-position: 55% center;
    }

    .section-top-keyvisual .slick-dots {
        display: none !important;
        width: 2rem;
        left: 50%;
        margin-left: -1rem;
        bottom: 0.36rem;
    }

    .section-top-keyvisual .slick-dots li {
        margin: 0 0.06rem;
    }

    .section-top-keyvisual .slick-dots button {
        width: 0.14rem;
        height: 0.14rem;
    }
}

/* ---------------------------- 
 recom_para_primero
 * ---------------------------- */
.recom_para_primero {
    margin-bottom: 60px;
}
 .recom_para_primero .sec_intro {
     font-size: 14px;
    margin: 0 auto 20px;
    max-width: 700px;
    text-align: center;
 }
 .recom_para_primero ul.teller_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 980px;
    margin: 0 auto;
    padding: 60px 40px;
    border-radius: 15px;

/* 背景    background-color: #f3f3f3; */
    background-image: repeating-linear-gradient( 60deg, rgb(247 229 255 / 30%) 0px 1px, rgba(250, 250, 250, .1) 1px 21px, rgb(241 227 247 / 10%) 21px 61px, rgba(250, 250, 250, .1) 61px 81px ), repeating-linear-gradient( -60deg, rgb(247 229 255 / 30%) 0px 1px, rgba(250, 250, 250, .1) 1px 21px, rgb(241 227 247 / 10%) 21px 61px, rgba(250, 250, 250, .1) 61px 81px );
    border: 1px solid #f4ebf8;
}
.recom_para_primero ul.teller_list li.item-slide-cut3 { 
    width: calc(90% / 3);
    text-align: center;
    display: flex;
    flex-direction: column;
    margin-bottom: 60px;
}
.recom_para_primero .teller_list .item-slide a {  
    width: fit-content;
    margin: 0 auto;
    position:relative;
  }

.recom_para_primero .teller_list  .item-slide .teller_img3 {
    width: 135px;
    height: 135px;
    overflow: hidden;
    border-radius: 200px;
    margin: 0 auto 10px;
    box-shadow: 0px 1px 5px #727272;
    border: 3px solid #fff;
}
.recom_para_primero .teller_list .item-slide .teller_img3 img {
    width: 100%;
    height: auto;
}
.recom_para_primero .teller_list .item-slide .t_name_slide {    font-weight: bold;}
.recom_para_primero .teller_list .item-slide .t_name_slide .namee {
    text-decoration: underline;
    display: block;
    line-height: 18px;
    margin: 0px auto 0;
}
.recom_para_primero .teller_list .item-slide .status_y_price {
    width:  95%;
    margin: auto auto 0;
}
.recom_para_primero .teller_list .item-slide .status_y_price .status {
    color: #ffffff;
    border: 3px double #fff;
    display: block;
    border-radius: 50px;
    font-family: "Hiragino Maru Gothic ProN", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
    font-size: 13px;
    line-height: 14px;
    height: 43px;
    position: relative;
    width: 70%;
    margin: 0 auto;
}
.recom_para_primero .teller_list .item-slide .status_y_price .status::after {
    content: '';
    display: block;
    width: 8px;
    height: 8px;
    border-top: 1.5px solid #ffffff;
    border-right: 1.5px solid #ffffff;
    transform: translateY(-50%) rotate(45deg) skew(0deg, 0deg);
    position: absolute;
    right: 13px;
    top: 50%;
}
.recom_para_primero .teller_list .item-slide .status_y_price .status span {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
}

.recom_para_primero .teller_list .item-slide .t_name_slide .ruby {
    text-decoration: none;
    font-size: 13px;
    display: block;
    line-height: 100%;
    margin: 0px auto;
    height: 13px;
}
.recom_para_primero .teller_list .item-slide .recom_price {
    font-size: 15px;
    margin: 5px auto 0px;
}
.recom_para_primero .teller_list .item-slide .recom_price:before {
    display: inline-block;
    content: '';
    background-image: url(https://feel-i.jp/tmpl_smart_phone/assets/img/common/price_icn.gif);
    background-size: contain;
    background-repeat: no-repeat;
    width: 15px;
    height: 15px;
    position: relative;
    top: 3px;
    right: 3px;
}
.recom_para_primero .teller_list .item-slide .status_y_price a.ocupado {            background: linear-gradient(164deg, #fb94ae 3%, #ee6085 36%, #de466e 100%);}
.recom_para_primero .teller_list .item-slide .status_y_price a.proxima_vez {        background: linear-gradient(164deg, #9bcfe7 3%, #79b1cb 36%, #6fa2ba 100%)}
.recom_para_primero .teller_list .item-slide .status_y_price a.ahora_abierto {                   background: linear-gradient(164deg, #4bdf7e 3%, #1eb271 36%, #1ba166 100%);}

.recom_para_primero .teller_list .allkantei_top {
position: absolute;
background-color: #4bb2e2;
color: #fff;
line-height: 14px;
padding: 3px;
text-align: center;
border-radius: 3px;
font-size: 14px;
left: -10px;
top: 100px;
font-weight: bold;
}

.recom_para_primero .teller_list .allkantei_top_list {
position: absolute;
background-color: #4bb2e2;
color: #fff;
line-height: 14px;
padding: 3px;
text-align: center;
border-radius: 3px;
font-size: 14px;
left: 50px;
top: 100px;
font-weight: bold;
}


@media only screen and (max-width: 767px) {
.recom_para_primero {
    margin-bottom: 0px;
}
.recom_para_primero .sec-title {
    margin-bottom: 0.27rem;
}
.recom_para_primero .sec_intro {
    padding: 0 0.2rem;
    text-align: left;
}
.recom_para_primero ul.teller_list {
    width: 100%;
    padding: 0px 10px;
    background: none;
    border: none;
}
.recom_para_primero ul.teller_list li.item-slide-cut3 {
    width: calc(95% / 3);    margin-bottom: 30px;
}
.recom_para_primero .teller_list .item-slide .teller_img3 {
    width: 85px;
    height: 85px;
    margin: 0 auto 6px;
    border: 2px solid #fff;
    }
.recom_para_primero .teller_list .item-slide .t_name_slide .namee {
    font-size: 15.5px; 
}
.recom_para_primero .teller_list .item-slide .status_y_price { width: 95%;}
.recom_para_primero .teller_list .item-slide .status_y_price .status { width:100%;}
.recom_para_primero .teller_list .item-slide .status_y_price .status::after {    right: 8px;}

.recom_para_primero .teller_list .allkantei_top {
line-height: 12px;
padding: 2px;
text-align: center;
border-radius: 3px;
font-size: 11px;
top:60px;
left: -5px;
}
.recom_para_primero .teller_list .allkantei_top_list {
    position: absolute;
    background-color: #4bb2e2;
    color: #fff;
    line-height: 14px;
    font-size: 13px;
    top: 89px;
    font-weight: bold;
    padding: 2px;
    text-align: center;
    border-radius: 3px;
    left: 9px;
}
}

/* 占い師一覧表示
 * ----------------------------------------------- */
.recom_para_primero .teller_list  .item-slide .teller_img4 {
    width: 135px;
    height: 135px;
    overflow: hidden;
    border-radius: 200px;
    margin: 0 auto 10px;
    box-shadow: 0px 1px 5px #727272;
    border: 3px solid #fff;
}
.recom_para_primero .teller_list .item-slide .teller_img4 img {
    width: 100%;
    height: auto;
}
.recom_para_primero .teller_list .item-slide .t_name_slide .namee2 {
    text-decoration: underline;
    display: block;
    line-height: 18px;
    margin: 0px auto 0;
}
.recom_para_primero ul.teller_list li.item-slide-cut4 { 
    width: calc(90% / 3);
    margin-bottom: 60px;
    text-align: center;
    display: flex;
    flex-direction: column;
    position:relative;
}
.recom_para_primero .teller_list .item-slide .voice_count {
    font-size: 15px;
}
.recom_para_primero .teller_list .item-slide .voice_count::before {
    display: inline-block;
    content: '';
    background-image: url(https://feel-i.jp/tmpl_smart_phone/assets/img/common/voice_cnt_icn.gif);
    background-size: contain;
    background-repeat: no-repeat;
    width: 15px;
    height: 15px;
    position: relative;
    top: 3px;
    right: 3px;
}
.recom_para_primero .teller_list .item-slide .voice_count a {
    text-decoration: underline;
}
.recom_para_primero .teller_list .item-slide .techs {
    font-size: 13px;
    text-align: left;
    margin: 0 auto 5px;
    width: 80%;
    line-height: 19px;
}
.recom_para_primero .teller_list .item-slide .techs p {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    overflow: hidden;
}
.recom_para_primero .teller_list .item-slide .techs p span {
    font-weight: bold;
}

@media only screen and (max-width: 767px) {
.recom_para_primero ul.teller_list li.item-slide-cut4 {
    width: calc(90% / 2);
    padding-bottom: 15px;
    margin-bottom: 15px;
    border-bottom: 1px solid #efefef;
}
.recom_para_primero .teller_list  .item-slide .teller_img4 {
    width: 120px;
    height: 120px;
}
.recom_para_primero .teller_list .item-slide .techs {
    font-size: 11.5px;
    letter-spacing: 0;
    margin: 5px auto;
    line-height: 15px;
    width: 100%;
}
.recom_para_primero .teller_list .item-slide .t_name_slide .namee2 {
    font-size: 17px; 
}
}


/* SECTION TOP RECOMMENDATION
 * ----------------------------------------------- */
.section-top-recommendation .recommendation-slide {
    background: #f3f3f3;
}

.section-top-recommendation .recommendation-slide .item-slide {
    font-weight: bold;
    text-align: center;
    visibility: hidden;
}

.section-top-recommendation .recommendation-slide .item-slide img {
    display: block;
}

.section-top-recommendation .slick-initialized .item-slide {
    visibility: visible;
}

.section-top-recommendation .wrap-tab {
/*    position: relative;
    overflow: hidden; */
    background-color: #f3f3f3;
    border-radius: 10px;
    padding: 50px 45px;
}

.section-top-recommendation .wrap-tab .js-tab-contents.is-active {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
 }
.section-top-recommendation .wrap-tab .js-tab-contents {
    display: none;
}
.section-top-recommendation .wrap-tab .js-tab-contents .item-slide {
    width: calc(95% / 6);
    text-align: center;
}
.section-top-recommendation .wrap-tab .js-tab-contents .item-slide .teller_img {
    width: 105px;
    height: 105px;
    overflow: hidden;
    border-radius: 50px;
    margin: 0 auto 10px;
    box-shadow: 0px 1px 5px #989898;
    border: 3px solid #fff;
}
.section-top-recommendation .wrap-tab .js-tab-contents .item-slide .teller_img img {
    width: 100%;
    height: auto;
}
.section-top-recommendation .wrap-tab .js-tab-contents .item-slide .t_name_slide {

}
.section-top-recommendation .wrap-tab .js-tab-contents .item-slide .t_name_slide .namee {
    font-weight: bold;
    text-decoration: underline;
    display: block;
    line-height: 22px;
    margin: 0px auto 0;
}
.section-top-recommendation .wrap-tab .js-tab-contents .item-slide .t_name_slide .ruby {
    text-decoration: none;
    font-size: 13px;
    display: block;
    line-height: 100%;
    margin: 0px auto 2px;
    height: 13px;
}
@media only screen and (max-width: 767px) {
.section-top-recommendation .wrap-tab { padding: 25px 5px}
.section-top-recommendation .wrap-tab .js-tab-contents.is-active { justify-content: space-between;}
.section-top-recommendation .wrap-tab .js-tab-contents .item-slide { width: calc(95% / 3); margin-bottom: 10px;}
.section-top-recommendation .wrap-tab .js-tab-contents .item-slide .teller_img {
    width: 85px;
    height: 85px;
    margin: 0 auto 6px;
    border: 2px solid #fff;
}
.section-top-recommendation .wrap-tab .js-tab-contents .item-slide .t_name_slide .namee { font-size: 15px;}
}

@media print, (min-width: 768px) {
    .section-top-recommendation {
        padding-bottom: 70px;
    }

    .section-top-recommendation .sec-title {
    }

    .section-top-recommendation .list-tab {
        margin-bottom: 36px;
    }

    .section-top-recommendation .recommendation-slide {
        -moz-border-radius: 10px;
        -webkit-border-radius: 10px;
        border-radius: 10px;
        padding: 38px 70px 60px;
    }

    .section-top-recommendation .recommendation-slide .item-slide {
        width: 140px;
        padding: 0 10px;
        font-size: 17px;
    }

    .section-top-recommendation .recommendation-slide .item-slide img {
        width: 100px;
        margin: 0 auto 12px;
        height: auto;
    }

    .section-top-recommendation .slick-arrow {
        margin-top: -43px;
    }

    .section-top-recommendation .slick-prev {
        left: 20px;
    }

    .section-top-recommendation .slick-next {
        right: 20px;
    }

    .section-top-recommendation .slick-dots {
        bottom: 26px;
    }
}

@media only screen and (max-width: 767px) {
    .section-top-recommendation {
        padding-bottom: 0.7rem;
    }

    .section-top-recommendation .sec-title {
        margin-bottom: 0.22rem;
    }

    .section-top-recommendation .list-tab {
        margin-bottom: 0;
    }

    .section-top-recommendation .recommendation-slide {
        -moz-border-radius: 0.1rem;
        -webkit-border-radius: 0.1rem;
        border-radius: 0.1rem;
        padding: 0.4rem 0.15rem 0.34rem;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -ms-flex-wrap: wrap;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .section-top-recommendation .recommendation-slide .item-slide {
        width: 33.33333%;
        padding: 0 0.1rem;
        font-size: 0.26rem;
    }

    .section-top-recommendation .recommendation-slide .item-slide img {
        width: 1.4rem;
        margin: 0 auto 0.16rem;
        height: auto;
    }
}

/* SECTION TOP TELLERS
 * ----------------------------------------------- */
.section-top-tellers {
    /* ブロック入れ替えに当たって消し20191009
  background: #f3f3f3; */
}

@media print, (min-width: 768px) {
    .section-top-tellers {
        padding: 50px 0 38px;
    }

    .section-top-tellers .sec-title {
    }

    .section-top-tellers .list-tellers {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    }

    .section-top-tellers .item-tellers {
/*        width: 303px;
        margin: 0 0 13px 13px; */

    width: 32.4%;
    margin: 0 0 13px 0;
    }

    .section-top-tellers .item-tellers:nth-child(3n+1) {
        margin-left: 0;
    }
}

@media only screen and (max-width: 767px) {
    .section-top-tellers {
        padding: 0.42rem 0 0.4rem;
    }

    .section-top-tellers .sec-title {
        margin-bottom: 0.3rem;
    }

    .section-top-tellers .list-tellers {
        margin: 0 -0.12rem 0.07rem;
    }

    .section-top-tellers .item-tellers {
        width: 50%;
        padding: 0 0.12rem;
        margin-bottom: 0.3rem;
        -moz-box-shadow: none;
        -webkit-box-shadow: none;
        box-shadow: none;
        -moz-border-radius: 0;
        -webkit-border-radius: 0;
        border-radius: 0;
    }
}

/* SECTION TOP FEATURE
 * ----------------------------------------------- */
.section-top-feature .list-feature .ttl {
    font-weight: bold;
    letter-spacing: 0.02em;
}

.section-top-feature .list-feature a {
    display: block;
}

@media print, (min-width: 768px) {
    .section-top-feature {
        padding: 60px 0 85px;
    }

    .section-top-feature .sec-title {
    }

    .section-top-feature .list-feature {
        margin-bottom: 33px;
    }

    .section-top-feature .list-feature > li {
        width: 470px;
        margin: 0 0 35px 40px;
    }

    .section-top-feature .list-feature > li:nth-child(2n+1) {
        margin-left: 0;
    }

    .section-top-feature .list-feature .ttl {
        padding: 0 10px;
        line-height: 1.5;
        font-size: 16px;
        margin-top: 15px;
    }
}

@media only screen and (max-width: 767px) {
    .section-top-feature {
        padding: 0.45rem 0 0.7rem;
    }

    .section-top-feature .sec-title {
        margin-bottom: 0.27rem;
    }

    .section-top-feature .list-feature {
        margin: 0 -0.15rem 0.18rem;
    }

    .section-top-feature .list-feature > li {
        width: 50%;
        padding: 0 0.15rem;
        margin-bottom: 0.3rem;
    }

    .section-top-feature .list-feature .ttl {
        margin-top: 5px;
        overflow: hidden;
        display: -webkit-box;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical;
        font-size: 14px;
    }

    h2.Ind_sec_t {
        background-color: #986ca7;
        background: linear-gradient(135deg, #8a6098 60%, #a97cb8);
        padding: 4px 0;
        color: #fff;
    }
}

/* SECTION TOP ABOUT
 * ----------------------------------------------- */
@media print, (min-width: 768px) {
    .section-top-about {
        padding-bottom: 150px;
    }

    .section-top-about .sec-title {
        margin-bottom: 25px;
    }

    .section-top-about .thumb {
        margin-bottom: 20px;
    }

    .section-top-about .sec-pttl01 {
        margin-bottom: 10px;
    }

    .section-top-about .list-about {
        padding: 0 20px;
    }

    .section-top-about .list-about > li {
        margin-top: 48px;
    }

    .section-top-about .list-about > li:first-child {
        margin-top: 0;
    }

    .section-top-about .list-about .desc {
        padding: 0 20px;
        line-height: 1.73;
    }
}
@media only screen and (max-width: 767px) {
    .section-top-about {
        padding-bottom: 1.28rem;
    }

    .section-top-about .sec-title {
        margin-bottom: 0.2rem;
    }

    .section-top-about .thumb {
        margin: 0 -0.2rem 0.27rem;
    }

    .section-top-about .sec-pttl01 {
        margin-bottom: 0.2rem;
    background-image: url(../img/common/Ind_icn09.gif);
    background-size: 25px;
    background-repeat: no-repeat;
    background-position: left top;
    padding-left: 28px;
    letter-spacing: 0;
    }

    .section-top-about .list-about {
        padding: 0 10px;
    }

    .section-top-about .list-about > li {
        margin-bottom: 0.6rem;
    }

    .section-top-about .list-about > li:last-child {
        margin-bottom: 0;
    }

    .section-top-about .list-about .desc {
        height: 3.9rem;
        overflow: hidden;
        position: relative;
        margin-bottom: 0.15rem;
    }

    .section-top-about .list-about .desc:after {
        content: "";
        position: absolute;
        left: 0;
        width: 100%;
        bottom: -0.02rem;
        height: 1.35rem;
        background: url(../img/001/sm/bg_bg01.png) repeat-x 0 0;
        background-size: auto 100%;
    }

    .section-top-about .list-about .desc.is-auto {
        height: auto;
    }

    .section-top-about .list-about .desc.is-auto:after {
        display: none;
    }

    .section-top-about .list-about .btn-primary.is-active {
        margin-top: 0.3rem;
    }
}

#mokuji {
    font-size: 15px;
    border: 1px solid #955c9f;
    padding: 2px;
    border-radius: 3px;
    margin-bottom: 30px;
}
#mokuji .mokuji-title {
    color: #3f0849;
    background-color: #ecd6ef;
    text-align: center;
    padding: 5px 0;
    border-radius: 3px;
    font-weight: bold;
}
#mokuji .mokuji-title:after {content: '[目次を開く▼]'; margin-left: 10px;}
#mokuji[open] .mokuji-title:after {content: '[目次を閉じる▲]';}
#mokuji-container {    padding: 20px;}
#mokuji-container li {
    list-style-type: decimal;
    margin-left: 20px;
    margin-bottom: 8px;
}
#mokuji-container li a {    text-decoration: underline;}

.section-top-about .marker-thickYellow {    background: linear-gradient(0deg, #fffdab 50%, transparent 50%);}
.section-top-about .ind_regi_color { color: #05a5a3; text-decoration: underline;}
.section-top-about .more_view {
    border: 1px solid #845492;
    position: relative;
    margin: 0px auto;
    padding: 2px 0;
    text-align: center;
    color: #845492;
    background: #fff;
    border-radius: 3px;
    font-size: 15px;
    font-weight: bold;
}
.section-top-about .more_view:after {
    content: "＞";
    position: absolute;
    font-weight: bold;
    right: 10px;
    top: 50%;
}
.section-top-about .more_view:after {
    -moz-transform: rotate(90deg) translateX( -50%);
    -ms-transform: rotate(90deg) translateX( -50%);
    -webkit-transform: rotate(90deg) translateX( -50%);
    transform: rotate(90deg) translateX( -50%);
}
.section-top-about .more_view.is-active:after {
    -moz-transform: rotate(-90deg) translateX( 50%);
    -ms-transform: rotate(-90deg) translateX( 50%);
    -webkit-transform: rotate(-90deg) translateX( 50%);
    transform: rotate(-90deg) translateX( 50%);
}
/* 利用方法の枠 */
.top-ep-box {
    border: 1px solid #b60105;
    border-radius: 5px;
    max-width: 600px;
    margin: 20px 0;
}
.top-ep-box .es_title {
    background-color: #a72218;
    color: #fff;
    padding: 10px 15px;
    font-weight: bold;
}
.top-ep-box ol {
    counter-reset: item;
    padding: 20px;
}
.top-ep-box ol li:first-child { margin-top: 0;}
.top-ep-box ol li {
    counter-increment: item;
    margin-top: 0.2rem;
    padding-left: 25px;
    position: relative;
}
.top-ep-box ol>li:before {
    display: block;
    position: absolute;
    left: 0;
    color: #a83f3f;
    content: counter(item) ".";
    transform: scale(1);
}
/*top information*/
.information {
    max-width: 580px;
    width: 100%;
    font-size: 16px;
    line-height: 15px;
    border-radius: 4px;
    margin: -5px auto 0;
}
.information ul {    margin-bottom: 15px;}
.information li {    border-bottom: 1px solid #ccc}
.information li:last-child {    margin-bottom: 0;}
.information li p {
    font-size: 13px;
    margin-top: 13px;
}
.information li span.date {
    border-radius: 2px;
    display: inline-block;
    margin-right: 6px;
    color: #333;
}
.information li span {
    border-radius: 3px;
    padding: 1px 2px;
    color: #fff;
}
.information li span.cat01 {    background-color: #6fc696;}
.information li span.cat02 {    background-color: #975ca9;}
.information li span.cat04 {    background-color: #00bcd4;}
.information li span.cat05 {    background-color: #a59e98;}

/* メディア用 */
.information li span.cat001 {    background-color: #82b5e8;}
.information li span.cat002 {    background-color: #d6b14c;}
.information li span.cat003 {    background-color: #59d28c;}
.information li span.cat004 {    background-color: #71c6cb;}
.information li span.cat005 {    background-color: #a59e98;}

.information li a {
    display: block;
    padding: 7px 0 13px;
}
.information .view_more {    text-align: right;}
.information .view_more a {    text-decoration: underline;    font-size: 15px;}

/* メディア出演情報 */
.mediainfo li{position:relative;}
.mediainfo li::after {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    border-top: 1px solid #5d1456;
    border-right: 1px solid #5d1456;
    transform: rotate(45deg) translateX(-50%);
    position: absolute;
    right: 5px;
    top: 50%;
}
.mediainfo ul li a{width:90%;}
/* topログイン・新規登録ボタン */
.fst_cv {
    max-width: 600px;
    padding: 0;
    text-align: center;
    margin: 20px auto 0;
}

.fst_cv .f_fst {
    background: linear-gradient(0deg, #fff9b0, #fffffe);
    color: #333;
    border: 1px solid #b3b19d;
    width: 85%;
    max-width: 490px;
    display: block;
    margin: 0px auto;
    padding: 10px 0;
    border-radius: 4px;
    font-size: 14px;
}

.fst_cv .f_fst img {
    margin: 1px 10px 0 0;
    vertical-align: text-top;
}

.regi_log_bt {
    margin: 5px auto 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.regi_log_bt a {
    width: 50%;
}

.regi_log_bt a img {
    width: 100%;
    height: auto;
}

.inc_regi .regist_bt {
    background: #79397f;
    background: linear-gradient(4deg, #581c5e , #79397f, #a467b7);
    -moz-background: linear-gradient(4deg, #581c5e , #79397f, #a467b7);
    -webkit-background: linear-gradient(4deg, #581c5e , #79397f, #a467b7);
    font-weight: bold;
    color: #fff;
    position: relative;
    -moz-appearance: none;
    -webkit-appearance: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    box-shadow: none;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    width: 450px;
    font-size: 22px;
    height: 60px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    margin: 43px auto;
    display: flex;
}

.inc_regi .regist_bt:after {
    content: "";
    top: 50%;
    background: url(https://feel-i.jp/tmpl_smart_phone/assets/img/common/icn_arrow01.png) no-repeat center center;
    background-size: 100% auto;
    position: absolute;
    width: 14px;
    height: 20px;
    margin-top: -10px;
    right: 20px;
}

.inc_regi .regist_bt span {
    background-size: 37px;
    background-image: url(https://feel-i.jp/tmpl_smart_phone/assets/img/common/icn_registration2.png);
    background-position: 0 center;
    background-repeat: no-repeat;
    text-align: left;
    padding: 9px 27px 12px 52px;
}

@media only screen and (max-width: 767px) {
    .inc_regi .regist_bt {
        width: 4.74rem;
        -moz-border-radius: 0.4rem;
        -webkit-border-radius: 0.4rem;
        border-radius: 0.4rem;
        height: 0.8rem;
        font-size: 0.28rem;
    }

    .inc_regi .regist_bt span {
        background-size: 0.4rem;
        padding: 0.2rem 0.3rem 0.1rem 0.5rem;
    }
}

/* よくある質問 */
.faq_list .faq_li {
    border: 1px solid #aaa;
    border-radius: 10px;
    padding: 15px;
    width: 95%;
    margin: 0 auto 10px;
    background-color: #fafafa;
}
.faq_list .faq_li dl dt {
    display: flex;
    font-weight: bold;
    margin-bottom: 5px;
    color: #535353;
    font-size: 16px;
}
.faq_list .faq_li dl dt::before {
    content: 'Q';
    color: #df6b64;
    font-size: 18px;
    margin-right: 6px;
}
.faq_list .faq_li dl dd {
    display: flex;
    font-size: 15px;
}
.faq_list .faq_li dl dd::before {
    content: 'A';
    font-size: 18px;
    font-weight: bold;
    color: #5e69e5;
    margin-right: 6px;
}
@media print, (min-width: 768px) {
.faq_list .faq_li {    padding: 15px 30px; }
.faq_list .faq_li dl dt::before { font-size: 24px;}    
.faq_list .faq_li dl dd::before { font-size: 24px;}    
}


/* 口コミ */
.kutikomi_teller {
    background: url(../img/common/icn_arrow02.png) no-repeat;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
    border-radius: 3px;
    margin: 0 auto 9px;
    width: 100%;
    max-width: 700px;
    padding: 8px 0;
    line-height: 1.2em;
    background-size: 12px;
    background-position: right center;
    background-color: #fff;
}
.kutikomi_teller img {
    margin: 20px auto;
    max-width: 90px;
    display: block;
}
.kutikomi_teller p {
    margin: 0 4px;
    font-size: 13px;
    width: 93%;
}


#kuchikomi23 {
    display: flex;
    justify-content: space-between;
    margin-bottom: 30px;
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
    display: -ms-flexbox;
}
.pinning_voice {
    max-width: 400px;
    margin: 0 15px 15px 0;
    padding: 10px 0;
    border: 1px solid #bcbcbc;
    border-radius: 5px;
    width: 83%;
}
.pinning_voice .cch_cpy {
    margin: 0 6px;
    overflow: hidden;
    background-color: #f9f6bc;
    width: 95%;
    border-radius: 5px;
    line-height: 22px;
}
.pinning_voice .cch_cpy span {
    font-size: 14px;
    margin: 0;
    display: inline-block;
    padding-left: 100%;
    white-space: nowrap;
    animation: scrollcch_cpy 25s linear infinite;
}
@keyframes scrollcch_cpy {
0% { transform: translateX(0)}
100% { transform: translateX(-100%)}
}

.pinning_voice:last-child { margin-bottom: 0;}
.pinning_voice .sm_on {
    width: 95%;
    margin: 10px auto;
    display: flex;
    vertical-align: middle;
    position: relative;
}
.pinning_voice .sm_on .voice_badge {
    position: absolute;
    width: 30px;
    height: auto;
    top: -5px;
    left: 2px;
    }
.pinning_voice .sm_on .img_circle {
    width: 72px;
    height: 72px;
    vertical-align: middle;
    overflow: hidden;
    border-radius: 50px;
    margin-left: 12px;
}
.pinning_voice .sm_on .img_circle img { width: 100%; height: auto;}
.pinning_voice .sm_on .msg_for {
    vertical-align: middle;
    position: absolute;
    top: 52%;
    left: 105px;
    transform: translate(0%,-50%);
    line-height: 22px;
}
.pinning_voice .sm_on .msg_for .teller_name {
    display: inline;
    font-weight: bold;
    line-height: 17px;
    font-size: 17px;
}
.pinning_voice .sm_on .msg_for .teller_name .ruby {
    display: block;
    font-size: 12px;
    line-height: 12px;
    font-weight: normal;
}
.pinning_voice .sm_on .msg_for .teller_name a {
    text-decoration: underline;
}
.pinning_voice .sm_on .msg_for .teller_status {
    display: inline-block;
    padding: 2px;
    line-height: 100%;
    font-style: italic;
    color: #3873da;
    font-weight: bold;
    font-size: 13px;
}
.pinning_voice .voice_box {
    font-size: 15px;
    margin: 0px auto;
    width: 95%;
    background-color: #f5f5f5;
    border-radius: 5px;
    padding: 10px;
}
.pinning_voice .voice_box .msg_from {
    font-size: 14px;
    font-weight: bold;
    padding-left: 21px;
    background-repeat: no-repeat;
    background-size: 12px;
    background-position: 3px center;
    margin-bottom: 2px;
}
.pinning_voice .voice_box .msg_m { background-image: url(../img/common/msg_from_m.webp); color: #5e85e5;}
.pinning_voice .voice_box .msg_f { background-image: url(../img/common/msg_from_f.webp); color: #ff7676;}
.pinning_voice .voice_box .msg_oth { background-image: url(../img/common/msg_from_oth.webp); color: #dfaa2a;}


.pinning_voice .voice_box p {
    line-height: 20px;
    letter-spacing: 1px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 7;
    overflow: hidden;
}
.pinning_voice .voice_box p span {    background: linear-gradient(0deg, #ffffc1 50%, transparent 0%);}
.pinning_voice .more_kuchi {
    border: 1px solid #2968d6;
    margin: 5px auto 0;
    width: 95%;
    display: block;
    text-align: center;
    padding: 5px 0;
    border-radius: 5px;
    color: #2968d6;
    font-size: 14px;
}
@media print, (min-width: 768px) {
.pinning_voice { width: 32.5%; padding: 15px 0; margin: 0;}
.pinning_voice .voice_box p { -webkit-line-clamp: 8; font-size: 14px;}
.pinning_voice .sm_on .img_circle { width: 67px; height: 67px;}
.pinning_voice .sm_on .msg_for { left: 95px;}
.pinning_voice .more_kuchi:hover { background-color: #f3f7fd;}
}

/* 占術一覧 */
.divination_list .divi_ul {
    border: 1px solid #a28ca3;
    border-radius: 8px;
    padding: 3px 0;
}
.divination_list .divi_ul li { border-bottom: 1px solid #ebebeb;}
.divination_list .divi_ul li:last-child { border: none;}
.divination_list .divi_ul li a {
    font-size: 14px;
    padding: 12px 0;
    display: block;
    position: relative;
    background-image: url(../img/common/divi_dia_icn.webp);
    background-size: 8px;
    background-repeat: no-repeat;
    background-position: 20px 50%;
    padding-left: 45px;
}
.divination_list .divi_ul li a::after {
    content: '';
    display: block;
    width: 8px;
    height: 8px;
    border-top: 1px solid #5d1456;
    border-right: 1px solid #5d1456;
    transform: translateY(-50%) rotate(45deg) skew(0deg, 0deg);
    position: absolute;
    right: 11px;
    top: 50%;
}
@media print, (min-width: 768px) {
.divination_list .divi_ul {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
    max-width: 700px;
    margin: 0 auto;
}
.divination_list .divi_ul li {
    border-right: 1px solid #ebebeb;
    width: 100%;
}
.divination_list .divi_ul li a {
    background-position: 20px 50%;
    background-size: 7px;
    padding-left: 44px;
    font-size: 16px;
}
.divination_list .divi_ul li a::after {    right: 30px;}
}
}

/* b_top支払いcss */
.pay_ul {
    margin: 10px auto 10px;
    padding: 0;
    max-width: 650px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}
.pay_ul .now_point {
    text-align: center;
    background-color: #f1f1f1;
    padding: 15px 0;
    font-weight: bold;
    width: 90%;
    margin: 10px auto;
}


.pay_ul .pay_select img { vertical-align: middle; margin-right: 7px; mix-blend-mode: darken;}
.pay_ul .pay_select .paidy { width: 30px;}
.pay_ul .pay_select .pypl {    width: 110px;}
.pay_ul .pay_select .cre_card {    width: 29px; margin-left: 1px;}
.pay_ul .pay_select .bank_icon {    width: 36px;}
.pay_ul .pay_select .amzn_icon {    width: 130px;}
.pay_ul .pay_select .dnmn {    width: 110px;}
.pay_ul .pay_select .cnvn_icon { width: 42px; margin-left: -1px;}

.pay_ul .pay_list {
    width: 100%;
    font-size: 16px;
    margin-bottom: 10px;
}
.pay_ul .pay_list a {
    width: 100%;
    display: block;
    border: 1px solid #9f9f9f;
    margin: 0 auto;
    border-radius: 10px;
    box-shadow: 0 1px 2px rgb(180 174 180);
    overflow: hidden;
    background: linear-gradient(0deg, #e0e0e0 7% , #fff 93%);
}
.pay_ul .pay_list .icon_min {
    /* text-align: right; */
    padding: 4px 0px 4px 20px;
    background-color: #f9f9f9;
    line-height: 0;
    border-top: 1px solid #d7d7d7;
    display: block;
}
.pay_ul .pay_list .icon_min span {
    line-height: 20px;
    font-size: 12px;
    font-weight: bold;
    }
.pay_ul .pay_list .icon_min img {
    mix-blend-mode: darken;
}
.pay_ul .pay_list .icon_min .pypl_min {    width: 140px;}
.pay_ul .pay_list .icon_min .cnvn_min {    width: 80px;}

.pay_ul .pay_select {
    padding: 15px 40px 14px 20px;
    background-image: url(https://feel-i.jp/tmpl_smart_phone/img/system/pagar/pagarrow2.png);
    background-repeat: no-repeat;
    background-position: right;
    background-size: 32px;
    line-height: 40px;
}

.pay_ul .pay_select p {
    font-weight: bold;
}

/* 電子 */
.pay_ul.twolets {
    display: flex;
    justify-content: space-between;
}
.twolets .pay_list {
    width: 49%;
    margin: initial;
}
.to_pay { text-align: center; margin-top: 40px;}
.to_pay a {
    border: 1px solid #9156a4;
    padding: 10px;
    margin: 0 auto;
    display: block;
    max-width: 370px;
    font-size: 17px;
    color: #9156a4;
    font-weight: bold;
}

@media only screen and (max-width: 767px) {
    .pay_ul .pay_select .paidy { width: 24px;}
    .pay_ul .pay_select .pypl {    width: 90px;}
    .pay_ul .pay_select .cre_card {    width: 25px; margin-left: 1px;}
    .pay_ul .pay_select .bank_icon {    width: 29px;}
    .pay_ul .pay_select .amzn_icon {    width: 100px;}
    .pay_ul .pay_select .dnmn {    width: 90px;}
    
    .pay_ul { display: block; width: 85%;}
    .pay_ul .pay_list {}
    .pay_ul .pay_list .pay_select {    padding: 11px 0px 9px 20px;    line-height: 30px; background-size: 26px;}
    .twolets .pay_list .pay_select span { display: none;}
    .pay_ul .pay_list .icon_min { display: none;}

    .to_pay {
    width: 84%;
    margin: 20px auto 0;
    }
}


/* トップページコラム */
/* new */
.t_column_top {}
.t_column_top dl { margin-bottom: 30px;}
.t_column_top .col_genre {    border-bottom: 1px solid #5d1455;}
.t_column_top .col_genre h3 {
    font-weight: bold;
    color: #5d1455;
    font-size: 17px;
    position: relative;
    padding-left: 25px;
    }
.t_column_top .col_genre h3::before {
    content: '';
    display: block;
    position: absolute;
    top: 37%;
    width: 14px;
    height: 9px;
    left: 7px;
    border-left: 3px solid #239007;
    border-bottom: 3px solid #239007;
    transform: rotate(-40deg) translateY(-50%);
}
.t_column_top .col_list { padding: 7px 0; border-bottom: 1px solid #ccc;}
.t_column_top .col_list a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    position: relative;
}
.t_column_top .col_list a:after {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    border-top: 1px solid #5d1456;
    border-right: 1px solid #5d1456;
    transform: rotate(45deg) skew(0deg, 0deg);
    position: absolute;
    right: 5px;
}
.t_column_top .col_pic {
    width: 45px;
    height: 45px;
    overflow: hidden;
    border-radius: 5px;
}
.t_column_top .col_pic img {    width: 100%;}
.t_column_top .col_title {
    width: calc(100% - 57px);
    padding-right: 30px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
    overflow: hidden;
    line-height: 17px;
    font-size: 14px;
    min-height: 52px;
}
.t_column_top .col_title span {
    display: inline-block;
    font-size: 12px;
    background-image: url(https://feel-i.jp/tmpl_smart_phone/img/column/sj/icon_modified.png);
    padding-left: 16px;
    background-size: 12px;
    background-repeat: no-repeat;
    background-position: 0 50%;
    margin-bottom: 2px;
}
@media print, (min-width: 768px) {
.t_column_top {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.t_column_top dl {    margin-bottom: 40px; width: 47%;}
.t_column_top .col_list {    padding: 10px 0;}
.t_column_top .col_list:hover { opacity: 0.9; background-color: rgb(250 242 249 / 50%);}
.t_column_top .col_title {font-size: 15px;}
}


/* h2周辺 */
.sec-title .min_moj {
    display: block;
    font-size: 12px;
}
section .wrapper .sec_intro {
    font-size: 14px;
    margin: 0 auto 20px;
    max-width: 700px;
}

@media screen and (min-width:768px) {
section .wrapper .sec_intro {
    text-align: center;
    }
}




/* 診断系 */
.section-wave .list_game {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.item-content {
    width: calc(96% / 2);
    margin-bottom: 25px;
}
.section-wave a.tarot_in {
    margin: 0 auto;
    display: block;
    width: 100%;
    box-shadow: 0px 2px 5px rgb(200 202 204);
    border-radius: 10px;
    border: 1px solid #d9d9d9;
}
.section-wave .img_radius {
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
    height: auto;
    max-width: 100%;
}
.section-wave .card_body {
    background-color: white;
    padding: 5px;
    border-bottom-left-radius: 8px;
    border-bottom-right-radius: 8px;
    line-height: 23px;
}
.section-wave p.subtitle1 {
    font-weight: bold;
    font-size: 15px;
}
.section-wave {
    position: relative;
}

.section-wave p.sub_title {
    font-size: 14px;
    line-height: 5vw;
}

@media screen and (min-width:768px){
.section-wave ul.list_game {
    justify-content: space-between;
}
.section-wave ul.list_game li {
    width: 50%;
}
.section-wave a.tarot_in {
    width: 75%;
}
.section-wave p.sub_title {
    line-height: 28px;
    font-size: 18px;
}	
.section-wave .card_body {
    padding: 15px 18px;
	height: 120px;
}	
.section-wave .frame1 {
    width: 980px;
    margin-left: auto;
    margin-right: auto;
}
.section-wave .wave2 {
    height: 130px;
}
.section-wave .wave {
    height: 130px;
}	
.section-wave p.subtitle1 {
    font-weight: bold;
    font-size: 20px;
    margin-bottom: 6px;
}	
}

/* 占い師一覧 */
.section-top-tellers .p_moreteller {
    font-size: 14px;
    background-color: #fbfbef;
    padding: 10px 15px;
    line-height: 22px;
   /* max-width: 700px; */
    margin: 0 auto;
}
@media screen and (min-width:768px){
.section-top-tellers .p_moreteller {
    font-size: 16px;
    padding: 20px 70px;
    line-height: 22px;
}
}

/*202309 footer isk */
.footer_four {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: 40px;
}
.footer_four .footer_two_left {    width: 50%; text-align: center;}
.footer_four .footer_two_right {    width: 50%; position: relative;}
.footer_four .footer_login_icon {
    display: block;
    max-width: 350px;
    margin: 0 auto;
}
.footer_four .footer_login_icon img {
    width: 100%;
    height: auto;
}
.footer_four .eigyo_jikan { letter-spacing: 0;}
.footer_four .eigyo_jikan span {
    margin-left: 5px;
    font-weight: bold;
}
.footer_four .mado_tel {
    font-family: serif;
    font-weight: bold;
    font-style: italic;
    line-height: 55px;
}
.footer_four .mado_tel a {
    font-size: 44px;
    color: #3b333d;
    background-image: url(../../img/common/footer_tel_icon.webp);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left top;
    padding-left: 50px;
}

.footer_four .footer_regi_log {
    justify-content: right;
}
.footer_four .footer_regi_log a {
    margin-top: 35px;
}
.footer_four .footer_eat {
    display: flex;
    justify-content: right;
    flex-wrap: wrap;
    margin-top: 58px;
}
.footer_four .footer_pmark {
    display: flex;
    justify-content: left;
    flex-wrap: wrap;
    position: relative;
    width: 330px;
    height: fit-content;
}
.footer_four .footer_pmark img { width: 65px;}
.footer_four .footer_pmark .footer_p_txt {
    font-size: 11px;
    letter-spacing: -0.3px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    padding-left: 73px;
    color: #024099;
    font-style: italic;
    line-height: 21px;
    font-weight: bold;
}

@media only screen and (max-width: 767px) {
.footer_four { display: block;}
.footer_four .footer_two_left { width: 100%;}
.footer_four .footer_two_right { width: 100%;}
.footer_four .footer_login_icon { max-width: 275px;}
.footer_four .eigyo_jikan { font-size: 14px;}
.footer_four .eigyo_jikan span { display: block; margin-left: 0px;}
.footer_tel_time { margin: 10px auto 0;}
.footer_four .mado_tel { line-height: 40px;}
.footer_four .mado_tel a {
    font-size: 35px;
    background-size: 30px;
    background-repeat: no-repeat;
    background-position: left center;
    padding-left: 40px;
    letter-spacing: 0;
}
.footer_four .footer_regi_log { justify-content: space-evenly;}
.footer_four .footer_regi_log a { margin-top: 10px;}
.footer_four .footer_pmark { width: fit-content; margin: 0 auto;}
.footer_four .footer_pmark .footer_p_txt { display: none;}
.footer_four .footer_eat .f_pmark_box { width: 50%; border-right: 1px solid #ccc;}
.footer_four .footer_eat .f_ssl_box { width: 50%; text-align: center;}
.footer_four .footer_eat .f_ssl_box img { width: 100px !important;}
.footer_four .footer_pmark img { width: 52px;}
.footer_four .footer_eat { margin-top: 30px; position: relative;}
}
