@charset "UTF-8";

.card-border {
    padding-top: 0 !important;
}

.card-payment .annotation {
    padding: 0 !important;
}

/* common start */

/* .common-w {
    width: 93.33%; 
} */

.dp-none-sp {
    display: none;
}

h1,h2,h3,p,div,span {
    font-family: "Noto Sans CJK JP";
}

.font-family2 {
    font-family: "[PUDShinGoCOnizPr6N]";
}

.container {
    width: auto;
}

.wrapper {
    width: auto;
    margin: 0 auto;
}

.lg-title {
    text-align: center;
    font-size: 60px;
}

.text-color {
    color: #e60012;
}

.underline {
    /* background: linear-gradient(transparent 68%, #ffda30 30%);
    display: inline-block; */
    background: linear-gradient(transparent 60%, #ffda30 0%);
    display: inline;
    padding: 0 1px 0px;
}

.star-text::before {
    content: "";
    display: inline-block;
    vertical-align: middle;
    width: 50px;
    height: 50px;
    background: url(/img/usr/event/miles/star1.png) no-repeat;
    background-size: contain;
    margin-right: 10px;
}

.star-text::after {
    content: "";
    display: inline-block;
    vertical-align: middle;
    width: 50px;
    height: 50px;
    background: url(/img/usr/event/miles/star2.png) no-repeat;
    background-size: contain;
    margin-right: 10px;
}

.miles-icon::before {
    content: "";
    display: inline-block;
    vertical-align: middle;
    width: 50px;
    height: 50px;
    background: url(/img/usr/event/miles/miles_icon1.png) no-repeat;
    background-size: contain;
    margin-right: 10px;
}

.miles-icon::after {
    content: "";
    display: inline-block;
    vertical-align: middle;
    width: 50px;
    height: 50px;
    background: url(/img/usr/event/miles/miles_icon2.png) no-repeat;
    background-size: contain;
    margin-right: 10px;
}

.title-img {
    text-align: center;
    max-width: 700px;
    margin: 0 auto;
}

.lg-btn {
    width: 800px;
    padding: 30px 40px;
    background-color: #e60012;
    border-color: #e60012;
    display: block;
    margin: 0 auto;
    border-radius: 48px;
}

.lg-btn a {
    color: #FFF;
    display: block;
    font-size: 30px;
}

.lg-btn a .link-icon {
    margin-left: 10px;
}

.common-warp  {
    background-color: #f9f7ef;
    text-align: center;
    /* padding: 110px 0; */
    padding: 14.5vw 0;
}

.Btn{
    margin: 0 auto;
    /* width: 800px; */
    max-width: 700px;
    position: relative;
    /* border: 1px solid #000; */
    /* margin-top: 40px; */
    display: block;
    /* width: 240px; */
    /* padding: 20px 0; */
    text-align: center;/*テキスト中央寄せ*/
    color: #fff;
    /* font-size: 30px; */
    font-size: 4vw;
    /* padding: 31px 37px; */
    padding: 4.42% 5.28%;
    background-color: #e60012;
    border-radius: 70px;
    font-weight: bold;
    box-shadow: 2px 6px #d4d4d4;
  }
  .Btn-Icon{
    position: absolute;
    top: 50%;
    right: 5.06%;/*右からの距離*/
    width: 4%;/*アイコンの横幅指定*/
    transform: translateY(-50%);/*この指定で上下中央に*/
  }

.pane-left-menu {
    display: none;
}

.page-event .pane-contents .container .pane-main {
    width: auto;
}

#header {
    margin: 0;
}

.new-line-sp {
    display: block;
}
/* common end */

/* main start  */
.main-warp .main {
    display: none;
}

.main-warp .main-sp {
    display: block;
}

.page-event .pane-contents .container .pane-main {
    width: 100%;
    margin: 0 auto;
}

.main-warp {
    position: relative;
    margin-bottom: 50px;
}

.main-warp h1 {
    margin: 0;
}

.link-area {
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    bottom: 42%;
    width: 85.33%;
    /* max-width: 640px; */
    display: flex;
}

.mile-btn {
    width: 50%;
    text-align: center;
    /* font-size: 24px; */
    font-size: 4vw;
}

.mile-btn a {
    display: block;
    /* padding: 5px; */
    padding: 0.67vw;
}

.mile-btn a .down-icon {
    display: inline-block;
    vertical-align: middle;
    line-height: 1;
    width: 0.5em;
    height: 0.5em;
    border: 0.1em solid currentColor;
    border-left: 0;
    border-bottom: 0;
    box-sizing: border-box;
    transform: translateY(-25%) rotate(135deg);
    margin-left: 10px;
}

.link-area .mile-btn:first-child {
    background-color: #e60012;
    border-radius: 28px 0 0 28px;
}

.link-area .mile-btn:first-child a {
    color: #FFF;
}

.link-area .mile-btn:first-child a .down-icon {
    color: #FFF;
}

.link-area .mile-btn:last-child {
    background-color: #ffda30;
    border-radius: 0 28px 28px 0;
}

.main-warp .save-mail {
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    bottom: 6%;
}

.main-warp .save-mail .card-body {
    background-color: #fff;
    display: block;
    padding-top: 0;
    padding-bottom: 4%;
    padding-left: 4%;
    padding-right: 4%;
}

.main-warp .save-mail .card-body .card-body-col  img {
    display: block;
    margin: 0 auto;
}

.main-warp .save-mail .card-body .card-body-mail p {
    padding-bottom: 5%;
    font-size: 3.7vw;
}
/* main end  */



/* present-campaign start */
.present-campaign .title-img {
    /* margin-bottom: 61px; */
    margin-bottom: 8vw;
    box-shadow: none;
}

.save-mail {
    margin-bottom: 96px;
    padding: 0;
    margin: 0 auto;
}
.card-title {
    /* font-size: 32px; */
    font-size: 5vw;
    padding: 4vw;
    text-align: center;
    /* padding: 32px; */
}

.card-body {
    display: flex;
    padding: 20px 50px;
}

.present-campaign .card-body {
    display: flex;
    /* padding: 56px 40px; */
    gap: 26px;
}

.card-title-mail {
    color: #FFF;
    background-color: #000;
}

.card-body-mail p {
    /* font-size: 26px; */
    font-size: 3.7vw;
    /* padding: 40px 0; */
    padding: 5vw 0;
}

.card-title-campaign {
    background-color: #ffda30;
    /* margin-bottom: 111px; */
}

.card-campaign .card-body-sp {
    display: block;
}

.card-campaign .card-body-sp img {
    width: 100%;
}

.present-campaign .card-body-sp1 {
    /* padding: 56px 40px; */
    padding: 7.5vw 5.5vw;
}

.present-campaign .card-body-sp2 .card-body-col {
    /* margin-bottom: 37px; */
    margin-bottom: 5vw;
}

.present-campaign .card-body-sp2 {
    /* padding: 0 60px 76px; */
    padding: 0 5vw 10vw;
}

.card-campaign .card-body .card-body-col {
}

.card-campaign .maximum-mail-area {
    /* max-width: 350px; */
    /* padding-top: 90px; */
}

.card-campaign .maximum-mail-area p {
    /* font-size: 54px; */
    /* font-size: 47px; */
    font-size: 6.4vw;
    font-weight: 700;
}

.card-campaign .maximum-mail-area .maximum-mail-area-text {
    display: none;
}

.card-campaign .maximum-mail-area .maximum-mail-area-text-sp {
    display: block;
    text-align: center;
}
.card-campaign .maximum-mail-area .maximum-mail-area-text-sp small{
    font-size: 12px;
}
.card-border {
    border-width: 0 4px 4px;
    border-style: solid;
    border-radius: 20px;
    overflow: hidden;
    /* max-width: 700px; */
    width: 93.33%;
}

.card-border-color-yellow {
    border-color: #ffda30;
    margin: 0 auto;
    margin-left: 3.3%;
    margin-right: 3.3%;
    margin-bottom: 12.1%;
}

.card-campaign .label {
    background-color: #1b388a;
    padding: 2px 13px;
    color: #FFF;
    font-size: 10px;
}

.card-campaign .img-name {
    /* font-size: 28px; */
    font-size: 3.75vw;
    font-weight: 700;
}

.card-campaign .img-price {
    /* font-size: 28px; */
    font-size: 3.75vw;
}
/* mail explanation end */

/* mail up start */
.mail-up  {
    background-color: #fdf5f5;
    text-align: center;
    /* padding: 89px 0 123px; */
    padding: 11.8vw 0 16.5vw;
    /* margin-bottom: 99px; */
    margin-bottom: 13.2vw;

}

.mail-up .lg-text {
    font-weight: 700;
}

.mail-three-times {
    /* margin-bottom: 146px; */
    margin-bottom: 19.5vw;
}

.mail-three-times .title-img {
    /* margin-bottom: 19vw; */
}

/* .mail-up .title3 {
    margin-bottom: 14px;
} */

.mail-up .title-img {
    /* margin-bottom: 57px; */
    margin-bottom: 7.5vw;
}

.mail-three-times .title4 {
    display: none;
}

.mail-three-times .title4_sp {
    display: block;
    /* margin-bottom: 48px; */
    margin-bottom: 6.4vw;
}

.mail-three-times .card-title-mail {
    background:#e60012;
}

.mail-three-times .card-border {
    border-color: #e60012;
    margin: 0 auto;
}

.mail-three-times .card-body-mail {
    display: block;
}

.mail-three-times .card-body-mail p {
    padding: 0;
    padding-bottom: 6.7vw;
    font-size: 3.75vw;
}

.mail-three-times .card-body {
    padding: 6.94vw 4.8vw 8.67vw;
}

.mail-three-times .mail-three-times-card-title-1 {
    font-weight: 700;
    font-size: 5.62vw;
}

.mail-three-times .mail-three-times-card-title-2 {
    font-size: 3.5vw;
}

.arrow-box{
    position:relative;
    /* width:230px; */
    width: 100%;
    /* height:130px; */
    /* height: 11.2vh; */
    background:#e60012;
    padding:10px;
    text-align:left;
    color:#FFFFFF;
    /* font-size:15px; */
    font-size: 2vw;
    border-radius: 7px;
    text-align: center;
    /* padding: 25px; */
    padding: 3.35vw;
    /* margin: 0 auto 24px; */
    margin: 0 auto 3.2vw;
}

.arrow-box span{
    display: block;
    font-size: 12px;
}
.arrow-box:after{
    border: solid transparent;
    content:'';
    height:0;
    width:0;
    pointer-events:none;
    position:absolute;
    border-color: rgba(106, 90, 205, 0);
    border-top-width:10px;
    border-bottom-width:10px;
    border-left-width:10px;
    border-right-width:10px;
    margin-left: -10px;
    border-top-color: #e60012;
    top:100%;
    left:50%;
}

.arrow-box span.arrow-box-text {
    color: #ffda30;
    /* font-size: 34px; */
    font-size: 23px;
    font-weight: bolder;
}

.mail-up-card-box-warp {
    display: flex;
    margin: 0 auto;
    justify-content: center;
    /* margin-bottom: 88px; */
    flex-wrap: wrap;
    /* gap: 19px; */
    gap: 3vw;
}

.mail-up-card-box-warp:nth-of-type(1) {
    /* margin-bottom: 71px; */
    margin-bottom: 9.4vw;
}

.mail-up-card-box-warp:nth-of-type(2) {
    /* margin-bottom: 49px; */
    margin-bottom: 6.5vw;
}

.mail-up-card-box {
    /* margin-left: 10px; */
    /* margin: 0 auto; */
    border-radius: 15px;
    background-color: #fff;
    text-align: center;
    /* padding: 15px 10px; */
    padding: 3vw 2.35vw;
    /* width: 340px; */
    width: 45.4vw;
}

.mail-up-card-box-warp::after {
    content: "";
    display: block;
    /* width: 340px; */
    width: 45.4vw;
}

.mail-up .banner-area {
    display: flex;
    justify-content: center;
    /* gap: 40px; */
    gap: 5.33%;
}

.mail-up .banner-area img {
    /* width: 330px; */
    width: 44vw;
}
/* mail up end */

/* card-payment start */
.card-payment .title-img {
    /* margin-bottom: 65px; */
    margin-bottom: 8.6vw;

}

.card-payment .payment-banner {
    display: none;
}

.card-payment .payment-banner_sp {
    display: block;
    margin: 0 auto;
    /* margin-bottom: 47px; */
    width: 93.33%;
    margin-bottom: 6.4vw;
}

.card-payment .banner-area {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 4vw;
    margin-bottom: 3vw;
}

.card-payment .banner-area img {
    width: 93.33%;
}

.card-payment .annotation {
    text-align: left;
    background-color: #f9f7ef;
    margin-bottom: 3vw;
    margin-left: 7%;
}

.card-payment .title6 {
    margin-bottom: 9.47vw;
}
/* card-payment end */

/* great-value start */
.great-value {
    padding-top: 16vw;
    position: relative;
}

.great-value .arrow-icon {
    width: 4.8%;
    position: absolute;
    top: -2.3%;
    right: 0;
    left: 0;
    margin: 0 auto;
}

.great-value .title-img {
    /* margin-bottom: 40px; */
    margin-bottom: 7.2vw;
}

.great-value .card-title {
    background-color: #c8b062;
    border-color: #c8b062;
}

.great-value .card {
    border-color: #c8b062;
    margin-bottom: 20px;
}

.great-value .annotatio {
    margin-top: 2.7vw;
    margin-bottom: 14vw;
    margin-left: 3%;
}

.great-value .graph2_pc {
    display: none;
}

.great-value .graph2_sp {
    display: block;
}

.great-value .graph2-wrap{
    margin: 0 auto;
}

.great-value .card-border {
    margin: 0 auto;
}

/* great-value end */

/* mile-usage start */
.mile-usage-wrap .mile-usage {
    display: none;
}

.mile-usage-wrap .mile-usage-sp {
    display: block;
}
/* mile-usage end */

/* luxury start */
.luxury .title-img {
    margin-bottom: 13.8vw
}

.luxury h3 {
    text-align: center;
    font-weight: 700;
    margin-bottom: 5.74vw;
}

.luxury .title {
    /* font-size: 36px; */
    font-size: 4.8vw;
    border-bottom:solid;
    border-color:#FF0000;
    border-width:5px;
}

.luxury .snack {
    display: flex;
    margin: 0 auto;
    justify-content: center;
    /* gap: 32px; */
    gap: 4.26%;
    /* padding: 0 41px 0; */
    padding: 0 5.46% 0;
}

/* .luxury .snack .card:not(:last-child) {
    margin-right: 10px;
} */

.luxury .card {
    width: 34.93%;
}

.luxury .card p {
    font-size: 2.7vw;
    margin-bottom: 11.6vw;
}

.luxury .card .bold {
    font-weight: 700;
    margin-top: 23px; 
}

.luxury .Btn {
    margin-bottom: 11vw;
    box-shadow: 2px 6px #d4d4d4;
}

.luxury .title8 {
    display: none;
}

.luxury .title8_sp {
    display: block;
    margin: 0 auto;
}

/* luxury end */

/* hobby starat  */
.hobby-warp {
    margin-top: 30.8vw;
    padding-top: 30.8vw;
    padding-bottom: 28.67vw;
    position: relative;
}

.hobby-warp .mails-icon-top {
    width: 31.73%;
    position: absolute;
    top: -6%;
    right: 0;
    left: 0;
    margin: 0 auto;
}

.hobby-warp .mails-icon-bottom {
    width: 31.73%;
    position: absolute;
    bottom: -10%;
    right: 0;
    left: 0;
    margin: 0 auto;
}

.hobby-warp .hobby-title-banner {
    display: none;
}

.hobby-warp .hobby-body-banner {
    display: none;
}

.hobby-warp .hobby-banner-sp {
    display: block;
}

.hobby-warp .Btn {
    margin-top: 7.2vw;
}

/* hobby end */

/* mail-how-to-use start  */
.mail-how-to-use {
    padding-top: 25.4vw;
    padding-bottom: 15.6vw;
}

.mail-how-to-use .title-img {
    margin-bottom: 10.14vw;
}

.mail-how-to-use-card {
    padding: 10;
    position: relative;
}

.mail-how-to-use-card-wrap {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    /* gap: 40px; */
    gap: 11vw;
    margin-bottom: 70px;
}

.mail-how-to-use-card-wrap .mail-how-to-use-card {
    width: 90%;
    background-color: #fdf5f5;
    /* text-align: center; */
    /* padding: 44px; */
    padding: 5vw;
    border-radius: 20px;
}

.mail-how-to-use-card-title {
    position:relative;
    /* width:410px; */
    width: 57.36vw;
    background:#FF0000;
    /* padding:10px; */
    padding: 1.34vw;
    text-align:left;
    color:#FFFFFF;
    /* font-size:25px; */
    font-size: 3.36vw;
    position: absolute;
    /* top: -20px; */
    top: -4vw;
    left: 0;
    right: 0;
    margin: auto;
    text-align: center;
    border-radius: 10px;
}

.mail-how-to-use-card-title:after{
    border: solid transparent;
    content:'';
    height:0;
    width:0;
    pointer-events:none;
    position:absolute;
    border-color: rgba(106, 90, 205, 0);
    border-top-width:10px;
    border-bottom-width:10px;
    border-left-width:10px;
    border-right-width:10px;
    margin-left: -10px;
    border-top-color:#FF0000;
    top:100%;
    left:50%;
}

.mail-how-to-use-card p {
    /* font-size: 28px; */
    font-size: 3.75vw;
}

.mail-how-to-use-card img {
    /* width: 479px; */
    width: 63.9vw;
    display: block;
    margin: 0 auto;
    margin-bottom: 6.6vw;
}

/* mail-how-to-use end  */

/* explanation start */
.explanation {
    padding-bottom: 112px;
}

.explanation .explanation-top-banner {
    display: none;
}

.explanation .explanation-top-banner-sp {
    display: block;
}

.explanation .text {
    margin-top: 13vw;
    margin-right: 6.4vw;
    margin-left: 6.4vw;
    margin-bottom: 7.7vw;
}

.explanation .JMB-elite-plus-card {
    width: 93.4vw;
    margin: 0 auto;
    background-color: #f9f7ef;
    /* padding: 50px; */
    padding: 6.6vw;
    border-radius: 20px;
    /* margin-left: 40px;
    margin-right: 40px;  */
    margin-bottom: 2.7vw;
    /* margin-bottom: 9vw; */
}

.explanation .JMB-elite-plus-card .JMB-elite-plus-card-body {
    /* display: flex;
    gap: 25px; */
}

.explanation .JMB-elite-plus-card-body .long-text {
    /* width: 690px; */
}

.explanation .JMB-elite-plus-card-body .img-wrap {
    /* width: 378px; */
    width: 59.4vw;
    margin: 0 auto;
    /* text-align: center; */
    /* margin-top: 70px; */
    margin-top: 7.34vw;
    margin-bottom: 17px;
}
.explanation .JMB-elite-plus-card-body .img-wrap img {

}

.explanation .text {
    /* font-size: 28px; */
    font-size: 3.75vw;
    line-height: 1.923;
}

.explanation .JMB-elite-plus-card .JMB-elite-plus-card-title {
    /* font-size: 37.503px; */
    font-size: 4.5vw;
    font-weight: bold;
    line-height: 1.547;
    text-align: center;
}

.explanation .JMB-elite-plus-card .long-text {
    /* font-size: 28px; */
    font-size: 3.75vw;
    line-height: 1.769;
}

.explanation .JMB-elite-plus-card-title {
    font-size: 36px;
    border-bottom: solid;
    border-color: #c8b062;
    border-width: 2px;
}

.explanation .point-table-wrap .img-wrap {
    /* text-align: center; */
    /* width: 698px; */
    width: 93.33%;
    margin: 0 auto;
    margin-bottom: 30px;
    /* display: flex;
    gap: 16px;
    margin-bottom: 50px; */
}

.explanation .point-table-wrap .img-wrap img {
    width: 100%;
    margin-bottom: 33px;
}

.explanation .point-table-wrap .text-wrap {
    /* width: 600px;
    position: relative; */
}

.explanation .point-table-wrap .text-wrap .text-inner {
    /* width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); */
}

.explanation .point-table-wrap .long-text {
    /* font-size: 26px; */
    font-size: 3.8vw;
    margin-left: 5.4%;
    margin-right: 5.4%;
    margin-bottom: 7vw;
    line-height: 1.75;
}
  
.explanation .point-table-wrap .annotation {
    font-size: 12px;
    padding-left: 15px;
  }

.explanation .explanation-btn {
    background-color: #c8b062;
    border-radius: 70px;
    font-size: 14px;
    padding: 12px;
}
.explanation .explanation-text-min {display: block;margin: auto;padding: 5px 20px 20px;/* margin-bottom: 9.4%; */font-size: 11px;}
/* explanation end */

/* mail utility start */
.utility .JAL-Mall-utility {
    background-color: #e60012;
    padding: 15.5vw 11.4vw;
    text-align: center;
    margin-bottom: 51px;
}

/* .utility .wrapper {
    margin-bottom: 89px;
    flex-wrap: wrap;
    display: flex;
    gap: 51px 34px;
} */

.utility .utility-card-wrap {
    width: 90%;
    margin: 0 auto;
    /* margin-bottom: 89px; */
    margin-bottom: 12vw;
    flex-wrap: wrap;
    display: flex;
    /* gap: 0px 37px; */
    gap: 11vw 5vw;
    justify-content: center;
}

.utility .JAL-Mall-utility h2 {
    color: #FFF;
    line-height: 61px;
    font-size: 9vw;
    font-weight: 700;
    margin: 0;
}

.utility .JAL-Mall-utility .lg-text {
    font-size: 64px;
}

.utility .JAL-Mall-utility .coming-soon {
    font-size: 24px;
    font-family: 'Oswald';
    font-weight: 700;
}

.utility .utility-card {
    gap: 14px;
    width: 45%;
}

.utility .utility-card img {
    width: 100%;
}

.utility .utility-card .utility-card-body p {
    padding-bottom: 7px;
    font-size: 20px
}

.utility .utility-card .label-wrap {
    display: flex;
    gap: 12px;
}

.utility .utility-card .label {
    width: 110px;
    padding: 8px;
    text-align: center;
    color: #FFF;
    background-color: #7b7b7c;
}
/* mail utility end */

/* レスポンシブ対応　start */

/* common start */
.common-m {
    margin-left: 7.3%;
    margin-right: 7.3%;
}
/* common end */

@media screen and (max-width:698px) {
    .save-mail .card-body img {
        width: 70%;
    }
}
/* レスポンシブ対応　end */