/*蜈ｱ騾�*/
ul {
    padding: 0;
}
.spOnly {
    display: none;
}
.pt2 {
    padding-top: 2rem;
}
.fw300 {
    font-weight: 300;
}
.fw500 {
    font-weight: 500;
}
.fw700 {
    font-weight: 700;
}
.fw900 {
    font-weight: 900;
}
.ft1_6 {
    font-size: 1.6rem;
}
.ft1_8 {
    font-size: 1.8rem;
}
.ft2 {
    font-size: 2rem;
}
.ft2_4 {
    font-size: 2.4rem;
    color: red;
    line-height: 1;
}
.ft2_5 {
    font-size: 2.5rem;
}
.ft2_6 {
    font-size: 2.6rem;
}
.ft3 {
    font-size: 3rem;
}
.ft3_5 {
    font-size: 3.5rem;
}
.ft4_5 {
    font-size: 4.5rem;
}
.ft5 {
    font-size: 5rem;
}
.text-red {
    color: red;
}
.text-pk {
    color: #e32859;
}
.text-or {
    color: #ec572b;
}
.flex {
    width: 80%;
    display: flex;
    flex-wrap: wrap;
    margin: auto;
    justify-content: center;
    align-items: center;
}
.wh80 {
    width: 80%;
}
.wh30 {
    width: 30%;
    margin-right: 2rem;
}
.wh_fit {
    width: fit-content;
}
.link a {
    background: rgba(0, 0, 0, 0) url("/common/images/icon/ic_arrow-r-rd02.png") no-repeat scroll 100% 50% / auto 0.6em;
    color: #282828;
    margin-right: .2em;
    padding-right: 0.8em;
    text-decoration: underline;
}
.li-detail > ul > li {
    display: table;
    line-height: 1.5;
    table-layout: auto;
}
.li-detail > ul > li .pre {
    display: table-cell;
    padding: 0rem 0.5rem 0rem 0rem;
    white-space: nowrap;
    width: 1%;
}
.underline {
    text-decoration: underline;
}
h2.h2title {
    font-size: 2.8rem;
    padding: .7rem;
    background-color: #6a7abb;
    max-width: 900px;
    margin-bottom: 3rem;
    color: #fff;
    text-align: center;
}
.purple {
    color: #5062ac;
}
/*sp*/
@media screen and (max-width:659px) {
    .center {
        text-align: center;
    }
    .pcOnly {
        display: none;
    }
    .spOnly {
        display: block;
    }
    h1 {
        padding: 0 1rem;
    }
    .ft1_6 {
        font-size: 1.2rem;
    }
    .ft2 {
        font-size: 1.4rem;
    }
    .ft2_4 {
        font-size: 2rem;
    }
    .ft2_5 {
        font-size: 1.8rem;
    }
    .ft2_6 {
        font-size: 2rem;
    }
    .ft3 {
        font-size: 2.4rem;
    }
    .ft3_5 {
        font-size: 3rem;
    }
    .ft4_5 {
        font-size: 3.4rem;
    }
    .wh30 {
        width: 60%;
        margin-right: 0;
        margin-bottom: 1rem;
    }
    h2.h2title {
        font-size: 2rem;
        padding: .5rem;
        margin-bottom: 2rem;
    }
}
/*END===sp*/
/*END===蜈ｱ騾�*/
.inner {
    max-width: 900px;
}
.inner img {
    display: inline-block;
}
@media screen and (max-width:659px) {
    .inner {
        padding: 0 1rem;
    }
}
/*cp-wrapper*/
.cp-wrapper img {
    display: inline-block;
}
.bg_yell {
    background-color: #fffeeb;
    padding: 3rem 0;
    margin: 1rem auto 0;
}
/*sp*/
@media screen and (max-width:659px) {
    .bg_yell {
    padding: 2rem 0;
}
}
/*END===sp/*
/*END===cp-wrapper*/
.stripe {
    background-image: repeating-linear-gradient(125deg, #93d1c8, #93d1c8 10px, #89cdc2, #89cdc2 30px);
}
/*guide*/
.guide {
    padding: 30px 0;
}
.guide .bg_yellow {
    background-color: #e1f1ee;
    padding: 3.5rem 0 4.5rem;
}
.guide .general-p {
    font-size: 1.8rem;
}
.guide .general-p + .general-p {
    margin-top: 1rem;
}
.guide .box-card {
    margin: 3rem 0 0;
}
.guide .box-card-detail01 {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 6rem auto 3rem;
}
.arrow {
    max-width: 95%;
    margin: 3rem auto 0;
}
.guide .box-card-detail01 img.card {
    margin-right: 3rem;
    max-width: 290px;
}
.btn_box {
    display: flex;
    margin: 3rem auto;
    align-items: center;
}
.btn_all {
    border: none;
    width: 100%;
}
.btn a {
    font-size: 2.4rem;
    text-align: center;
    background-color: #6a7abb;
    color: #fff;
    padding: 1.5rem;
    width: 80%;
    display: block;
    margin: 3rem auto;
    box-shadow: 5px 5px #23b7b8;
    border: solid 2px #fff;
    position: relative;
}
.btn02 a {
    background-color: #23b7b8;
    box-shadow: 5px 5px #6a7abb;
}
.btn a::before {
    position: absolute;
    content: "";
    top: 32%;
    right: 1.5rem;
    width: 12px;
    height: 12px;
    border-top: 3px solid;
    border-right: 3px solid;
    transform: rotate(45deg);
}
.btn a:hover {
    opacity: .8;
}
.btn_all .attention_list {
    width: 83%;
    text-align: center;
    margin: -1.5rem auto 0;
}
/*sp*/
@media screen and (max-width:659px) {
    .guide {
        padding: 15px 0;
    }
    .guide .general-p {
        font-size: 1.4rem;
    }
    .guide .bg_yellow {
        padding: 1.5rem 0 2.5rem;
        margin: 0 auto;
    }
    .guide > .lp-container > p:nth-of-type(2) {
        max-width: 98%;
        margin: 1.5rem auto .5rem;
    }
    .guide > .lp-container > p:nth-of-type(3) {
        max-width: 98%;
        margin: 0 auto 3rem;
    }
    .guide > .lp-container > .bnr {
        max-width: 94%;
        margin: .5rem auto 0;
    }
    .guide .box-card-detail01 {
        flex-direction: column;
        margin: 3rem auto 2rem;
        max-width: 80%;
    }
    .guide .box-card-detail01 p + p {
        margin-top: 2rem;
    }
    .guide .box-card-detail01 img.card {
        max-width: 200px;
        margin-right: 0;
    }
    .arrow {
        max-width: 100%;
        margin: 1rem auto 0;
    }
    .btn_box {
        display: block;
        margin: 3rem auto;
    }
    .btn_box div {
        text-align: center;
    }
    .btn {
        padding: 0;
    }
    .btn a {
        font-size: 1.8rem;
        width: 100%;
        padding: .8rem 0;
        margin: 2rem auto;
    }
    .btn a::before {
        right: 1.5rem;
        border-top: 2px solid;
        border-right: 2px solid;
    }
    .btn_all .attention_list {
    width: 100%;
    margin: -1rem auto 0;
}
}
/*END===sp*/
/*END===guide*/
/*campaign*/
/*point*/
.detail_eria {
    background-color: #e1f1ee;
    padding-top: 3rem;
    padding-bottom: 7rem;
}
.point {
    margin-bottom: 5rem;
}
.point > li {
    position: relative;
    padding-left: 10rem;
    font-size: 1.6rem;
}
.point > li + li {
    margin-top: 3rem;
    border-top: dotted 3px #23b7b8;
    padding-top: 3rem;
}
.point > li:nth-of-type(1)::after {
    content: "";
    display: inline-block;
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    width: 82px;
    height: 90px;
    max-width: 12.5rem;
    right: 5rem;
    background-image: url("/entry/jrac2602/images/train.png");
    bottom: -3rem;
}
.point > li:nth-of-type(3)::after {
    content: "";
    display: inline-block;
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    width: 119px;
    height: 76px;
    max-width: 12.5rem;
    right: 5rem;
    background-image: url("/entry/jrac2602/images/pasmo.png");
    bottom: 0;
}
.point > li .number {
    position: absolute;
    left: 0;
    margin-right: 3rem;
}
.point > li .title {
    left: 0;
    font-size: 2.2rem;
    font-weight: 600;
    display: inline-block;
    margin-bottom: 1rem;
}
.point > li .text2 {
    display: inline-block;
    margin-top: .5rem;
}
.point > li .pasmo_charge {
    max-width: 14rem;
    margin-top: .5rem;
}
.point > li > .logo {
    margin-top: 2rem;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 1.5rem 1rem;
}
.point > li > .logo > li {
    width: 22%;
    text-align: center;
    max-width: 150px;
    max-height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.point > li > .logo > li:last-child {
    margin-right: auto;
    margin-left: 0;
}
.point > li > .logo > li img {
    max-height: 100%;
}
/*sp*/
@media screen and (max-width:659px) {
    .detail_eria {
        padding-bottom: 3rem;
    }
    .point {
        padding: 0;
    }
    .point > li {
        position: relative;
        padding-left: 5.5rem;
        font-size: 1.4rem;
    }
    .point > li + li {
        margin-top: 4.5rem;
    }
    .point > li .number {
        max-width: 4.5rem;
    }
    .point > li .title {
        left: 0;
        font-size: 1.6rem;
        line-height: 1;
    }
    .point > li:nth-of-type(1)::after {
        max-width: 6rem;
        bottom: -7rem;
        right: 1rem;
    }
    .point > li:nth-of-type(3)::after {
        max-width: 8rem;
        right: 0rem;
        bottom: -3rem;
    }
    .point > li p {
        text-indent: 0;
        padding-left: 0;
    }
    .point > li > .logo {
        justify-content: space-around;
        gap: 1rem 0;
        margin-top: 1.5rem;
        margin-bottom: 2rem
    }
    .point > li > .logo > li {
        width: 44%;
        max-width: 180px;
        max-height: 70px;
    }
    .point > li > .logo > li:last-child {
        margin-right: 6rem;
        margin-left: auto;
        font-size: 1.6rem;
        width: 100%;
        max-width: 100%;
        justify-content: end;
    }
}
/*END===sp*/
/*END===point*/
/*accordion*/
.accordion {
    margin: 5rem auto;
    padding: 2rem;
    background-color: #fff;
}
.accordion dt {
    cursor: pointer;
}
.accordion dt .title {
    display: block;
    font-size: 2rem;
    text-align: center;
    font-weight: bold;
    position: relative;
}
.accordion dt .title::before {
    content: "";
    position: absolute;
    top: 12%;
    right: 4rem;
    width: 12px;
    height: 12px;
    border-top: 3px solid;
    border-right: 3px solid;
    transform: rotate(135deg);
    transition: .2s;
}
.accordion dt.active .title::before {
    top: 40%;
    transform: rotate(-45deg);
    transition: .2s;
}
.accordion dt .important {
    display: inline-block;
    font-size: 1.6rem;    
    padding-left: 1.6rem;
    text-indent: -1.6rem;
    color: #eb2f4c;
    margin-top: 2rem;
    font-weight: bold;
}
.accordion dd {
    display: none;
    background-color: rgb(255, 255, 255);
    font-size: 1.4rem;
}
.accordion dd .attention_list li {
    text-indent: -1em;
    padding-left: 1em;
    margin-bottom: .5rem;
    line-height: 1.6;
}
/*sp*/
@media screen and (max-width: 659px) {
    .accordion {
        margin: 3rem auto;
        padding: 1rem;
    }
    .accordion dt .title {
    font-size: 1.8rem;
}
    .accordion dt .title::before {
    top: 22%;
    right: .5rem;
    width: 7px;
    height: 7px;
}
.accordion dt.active .title::before {
    top: 40%;
    transform: rotate(-45deg);
    transition: .2s;
}
}
/*END===sp*/
/*END===accordion*/
.l-footer {
    padding-bottom: 0;
}
.general-table {
    margin: 0 0 3rem;
}
.taStyle02 {
    margin: 0 auto;
    width: 100%;
}
@media screen and (max-width: 659px) {
    .general-table {
        margin: 0 auto;
    }
}
.general-table .taStyle02 td {
    background: #fff;
}
.general-table .th-sub {
    background: #23B7B8 none repeat scroll 0 0;
    text-align: center;
    color: #fff;
}
.general-table .taStyle02 td, .general-table .taStyle02 th {
    border: 2px solid #ccc;
    padding: 1rem 2rem;
    vertical-align: middle;
}
.general-table .taStyle02 td p {
    text-align: center;
}
.taStyle02 .card {
    background-color: #fff;
}
.card .card_img {
    text-align: center;
    margin-bottom: .7rem;
}
@media screen and (max-width: 659px) {
    .general-table .taStyle02 td, .general-table .taStyle02 th {
        border-top: 2px solid #ccc;
        border-bottom: none;
        border-right: 2px solid #ccc;
        border-left: 2px solid #ccc;
    }
}
@media screen and (max-width: 659px) {
    .general-table.strech .taStyle02 {
        border-collapse: collapse;
        border-spacing: 0;
        width: 100%;
    }
    .general-table.strech .taStyle02 tr:last-child {
        border-bottom: 2px solid #ccc;
    }
    .general-table.scroll {
        overflow-x: scroll;
        overflow-y: hidden;
    }
    .general-table.scroll .taStyle02 {
        border-collapse: collapse;
        border-spacing: 0;
        width: 70rem;
        display: block;
    }
    .general-table.scroll .taStyle02 tr, .general-table.scroll-fix .taStyle02 tr {
        border-bottom: 2px solid #ccc;
    }
    .general-table.scroll-fix .taStyle02:after {
        clear: both;
        content: " ";
        display: block;
        font-size: 0;
        height: 0;
        visibility: hidden;
    }
    .general-table.scroll-fix .taStyle02 thead {
        display: block;
        float: left;
        overflow-x: scroll;
    }
    .general-table.scroll-fix .taStyle02 tbody {
        border-collapse: collapse;
        border-spacing: 0;
        overflow-x: auto;
        overflow-y: hidden;
        white-space: nowrap;
        width: auto;
        display: block;
        position: relative;
    }
    .general-table.scroll-fix .taStyle02 th {
        display: block;
        width: auto;
    }
    .general-table.scroll-fix .taStyle02 td {
        display: block;
    }
    .general-table.scroll-fix .taStyle02 tbody tr {
        display: inline-block;
        margin: 0 -6px;
    }
    .general-table.strech .taStyle02 th {
        border-bottom: 2px solid #ccc;
    }
}
table {
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%
}
td, th {
    padding: 12px 15px;
    text-align: left;
    vertical-align: middle;
    border-bottom: 1px solid #cacaca
}
.icon-text, .sectionTitle, .titleDescription, .titleIcon {
    text-align: center
}
td:first-child, th:first-child {
    padding-left: 0
}
td:last-child, th:last-child {
    padding-right: 0
}
.taStyle01, .taStyle02 {
    font-size: 1.5rem;
    line-height: 180%
}
@media screen and (max-width:659px) {
    input[type=reset], input[type=button], input[type=submit] {
        -webkit-border-radius: 8px;
        border-radius: 8px
    }
    .taStyle02 {
        font-size: 1.2rem;
    }
}
.taStyle02 td, .taStyle02 th {
    border: 2px solid #fff;
    padding: 0.9rem 1.5rem;
    vertical-align: top
}
@media screen and (max-width:659px) {
    .taStyle01 th {
        width: 100%;
        display: block;
        border: .1em solid #fff;
        border-right: none;
        border-left: none;
        padding: 1em
    }
}
.text {
    line-height: 1.4
}
.text-normal {
    font-size: 1.4rem
}
.text-small {
    font-size: 1.15rem
}
.text-gray {
    color: #6e6e6e
}
.text-red {
    color: #eb2f4c;
}
.text-blue {
    color: #0000FF
}
.indent-1 {
    text-indent: -1em;
    padding-left: 1em
}
.indent-1_5 {
    text-indent: -1.5em;
    padding-left: 1.5em
}
.indent-2 {
    text-indent: -1em;
    padding-left: 1em
}
a.blank {
    background: url(/common/images/icon/ic_window.png) 100% 50% no-repeat;
    -webkit-background-size: auto 1em;
    background-size: auto 1em;
    padding-right: 1.65em;
    margin-right: .4em
}
.sectionTitle {
    font-size: 2.8rem
}
.titleDescription {
    color: #6e6e6e;
    line-height: 180%
}
@media screen and (max-width:659px) {
    .sectionTitle {
        font-size: 2.4rem
    }
    .titleDescription {
        line-height: 140%;
        font-size: 90%
    }
}
.general-list {
    margin: 0 0 1rem;
}
@media screen and (max-width: 659px) {
    .general-list {
        margin: 0 0 .5rem;
    }
}
.general-list li {
    margin: 0 0 0.3em;
}
.li-detail > ul > li {
    display: table;
    line-height: 1.5;
    table-layout: auto;
}
.li-detail > ul > li .pre {
    display: table-cell;
    padding: 0rem 0.5rem 0rem 0rem;
    white-space: nowrap;
    width: 1%;
}
@media screen and (max-width: 659px) {
    .general-list li {
        margin: 0 0 .1em;
    }
}