@charset "UTF-8";
html {
    margin: 0;
    padding: 0;
    background: #fff;
    outline: 0;
    font-size: 62.5%;
    -webkit-text-size-adjust: 100%;
}

@media screen and (min-width: 568px) {
    html {
        font-size: 65%;
        -webkit-text-size-adjust: 110%;
    }
}

body {
    font-size: 1.4rem;
    /*background: url("../../images/sp/header_bg_pink.png") repeat-x center top;*/
    /*background: #F9F9F9;*/
    /*background-size: 100% auto;*/
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino kaku Gothic Pro", sans-serif;
    line-height: 1.6;
    color: #333;
    margin: 0;
    padding: 0;
}


/*body.modal_open{
	overflow: hidden;
}*/

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0;
    padding: 0;
    font-weight: normal;
}

section,
header,
nav,
footer,
div,
dl,
dt,
dd,
ul,
ol,
li,
p {
    margin: 0;
    padding: 0;
    list-style: none;
}


/*h1,h2,h3,h4,h5,h6,p,dl,dt,dd,ol,ul,li,
form,input,textarea,button,
table,tr,th,td,
div,article,aside,footer,header,hgroup,nav,section*/

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

a {
    color: #333;
    text-decoration: none;
}

a img,
img {
    border: none;
    vertical-align: middle;
    height: auto;
}

input[type=text],
input[type=email],
input[type=tel],
input[type=password],
select,
textarea {
    /*width: 98%;
	border: 1px solid #fae2fa;
	padding: 3% 2%;*/
    width: 100%;
    border: 1px solid #c3c3c3;
    padding: 1rem 0.5rem;
}

input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus,
input[type=password]:focus {
    border: 1px solid #ffdde6;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
    color: #c3c3c3;
}

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
    color: #c3c3c3;
}

input::-moz-placeholder,
textarea::-moz-placeholder {
    color: #c3c3c3;
}


/*-------------------------------------- display */

.i_block {
    display: inline-block;
}


/*-------------------------------------- width */

.w100 {
    width: 100%;
}

.w90 {
    width: 90%;
}

.w80 {
    width: 80%;
}


/*-------------------------------------- margin,padding */

.mb5 {
    margin-bottom: 0.5rem;
}

.mb10 {
    margin-bottom: 1rem;
}

.mb20 {
    margin-bottom: 2rem;
}

.mb30 {
    margin-bottom: 3rem;
}

.mb50 {
    margin-bottom: 5rem;
}

.mt20 {
    margin-top: 2rem;
}

.m_auto {
    margin-left: auto;
    margin-right: auto;
}


/*-------------------------------------- font family */


/*.serif{
	font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}*/


/*.serif{
	font-family: 'Times New Roman', "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}*/

.serif {
    font-family: "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif
}


/*-------------------------------------- font size */

.f10 {
    font-size: 1rem;
}

.size12 {
    font-size: 1.2rem;
}

.f12 {
    font-size: 1.2rem;
}

.f14 {
    font-size: 1.4rem;
}

.f16 {
    font-size: 1.6rem;
}

.f18 {
    font-size: 1.8rem;
}

.f20 {
    font-size: 2rem;
}

.f22 {
    font-size: 2.2rem;
}

.f24 {
    font-size: 2.4rem;
}

.f26 {
    font-size: 2.6rem;
}

.f30 {
    font-size: 3rem;
}


/*-------------------------------------- font color */

.blue {
    color: #1071bc;
}

.pink {
    color: #FF4980;
}

.grey {
    color: #aaa;
}

.dark_gray {
    color: #4d4d4d;
}

.f_red {
    color: #f00;
}

.gold {
    color: #785a00;
}

.thin_gold {
    color: #B4A371;
}

.blood {
    color: #b80038;
}

.line_green {
    color: #30be1a;
}

.a_blue {
    color: #2CA3DD;
    text-decoration: underline;
}

.a_red {
    color: #f00;
    text-decoration: underline;
}

.a_gold {
    color: #785a00;
    text-decoration: underline;
}

.light_green {
    color: #28A46D;
}

.deep_blue {
    color: #2247D4;
}

.orange {
    color: #f9ac49;
}


/*-------------------------------------- font weight */

.bold {
    font-weight: bold;
}


/*-------------------------------------- vertical-align */

.middle {
    vertical-align: middle;
}


/*-------------------------------------- line height */

.lh0 {
    line-height: 0;
}

.lh1 {
    line-height: 1;
}

.lh12 {
    line-height: 1.2;
}

.lh14 {
    line-height: 1.4;
}


/*-------------------------------------- text align */

.center {
    text-align: center;
}

.left {
    text-align: left;
}
.right{
    text-align: right;
}


/*-------------------------------------- letter spacing */

.ltt_spc1 {
    letter-spacing: 1px;
}

.ltt_spc8 {
    letter-spacing: 8px;
}


/*-------------------------------------- line */

.bk_pink {
    background: rgba(255, 213, 227, 0);
    background: -moz-linear-gradient(90deg, rgba(255, 255, 255, 0) 50%, rgb(255, 213, 227) 0%);
    background: -webkit-linear-gradient(90deg, rgba(255, 255, 255, 0) 50%, rgb(255, 213, 227) 0%);
    background: -o-linear-gradient(90deg, rgba(255, 255, 255, 0) 50%, rgb(255, 213, 227) 0%);
    background: -ms-linear-gradient(90deg, rgba(255, 255, 255, 0) 50%, rgb(255, 213, 227) 0%);
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 50%, rgb(255, 213, 227) 0%);
    padding-bottom: 0.1rem;
}

.line_pink {
    border-bottom: 1px solid #FF4980;
}

.line_wavy {
    background: url("../../images/sp/line_wavy.png") repeat-x left bottom;
    /*	background-size: 200%;*/
    padding-bottom: 0.5rem;
}


/*-------------------------------------- border */

.border_tp_dsh {
    border-top: 1px dashed #B0A070;
}

.b_btm_dotted {
    border-bottom: 1px dotted #000;
}

.b_solid {
    border-bottom: 1px solid #b4a371;
}

.border {
    /*padding: 2%;*/
    padding: 1rem;
    border-color: #B4A371;
    border-style: solid;
    border-width: 3px 1px;
}


/*-------------------------------------- image shadow */

.shadow {
    -moz-box-shadow: 1px 1px 3px #aaa;
    -webkit-box-shadow: 1px 1px 3px #aaa;
    box-shadow: 1px 1px 3px #aaa;
}


/*-------------------------------------- display */

.block {
    display: block;
}

.inline_block {
    display: inline-block;
}


/*-------------------------------------- float */

.float_l {
    float: left;
}

.float_r {
    float: right;
}


/*-------------------------------------- clearfix */

.clearfix::after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    font-size: 0;
    visibility: hidden;
}


/*-------------------------------------- position */

.relative {
    position: relative;
}

.absolute {
    position: absolute;
}


/*-------------------------------------- input select */

input[type=checkbox] {
    -webkit-transform: scale(1.2);
    margin-right: 5px;
}

select {
    height: 36px;
    background: #fff;
    background: -moz-linear-gradient(top, #fff 0%, #fff);
    background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#fff));
}

input[type=text],
input[type=tel],
input[type=email],
input[type=password],
textarea {
    -webkit-appearance: none;
}


/*-------------------------------------- btn tyep */

.btn_red,
.btn_green,
.btn_yellow,
.btn_blue,
.btn_pink,
.btn_sky,
.btn_gold,
.btn_gray,
.btn_gray_harf,
.btn_green_line,
.btn_submit input,
.btn_login input {
    display: block;
    margin: 1rem auto;
    padding: 1.5rem;
    text-decoration: none;
    color: #fff;
    text-align: center;
    border-radius: 15px;
    box-shadow: 0px 0px 8px #c9c9c9;
    cursor: pointer;
    box-sizing: border-box;
    font-size: 1.6rem;
    font-weight: bold;
    letter-spacing: 0.1rem;
    line-height: 1.4;
    position: relative;
    width: 95%;
}

.btn_login {
    position: relative;
}

.btn_red,
.btn_submit input {
    border: 1px solid #ff0c4f;
    background: -moz-linear-gradient(top, #ff326b 0%, #ff326b 50%, #ff326b 50%, #ff0c4f);
    background: -webkit-gradient(linear, left top, left bottom, from(#ff326b), color-stop(0.50, #ff326b), color-stop(0.50, #ff326b), to(#ff0c4f));
}

.btn_pink,
.btn_submit input {
    text-shadow: 1px 1px 2px rgba(255, 54, 130, 1);
    background: #ff6ea6;
    position: relative;
}

.btn_sky {
    text-shadow: 1px 1px 2px rgb(58 152 209);
    background: #74bfff;
    position: relative;
}

.btn_green {
    border: 1px solid #39bf4f;
    background: -moz-linear-gradient(top, #67bf76 0%, #67bf76 50%, #67bf76 50%, #39bf4f);
    background: -webkit-gradient(linear, left top, left bottom, from(#67bf76), color-stop(0.50, #67bf76), color-stop(0.50, #67bf76), to(#39bf4f));
}

.btn_green_line {
    border: 1px solid #39bf4f;
    background: -moz-linear-gradient(top, #67bf76 0%, #67bf76 50%, #67bf76 50%, #39bf4f);
    background: -webkit-gradient(linear, left top, left bottom, from(#67bf76), color-stop(0.50, #67bf76), color-stop(0.50, #67bf76), to(#39bf4f));
}

.btn_yellow {
    border: 1px solid #fda101;
    background: -moz-linear-gradient(top, #fdb435 0%, #fdb435 50%, #fdb435 50%, #fda101);
    background: -webkit-gradient(linear, left top, left bottom, from(#fdb435), color-stop(0.50, #fdb435), color-stop(0.50, #fdb435), to(#fda101));
}

.btn_blue {
    border: 1px solid #0183fd;
    background: -moz-linear-gradient(top, #35a1fd 0%, #35a1fd 50%, #35a1fd 50%, #0183fd);
    background: -webkit-gradient(linear, left top, left bottom, from(#35a1fd), color-stop(0.50, #35a1fd), color-stop(0.50, #35a1fd), to(#0183fd));
}

.btn_gold,
.btn_login input {
    color: #785a00;
    border: 1px solid #785a00;
    background: -moz-linear-gradient(top, #fffbf1 0%, #fffbf1 50%, #fffbf1 50%, #fff3d5);
    background: -webkit-gradient(linear, left top, left bottom, from(#fffbf1), color-stop(0.50, #fffbf1), color-stop(0.50, #fffbf1), to(#fff3d5));
}

.btn_gray,
.btn_gray_harf,
.btn_back input {
    margin: 0 auto;
    padding: 0.8rem 5%;
    color: #333;
    border: 1px solid #383838;
    background: -moz-linear-gradient(top, #fff 0%, #fff 50%, #fff 50%, #ECECEC);
    background: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(0.50, #fff), color-stop(0.50, #fff), to(#ECECEC));
    box-shadow: 1px 1px 5px #ccc;
    font-size: 1.2rem;
}

.btn_gray_harf {
    display: inline-block;
    padding: 0.8rem 3%;
    width: 48%;
}

.btn_red:before,
.btn_pink:before,
.btn_green:before,
.btn_green_line:before,
.btn_yellow:before,
.btn_blue:before,
.btn_sky:before,
.btn_gold:before {
    content: "";
    display: inline-block;
    vertical-align: middle;
}

.btn_red:before {
    /*width: 23px;*/
    width: 10%;
    max-width: 23px;
    height: 37px;
    background: url("../../images/sp/entry_option_img01.png") no-repeat center;
    background-size: 100%;
}

.btn_pink:before {
    /*width: 23px;*/
    width: 10%;
    max-width: 27px;
    height: 37px;
    background: url("../../images/sp/touroku_icon.png") no-repeat center;
    background-size: 100%;
    position: absolute;
    top: 15%;
    left: 6%;
}

.btn_sky:before {
    /*width: 23px;*/
    width: 10%;
    max-width: 23px;
    height: 37px;
    background: url("../../images/sp/cocktail_icon.png") no-repeat center;
    background-size: 100%;
    position: absolute;
    top: 15%;
    left: 6%;
}

.btn_green:before {
    /*width: 24px;*/
    width: 9%;
    max-width: 24px;
    height: 37px;
    background: url("../../images/sp/entry_option_img02.png") no-repeat center;
    background-size: 100%;
}

.btn_green_line:before {
    /*width: 24px;*/
    width: 14%;
    max-width: 36px;
    height: 37px;
    background: url("../../images/sp/line_img.png") no-repeat center;
    background-size: 100%;
}

.btn_yellow:before {
    /*width: 28px;*/
    width: 10%;
    max-width: 28px;
    height: 32px;
    background: url("../../images/sp/entry_option_img03.png") no-repeat center;
    background-size: 100%;
}

.btn_blue:before {
    /*width: 22px;*/
    width: 10%;
    max-width: 22px;
    height: 27px;
    background: url("../../images/sp/entry_option_img05.png") no-repeat center;
    background-size: 100%;
}

.btn_gold:before {
    width: 25px;
    height: 36px;
    background: url("../../images/sp/entry_option_img04.png") no-repeat center;
    background-size: 100%;
}

.btn_red:after,
.btn_green:after,
.btn_green_line:after,
.btn_yellow:after,
.btn_blue:after,
.btn_gold:after {
    content: "";
    display: inline-block;
    width: 15px;
    height: 15px;
    background: url("../../images/sp/btn_sankaku04.png") no-repeat center;
    background-size: 100%;
    vertical-align: middle;
}

.btn_pink:after,
.btn_sky:after {
    content: "";
    display: inline-block;
    width: 15px;
    height: 15px;
    background: url("../../images/sp/btn_sankaku04.png") no-repeat center;
    background-size: 100%;
    vertical-align: middle;
    position: absolute;
    top: 34%;
    right: 6%
}

.btn_gold:after {
    background: url("../../images/sp/btn_sankaku05.png") no-repeat center;
    background-size: 100%;
}

.btn_red>span,
.btn_pink>span,
.btn_green>span,
.btn_green_line>span,
.btn_yellow>span,
.btn_blue>span,
.btn_sky>span,
.btn_gold>span {
    display: inline-block;
    vertical-align: middle;
    width: 80%;
}

@media screen and (max-width: 425px) {
    .btn_red>span,
    .btn_green>span,
    .btn_green_line>span,
    .btn_yellow>span,
    .btn_blue>span,
    .btn_sky>span,
    .btn_gold>span {
        width: 69%;
    }
}

.btn_submit,
.btn_back {
    position: relative;
}

.btn_submit i,
.btn_login i {
    position: absolute;
    color: #fff;
    top: 50%;
    margin-top: -7px;
}

.btn_login i {
    color: #785a00;
}

.btn_back i {
    position: absolute;
    color: #333;
    top: 50%;
    margin-top: -3px;
    left: 15%
}

.btn_submit i.fa-paper-plane,
.btn_login i.fa-paper-plane {
    left: 5%;
}

.btn_submit i.fa-chevron-circle-right,
.btn_login i.fa-chevron-circle-right {
    right: 5%;
}

.bg_orange2 {
    text-align: center;
    color: red;
    background: #ffedf2;
    font-weight: 700;
    padding: 12px 0 8px;
    border-top: #f3abbd 1px dashed;
    border-bottom: #f3abbd 1px dashed;
}

@media screen and (min-width: 568px) {
    .btn_submit i.fa-paper-plane {
        left: 20%;
    }
    .btn_submit i.fa-chevron-circle-right {
        right: 20%;
    }
}


/*-------------------------------------- back_btn (tenpo_qa,tenpo_voice) */

.back_btn {
    padding: 0 5%;
    margin-bottom: 5%;
}

.back_btn a {
    display: block;
    text-align: center;
    font-size: 1.2rem;
    color: #785a00;
    background: -moz-linear-gradient(top, #e1cc8d 0%, #b4a371);
    background: -webkit-gradient(linear, left top, left bottom, from(#e1cc8d), to(#b4a371));
    border: 1px solid #785a00;
    width: 40%;
    -moz-border-radius: 50px;
    -webkit-border-radius: 50px;
    border-radius: 50px;
    padding: 1% 0;
}


/*-------------------------------------- btn_back */

.btn_back {
    margin: 2rem auto 3rem;
    padding: 0 5%;
    height: 23px;
}

.prev {
    width: 66px;
    margin: 5% auto;
    float: right;
}

.prev a {
    display: block;
    position: absolute;
    margin-left: 10px;
    /*width: 35px;*/
    color: #111;
    font-size: 1.2rem;
    text-align: center;
    text-decoration: none;
    /*	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.5);*/
    z-index: 5;
    line-height: 26px;
    padding: 0 10px 0 15px;
    margin-top: -15px;
}

.prev a:before {
    content: "";
    display: block;
    position: absolute;
    left: 2px;
    top: 0;
    width: 17px;
    height: 17px;
    -webkit-transform-origin: left top;
    -webkit-transform: rotate(45deg);
    -moz-transform-origin: left top;
    -moz-transform: rotate(45deg);
    transform-origin: left top;
    transform: rotate(45deg);
    background: #EEE;
    border-left-color: #DDD;
    border-bottom-color: #DDD;
    border-width: 1px;
    border-style: solid;
    border-radius: 3px;
    border-right: none;
    border-top: none;
    z-index: -1;
}

.prev a:after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 55px;
    height: 23px;
    background: #EEE;
    border-top-color: #DDD;
    border-right-color: #DDD;
    border-bottom-color: #DDD;
    border-width: 1px;
    border-style: solid;
    border-radius: 4px;
    border-left: none;
    /*	box-shadow: 0 1px 0 #DDD inset;*/
    z-index: -2;
}


/* plus minus */

.plus::after,
.minus::after {
    font-family: 'FontAwesome';
    display: inline-block;
    margin-left: 0.5rem;
    font-size: 1.8rem;
}

.plus::after {
    content: "\f13a";
}

.minus::after {
    content: "\f139";
}

.icon_gold {
    color: #785a00;
}

.icon_pink {
    color: #FF4980;
}


/*-------------------------------------- pagetop */


/* .pagetop {
    background: rgba(243, 170, 209, 0.8);
    border-radius: 50%;
    color: #fff;
    width: 4rem;
    height: 4rem;
    padding: 1rem 0.8rem;
    position: fixed;
    bottom: 2rem;
    right: 1rem;
    cursor: pointer;
    text-align: center;
    z-index: 9;
    line-height: 1.2;
    font-size: 1rem;
    letter-spacing: 0;
}

.pagetop:before {
    content: "";
    display: block;
    margin: 0 auto;
    width: 1rem;
    height: 1rem;
    vertical-align: middle;
    transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    border-top: 1px solid #fff;
    border-left: 1px solid #fff;
} */


/*=================================
				header
=================================*/


/* .gnav{
	background: #fff;
	box-shadow: 1px 1px 5px rgba(204,204,204,0.75);
	position: fixed;
	z-index: 99999;
	width: 100%;
	top: 0;
	left: 0;
} */

.hide {
    transform: translateY(-100%);
    /* 上に消えるようにする */
}

#scrollArea {
    background-color: #fff;
    position: fixed;
    /* 固定して表示されるようにする */
    top: 0;
    /* 表示場所を一番上に */
    transition: .5s;
    /* スクロール時に一瞬で消えると物足りないので.hideの処理を0.5秒で行う */
    z-index: 100;
    /* 前面に表示されるようにする */
    width: 100%;
    box-shadow: 1px 1px 5px rgba(204, 204, 204, 0.75);
}


/* android XPERIA SO-02E */

@media screen and (min-width:1000px) and (orientation:portrait) {
    .gnav {
        position: static;
        font-size: 1px;
    }
}

.gnav .float_l {
    /*width: 14rem;*/
    width: 8rem;
}

.gnav .float_l a {
    display: block;
    padding: 0.5rem 0.5rem 0.4rem;
    width: 100%;
}

.float_l img,
.gnav_icon img,
.menu img,
.line_gnav img {
    box-sizing: border-box;
    width: 100%;
}

.float_l .logo {
    box-sizing: border-box;
    /*width: 100%;*/
    width: 60%;
}

.gnav .float_r {
    /*width: 17rem;*/
    /* width: 23rem; */
}

.gnav .float_r a.line_gnav {
    display: block;
    /*width: 4.5rem;*/
    width: 5rem;
    padding: 0.7rem 0.25rem 0.5rem 0.25rem;
}

.gnav .float_r a {
    display: block;
    /*width: 4.5rem;*/
    width: 5rem;
    padding: 0.7rem 0.25rem 0.5rem 0.25rem;
}

.gnav .float_r li {
    float: left;
    border-left: 1px solid #EFEFEF;
    padding-left: 0.25rem;
    padding-right: 0.25rem;
}

header nav {
    position: fixed;
    z-index: 88888;
    height: 100%;
    min-height: 100%;
    width: 100%;
    /* padding-top: 5.5rem; */
    padding-bottom: 5em;
    left: 100%;
    top: 8%;
    overflow: auto;
    -webkit-transition: left 0.3s linear;
    -o-transition: left 0.3s linear;
    -moz-transition: left 0.3s linear;
    transition: left 0.3s linear;
    background: #f9f9f9;
}


/*.menu{
	background: url("../../images/sp/icon_menu02.png");
	background-size: cover;
}
*/

.menu img {
    background: #fff;
    -webkit-transition: all 0.8s;
    -o-transition: all 0.8s;
    -moz-transition: all 0.8s;
    transition: all 0.8s;
    opacity: 1;
    padding: 0 5px;
}

.menu_close img {
    -webkit-transition: all 0.8s;
    -o-transition: all 0.8s;
    -moz-transition: all 0.8s;
    transition: all 0.8s;
    /*	opacity: 0;
	padding: 0;*/
}


/* nav */

nav>ul>li {
    background: #fff;
    margin-bottom: 1.5rem;
}

.nav_ttl {
    text-align: center;
    background: var(--cl-pk);
    color: #fff;
    font-weight: bold;
    padding: 0.5rem;
    font-size: 1.4rem;
}

nav div {
    padding: 1rem;
}

.log_con div {
    display: inline-block;
    width: 49%;
}

.log_con div a span {
    width: 75%;
}

.log_con div a::after {
    content: none;
}

.nav_ttl+ul li {
    border-bottom: 1px dotted var(--cl-pk);
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
}

.nav_ttl+ul li a {
    display: block;
    position: relative;
    padding: 0.75rem 1rem 0.75rem 2rem;
}


/*
.nav_ttl + ul li a::before,
.nav_ttl + ul li a::after{
	position: absolute;
	top: 50%;
	right: 1rem;
	display: block;
	content: "";
	width: 0.8rem;
	height: 0.1rem;
	background: #b4a371;
	border-radius: 4px;
}

.nav_ttl + ul li a::before{
	margin-top: -3px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.nav_ttl + ul li a::after{
	margin-top: 3px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
*/

.nav_ttl+ul li a img {
    display: inline-block;
    vertical-align: middle;
    width: 2rem;
    margin-right: 0.5rem;
}

.nav_ttl+ul li a i {
    font-size: 2rem;
    vertical-align: middle;
    margin-right: 1rem;
    margin-left: 0.5rem;
    color: #866b1b;
}

.nav_ttl+ul li a span {
    vertical-align: middle;
}

.nav_ttl+ul li a span:after {
    content: "\f101";
    font-family: 'FontAwesome';
    position: absolute;
    top: 50%;
    right: 1rem;
    font-size: 1.4rem;
    margin-top: -12px;
}

.cv_bnr img {
    width: 100%;
}


/*=================================
				footer
=================================*/


/*-------------------------------------- topics (footer_menu) */

.topics_bx {
    /*background: #F9F9F9;*/
    padding-top: 2rem;
}

.topics_bx>li {
    background: #fff;
}

/*.topics_bx>li:not(:last-child) {
    margin-bottom: 2rem;
}*/

/*.topics_bx ul {
    border-bottom: 1px solid #b4a371;
}*/

.topics_bx li li {
    box-sizing: border-box;
    display: block;
    border-bottom-style: solid;
    width: 50%;
    float: left;
}

.topics_bx li li:nth-child(odd) {
    border-right: 1px solid var(--cl-pk);
    padding-right: 0.25rem;
}

.topics_bx li li:nth-child(even) {
    padding-left: 0.25rem;
}

.topics_bx li li a {
    padding: 1rem 2rem 1rem 0.5rem;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    color: var(--cl-bpk);
    font-weight: bold;
}

.topics_bx li li a span:after {
    right: 0.3rem;
}

/*.topics_bx .bb_none {
    border-bottom: none;
}*/

.topics_bx li .a_none::before,
.topics_bx li .a_none::after {
    content: none;
}

.comming {
    background: #E5E5E5;
}

.comming a {
    color: #aaa;
}

.topics_bx li li.w100 {
    width: 100%;
    border-right: none;
}

.tenpo_bnr a {
    display: block;
    max-width: 70%;
    margin: 3rem auto;
}

.tenpo_bnr a img {
    width: 100%;
}

.tenpo_fv_bnr {
    max-width: 60%;
    margin-top: 1em;
}


/*-------------------------------------- footer */

footer {
    background: #F9F9F9;
    padding-top: 2rem;
}

.footer_sub {
    background: #fff;
}

footer ul {
    padding: 0 0 1rem;
}

footer ul li {
    display: inline;
}

.under18 {
    padding-bottom: 1rem;
}

/*.copy {
    padding: 1rem 0 3rem;
    background: #fff;
    background: url("../../images/sp/ft_bg.jpg") repeat-x bottom center #fff;
}*/
.f_txt{
    padding: 1rem 2rem 2.5rem;
    text-align: left;
    font-size: 1rem;
}
.copy{
    background: var(--cl-bpk);
    color: #fff;
    padding: .5rem;
}
.area_ver {
    margin-bottom: 10px;
}

.area_ver a,
.area_ver span {
    display: inline-block;
    border: 1px solid #ff759f;
    padding: 5px;
    margin-right: 5px;
    color: #ff759f;
    min-width: 40%;
}

.area_ver span {
    color: #fff;
    background: #ff759f;
}


/*
.top_cnt + footer{
	padding-top: 0;
}
*/


/* footer-menu */

.footer_menu {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    overflow: hidden;
    width: 100%;
    z-index: 2;
    background-color: rgba(0, 0, 0, 0.5);
    box-shadow: 1px 1px 5px rgba(204, 204, 204, 0.75);
    /* background: linear-gradient(to right, #ff5ea0 0, #ff8f92 100%); */
}

.footer_menu a {
    display: block;
    font-weight: bold;
    padding: 0.5em 0;
}


/*=======================================
				sub page
=======================================*/

.container {
    background: #fff;
    width: 100%;
    height: 100%;
    /*margin: 7rem auto 0;*/
    /*	padding-top: 7rem;*/
}

.container section {
    /*	width: 95%;*/
    width: 98%;
    min-width: 280px;
    margin: 0 auto 2rem;
    padding: 0;
}

.cnt02_bx {
    background: url("../../images/sp/cnt02_bg.gif") repeat-y center;
    -moz-background-size: 100% auto;
    background-size: 100% auto;
}

.cnt02_bx {
    text-align: justify;
    text-justify: distribute;
    -ms-text-justify: distribute;
}

.cnt02_bx {
    padding: 2% 5%;
    font-size: 1.4rem;
}

.cnt02_bx_top,
.cnt02_bx_btm {
    display: block;
    width: 100%;
    padding: 0;
    margin: 0 auto;
    float: none;
}

.cnt02_ttl {
    display: block;
    width: 96%;
    padding: 0;
    margin: 0 auto 3%;
    float: none;
}

.cnt_in {
    padding: 0 1.5rem;
}

.serif_ttl,
.serif_title {
    padding: 0 2rem 1rem;
}


/*-------------------------------------- registration_bx btn */

.registration_bx {
    /*	width: 90%;*/
    width: 94%;
    margin: 1rem auto;
    padding: 1rem 0;
    border-top: 2px solid #b4a371;
    border-bottom: 2px solid #b4a371;
}

.registration_bx .registration_line {
    display: block;
    margin: 1.5rem;
    border-top: 1px dashed #b4a371;
}


/*-------------------------------------- module_bx */

.module_bx {
    padding: 0.5rem;
    background: #fff;
    color: #545454;
    line-height: 1.4;
    text-align: center;
    margin-bottom: -7rem;
    padding-top: 6rem;
    z-index: 1;
}

.module_bx img {
    width: 100%;
}

.module_bx h1 {
    padding-bottom: 0.5rem;
    border-bottom: 1px dotted #cabe9d;
    margin-bottom: 0.5rem;
}


/*-------------------------------------- pan */


/*.pan{
	position: relative;
	margin-bottom: 1rem;
	width: 98%;
	margin-right: auto;
	margin-left: auto;
}

.pan_home{
	position: absolute;
	z-index: 1;
	background: #fdf8ed;
	vertical-align: middle;
	padding-right: 0.5rem;
	padding-left: 0.5rem;
	border-top: 1px solid #d6cdb3;
	padding-top: 0.1rem;
}

.pan img{
	width: 1.5rem;
	margin-top: -0.4rem;
	padding-right: 0.5rem;
}

.pan_home + div{
	max-width: 100%;
	overflow-x: auto;
	overflow-y: hidden;
	-webkit-overflow-scrolling: touch;
	white-space: nowrap;
	background: #fdf8ed;
	border-bottom: 1px solid #d6cdb3;
	border-top: 1px solid #d6cdb3;
}

.pan_list{
	padding-left: 45px;
}

.pan_list li{
	display: inline-block;
	vertical-align: middle;
}*/

.breadcrumbs {
    margin: 7rem auto 1rem;
    background: #fdf8ed;
    border-bottom: 1px solid #d6cdb3;
    border-top: 1px solid #d6cdb3;
    padding: 0 5px;
    font-size: 10px;
    line-height: 2;
    /*margin-bottom: 40px;*/
}

.breadcrumbs-in {
    display: block;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
    overflow: auto;
    white-space: nowrap;
}

.breadcrumbs li {
    display: inline-block;
}

.breadcrumbs .bcl-first i {
    color: #866b1b;
}

.tenpo_login a {
    font-size: 14px;
    color: #856b20;
    border-bottom: 1px dashed #856b20;
}

.twitter a img {
    max-width: 80%;
    margin: 2rem auto;
    display: block;
}

.trycast_bnr {
    background: #F9F9F9;
    padding: 1rem 0;
}

.trycast_bnr a img {
    max-width: 80%;
    margin: 2rem auto;
    display: block;
}


/*ヘッダー上に帯追加用*/

.band_red {
    background-color: #f20001;
    padding: 5px;
    font-size: 12px;
    text-align: center;
}

.band_red a {
    color: #fff799;
}


/*.breadcrumbs {
    margin: 10rem auto 1rem;
}*/


/*ヘッダー上に帯追加用*/


/*LINE非会員用（オーガニック）*/

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

a {
    background-color: transparent;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    text-decoration: none;
    color: #131313
}

a:active,
a:hover {
    outline: 0;
}

li {
    list-style-type: none
}

b,
strong {
    font-weight: bold;
}

img {
    border: 0;
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
}

.sp_on {
    display: none;
}

.sp_off {
    display: block;
}

@media screen and (max-width:375px) {
    .sp_on {
        display: block;
    }
    .sp_off {
        display: none;
    }
}

.line_box {
    max-width: 750px;
    margin: 0 auto;
}

.w750 {
    max-width: 750px;
    min-width: 320px;
    margin: 0 auto;
    /*box-shadow: 0px 0px 6px 2px rgba(0,0,0,0.2);*/
}

.logo {
    margin: 0 auto;
}

.logo img {
    width: auto;
    max-width: 4.5rem;
    padding: 0.5rem;
}

p {
    font-size: 1em;
}

h1 img {
    width: 100%;
    background: linear-gradient(rgba(249, 240 222, 1), rgba(255, 255, 255, 0));
}

.btn_line {
    display: block;
    margin: 30px auto;
    width: 90%;
    height: 60px;
    background-color: #06c755;
    border-bottom: solid 6px #008737;
    border-radius: 50px;
    color: #fff;
    font-size: 1.8rem;
    line-height: 55px;
    font-weight: bold;
    text-align: center;
}

.about {
    background: #fff;
    border: #4acc7f 3px solid;
    padding: 15px;
    width: 95%;
    margin: 0 auto 60px;
    position: relative;
}

.about:after {
    position: absolute;
    content: '';
    right: 0;
    bottom: -42px;
    left: 0;
    width: 0px;
    height: 0px;
    margin: auto;
    border-style: solid;
    border-color: #4acc7f transparent transparent transparent;
    border-width: 40px 50px 0 50px;
}

h2 {
    color: #ff135b;
    font-size: 1.5em;
    /*margin: 10px 8px 20px;*/
    text-align: center;
    font-weight: bold;
}


/*h2::before,h2::after{
	content: '';
	width: 1.2rem;
    height: 1.2rem;
	display: inline-block;
	position: relative;
}
h2::before{
	background: url('../../../../images/lp/line/kakko_1.png') no-repeat;
	background-size: contain;
	top:-25;
}
h2::after{
	background: url('../../../../images/lp/line/kakko_2.png') no-repeat;
	bottom:-10;
	background-size: contain;
}*/

.flex {
    display: flex;
    width: 100%;
    margin: 0 auto;
    align-items: center;
}

.jbetween {
    justify-content: space-between;
}

.jcenter {
    justify-content: center;
}

.w90 {
    width: 90%;
    margin: 0 auto;
}

.about_title {
    width: 65%;
    padding: 10px;
}

.girl {
    width: 35%;
    height: auto;
    margin: 20px 0;
}

.arrow {
    display: block;
    margin: 0 auto;
}

.good {
    display: flex;
    width: 90%;
    font-weight: bold;
    background-color: #fff8df;
    border: solid 1px #bcbcbc;
    margin: 10px auto 20px;
    padding: 20px;
    align-items: center;
    color: #444444;
    box-shadow: 5px 5px 0px 0 #c4c4c4;
}

.gd_img {
    width: 25%;
    margin-right: 15px;
}

.line_border {
    font-size: 1.2em;
    margin: 15px 5px 20px;
    border-bottom: dotted 5px #ff135b;
    font-weight: bold;
}

.line_border span {
    font-size: 1.2rem;
}

.border_wh {
    background: linear-gradient(transparent 70%, #ffffff 0%);
}

.border_yw {
    font-weight: bold;
    background: linear-gradient(transparent 70%, #fff8df 0%);
}

.pk_bld {
    font-weight: bold;
    font-size: 1.6rem;
    color: #ff135b;
}

.bg_green {
    color: #ff135b;
    font-weight: bold;
    font-size: 1.15rem;
    text-align: center;
    background-color: #e0f4e8;
    position: relative;
    padding: 20px 10px;
    margin: 30px auto 60px;
}

.bg_green::after {
    position: absolute;
    content: '';
    right: 0;
    bottom: -39px;
    left: 0;
    width: 0px;
    height: 0px;
    margin: auto;
    border-style: solid;
    border-color: #e0f4e8 transparent transparent transparent;
    border-width: 40px 50px 0 50px;
}

@media screen and (max-width:350px) {
    .bg_green {
        color: #ff135b;
        font-weight: bold;
        font-size: 1rem;
        text-align: center;
        background-color: #e0f4e8;
        position: relative;
        padding: 20px 10px;
        margin: 30px auto 60px;
    }
}

.flex-right {
    width: 100%;
    height: 100%;
}
:root{
    --cl-bpk: #B85267;
    --cl-vpk: #DC507a;
    --cl-pk: #db8eA5;
    --cl-lpk: #ffefef;
    --cl-lgy: #f5f5f5;
    --cl-bgy: #594e4e;
}

.line-message-last {
    margin-bottom: 40px;
}
.front_kv{
    background: url('../../../../images/sp/front_new/kv_bg.jpg') no-repeat center / cover;
    padding-bottom: 2rem;
}
.btn_wrap_kv{
    margin: 1rem 3rem 2rem;
}
.cv_mendan img{
    width: 60%;
    padding: 1rem;
}
.btn_wrap{
    margin: 4rem 3rem 4rem;
}
.sec02,.sec03,.sec04,.sec05,.sec06,.sec07,.sec08,.sec09,.sec10{
    padding-bottom: 3rem;
}
@keyframes shiny {
    0% {
        transform: scale(0) rotate(25deg);
        opacity: 0;
    }
    50% {
        transform: scale(1) rotate(25deg);
        opacity: 1;
    }
    100% {
        transform: scale(50) rotate(25deg);
        opacity: 0;
    }
}
.cv_user,.cv_shop{
    max-width: 450px;
    color: #fff;
    font-weight: bold;
    text-align: center;
    padding: 1em 2rem;
    max-width: 450px;
    margin-bottom: 1em;
    display: block;
    box-shadow: 0px 4px 10px 0px #d6d6d6;
    font-size: 1.6rem;
    position: relative;
}
.cv_user{
    background: var(--cl-bpk);
    overflow: hidden;
}
.cv_user::before{
    content: "";
    position: absolute;
    top: -100px;
    left: -100px;
    width: 50px;
    height: 50px;
    background-image: linear-gradient(100deg,  rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, 1) 100%, rgba(255, 255, 255, 0) 0%);
    animation-name: shiny;
    animation-duration: 3s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
}
.cv_shop{
    background: var(--cl-pk);
}
.cv_shop::before{
    position: absolute;
    content:"";
    left: 4rem;
    width: 2rem;
    height: 2rem;
    background: url('../../../../images/sp/front_new/icon_shop_wh.png')no-repeat center top / contain ;
;
}
.cv_user::after,.cv_shop::after,.cv_touroku::after{
    font-family: 'FontAwesome';
    content: "\f101";
    right: 1rem;
    position: absolute;
    font-size: 1.4rem;
}
.sec_read{
    color: var(--cl-bpk);
    font-weight: bold;
    font-size: 1.1em;
    margin-bottom: 1em;
}
.sec02{
    background: url('../../../../images/sp/front_new/sec02_bg.png')no-repeat center top / contain ;
    }

.sec02 .sec_ttlimg {
    padding: 2rem 0 0;
    text-align: center;
}
.sec02 .sec_ttlimg img {
        width: 55%;
    }

.shop_list .slick-dots li{
    width: 14px;
}
.shop_list .slick-dots li.slick-active button:before,
.user_voice .slick-dots li.slick-active button:before{
    color: var(--cl-bpk);
    content: '\25CF';
}
.shop_item{
    background: #fff;
    box-shadow: 0px 0px 10px 0px #d6d6d6;
    padding: 1rem;
    margin: 1.5rem 2rem;
    font-weight: bold;
}
.shop_list .slick-prev:before, .shop_list .slick-next:before{
    color: #CDCDCD;
}
.shop_list .slick-next{
    right: 0;
}
.shop_list .slick-prev{
    left: 0;
}
.shop_list .slick-prev:before{
    content:'\f104';
}
.shop_list .slick-next:before{
    content: '\f105';
}
.shopinfo{
    display: flex;
    border-bottom: 2px dotted #f2f2f2;
    align-items: baseline;
    padding: .5em 0;
    margin-bottom: .5em;
}
.shop_img{
    text-align: center;
    margin: 1.5rem auto ;
}
.f_half{
    width: 50%;
}
.shop_area,.shop_type{
    position: relative;
    padding-left: 3rem;
    font-weight: bold;
}
.shop_area::before{
    content: '';
    position: absolute;
    width: 20px;
    height: 20px;
    background: url('../../../../images/sp/front_new/icon_area.png')no-repeat center / contain;
    left: 0;
}
.shop_type::before{
    content: '';
    position: absolute;
    width: 20px;
    height: 20px;
    background: url('../../../../images/sp/front_new/icon_shop.png')no-repeat center / contain;
    left: 0;
}
.li_ttl{
    background: var(--cl-lgy);
    padding: .5em 1em;
    border-radius: 5px;
    margin: .5em .5em 1em 0;
}
.b_pk{
    color: var(--cl-bpk);
    font-weight: bold;
    font-size: 1.3em;
}
.rating{
    background: var(--cl-lgy);
    padding: 1rem;
}
.sec_inner{
    padding: 0 1rem;
}
.about_h3{
    background: var(--cl-lpk);
    border-radius: 0 50px 50px 0;
    color: var(--cl-bpk);
    display: inline-block;
    padding: 1rem 2rem 1rem 1rem;
    font-size: 1.5rem;
    font-weight: bold;
    margin: 1em 0 1.5rem;
}
.sec03 h3{
    margin: 4rem 0 3rem;
}
.sec03_anshin{
    background: url('../../../../images/sp/front_new/anshin_bg.jpg')no-repeat center / cover;
    padding: 0 0.5em 1rem;
    margin-bottom: 2rem;
}
.sec03_anshin a{
    width: 50%;
    padding: 0 .5rem;
    }
.info_call{
    color: var(--cl-bpk);
    font-size: 1.6rem;
    font-weight: bold;
    margin-bottom: 1rem;
}
.cv_lpk,.cv_touroku{
    position: relative;
    background: var(--cl-lpk);
    padding: 1rem 4rem;
    display: block;
    max-width: 450px;
    box-shadow: 0px 2px 4px 0px #d6d6d6;
    margin-bottom: 1.5em;
}
.sec04 table,.sec05 table{
    border-collapse: collapse;
    font-weight: bold;
    text-align: center;
    width: 100%;
    font-size: 1rem;
    margin-bottom: 2rem;
}
.sec04 table td,.sec04 table th,.sec05 table td,.sec05 table th{
    border: 1px solid #ccc;
    padding: 1rem 0.5rem;
}
.sec04 table th,.sec05 table th{
    background: #F8F8F8;
}
table span{
    color: var(--cl-vpk);
}
.th_pk {
    background: var(--cl-vpk);
    color: #fff;
    border: 2px solid var(--cl-vpk) !important;
}
.td_pk{
    background: #FFFAFA;
    border-right: 2px solid var(--cl-vpk) !important;
    border-left: 2px solid var(--cl-vpk) !important;
}
.td_pk_b{
    border-bottom: 2px solid var(--cl-vpk) !important;;
}
.user_bx{
    box-shadow: 0px 0px 12px -5px #ccc;
    margin: 0 .5rem 2rem;
}
.pay_ex{
    background: var(--cl-lgy);
    padding: 1.5rem;
    margin: 1.5rem 1rem;
    text-align: center;
}
.pay_ex p{
    font-weight: bold;
    margin-bottom: .8rem;
}
.marker{
    background:linear-gradient(transparent 60%, #FFFFD9 60%);}
.user_p{
    padding: 0 1.5rem 2rem;
}
.user_type_nv h3{
    text-align: center;
    font-weight: bold;
    font-size:1.1rem;
    padding: .5rem;
}
.user_type_nv h3:not(:last-child){
    border-right: 1px solid #E8E8E8;
}
.user_type_nv .slick-slide.slick-current{
    border-bottom: 4px solid var(--cl-pk);
}
.user_type_nv{
    margin: 0 .5rem;
}
.pay_pk{
    color: var(--cl-bpk);
    font-size: 1.8rem;
    margin: .8rem auto;
}
.sec08 h3{
    position: relative;
    margin: 7rem auto 3em;
}
.sec08 h3 div{
    position: absolute;
    background: #fff;
    display: flex;
    padding: 1rem;
    font-size: 1.2em;
    bottom: -1em;
    right: 0;
    left: 5rem;
    font-weight: bold;
    padding: 1rem 3rem 1rem 1rem;
    box-shadow: 0px 3px 8px -3px #d6d6d6;
}
.sec08 h3 div img{
    width: 50px;
    height: 50px;
    margin-right: 1rem;
}
.sec08 p span{
    font-weight: bold;
    color: var(--cl-bpk);
}
.txtlink a{
    color: var(--cl-vpk);
    display: block;
    font-weight: bold;
    margin-top: 2rem;
}
.step_ttl {
    display: flex;
    align-items: center;
    position: relative;
}
.step_ttl::after{
    font-family: 'FontAwesome';
    content: "\f078";
    color: var(--cl-bpk);
    position: absolute;
    width: 2rem;
    height: 2rem;
    right: 1rem;
    background: var(--cl-lgy);
    border-radius: 20px;
    padding: 1rem;
    font-size: 1.5rem;
}
.step_ttl.active::after{
    content: "\f077";
}
.step_ttl img{
    width: 50px;
    height: 50px;
    margin: 1rem;
}
.step_ttl p{
    font-weight: bold;
    font-size: 1.4rem;
    color: var(--cl-bpk);
}
.cv_touroku{
    font-weight: bold;
    text-align: center;
    color: var(--cl-bpk);
}
.mibun01{
    border: 3px solid var(--cl-pk);
    margin: 2rem 0;
}
.mibun02{
    border: 3px solid #BDBDBD;
}
.mibun01,.mibun02{
    text-align: center;
}
.mibun01 img,.mibun02 img{
    padding: 1rem 2rem 1.5rem;
}
.mibun_ttl{
    color: #fff;
    font-weight: bold;
    text-align: center;
    padding: .5rem;
}
.mibun01 .mibun_ttl{
    background: var(--cl-pk);
}
.mibun02 .mibun_ttl{
    background: #BDBDBD;
}
.bg_gr{
    background: var(--cl-lgy);
    padding: 1rem;
    margin: 0 2rem 2rem;
}
.sec09_step span ,.sec10 li span{
    font-weight: bold;
    color: var(--cl-bpk);
}
.sec09_step li{
    margin-bottom: 2rem;
}
.acc_open{
    display: none;
}
.acc_open p{
    padding:1rem 2rem;
}
.sec10 h3{
    display: flex;
    font-weight: bold;
    align-items: center;
    margin-bottom: 2rem;
}
.sec10 h3 img{
    width: 50px;
    height: 50px;
    margin-right: 1rem;
    }
.sec10 ul li{
    padding-bottom: 2rem;
    margin: 2rem;
}
.sec10 ul li:not(:last-child){
    border-bottom: 3px dotted #E8E8E8;
}
.sec11 .serif{
    font-size: 1.6rem;
    color: var(--cl-vpk);
    margin-bottom: 2rem;
}
.sec11 p{
    margin-bottom: 1rem;
}
.sec11{
    margin-bottom: 5rem;
}
.h-alt {
    display: none;
}
.sec_ttlimg {
    padding: 2rem 0;
}
