@charset "UTF-8";

/*!
 * animate.css -http://daneden.me/animate
 * Version - 3.6.0
 * Licensed under the MIT license - http://opensource.org/licenses/MIT
 *
 * Copyright (c) 2018 Daniel Eden
 */
html,
body {
    margin: 0;
}

#wrapper {
    overflow: hidden;
}

/* Project */
.p-main {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-feature-settings: "palt";
    font-smoothing: antialiased;
    position: relative;
    padding: 30px 0 0;
    color: #000000;
    width: 100%;
    margin: 0 auto;
}

@media screen and (min-width: 690px) {
    .p-main {
        font-size: 14px;
        letter-spacing: 1.2px;
    }
}

@media screen and (min-width: 980px) {
    .p-main {
        letter-spacing: 1.4px;
    }
}

.p-main * {
    box-sizing: border-box;
}

.p-main a {
    transition: all .3s linear 0s;
}

.p-main a:hover,
.p-main a:focus,
.p-main a:visited {
    color: inhrit;
    opacity: .7;
}

.p-main a.p-btn {
    border: none;
    background-color: #a50e6d;
    font-size: 14px;
    padding: 10px;
    position: static;
    color: #FFFFFF;
    text-decoration: none;
    display: block;
    max-width: 350px;
    margin: 20px auto;
    font-weight: 500;
}

@media screen and (min-width: 980px) {
    .p-main a.p-btn {
        font-size: 18px;
        padding: 8px;
    }
}

@media screen and (min-width: 980px) {
    .p-main .p-img-confetti {
        background-size: 96%;
    }
}

@media screen and (min-width: 1200px) {
    .p-main .p-img-confetti {
        background-size: auto;
    }
}


.p-main .p-line {
    background-position: top center;
    background-repeat: no-repeat;
    background-size: 680px;
    height: 40px;
}

@media screen and (min-width: 690px) {
    .p-main .p-line {
        background-size: 100%;
        height: 45px;
    }
}

@media screen and (min-width: 980px) {
    .p-main .p-line {
        height: 65px;
    }
}


.p-main .p-header {
    max-width: 80%;
    margin: 0 auto 75px;
    text-align: center;
}

.p-main .p-header *:last-child {
    margin-bottom: 0;
}

.p-main .p-header .p-header__img {
    margin-bottom: 0px;
}

.p-main .p-header .p-header__title {
    font-size: 22px;
    margin-top: 11%;
    margin-bottom: 35px;
    line-height: 1.6em;
}

.p-main .p-header .p-header__title2 {
    color: #363636;
    font-size: 100%;
    font-weight: 500;
    margin-top: 20px;
}

@media screen and (max-width: 980px) {
    .p-main .p-header {
        max-width: 100%;
    }
}

@media screen and (max-width: 480px) {
    .p-main .p-header {
        margin: 0 auto 40px;
    }

    .p-main .p-header .p-header__title {
        font-size: 17px;
    }

    .p-main .p-header .p-header__text {
        font-size: 14px;
    }

    .p-main .p-header .p-header__title2 {
        font-size: 16px;
    }
}

@media screen and (min-width: 980px) {
    .p-main .p-header .p-header__title {
        font-size: 22px;
        letter-spacing: 3.0px;
    }

    .p-main .p-header .p-header__title2 {
        font-size: 19px;
        font-weight: bold;
        letter-spacing: 0.1em;
    }
}

.p-main .p-header .p-header__text {
    color: #363636;
    font-size: 16px;
    line-height: 1.8em;
    letter-spacing: 0.1em;
}

@media screen and (max-width: 980px) {
    .p-main .p-header .p-header__text {
        font-size: 100%;
    }
}

.p-main .p-body {
    margin-bottom: 0px;
}

@media screen and (min-width: 980px) {
    .p-main .p-body {
        margin-bottom: 0px;
    }
}

.p-main .p-body .p-body__inner {
    max-width: 1040px;
    margin: 0 auto;
    text-align: center;
}

.p-main .p-body .p-date {
    max-width: 940px;
    margin: 0 auto;
    text-align: center;
    margin-left: -25px;
    margin-right: -25px;
    margin-bottom: 30px;
}

@media screen and (min-width: 690px) {
    .p-main .p-body .p-date {
        margin-left: auto;
        margin-right: auto;
        padding: 75px 0;
    }
}

.p-main .p-body .p-body__title {
    color: #00354f;
    margin-bottom: 30px;
}

@media screen and (min-width: 980px) {
    .p-main .p-body .p-body__title {
        margin-bottom: 45px;
    }
}

.p-main .p-body .p-body__contents>li {
    margin-top: 55px;
}


@media screen and (min-width: 980px) {
    .p-main .p-body .p-body__contents>li {
        margin-bottom: 20px;
        margin-top: 150px;
    }
}

@media screen and (min-width: 980px) {
    .bnr_souryou {
        text-align: center;
        margin-bottom: 200px;
    }
}

@media screen and (max-width: 980px) {
    .bnr_souryou {
        text-align: center;
        margin-bottom: 70px;
    }
}

.p-main .p-body .p-body__contents>li p {
    line-height: 1.8;
    margin-bottom: 50px;
    font-size: 20px;
}

@media screen and (max-width: 690px) {
    .p-main .p-body .p-body__contents>li p {
        margin-bottom: 35px;
        font-size: 100%;
    }
}

.p-main .p-body .p-this-description {
    max-width: 100%;
    margin: 0 auto;
    background-color: #FFFFFF;
    padding: 15px;
}

@media screen and (min-width: 980px) {
    .p-main .p-body .p-this-description {
        padding: 30px 0;
    }
}

.p-main .p-body .p-this-description ul.p-this-description__inner {
    color: #000000;
    font-size: 12px;
    text-align: left;
}

@media screen and (min-width: 690px) {
    .p-main .p-body .p-this-description ul.p-this-description__inner {
        display: inline-block;
    }
}

.p-main .p-body .p-this-description ul.p-this-description__inner li {
    padding-left: 35px;
    text-indent: -30px;
}

@media screen and (min-width: 690px) {
    .p-main .p-body .p-this-description ul.p-this-description__inner li {
        padding-left: 0;
        text-indent: 0;
    }
}

.cp_01 {
    width: 100%;
    margin: -100px auto 0;
}


@media screen and (max-width: 480px) {
    .cp_01 {
        margin: -67px auto 0;
    }
}

.cp_01_inner {
    background-color: #F9F9F9;
    margin: 0 -200%;
    padding: 13% 200% 7%;
    text-align: center;
}

.cp_ttl_01 {
    width: 50%;
    margin: 0 auto 5%;
}

.cp_01 .free {
    width: 100%;
    margin: 2% auto 0;
    max-width: 772px;
}

.cp_02 {
    width: 100%;
    margin: 0 auto 0;
    padding: 5.7% 0 0;
}

.cp_02 .cp_ttl_02 {
    width: 37%;
    margin: 0 auto;
}

.cp_02 .item_list_wapper {
    margin: 5% -200% 0;
    padding: 0 200%;
    text-align: center;
    background: -moz-linear-gradient(top left, #f7dee9, #f9d0c7);
    background: -webkit-linear-gradient(top left, #f7dee9, #f9d0c7);
    background: linear-gradient(to bottom right, #f7dee9, #f9d0c7);

}

.cp_02 .item_list {
    width: 93%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-content: space-between;
    flex-wrap: wrap;
    padding: 5.1% 0 6.5%;
}

.cp_02 .item_list .item {
    width: 24%;
    margin-bottom: 4%;
}

.cp_02 .item_list .item:nth-child(n + 8) {
    margin-bottom: 0;
}

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

    .cp_ttl_01 {
        margin: 0 auto 9%;
    }

    .cp_ttl_01,
    .cp_02 .cp_ttl_02 {
        width: 75%;
    }

    .cp_02 {
        padding: 15% 0 0;
    }

    .cp_02 .item_list_wapper {
        margin-top: 10%;
    }

    .cp_02 .item_list {
        width: 92%;
        padding: 10% 0;
    }

    .cp_02 .item_list .item {
        width: 48%;
    }

    .cp_01_inner {
        padding: 23% 200% 15%;
    }

    .cp_01 .free {
        margin: 6% auto 0;
    }


    .cp_02 .item_list .item:nth-child(n + 8) {
        margin-bottom: 4%;
    }

    .cp_02 .item_list .item:nth-child(n + 10) {
        margin-bottom: 0;
    }
}

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

    .cp_02 .item_list_wapper {
        margin-top: 10%;
    }
}

.fixed #fixedbox {
    max-width: 600px;
}

#fixedbox {
    max-width: 1170px;
    margin: auto;
    transition: 0.7s;
}

.cp_02_form {
    text-align: center;
    background: #F9F9F9;
    margin: 0px auto 190px;
    padding: 25px 0px;
    position: relative;
    height: 740px;
    margin: 0 -200%;
    padding: 0 200%;
    text-align: center;
}

.form_wapper {
    width: 80%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    max-width: 700px;
    z-index: 2;
}

.form_ttl {
    width: 60%;
    margin: 0 auto;
    padding: 10px 10px 5px;
}

.bk_r {
    position: absolute;
    bottom: 2%;
    width: 4%;
    right: 34%;
}

.bk_l {
    position: absolute;
    top: 2%;
    width: 4%;
    left: 34%;
}

@media screen and (max-width: 1500px) {
    .bk_l {
        left: 37%;
    }

    .bk_r {
        right: 37%;
    }
}


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

    .bk_l,
    .bk_r {
        width: 4%;
    }

    .bk_l {
        left: 39%;
    }

    .bk_r {
        right: 39%;
    }
}

@media screen and (max-width: 980px) {
    .bk_l {
        left: 38%;
    }

    .bk_r {
        right: 38%;
    }
}

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

    .bk_l,
    .bk_r {
        width: 5%;
    }
}


@media screen and (max-width: 680px) {
    .bk_l {
        width: 5%;
        left: 40%;
    }

    .bk_r {
        width: 5%;
        right: 40%;
    }
}

.form_btn {
    background-color: #f255a3;
    padding: 0.7em 0;
    display: block;
    width: 40%;
    margin: 0 auto 5%;
    color: #fff;
    transition: all 0.5s;
    text-decoration: none;
}

.form_btn a {
    color: #fff;
    font-size: 18px;
    font-weight: bold;
}

@media screen and (max-width: 680px) {
    .form_btn a {
        font-size: 14px;
    }
}

@media screen and (max-width: 460px) {
    .form_btn a {
        font-size: 12px;
    }
}

.form_btn:hover {
    background-color: #facfc5;
}

.form_step {
    margin: 0 auto 4%;
    width: 19%;
}

.form_step2 {
    margin: 7% auto 3%;
    width: 19%;
}

.form_ttl {
    margin: 0 auto 7%;
    width: 74%;
    padding: 0;
}

.form_txt {
    text-align: center;
}

.area {
    margin-top: 200px;
}

@media screen and (max-width: 680px) {
    .form_wapper {
        width: 80%;
        max-width: 450px;
    }

    .form_step {
        max-width: 17%;
        margin: 0 auto 3%;
    }

    .cam_02_form {
        margin: 0px auto 60px;
        padding: 0px 20px 25px;
    }

    .form_ttl {
        padding: 10px 0px;
        width: 80%;
    }
}

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

    .cp_02_form {
        height: 510px;
    }

    .form_ttl {
        width: 100%;
    }

    .form_step {
        max-width: 27%;
    }

    .form_wapper {
        max-width: 350px;
    }

    .form_btn {
        font-size: 12px;
        width: 40%;
    }

    .form_step,
    .form_step2 {
        width: 30%;
    }

    .form_step2 {
        margin: 12% auto 3%;
    }
}

@media screen and (max-width: 375px) {
    .form_wapper {
        max-width: 320px;
    }

    .bk_l {
        width: 6%;
        left: 39.7%;
    }

    .bk_r {
        width: 6%;
        right: 39.7%;
    }
}

@media screen and (max-width: 480px) {
    .form_ttl {
        width: 90%;
    }
}

.cp_03_ttl {
    width: 39%;
    margin: 0 auto;
}
.cp_03_bnr {
    width: 100%;
    max-width: 773px;
    margin: 7% auto 0;
}

.cp_03 {
    width: 100%;
    margin: 0 auto;
    padding-top: 100px;
}

@media screen and (max-width: 680px) {
    .cp_03_ttl {
        width: 80%;
    }
    .cp_03_bnr {
        width: 80%;
        padding-top: 20px;
    }
    .cp_03 {
        padding-top: 40px;
    }
}



/*}*/

.p_smp {
    margin: 0 auto;
    padding: 0px 0px 30px 0px;
    width: 90%;
    margin-top: 25px;
}

.p_smp_cam03 {
    margin: 0 auto;
    padding: 0px 0px 15px 0px;
    width: 100%
}

@media screen and (min-width: 980px) {
    .cam_ttl {
        margin: 0 auto 63px;
    }
}

@media screen and (min-width: 980px) {
    .cam_ttl {
        margin: 0 auto 63px;
    }
}

@media screen and (min-width: 680px) {
    .pc {
        display: block;
    }

    .sp {
        display: none;
    }
}

@media screen and (max-width: 680px) {
    .pc {
        display: none;
    }

    .sp {
        display: block;
    }
}

.p-main .p-body .p-this-description ul.p-this-description__inner li+li {
    margin-top: 12px;
}

.p-main .p-footer *:last-child {
    margin-bottom: 0;
}

.p-main .p-footer .p-footer {
    font-weight: 500;
    text-align: center;
}


/* Utility */
.u-hide_text {
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}

.u-clearfix:after,
.clearfix:after {
    content: "";
    display: block;
    clear: both;
}

.u-clear,
.clear {
    clear: both;
}

.u-fluid_img,
.fluid_img {
    max-width: 100%;
    height: auto;
}

.u-flo--left {
    float: left;
}

.u-flo--right {
    float: right;
}

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

.u-text--_right {
    text-align: right;
}

.u-text--center {
    text-align: center;
}

.u-font--xs {
    font-size: 60%;
}

.u-font--s {
    font-size: 80%;
}

.u-none {
    display: none;
}

@media screen and (min-width: 690px) {
    .u-sm-inline {
        display: inline;
    }
}

@media screen and (min-width: 980px) {
    .u-md-inline {
        display: inline;
    }
}

@media screen and (min-width: 690px) {
    .u-sm-block {
        display: block;
    }
}

@media screen and (min-width: 980px) {
    .u-md-block {
        display: block;
    }
}

@media screen and (min-width: 690px) {
    .u-sm-table {
        display: table;
    }
}

@media screen and (min-width: 980px) {
    .u-md-table {
        display: table;
    }
}

@media screen and (min-width: 480px) {
    .u-xs-none {
        display: none;
    }
}

@media screen and (min-width: 690px) {
    .u-sm-none {
        display: none;
    }
}

@media screen and (min-width: 980px) {
    .u-md-none {
        display: none;
    }
}

.u-font-xs {
    font-size: 60%;
}

.u-font-sm {
    font-size: 80%;
    margin-top: 3%;
    display: inline-block;
}

.u-font-md {
    /*font-weight: bold;*/
    font-size: 16px;
    display: block;
    margin-bottom: 3%;
    line-height: 1.6em;
}

.u-font-lg {
    font-weight: bold;
}

.u-font-lg-2 {
    font-size: 175%;
    font-weight: bold;
}

.u-font-xl {
    font-size: 250%;
    font-weight: bold;
    line-height: 110%;
}

.u-pos-relative {
    position: relative;
}

.present-li ul {
    overflow: hidden;
}

.present-li ul li {
    width: 48%;
    float: left;
    margin: 0% 1%;
}

.present-li ul li img {
    width: 100%;
}

@media screen and (max-width: 680px) {
    .u-font-md {
        margin-bottom: 4%;
    }
}

@media screen and (max-width: 480px) {
    .u-font-md {
        font-size: 11px;
    }

    .u-font-sm {
        font-size: 70%;
    }
}

@media screen and (min-width: 980px) {
    .present-li ul li {
        float: left;
    }
}

.bnr-li {
    display: flex;
    margin: 100px auto 0;
    width: 93%;
    justify-content: space-between;
    align-content: space-between;
    flex-wrap: wrap;
    padding-top: 105px;
    border-top: solid #e5e5e5 1px;
}

@media screen and (max-width: 1500px) {
    .bnr-li {
        width: 90%;
    }
}

@media screen and (max-width: 980px) {
    .bnr-li {
        width: 90%;
    }
}

.bnr-li div {
    width: 47%;
}

@media screen and (min-width: 690px) {
    .bnr-li ul li {
        width: 32%;
        float: left;
        margin: 0 0.5%;
    }
}

.bnr-li ul li img {
    max-width: 100%;
}

@media screen and (max-width: 690px) {
    .bnr-li ul li {
        padding: 10px 0;
        width: 80%;
        margin: 0 auto;
    }
}

@media screen and (max-width: 480px) {
    .bnr-li {
        margin: 40px auto 0;
        padding-top: 40px;
    }

    .bnr-li div {
        width: 90%;
        margin: 0 auto 6%;
    }
}

@media screen and (max-width: 375px) {
    .bnr-li {
        width: 98%;
    }
}

#fix_navi_box {
    width: 100%;
    margin: 0;
    background: #F9F9F9;
    padding: 0.5% 0;
}

#fix_navi_box #fix_fixedbox {
    transition: 0.7s;
    margin: 0 auto;
    max-width: 713px;
    display: flex;
    width: 29%;
    justify-content: space-between;
    align-content: space-between;
    flex-wrap: wrap;
    align-items: center;
}


#fix_navi_box #fix_fixedbox.nav-li div {
    width: 23%;
}

#fix_navi_box #fix_fixedbox.nav-li .logo {
    width: 14%;
}

@media screen and (max-width: 980px) {
    #fix_navi_box #fix_fixedbox div {
        width: 31%;
    }

    #fix_navi_box #fix_fixedbox {
        width: 40%;
    }
}

@media screen and (max-width: 680px) {
    #fix_navi_box #fix_fixedbox {
        width: 57%;
    }
}

@media screen and (max-width: 480px) {
    #fix_navi_box #fix_fixedbox {
        width: 75%;
    }

    #fix_navi_box #fix_fixedbox.nav-li .logo {
        width: 18%;
    }

    #fix_navi_box #fix_fixedbox.nav-li div {
        width: 24%;
    }
}

/*----------nav------------*/
#navi_box {
    width: 100%;
    margin: 0;
    background: #fff;
}

#navi_box #fixedbox {
    transition: 0.7s;
    margin: 0 auto 20px;
    max-width: 424px;
    display: flex;
    width: 60%;
    justify-content: space-between;
    align-content: space-between;
    flex-wrap: wrap;
}


#navi_box #fixedbox div {
    width: 31%;
}

@media screen and (max-width: 980px) {
    #navi_box #fixedbox div {
        width: 31%;
    }
}

.p-main img {
    width: 100%;
}


.cp_01 .coupon {
    text-align: center;
    width: 100%;
    max-width: 772px;
    margin: 0 auto;
}

.coupon_bnr {
    text-align: center;
    margin: 0 auto;
    padding: 0px;
}

.coupon_code {
    text-align: center;
    background-color: #F9F9F9;
    margin: 0 auto;
    padding: 15px 0px;
}

.coupon_txt {
    text-align: center;
    background-color: #1D2951;
    color: #F9F9F9;
    margin: 0 auto 50px;
    padding: 20px 20px 30px;
}

@media screen and (max-width: 690px) {
    .coupon_txt {
        margin: 0 auto 35px;
    }

    .cp_01 .coupon,
    .cp_01 .free {
        width: 80%;
    }

}



.btn-login {
    margin: 7% 0 7% 0;
}

.btn-login div {
    text-align: center;
    margin: 0 0 5% 0;
}

.btn-login div img {
    max-width: 100%;
}

@media screen and (min-width: 980px) {
    .btn-login {
        overflow: hidden;
        margin: 3% 0 3% 0;
    }

    .btn-login .left {
        float: left;
        width: 50%;
        text-align: left;
        padding: 0 1% 0 0;
    }

    .btn-login .right {
        float: left;
        width: 50%;
        text-align: right;
        padding: 0 0 0 1%;
    }
}

.p-main .p-body .p-this-description {
    margin: 0 auto 90px;
    background-color: #FFFFFF;
    padding: 15px;
}

@media screen and (min-width: 980px) {
    .p-main .p-body .p-this-description {
        padding: 30px;
        margin: 0 0 90px 0;
    }
}

.p-main .p-body .p-this-description ul.p-this-description__inner {
    color: #000000;
    font-size: 12px;
    text-align: left;
}

@media screen and (min-width: 690px) {
    .p-main .p-body .p-this-description ul.p-this-description__inner {
        display: inline-block;
    }
}

.p-main .p-body .p-this-description ul.p-this-description__inner li {
    padding-left: 35px;
    text-indent: -30px;
}

@media screen and (min-width: 690px) {
    .p-main .p-body .p-this-description ul.p-this-description__inner li {
        padding-left: 0;
        text-indent: 0;
    }
}

.p-main .p-body .p-this-description ul.p-this-description__inner li+li {
    margin-top: 12px;
}

/*================================================================================

state

================================================================================*/
.is-fade-in {
    transition: opacity 0.2s linear;
    opacity: 1 !important;
}

.is-fade-out {
    transition: opacity 0.6s ease-in-out;
    opacity: 0 !important;
}

.is-fade-out--long {
    transition: opacity 1s ease-in-out;
    opacity: 0 !important;
}

.cam_03_none {
    padding: 20px;
}

@media screen and (min-width: 690px) {
    .cam_03_none {
        padding: 0px;
        margin: 0 0 170px 0;
    }
}



.coupon {
    text-align: center;
    color: #000;
    font-size: 14px;
    line-height: 1.8;
}

.margin_none {
    margin: 0;
}

@media screen and (min-width: 690px) {
    .coupon {
        font-size: 16px;
    }
}

.coupon .coupon__title {
    margin: 0;
}

.coupon .coupon__title img {
    vertical-align: bottom;
}

.coupon .coupon__inner {
    max-width: 100%;
    margin: 0 auto;
}

@media screen and (min-width: 690px) {
    .coupon .coupon__inner {}
}

.coupon .coupon__code {
    background-color: #FFFFFF;
    color: #000;
    font-size: 18px;
    width: 100%;
    margin: 0;
}

.coupon .coupon__code .p-coupon__code-wide {
    font-size: 25px;
    font-weight: bold;
}

.coupon .coupon__code .clipboard-succes {
    font: 18px;
}

@media screen and (max-width: 480px) {
    .coupon .coupon__code {
        font-size: 13px;
        padding: 1em 0;
    }

    .coupon .coupon__code .p-coupon__code-wide {
        font-size: 19px;
    }
}

@media screen and (min-width: 690px) {
    .coupon .coupon__code {
        font-size: 20px;
        font-weight: bold;
        padding: 1em;
        line-height: 1.6em;
    }
}

.banner-coupon {
    position: fixed;
    top: 0;
    left: 0;
    display: none;
}

@media screen and (min-width: 690px) {
    .banner-coupon {
        top: 20%;
        left: auto;
        right: 0;
    }
}

.clipboard-success {
    display: none;
    margin: 0 0 0 8px;
    font-size: .9em;
}

.p-coupon {
    text-align: center;
    max-width: 1170px;
    margin: 0 auto 3% auto;
    background: #085da3;
    color: #fff;
    padding: 60px 0 40px 0;
}

.p-coupon .p-coupon__title {
    margin-bottom: 50px;
    margin: auto;
    padding: 0 7%;
}

@media (min-width: 768px) {
    .p-coupon .p-coupon__title {
        max-width: 680px;
        padding: 0 0;
    }
}

.p-coupon .p-couppon__txt {
    padding: 0 5%;
    font-size: 10px;
    line-height: 1.9em;
}

.p-coupon .p-coupon__title .rogo-keith {
    display: block;
    padding-bottom: 25px;
    border-bottom: 5px solid #eeeeee;
    margin-bottom: 25px;
    padding-left: 30px;
    padding-right: 30px;
}

@media (min-width: 768px) {
    .p-coupon .p-coupon__title .rogo-keith {
        padding-left: 0;
        padding-right: 0;
    }
}

.p-coupon .p-coupon__code {
    font-size: 22px;
    text-align: center;
    padding: 13px;
    background-color: #fff;
    margin: 5% 5%;
    color: #085da3;
    font-weight: bold;
    line-height: 1.65;
}

.p-coupon .p-coupon__code .p-coupon__code-wide {
    font-size: 1.5em;
    letter-spacing: 0.1em;
}

@media (min-width: 768px) {
    .p-coupon .p-couppon__txt {
        padding: 0 5%;
        font-size: 14px;
        line-height: 1.7em;
    }
}


/* for Scroll Fix Header */

header {
    width: 100%;
    text-align: center;
}

.fix-header,
.fix-header-sp {
    top: -66px;
    /* 上に隠す鷹さ */
    left: 0;
    text-align: center;
    width: 100%;
    margin: 0 auto;
    color: #fff;
    position: fixed;
    opacity: 0;
    /*  最初読み込んだときは透過 */
    z-index: 1000;
    /*　他のアイテムに対して最上位のレイヤーになるように */
    /*  opacity: 0; */
}

.fix-header-sp

/* micro clearfx */
.cf:before,
.cf:after {
    content: "";
    display: table
}

.cf:after {
    clear: both
}

.cf {
    zoom: 1
}

/* For IE 6/7 */

nav {
    width: 100%;
    background-color: #646464;
}

.nav-container {
    width: 800px;
    margin: 0 auto;
}

nav ul {
    padding: 0;
    list-style: none;
}

nav ul li {
    float: left;
    margin: 10px 30px 10px 0;
}

nav ul li a,
nav ul li a:visited {
    color: #fff;
    text-decoration: none;
}

article {
    margin: 20px auto;
}

/* IG campaign */
.cp_ig {
    width: 90%;
    margin: 8% auto 0;
    text-align: center;
    padding-top: 8%;
    border-top: solid #e5e5e5 1px;
}

.cp_ig .ig_ttl {
    width: 46%;
    margin: 0 auto 5%;
}

.cp_ig .ig_bnr {
    width: 100%;
    margin: 0 auto;
}

.cp_ig .ig_txt_wapper {
    width: 100%;
    margin: 0 auto;
}

.cp_ig .ig_txt_wapper .ig_txt {
    font-size: 15px;
    line-height: 1.6em;
    margin: 0 auto;
    text-align: center;
    margin: 5% auto;
}

.cp_ig .ig_txt_wapper .ig_txt span {
    font-size: 18px;
}

.cp_ig .ig_txt_wapper .ig_step {
    width: 63%;
    display: flex;
    justify-content: space-between;
    align-content: space-between;
    flex-wrap: wrap;
    margin: 0 auto;
}

.cp_ig .ig_txt_wapper .ig_step div {
    width: 49%;
}

@media screen and (max-width: 768px) {
    .cp_ig .ig_txt_wapper .ig_step {
        width: 80%;
    }

}


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

    .cp_ig {
        margin: 12% auto 0;
        padding-top: 12%;
    }

    .cp_ig .ig_ttl {
        width: 75%;
        margin: 0 auto 11%;
    }

    .cp_ig .ig_txt_wapper .ig_step {
        width: 90%;
    }

    .cp_ig .ig_txt_wapper .ig_txt {
        font-size: 13px;
        margin: 10% auto;
    }

    .cp_ig .ig_txt_wapper .ig_txt span {
        font-size: 15px;
    }

}

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

    .cp_ig .ig_txt_wapper .ig_txt {
        font-size: 12px;
    }

    .cp_ig .ig_txt_wapper .ig_txt span {
        font-size: 14px;
    }

    .cp_ig .ig_txt_wapper .ig_step {
        width: 100%;
    }

}

@media screen and (max-width: 375px) {
    .cp_ig {
        width: 98%;
    }

    .cp_ig .ig_bnr {
        width: 90%;
    }

    .cp_ig .ig_txt_wapper .ig_step {
        width: 90%;
    }
}