@charset "utf-8";

/*============================
       DMM Style Sheet
==============================*/


/* deviceInfo下 spacer.gifの非表示 */

img[src="http://p.dmm.co.jp/p/spacer.gif"] {
    display: none;
}

/* base.cssの打ち消し */

#footer {
    margin-top: 0;
    background: url(http://p.dmm.co.jp/p/deai/top/guest/usableservice/bg_pattern.png);
}

#w .d-announcement {
    margin: 0 0 28px;
}

/* ページ下スクロールバーの削除 */
/* メインビジュアル上左右の余白の削除 */

.deaiMainContents {
    background-image: url(http://p.dmm.co.jp/p/deai/top/guest/usableservice/bg_pattern.png);
    margin: -15px -12px 0;
}


/* 
    共通ボタンの変更点
*/

/* 無料新規会員登録ボタン */

.deaiMainContents--guest .btnPrimary.btnPrimary--pink {
    font-size: 23px;
}

/* マージンの付与 (DMMゲストのBox内のボタン間のマージンを付与)*/

.mainVisual.mainVisual--guest .btnPrimary {
    margin-bottom: 10px;
}

/* クレカ未登録の共通ボタンの文字間隔が広いため */

.mainVisual.mainVisual--memberNonCredit .btnPrimary--white {
    letter-spacing: -1px;
}

/* ボタンの幅 ボタン間の余白 */

.usableServiceBottom__btn .btnPrimary {
    width: 670px;
    margin-bottom: 18px;
}

.usableServiceBottom__btn .btnSecondary {
    width: 360px;
}


/* -----------------------

        Main Visual

------------------------- */


.mainVisual {
    width: 100%;
    height: 487px;
    position: relative;
    overflow: hidden;
}

/* DMMゲスト メインビジュアルの高さ */

.mainVisual.mainVisual--guest,
.mainVisual.mainVisual--guest .mainVisual__inner {
    height: 433px;
}

/* 背景画像範囲外の背景色　*/

.mainVisual::before {
    position: absolute;
    content: '';
    left: 0;
    width: 100%;
    height: 430px;
    background-color: #E6F1FF;
    z-index: 1;
}

.mainVisual.mainVisual--guest::before {
    height: 380px;
}

/* 背景画像 */

.mainVisual__inner {
    position: absolute;
    left: 50%;
    width: 2000px;
    margin-left: -1000px;
    z-index: 3;
    height: 487px;
    background: url(http://p.dmm.co.jp/p/deai/top/guest/mainvisual/bg_main_visual.png) bottom no-repeat;
}

/* モデルの画像 */

.mainVisual__picFemale {
    position: absolute;
    width: 521px;
    height: 479px;
    left: 50%;
    bottom: 8px;
    margin-left: -57px;
    background: url(http://p.dmm.co.jp/p/deai/top/guest/mainvisual/pic_main_visual_guest_female.png) bottom no-repeat;
    background-size: 521px 479px;
}
.mainVisual__picLogo--nologin {
    position: relative;
    bottom: -5%;
    left: 50%;
    width: 521px;
    margin-left: -25px;
}

/* 吹き出しテキスト画像 */

.mainVisual__picFemale img {
    position: absolute;
    left: 50%;
    top: 45px;
    margin-left: -230px;
    z-index: 1;
}

.mainVisual.mainVisual--member .mainVisual__picFemale img,
.mainVisual.mainVisual--memberNonCredit .mainVisual__picFemale img{
    top: 0;
    margin-left: -230px;
}

/* 追加用ラインの追加*/

.mainVisual::after {
    position: absolute;
    content: '';
    left: 0;
    bottom: 54px;
    width: 100%;
    height: 9px;
    background: url(http://p.dmm.co.jp/p/deai/top/guest/mainvisual/line_pattern.jpg);
    background-size: contain;
    z-index: 2;
}

.mainVisual.mainVisual--guest::after {
    bottom: 54px;
}


/*
    box (ポイントの情報やログイン、新規登録の案内)
*/

.mainVisual__box {
    position: absolute;
    top: 35px;
    left: 50%;
    width: 320px;
    z-index: 1;
    border-radius: 10px;
    padding: 0 30px 30px;
    margin-left: -420px;
}

.mainVisual.mainVisual--member .mainVisual__box {
    top: 28px;
}

/* Box内 border */

.sumGetPoint {
    position: relative;
    padding: 5px 0 15px;
}

.sumGetPoint::after {
    content: '';
    position: absolute;
    bottom: -3px;
    left: 0;
    background: url(http://p.dmm.co.jp/p/deai/top/guest/mainvisual/pint_line.png) no-repeat;
    width: 100%;
    height: 15px;
}

.sumGetPoint__picMore {
    position: absolute;
    left: -78px;
    bottom: 10px;
}

.sumGetPoint__text {
    font-size: 15px;
    color: #fff;
    text-align: center;
}

.sumGetPoint__spotlight {
    font-size: 20px;
    color: #fff54d;
}

.mainVisual__picCredit {
    padding-top: 24px;
    padding-bottom: 10px;
}

/* 初回ポイント画像 */

.mainVisual__picGetPoint {
    position: relative;
    padding: 10px 0;
}

/* 異なる3つのサービスでDMMポイント... 画像 */

.mainVisual__picRegist {
    padding: 10px 0 15px;
    text-align: center;
}

/* 現在のポイント */

.statePoint {
    background-color: #fff;
    padding: 10px 30px;
    margin: 0 -30px;
    font-weight: bold;
    color: #525d6f;
}

/* タイトル */

.statePoint__title {
    position: relative;
    font-size: 15px;
    padding-left: 26px;
    padding-bottom: 5px;
}

/*　タイトル左側の p アイコン */

.statePoint__title::before {
    position: absolute;
    left: 0;
    top: 2px;
    content: '';
    background-image: url(http://p.dmm.co.jp/p/sp/deai/top/guest/mainvisual/ico_point.png);
    background-size: 18px 18px;
    width: 18px;
    height: 18px;
}

/* テキスト */

.statePoint__text {
    position: relative;
    padding: 5px 15px;
    font-size: 12px;
    border-radius: 5px;
    background-color: #ebf5fe;
}

/* テキスト内のコロン */

.statePoint__text::before {
    content: ':';
    position: absolute;
    left: 50%;
    margin-left: -50px;
}

/* DMM出会いとDMM共通の間 */

.statePoint__text + .statePoint__text {
    margin-top: 5px;
}

/* ポイント数 */

.statePoint__text > span {
    position: absolute;
    right: 15px;
    font-size: 14px;
}

/* 星の画像 */

.mainVisual__picGetPoint::after {
    position: absolute;
    left: -24px;
    bottom: 11px;
    content: '';
    background-image: url(http://p.dmm.co.jp/p/deai/top/guest/mainvisual/effect_stars.png);
    background-size: 191px 58px;
    width: 191px;
    height: 58px;
}

/* 最大ポイント画像 */

.mainVisual__picMaxPoint {
    position: absolute;
    content: '';
    right: -80px;
    bottom: 43px;
    width: 113px;
    height: 132px;
    margin-bottom: 0;
    z-index: -1;
}

/* 
    Modifier Box Color
*/

.mainVisual__box.mainVisual__box--white {
    background-color: rgba(255, 255, 255, .7);
}


.mainVisual__box.mainVisual__box--pink {
    background-color: rgba(237, 62, 128, .7);
}


/*
    500PTモーダル
*/

.pointModal {
    width: 500px;
    padding: 36px 36px 40px;
    border-radius: 10px;
}

.pointModal__text {
    position: relative;
    margin: 30px 0 34px;
    font-size: 20px;
    font-weight: bold;
    color: #525d6f;
    line-height: 1;
    letter-spacing: 2px;
}

/* 文字下の矢印 */

.pointModal__text::before {
    content: '';
    position: absolute;
    right: 0;
    left: 0;
    bottom: -22px;
    margin: auto;
    width: 16px;
    height: 16px;
    border-top: solid 2px #525d6f;
    border-right: solid 2px #525d6f;
    transform: rotate(135deg);
}

.pointModal .btnPrimary {
    width: 416px;
}


/* -----------------------

        大手3サービス
        (usableService)

------------------------- */


/* topとbottom 共通のスタイル */

.usableServiceTop__inner,
.usableServiceBottom__inner {
    width: 1024px;
    margin: 0 auto;
    color: #525d6f;
}

/* 見出し */

.deaiMainContents .usableServiceHeading {
    font-size: 35px;
    font-weight: normal;
    text-align: center;
    margin-top: 0;
    margin-bottom: 25px;
}

.usableServiceHeading__spotlight {
    position: relative;
    color: #df4b83;
}

.usableServiceHeading__small {
    font-size: 28px;
}


/* 
    usableServiceTop 
*/

.usableServiceTop__inner {
    position: relative;
    padding: 30px 0 45px;
}

/* プレビュー画像 (usableServiceTop 左下) */

/* 携帯画像 */

.usableServiceTop__inner::before {
    position: absolute;
    bottom: 0;
    left: 50%;
    margin-left: -200px;
    content: '';
    width: 200px;
    height: 315px;
    background: url(http://p.dmm.co.jp/p/deai/top/guest/usableservice/bg_phone.png) no-repeat;
    z-index: 2;
}

/* パソコン画像 */

.usableServiceTop__inner::after {
    position: absolute;
    bottom: 0;
    left: -255px;
    content: '';
    width: 644px;
    height: 289px;
    background: url(http://p.dmm.co.jp/p/deai/top/guest/usableservice/bg_pc.png) no-repeat;
}

/* 文字上の点 */

/* 3つの点 */

.usableServiceTop .usableServiceHeading__spotlight::after {
    position: absolute;
    top: -18px;
    left: 17px;
    content: '';
    width: 95px;
    height: 6px;
    background: url(http://p.dmm.co.jp/p/deai/top/guest/usableservice/pic_circle_sm.png) no-repeat;
}

/* 4つの点 */

.usableServiceTop .usableServiceHeading__spotlight.usableServiceHeading__spotlight--fourDot::after {
    top: -20px;
    left: 17px;
    width: 130px;
    height: 6px;
    background: url(http://p.dmm.co.jp/p/deai/top/guest/usableservice/pic_circle.png) no-repeat;
}

/* 共通ポイントの説明画像 */

.usableServiceTop__service {
    position: relative;
    left: 50px;
    width: 554px;
    float: left;
    z-index: 2;
}

/* 大手3サービス画像の位置調整 */

.usableServiceTop__picService {
    position: absolute;
    top: 75px;
    right: 97px;
    width: 184px;
}

.usableServiceTop__picService img {
    position: relative;
    width: 100%;
}

/* イククル画像 */

.usableServiceTop__picService img + img {
    bottom: 24px;
}

/* YYC画像 */

.usableServiceTop__picService img:last-child {
    bottom: 48px;
}

/* 丸 + キラキラ + 矢印をまとめた画像 */

.usableServiceTop__commonPoint {
    position: relative;
    top: 60px;
    left: 65px;
    width: 273px;
    height: 257px;
    z-index: 2;
}

/* 説明テキストbox */

.usableServiceTopDesc {
    float: left;
    width: 360px;
    margin-left: 10px;
}

.usableServiceTopDesc__title {
    font-size: 20px;
    padding-bottom: 15px;
    line-height: 1.4;
}

.usableServiceTopDesc__title span {
    color: #df4b83;
}

.usableServiceTopDesc__text {
    font-size: 14px;
    padding-bottom: 25px;
    line-height: 1.7;
}

/* 説明テキストboxのfloatを解除*/

.usableServiceTop__body::after {
    content: '';
    display: block;
    clear: both;
}


/*
    usableServiceBottom
*/

.usableServiceBottom {
    background-color: #f5fafe;
}

/* usableServiceBottom全体　上の余白　*/

.usableServiceBottom__inner {
    padding: 45px 0 50px;
}

/* サービス一覧上 余白 */

.deaiMainContents .usableServiceBottom__body {
    width: 910px;
    margin: 0 auto 35px;
    margin-bottom: 35px;
    padding-left: 0;
}

.usableServiceBottom__body::after {
    content: '';
    display: block;
    clear: both;
}

.usableServiceBottom__col {
    list-style-type: none;
    float: left;
    width: 33.33%;
    padding-bottom: 25px;
    box-sizing: border-box;
}

.usableServiceBottom__col + .usableServiceBottom__col {
    border-left: 1px solid rgba(82, 93, 111, .2);
}

.usableServiceBottom__box {
    text-align: center;
}

.usableServiceBottom__text {
    font-size: 14px;
    color: #525d6f;
    width: 220px;
    margin: 0 auto;
    text-align: left;
}

.usableServiceBottom__box img {
    padding-bottom: 25px;
}

.usableServiceBottom__btn {
    text-align: center;
}


/* -----------------------

        出会うまでのSTEP

------------------------- */


.stepsMeeting {
    padding: 60px 0 55px;
    background: url(http://p.dmm.co.jp/p/deai/top/guest/steps/bg_steps.jpg) no-repeat top center #ddf6ff;    background-size: 2000px 755px;
    text-align: center;
    box-sizing: border-box;
}

.deaiMainContents .stepsMeetingHeading {
    position: relative;
    display: inline-block;
    margin: 0 0 35px;
    font-size: 35px;
    color: #525d6f;
    font-weight: normal;
    line-height: 1;
}

.stepsMeetingHeading__small {
    font-size: 35px;
}

.stepsMeetingHeading__spotlight {
    color: #df4b83;
}

.stepsMeetingHeading::before,
.stepsMeetingHeading::after {
    position: absolute;
    content: '';
    width: 39px;
    height: 52px;
    background-repeat: no-repeat;
}

.stepsMeetingHeading::before {
    top: -32px;
    left: -54px;
    background-image: url(http://p.dmm.co.jp/p/deai/top/guest/steps/ico_steps_capt_left.png);
}

.stepsMeetingHeading::after {
    bottom: -24px;
    right: -50px;
    background-image: url(http://p.dmm.co.jp/p/deai/top/guest/steps/ico_steps_capt_right.png);
}

.stepsMeeting__box {
    margin: 0 auto;
    padding: 0 55px;
    width: 860px;
}

.deaiMainContents .stepsMeeting__list {
    margin: 0 0 45px;
    padding: 0;
}

.stepsMeeting__list::after {
    content: "";
    clear: both;
    display: block;
}

.stepsMeeting__item {
    float: left;
    position: relative;
    margin-right: 55px;
    width: 250px;
    list-style-type: none;
}

.stepsMeeting__list .stepsMeeting__item:last-child {
    margin-right: 0;
}

.stepsMeeting__list .stepsMeeting__item:not(:first-child)::before {
    position: absolute;
    content: '';
    top: 24px;
    left: -134px;
    width: 212px;
    height: 12px;
    background: url(http://p.dmm.co.jp/p/deai/top/guest/steps/arrow_steps.gif) no-repeat;
}

.stepsMeeting__title {
    margin-bottom: 15px;
    font-size: 18px;
    font-weight: bold;
    color: #525d6f;
    line-height: 1;
}

.stepsMeeting__title::before {
    content: '';
    display: block;
    margin: 0 auto 10px;
    width: 30px;
    height: 30px;
    background-repeat: no-repeat;
}

.stepsMeeting__item.stepsMeeting__item--search .stepsMeeting__title::before {
    background-image: url(http://p.dmm.co.jp/p/deai/top/guest/steps/ico_search.png);
}

.stepsMeeting__item.stepsMeeting__item--mail .stepsMeeting__title::before {
    background-image: url(http://p.dmm.co.jp/p/deai/top/guest/steps/ico_mail.png);
}

.stepsMeeting__item.stepsMeeting__item--meeting .stepsMeeting__title::before {
    background-image: url(http://p.dmm.co.jp/p/deai/top/guest/steps/ico_meeting.png);
}

.stepsMeeting__text {
    margin-top: 12px;
    font-size: 15px;
    color: #525d6f;
    line-height: 1.55;
}

.stepsMeeting__text em {
    font-style: normal;
    font-weight: bold;
}

.stepsMeeting__btn {
    margin: 0 auto;
    width: 700px;
}


/* -----------------------

        スマホ＆携帯からもアクセスできる!
        (deviceInfo)

------------------------- */


.deviceInfo {
    padding: 40px 0 30px;
    text-align: center;
}

.deviceInfoHeading {
    margin: 0 0 32px;
    font-size: 35px;
    font-weight: normal;
    color: #525d6f;
    line-height: 1;
}

.deviceInfoHeading__small {
    font-size: 25px;
}

.deviceInfo__box {
    width: 916px;
    margin: 0 auto;
    padding: 22px 0 5px;
    background: #eef5fa;
}

.deviceInfo__row {
    margin: 0 auto 20px;
    width: 617px;
    font-size: 0;
}

.deviceInfo__item {
    display: inline-block;
    position: relative;
}

.deviceInfo__item img {
    vertical-align: middle;
}

.deviceInfo__row .deviceInfo__item:first-of-type {
    padding-right: 30px;
}

.deviceInfo__row .deviceInfo__item:last-child {
    padding-left: 30px;
}

.deviceInfo__item img:first-child {
    margin-right: 30px;
}

.mailsend__ttl {
    float: left;
    margin-right: 14px;
    font-size: 14px;
    color: #525d6f;
    line-height: 30px;
}

.mailsend__formBox input {
    vertical-align: top;
}

.mailsend__formBox input[name=address] {
    width: 142px;
    height: 28px;
    padding: 0 8px;
    appearance: none;
    border: 1px solid #d0d5dd;
    outline: none;
    border-radius: 5px;
    color: #525d6f;
    font-size: 12px;
}

.mailsend__at {
    margin: 0 4px;
    font-size: 14px;
    color: #525d6f;
}

.mailsend__formBox select {
    margin-right: 5px;
    padding: 0 8px;
    width: 105px;
    height: 28px;
    appearance: none;
    border: 1px solid #d0d5dd;
    outline: none;
    border-radius: 5px;
    color: #525d6f;
    font-size: 12px;
    background: url(http://p.dmm.co.jp/p/deai/top/member/sidebar/ico_selectbox.png) no-repeat #fff right 5px center;
    box-sizing: inherit;
}

.mailsend__formBox select::-ms-expand {
    display: none;
}

.mailsend__submitBtn {
    position: relative;
    padding: 0;
    width: 60px;
    background: #3295d3;
    color: #fff;
    font-size: 12px;
    border: none;
    border-bottom: 2px solid #1c6897;
    border-radius: 5px;
    line-height: 27px;
    vertical-align: top;
}

.mailsend__submitBtn:hover {
    top: 2px;
    border: none;
}
/*キャンペーン告知エリア*/
.campaignArea {
    padding: 30px 0 50px;
    color: #525d6f;
    text-align: center;
}
.campaignArea__bnr {
    margin: 0 auto;
    text-align: center;
}
.campaignArea__text {
    padding-top: 10px;
    font-size: 20px;
    font-weight: bold;
}
.campaignArea__spotlight {
    color: #df4b83;
}