@charset "UTF-8";
/*----------------------------
  共通
-----------------------------*/
body {
    font-family: "Noto Sans JP", sans-serif !important;
}
p {
    margin-bottom: 0;
}
/* ====== MV ====== */
.mv_block {
    background-image: url(../img/ryokin/bg-mv_pc.jpg);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: auto 100%;
}
#short .mv_block {
    background-image: url(../img/short/bg-mv_pc.jpg);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: auto 100%;
}
/* ====== block ====== */
.sct {
    color: #353535 !important;
    margin: 0 auto 60px;
}
/* ====== a-fee_block ====== */
.a-fee_block p:first-child {
    font-size: 21px;
    line-height: 1.5;
    margin-bottom: 30px;
}
#short .a-fee_block p:first-child span.red {
    color: #cd0e2f;
}
.a-fee_block button {
    background-color: #194eb9;
    font-size: 21px;
    font-weight: bold;
    color: #fff;
    padding: 20px 70px 20px 40px;
    position: relative;
    margin: 0 auto 60px;
    display: block;
    border: none;
}
.a-fee_block button span {
    display: inline-block;
}
.a-fee_block button:hover {
    color: rgba(255, 255, 255, 0.6);
}
.a-fee_block button::after {
    right: 8%;
    width: 15px;
    height: 15px;
    border-top: 5px solid #fff;
    border-right: 5px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.a-fee_block button:hover::after {
    opacity: 0.6;
}
.a-fee_block .box {
    background-color: #def3e1;
    padding: 40px;
    border-radius: 8px;
    display: flex;
    justify-content: center;
}
.a-fee_block .box p:first-child {
    font-size: 63px;
    font-weight: 900;
    line-height: 1;
    margin-bottom: 0;
    padding-right: 15px;
}
.a-fee_block .box p:first-child span:first-child {
    font-size: 43px;
}
.a-fee_block .box p:first-child span:last-child {
    font-size: 44px;
    padding-left: 5px;
    font-weight: 700;
}
.a-fee_block .box p:first-child span:last-child span {
    display: inline-block;
    margin-left: -20px;
    margin-right: -20px;
    padding-left: 0;
}
.a-fee_block .box p:last-child {
    font-size: 26px;
    line-height: 1.5;
    padding-left: 15px;
}
.a-fee_block .box p:last-child span {
    color: #db47a9;
    font-weight: 900;
}
#short .a-fee_block .box p:last-child span {
    color: #cd0e2f;
}
/* ====== l-fee_block ====== */
.l-fee_block .box {
    max-width: 1020px;
    padding: 0 30px;
    margin: 0 auto;
}
.l-fee_block .bnr_block {
    max-width: 100%;
    padding: 0;
}
.l-fee_block .bnr_block button:first-child {
    background-image: url(../img/ryokin/bg-bnr-04.jpg);
    background-repeat: no-repeat;
    background-position: top left;
    background-size: auto 100%;
}
#short .l-fee_block .bnr_block button:first-child {
    background-image: url(/price/new/img/price_off/bg-bnr-01.jpg);
    background-repeat: no-repeat;
    background-position: top left;
    background-size: auto 100%;
}
.l-fee_block .bnr_block button:first-child::before {
    background: #f087d8;
}
#short .l-fee_block .bnr_block button:first-child::before {
    background: #f39800;
}
.l-fee_block .box h3 {
    font-size: 34px;
    font-weight: bold;
    color: #fff;
    background-color: #22ac38;
    padding: 12px 15px 15px;
    border-radius: 8px;
    text-align: center;
    line-height: 1.2;
    margin-bottom: 25px;
}
.l-fee_block .box.org h3 {
    background-color: #eb6100;
}
.l-fee_block .box h3 span {
    display: inline-block;
}
.l-fee_block .box h3 span:last-child {
    margin-left: -15px;
    margin-right: -20px;
}
#short .l-fee_block .box h3 span:last-child {
    margin-left: 0;
    margin-right: 0;
}
.l-fee_block .box h4 {
    font-size: 28px;
    font-weight: bold;
    margin-bottom: 15px;
    color: #22ac38;
}
#short .l-fee_block .box.org h4 {
    color: #eb6100;
}
.l-fee_block .box .tbl {
    margin-bottom: 30px;
}
.l-fee_block .box .tbl th {
    background: #e5f1e7;
    border: 1px solid #b8b7b8;
    border-bottom: 1px solid #b8b7b8;
    color: #353535;
    line-height: 1.3;
    text-align: center;
    font-size: 21px;
    vertical-align: middle;
}
#short .l-fee_block .box .tbl th {
    width: 330px;
}
.l-fee_block .box.org .tbl th {
    background: #fdefe6;
}
.l-fee_block .box .tbl td {
    border: 1px solid #b8b7b8;
    line-height: 1.2;
    font-size: 21px;
    vertical-align: middle;
}
.l-fee_block .box .tbl td div {
    display: flex;
    justify-content: center;
    align-items: center;
}
.l-fee_block .box .tbl td div p {
    padding: 0 15px;
    line-height: 1;
}
.l-fee_block .box .tbl td div p:last-child {
    font-size: 27px;
    font-weight: bold;
}
.l-fee_block .box .tbl td div p:last-child span {
    font-size: 22px;
}
.l-fee_block .box .tbl + p {
    font-size: 21px;
    margin-bottom: 30px;
}
.l-fee_block .box .tbl + p span {
    color: #d61d9b;
}
#short .l-fee_block .box .tbl + p span {
    color: #cd0e2f;
}
.l-fee_block .box.org h3 + p {
    font-size: 21px;
    margin-bottom: 30px;
}
.l-fee_block .box.org img.pc {
    display: block;
    text-align: center;
    margin: 0 auto 40px;
}
.l-fee_block .box ul {
    background: #e5f1e7;
    border-radius: 8px;
    padding: 30px 50px;
    margin-bottom: 60px;
}
.l-fee_block .box.org ul {
    background: #fdefe6;
}
.l-fee_block .box ul li {
    font-size: 19px;
    list-style: none;
    line-height: 1.4;
    margin-bottom: 5px;
    padding-left: 23px;
    text-indent: -23px;
}
.l-fee_block .box ul li::before {
    content: "";
    width: 13px;
    height: 13px;
    display: inline-block;
    background-color: #353535;
    border-radius: 50%;
    position: relative;
    top: -2px;
    margin-right: 10px;
}
.contact_block .box:last-child .btn.blue a, .contact_block .box:last-child .btn.org a {
    font-family: "Noto Sans JP", sans-serif;
}
/*----------------------------
  レスポンシブ
-----------------------------*/
@media screen and (max-width: 820px) {
    .mv_block {
        background-image: url(../img/ryokin/bg-mv_sp.jpg);
        background-size: 102% auto;
        margin: 0 auto 40px;
    }
    #short .mv_block {
        background-image: url(../img/short/bg-mv_sp.jpg);
        background-size: 102% auto;
        margin: 0 auto 40px;
    }
    .sct h2 {
        margin-bottom: 30px;
    }
    .a-fee_block p:first-child {
        font-size: 29px;
        line-height: 1.4;
    }
    .a-fee_block button {
        font-size: 32px;
        padding: 20px 0 20px 14.5vw;
        width: 100%;
        max-width: 630px;
        display: block;
        margin: 40px auto 60px;
        text-align: left;
        line-height: 1.3;
    }
    .a-fee_block button::after {
        right: 14.5vw;
        width: 25px;
        height: 25px;
        border-top: 8px solid #fff;
        border-right: 8px solid #fff;
    }
    .a-fee_block .box {
        padding: 30px;
        display: block;
        text-align: center;
    }
    .a-fee_block .box p:first-child {
        margin-bottom: 20px;
        padding-right: 0;
    }
    .a-fee_block .box p:last-child {
        font-size: 29px;
        line-height: 1.4;
        padding-left: 0;
        text-align: left;
    }
    .l-fee_block .box {
        max-width: 100%;
        padding: 0;
    }
    .l-fee_block .box h3 {
        font-size: 38px;
    }
    .l-fee_block .box h4 {
        font-size: 32px;
        padding-left: 32px;
        text-indent: -32px;
    }
    .l-fee_block .box .tbl th {
        display: revert;
        width: 40%;
        font-size: 25px;
        padding: 15px 0 18px;
    }
    .l-fee_block .box .tbl td {
        display: revert;
        width: revert;
        padding: 25px 0;
    }
    .l-fee_block .box .tbl tr:last-child td {
        padding: 25px 0;
    }
    .l-fee_block .box .tbl td div p {
        font-size: 25px;
    }
    .l-fee_block .box .tbl td div p:last-child {
        font-size: 31px;
    }
    .l-fee_block .box .tbl td div p:last-child span {
        font-size: 26px;
    }
    .l-fee_block .box .tbl + p {
        font-size: 29px;
        line-height: 1.4;
    }
    .l-fee_block .box ul {
        padding: 25px 25px 30px;
    }
    .l-fee_block .box ul li {
        font-size: 21px;
    }
    .l-fee_block .box.org h3 + p {
        font-size: 29px;
        line-height: 1.4;
    }
    .l-fee_block .box.org img.pc {
        display: none;
    }
    .l-fee_block .box.org img.sp {
        max-width: 630px;
        width: 100%;
        text-align: center;
        margin: 0 auto 40px;
        border: 2px solid #afafaf;
    }
    #short .a-fee_block button {
        padding-left: 7vw;
    }
    #short .a-fee_block button::after {
        right: 6vw;
    }
}
@media screen and (max-width: 768px) {
    #short .l-fee_block .box .tbl th {
        width: 40%;
    }
    #short .l-fee_block .box .tbl th span {
        display: block;
    }
}
@media screen and (max-width: 750px) {
    .mv_block, #short .mv_block {
        background-size: auto 100%;
    }
}
@media screen and (max-width: 668px) {
    .a-fee_block p:first-child {
        font-size: 26px;
    }
    .a-fee_block .box p:last-child {
        font-size: 26px;
    }
    .l-fee_block .box .tbl + p {
        font-size: 26px;
    }
    .l-fee_block .box.org h3 + p {
        font-size: 26px;
    }
    #short .l-fee_block .box .tbl td div {
        flex-flow: column;
    }
    #short .l-fee_block .box .tbl td div p:last-child {
        padding-top: 8px;
    }
}
@media screen and (max-width: 640px) {
    .a-fee_block button {
        font-size: 30px;
        padding: 20px 0 25px 14.5vw;
    }
}
@media screen and (max-width: 600px) {
    .a-fee_block button {
        padding: 20px 0 25px 6.5vw !important;
    }
    .a-fee_block button::after {
        right: 6.5vw !important;
    }
}
@media screen and (max-width: 568px) {
    .a-fee_block p:first-child {
        font-size: 24px;
    }
    .a-fee_block button {
        padding: 20px 0 25px 4.5vw !important;
        font-size: 5.4vw;
    }
    .a-fee_block button::after {
        right: 4.5vw !important;
    }
    .a-fee_block .box p:last-child {
        font-size: 24px;
    }
    .a-fee_block .box p:first-child span:last-child {
        font-size: 36px;
    }
    .l-fee_block .box h3 {
        font-size: 35px;
    }
    .l-fee_block .box h4 {
        font-size: 29px;
        padding-left: 29px;
        text-indent: -29px;
    }
    .l-fee_block .box .tbl th {
        width: 200px;
        font-size: 24px;
    }
    #short .l-fee_block .box .tbl th {
        width: 200px;
    }
    .l-fee_block .box .tbl td div p {
        font-size: 24px;
        padding: 0 10px;
    }
    .l-fee_block .box .tbl + p {
        font-size: 24px;
    }
    .l-fee_block .box.org h3 + p {
        font-size: 24px;
    }
}
@media screen and (max-width: 540px) {
    .sct h2 {
        margin-bottom: 25px;
    }
    .a-fee_block p:first-child {
        font-size: 21px;
    }
    .a-fee_block button {
        margin: 30px auto 60px;
    }
    .a-fee_block .box p:last-child {
        font-size: 21px;
    }
    .a-fee_block .box p:first-child {
        font-size: 54px;
    }
    .a-fee_block .box p:first-child span:last-child {
        font-size: 30px;
    }
    .a-fee_block .box p:first-child span:last-child span {
        margin-left: -15px;
    }
    .l-fee_block .box h3 {
        font-size: 32px;
    }
    .l-fee_block .box .tbl th {
        width: 170px;
        font-size: 22px;
    }
    #short .l-fee_block .box .tbl th {
        width: 170px;
    }
    .l-fee_block .box .tbl td div p {
        font-size: 22px;
        padding: 0 8px;
    }
    .l-fee_block .box h4 {
        font-size: 26px;
        padding-left: 26px;
        text-indent: -26px;
    }
    .l-fee_block .box .tbl + p {
        font-size: 21px;
    }
    .l-fee_block .box.org h3 + p {
        font-size: 21px;
    }
    .l-fee_block .box ul {
        padding: 20px 20px 25px;
    }
    .l-fee_block .box ul li {
        font-size: 18px;
        padding-left: 18px;
        text-indent: -18px;
    }
    .l-fee_block .box ul li::before {
        top: -1px;
        margin-right: 5px;
    }
}
@media screen and (max-width: 440px) {
    .l-fee_block .box .tbl td div {
        flex-flow: column;
    }
    .l-fee_block .box .tbl td div p:last-child {
        padding-top: 8px;
    }
}
@media screen and (max-width: 430px) {
    .a-fee_block button {
        padding: 15px 0 20px 4.5vw !important;
    }
    .l-fee_block .box .tbl th {
        width: 180px;
    }
    #short .l-fee_block .box .tbl th {
        width: 180px;
    }
    .l-fee_block .box .tbl td div {
        flex-flow: column;
    }
    .l-fee_block .box .tbl td div p {
        padding: 0;
    }
    .l-fee_block .box .tbl td div p:last-child {
        padding-top: 8px;
    }
}
@media screen and (max-width: 390px) {
    .mv_block, #short .mv_block {
        margin: 0 auto 30px;
    }
    .sct h2 {
        margin-bottom: 15px;
    }
    .a-fee_block p:first-child {
        font-size: 18px;
        margin-bottom: 20px;
    }
    .a-fee_block button {
        margin: 20px auto 50px;
    }
    .a-fee_block button::after {
        width: 20px;
        height: 20px;
        border-top: 6px solid #fff;
        border-right: 6px solid #fff;
    }
    .a-fee_block .box {
        padding: 20px;
    }
    .a-fee_block .box p:first-child {
        font-size: 12.2vw;
    }
    .a-fee_block .box p:first-child span:first-child {
        font-size: 11vw;
    }
    .a-fee_block .box p:first-child span:last-child {
        font-size: 6.8vw;
        padding-left: 5px;
    }
    .a-fee_block .box p:first-child span:last-child span {
        margin-left: -10px;
    }
    .a-fee_block .box p:last-child {
        font-size: 19px;
    }
    .l-fee_block .box h3 {
        font-size: 25px;
    }
    .l-fee_block .box h4 {
        font-size: 25px;
        padding-left: 25px;
        text-indent: -25px;
    }
    .l-fee_block .box .tbl th {
        width: 160px;
        font-size: 19px;
    }
    #short .l-fee_block .box .tbl th {
        width: 160px;
    }
    .l-fee_block .box .tbl td div p {
        font-size: 19px;
    }
    .l-fee_block .box .tbl td div p:last-child {
        font-size: 28px;
    }
    .l-fee_block .box .tbl td div p:last-child span {
        font-size: 23px;
    }
    .l-fee_block .box .tbl td {
        padding: 12px 0 15px;
    }
    .l-fee_block .box .tbl tr:last-child td {
        padding: 12px 0 15px;
    }
    .l-fee_block .box .tbl + p {
        font-size: 18px;
    }
    .l-fee_block .box ul {
        padding: 15px 15px 20px;
        margin-bottom: 40px;
    }
    .l-fee_block .box ul li {
        font-size: 16px;
        padding-left: 16px;
        text-indent: -16px;
    }
    .l-fee_block .box ul li::before {
        top: 0;
    }
    .l-fee_block .box.org h3 + p {
        font-size: 18px;
        margin-bottom: 20px;
    }
    .l-fee_block .box.org img.sp {
        margin: 0 auto 35px;
    }
}
@media screen and (max-width: 320px) {
    .a-fee_block button {
        padding: 12px 0 15px 5vw !important;
        font-size: 6.4vw;
    }
    .a-fee_block button::after {
        right: 5vw !important;
    }
    .a-fee_block .box p:first-child span:last-child {
        padding-left: 3px;
    }
    .l-fee_block .box .tbl th {
        width: 140px;
    }
    #short .l-fee_block .box .tbl th {
        width: 140px;
    }
    .l-fee_block .box h4 {
        font-size: 24px;
        padding-left: 24px;
        text-indent: -24px;
    }
    .l-fee_block .box h3 {
        font-size: 24px;
        padding: 10px 15px 13px;
    }
    .l-fee_block .box h3 span:last-child {
        margin-left: -10px;
    }
    .l-fee_block .box .tbl td div p:last-child {
        font-size: 26px;
    }
    .l-fee_block .box .tbl td div p:last-child span {
        font-size: 20px;
    }
    #short .a-fee_block button span {
        display: block;
    }
}
@media screen and (max-width: 280px) {
    .l-fee_block .box h3 {
        font-size: 21px;
        padding: 10px 10px 13px;
    }
    .l-fee_block .box h4 {
        font-size: 20px;
        padding-left: 20px;
        text-indent: -20px;
    }
    .l-fee_block .box .tbl th {
        width: 125px;
        font-size: 18px;
    }
    #short .l-fee_block .box .tbl th {
        width: 125px;
    }
    .l-fee_block .box .tbl td div p {
        font-size: 18px;
    }
    .l-fee_block .box .tbl td div p:last-child {
        font-size: 22px;
    }
}