@charset "utf-8";
@import url("reset.css");
@import url(./footer.css);

html {
    font-family: "Hiragino Kaku Gothic ProN", "Meiryo", "メイリオ", "ヒラギノ", "ヒラギノ角ゴ ProN W3", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif, 'Apple Color Emoji', 'emojisymbols';
    font-size: 14px;
    line-height: 1;
    color: #484848;
}

body {
    background: url(https://dv6drgre1bci1.cloudfront.net/systemfiles.ranking-deli-kyujin.jp/assets/img/user/pc/common_2020/bg-left.svg), url(https://dv6drgre1bci1.cloudfront.net/systemfiles.ranking-deli-kyujin.jp/assets/img/user/pc/common_2020/bg-right.svg);
    background-repeat: no-repeat, no-repeat;
    background-attachment: fixed, fixed;
    background-size: 25%, 25%;
    background-position: 0% 0%, right;
    color: #1C1C1C;
}

html,
body { height: 100%; }

section {
    display: inline-block;
}

section h2 {
    position: relative;
    padding-left: 58px;
    line-height: 30px;
    font-size: 26px;
    font-weight: 600;
    margin-bottom: 30px;
}

section h2:before {
    content: "";
    position: absolute;
    top: -4px;
    left: 0;
    background-size: 60%;
    padding: 20px;
}

button:focus {
    outline: 0;
}

input[type="checkbox"], input[type="radio"] {
    display: none;
}

.text-color-darkblack {
    color: #1C1C1C;
}

.text-color-lightblack {
    color: #454545;
}

.bg-white {
    background-color: #fff !important;
}

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

/*--------------------------------------------------------------
header
---------------------------------------------------------------*/
#hdr {
    padding: 10px calc(50% - 481px);
    background: #FFFFFF 0% 0% no-repeat padding-box;
    box-shadow: 0px 1px 0px #E4E4E4;
    width: 962px;
    position: fixed;
    z-index: 98;
    color: white;
    box-sizing: content-box;
    opacity: 1;
}

#hdr h1 {
    display: inline-block;
    float: left;
    margin: 2px 14px;
    font-size: 12px;
    line-height: 35px;
    font-weight: bolder;
}

#hdr .logo {
    max-width: 101px;
    float: left;
}

#hdr .area {
    display: inline-block;
    margin: 4.5px 15px;
    font-size: 15px;
    background: #FFFFFF 0% 0% no-repeat padding-box;
    border: 1px solid #E4E4E4;
    text-align: center;
    width: 65px;
    height: 15px;
    padding: 7px 4px;
    border-radius: 5px;
    cursor: pointer;
    color: #7E7E7E;
    font-weight: 600;
    opacity: 1;
}

#hdr .area::before {
    color: #7E7E7E;
    font-weight: 600;
}

#hdr .keep {
    position: relative;
    padding: 10px 19px 10px 40px;
    background: #FFFFFF 0% 0% no-repeat padding-box;
    box-shadow: 0px 3px 3px #00000008;
    border: 1px solid #E4E4E4;
    border-radius: 5px;
    opacity: 1;
    color: #712626;
    font-weight: 600;
    display: inline-block;
}

#hdr .keep:before {
    position: absolute;
    content: "";
    left: 19px;
    top: 10px;
    background: url(https://dv6drgre1bci1.cloudfront.net/systemfiles.ranking-deli-kyujin.jp/assets/img/user/pc/common_2020/ico-star.svg) no-repeat;
    width: 14px;
    height: 14px;
}

#hdr .keep img {
    width: 14px;
    padding-bottom: 7px;
}

#hdr .keep .count {
    position: absolute;
    top: -11px;
    right: -12px;
    width: 17px;
    height: 17px;
    border: 1px solid #fff;
    border-radius: 50%;
    background: #ff455a;
    line-height: 16px;
    font-size: 12px;
    color: #fff;
    font-weight: normal;
    text-align: center;
    padding: 4px;
}

#hdr .login, #hdr .logout {
    float: right;
    padding: 10px 19px;
    border-radius: 4px;
    margin: 3px 0 3px 20px;
    font-weight: bold;
}

#hdr .login {
    background: #3ABFBF;
    color: white;
}

#hdr .logout {
    background: white;
    color: #712626;
}
/*--------------------------------------------------------------
パンくず
---------------------------------------------------------------*/
#header-bread {
    display: inline-block;
    padding: 15px calc(50% - 481px) 0;
    width: 962px;
    z-index: 999;
    margin: 60px auto 0;
}

.bread li {
    float: left;
    color: #969696;
    font-size: 13px;
    margin-right: 20px;
    line-height: 20px;
}

.bread li a {
    color: #969696;
    position: relative;
}

.bread li:not(:last-child) a:after {
    content: ">";
    position: absolute;
    color: #969696;
    font-size: 10px;
    right: -14px;
}

/*--------------------------------------------------------------
右下 fixed href
---------------------------------------------------------------*/
#page_top {
    border-radius:3px;
    width: 40px;
    height: 40px;
    position:fixed;
    left:auto;
    bottom:35px;
    z-index: 9999;
    right:5%;
    -webkit-box-shadow: 1px 1px 1px rgba(50, 50, 50,0.3);
    box-shadow:  1px 1px 1px rgba(50, 50, 50,0.3);
    /*margin:0 0 13px 1022px;*/
}

#campaign_tracking_banner {
    position:fixed;
    left:auto;
    bottom:15px;
    z-index: 9999;
    right:2.5%;
}

#campaign_tracking_banner img {
    width: 150px;
}

#music_tracking_banner {
    width: 150px;
    height: 159px;
    position: fixed;
    left: auto;
    bottom: 205px;
    z-index: 9999;
    right: 2.5%;
}

#music_tracking_banner img {
    width: 150px;
    height: 159px;
}

/*--------------------------------------------------------------
モーダルウィンドウ
---------------------------------------------------------------*/
.modal-content{
    position: fixed;
    display: none;
    z-index: 100;
    margin: 0;
    background: #FDFCF7;
    border-radius: 5px;
    left:15%;
    cursor: default;
    width: 500px;
}

.modal-content a.modal-close {
    display: block;
    font-size: 14px;
    color: #FFF;
    font-weight: bold;
    text-shadow: 1px 1px 0 rgba(0,0,0,0.4);
    padding-top: 0;
    position: absolute;
    top: 0;
    right: 0;
    padding: 5px 5px 0 0;
}

.modal-overlay {
    z-index:99;
    display:none;
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:120%;
    background-color:rgba(0,0,0,0.40);
}

.sns-btnClose-block{
    padding-top: 100px;

}

.sns-btnClose-text{
    font-size: 15px;
    color: #FFF;
    cursor : pointer;
    width: 70px;
    margin-right: 10px;
    display: block;
    margin-left: auto;
}


.sns-desc-upper{
    padding: 80px 70px 30px;
}

.sns-desc-upper.all-exist{
    height:660px;
}

.sns-desc-upper.qr-exist{
    height:470px;
}

.contact-message-copy-wrapper{
    background-color: #fff;
    padding: 40px 80px 40px;
}

.copy-messeage{
    background-color: #ffffff;
    margin-bottom: 30px;
    padding: 20px 30px 0;
    border-radius: 15px;
    border: solid;
    border-color: #efefef;
    border-width: 2px;
    height: 150px;
    position: relative;
}

.cm-txt{
    margin-bottom: 10px;
    font-size: 13px;
}

/*テンプレート見出し上の吹き出し*/
.cmct-comment-bubble {
    position: relative;
    display: inline-block;
    margin: 1em 0;
    padding: 7px 10px;
    min-width: 120px;
    max-width: 100%;
    color: #555;
    font-size: 12px;
    border-radius: 5px;
    background: #d9f4d3;
}

.cmct-comment-bubble:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -15px;
    border: 10px solid transparent;
    border-top: 10px solid #d9f4d3;
}

.cmct-comment-bubble p {
    margin: 0;
    padding: 0;
}

/*テンプレート見出し*/
.cmct-comment-subtitle{
    padding: 10px;
    font-size: 22px;
    font-weight: bold;
}

.cmct-comment-subtitle p{
    padding-bottom: 10px;
}

/*テンプレート手順説明文*/
.cmct-comment-procedure{
    padding: 15px 0px 15px 0px;
    position: relative;
}

.cmct-cp-txt{
    margin-bottom: 10px;
}

.cmct-cp-txt span{
    color: #17b005;
}

.cmct-cp-txt span:before{
    content: "";
    width: 13px;
    height: 40px;
    position: absolute;
    top: 12.5px;
    left: 58px;
    background: url(https://dv6drgre1bci1.cloudfront.net/systemfiles.ranking-deli-kyujin.jp/assets/img/user/sp/shop/ico-copy-g.svg);
    background-size: 100%;
    background-repeat: no-repeat;
}

/*テンプレートタブ部*/
.contact-message-copy-tab{
    max-width: 600px;
    margin: 0 auto;
}

.cmct-tab-list{
    display: flex;
    margin: 0 -1px 0 -1px;
}

.cmct-tab-list-item{
    width: 25%;
    text-align: center;
    padding: 8px 0;
    cursor: pointer;
    border: solid;
    border-width: 1px 1px 0 1px;
    border-color: #FFF;
    border-radius: 3px 3px 0 0;
    background-color: #f5f5f5;
    height: 30px;
    line-height: 1.15;
}

/*テンプレートコンテンツ部*/
.cmct-tab-contents-wrap {
    border: solid;
    border-width: 2px;
    border-color: #17b005;
    border-radius: 0 0 3px 3px;
    height: 520px;
}

.cmct-tab-contents-wrap.is-template-txtCopyOn{
    background-color: #f3fff3;
}

.cmct-tab-contents-wrap-talk.is-template-txtCopyOn-talk{
    background-color: #FFFDEC;
}

.cmct-tab-contents{
    display: none;
    text-align: left;
}

.cmct-tab-contents-message {
    padding: 20px;
    height: 450px;
}

.p-template-tab-space{
    margin-bottom: 20px;
}

.p-template-tab-sentense{
    line-height: 20px;
}

.cmct-is-btn-active{
    background-color: #17b005 !important;
    font-weight: bold;
    color: #fff;
}

.cmct-is-contents-active{
    display: block;
    position: relative;
}

#js-template-copy-txt{
    font-size: 16px;
    color:#17b005;
    font-weight: bold;
    text-align: center;
    margin-left: 30px;
}

#js-template-copy-txt:before{
    content: "";
    width: 20px;
    height: 90px;
    position: absolute;
    top: 485px;
    left: 125px;
    background: url(https://dv6drgre1bci1.cloudfront.net/systemfiles.ranking-deli-kyujin.jp/assets/img/user/sp/shop/ico-copy-g.svg);
    background-size: 100%;
    background-repeat: no-repeat;
}

.cmct-tab-contents-wrap.is-template-txtCopyOn #js-template-copy-txt:before{
    left: 110px;
}

/*カカオトーク：テンプレート見出し上の吹き出し*/
.cmct-comment-bubble-talk {
    position: relative;
    display: inline-block;
    margin: 1em 0;
    padding: 7px 10px;
    min-width: 120px;
    max-width: 100%;
    color: #555;
    font-size: 12px;
    border-radius: 5px;
    background: #fefad5;
}

.cmct-comment-bubble-talk:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -15px;
    border: 10px solid transparent;
    border-top: 10px solid #fefad5;
}

.cmct-comment-bubble-talk p {
    margin: 0;
    padding: 0;
}

/*カカオトーク：テンプレート見出し*/
.cmct-comment-subtitle-talk{
    padding: 10px;
    font-size: 22px;
    font-weight: bold;
}

.cmct-comment-subtitle-talk p{
    padding-bottom: 10px;
}

/*カカオトーク：テンプレート手順説明文*/
.cmct-comment-procedure-talk{
    padding: 15px 0px 15px 0px;
    position: relative;
}

.cmct-cp-txt-talk{
    margin-bottom: 10px;
}

.cmct-cp-txt-talk span{
    color: #412020;
}

.cmct-cp-txt-talk span:before{
    content: "";
    width: 13px;
    height: 40px;
    position: absolute;
    top: 12.5px;
    left: 58px;
    background: url(https://dv6drgre1bci1.cloudfront.net/systemfiles.ranking-deli-kyujin.jp/assets/img/user/sp/common/ico-kakao-copy.svg);
    background-size: 100%;
    background-repeat: no-repeat;
}

/*カカオトーク：テンプレートタブ部*/
.contact-message-copy-tab-talk{
    max-width: 600px;
    margin: 0 auto;
}

.cmct-tab-list-talk{
    display: flex;
    margin: 0 -1px 0 -1px;
}

.cmct-tab-list-item-talk{
    width: 25%;
    text-align: center;
    padding: 8px 0;
    cursor: pointer;
    border: solid;
    border-width: 1px 1px 0 1px;
    border-color: #FFF;
    border-radius: 3px 3px 0 0;
    background-color: #f5f5f5;
    height: 30px;
    line-height: 1.15;
}

/*カカオトーク：テンプレートコンテンツ部*/
.cmct-tab-contents-wrap-talk {
    border: solid;
    border-width: 2px;
    border-color: #412020;
    border-radius: 0 0 3px 3px;
    height: 520px;
}

.cmct-tab-contents-talk{
    display: none;
    text-align: left;
}

.cmct-tab-contents-message-talk {
    padding: 20px;
    height: 450px;
}

.p-template-tab-space-talk{
    margin-bottom: 20px;
}

.p-template-tab-sentense-talk{
    line-height: 20px;
}

.cmct-is-btn-talk-active{
    background-color: #412020 !important;
    font-weight: bold;
    color: #fff;
}

.cmct-is-contents-talk-active{
    display: block;
    position: relative;
}

#js-template-copy-txt-talk{
    font-size: 16px;
    color:#412020;
    font-weight: bold;
    text-align: center;
    margin-left: 30px;
}


#js-template-copy-txt-talk:before{
    content: "";
    width: 20px;
    height: 70px;
    position: absolute;
    top: 485px;
    left: 125px;
    background: url(https://dv6drgre1bci1.cloudfront.net/systemfiles.ranking-deli-kyujin.jp/assets/img/user/sp/common/ico-kakao-copy.svg);
    background-size: 100%;
    background-repeat: no-repeat;
}

.cmct-tab-contents-wrap-talk.is-template-txtCopyOn-talk #js-template-copy-txt-talk:before{
    left: 110px;
}

/*--------------------------------------------------------------
main content
---------------------------------------------------------------*/
#main_contents{
    display: inline-block;
    margin: 0 auto;
    width: 100%;
    min-height: calc(100vh - 215px);
    word-break: break-all;
}

.l-container {
    width: 100%;
    margin: 0 auto;
    position: relative;
}


/* mensesthe page */
:root {
    --mensesthe: #71D6D3;
    --mensesthe-hover: #F8FFFF;
    --mensesthe-light-bg: #F0FBFB;
    --mensesthe-dark-bg: #35BAB7;
    --mensesthe-text: #454545;
    --mensesthe-blue: #004574;
}

.mensesthe h1 {
    color: var(--mensesthe);
}

.mensesthe #hdr .area::before {
    content: "メンズエステ";
    position: absolute;
    display: block;
    font-size: 11px;
    color: #7E7E7E;
    font-weight: bold;
    margin-top: -17px;
}

.mensesthe #hdr .area {
    margin: 15px 15px 0;
    font-size: 13px;
    background: #FFFFFF 0% 0% no-repeat padding-box;
    border: 1px solid #E4E4E4;
    color: #7E7E7E;
    height: 13px;
    padding: 3px 4px;
    border-radius: 5px;
    font-weight: bold;
    opacity: 1;
}

.mensesthe #hdr .area + .keep {
    position: absolute;
    margin-top: 4px;
}

.mensesthe .mensestheBanner {
    margin: 9px calc(50% - 481px) 0;
}
.mensesthe .mensestheBanner img {
    width: 100%;
}

.mensesthe section.shop-list li[data-role="work_info"] dl.shopblock-work-info>dt {
    color: #CBCBCB;
}
