@charset "UTF-8";
/* ==========================================================
Name:
    module.css

Description:
    サイトで共通使用する汎用モジュールのスタイルを記述する
    アルファベット降順(A->Z)に記述する

Contents:
    layout
    component
    utility
========================================================== */
/* ==========================================================
*
*   layout
*
========================================================== */
/* ---------------------------------------------
*   contents
--------------------------------------------- */
/* ---------------------------------------------
*   footer
--------------------------------------------- */
.footer__top {
    padding: 16px 0;
    border-top: 1px solid #333333;
    border-bottom: 1px dashed #333333;
    text-align: center;
    letter-spacing: 0.05em;
    font-size: 14px;
    line-height: 1.86;

    font-feature-settings: 'palt';
}

@media screen and (max-width: 750px) {
    .footer__top {
        padding: 2.13333vw 0 1.33333vw;
        border-top: 0.13333vw solid #333333;
        border-bottom: 0.13333vw dashed #333333;
        font-size: 1.86667vw;
    }
}

.footer__top-mail {
    color: #0000ff;
}

.footer__top-mail:hover {
    text-decoration: underline;
}

/*  footer-container
--------------------------------------------- */
/*  footer-copyright
--------------------------------------------- */
.footer-copyright {
    padding: 18px 0;
    text-align: center;
}

@media screen and (max-width: 750px) {
    .footer-copyright {
        margin-bottom: 2.4vw;
        padding: 0;
    }
}

.footer-copyright__txt {
    letter-spacing: 0.05em;
    font-size: 14px;
}

@media screen and (max-width: 750px) {
    .footer-copyright__txt {
        font-size: 1.86667vw;
    }
}

/* ---------------------------------------------
*   wrapper
--------------------------------------------- */
.windows .wrapper * {
    letter-spacing: 0;
}

.android .wrapper * {
    letter-spacing: -0.05em;
}

/* ==========================================================
*
*   component
*
========================================================== */
/* ---------------------------------------------
*   c-block-content
--------------------------------------------- */
.c-block-content {
    display: flex;
    margin-top: 27px;
    padding-bottom: 48px;
    border-bottom: 1px solid #666666;

    justify-content: space-between;
}

@media screen and (max-width: 750px) {
    .c-block-content {
        margin-top: 3.46667vw;
        padding-bottom: 4.66667vw;
    }
}

.c-block-content:nth-of-type(2) {
    border-bottom: 1px dotted #666666;
}

.c-block-content--pb {
    padding-bottom: 37px;
}

@media screen and (max-width: 750px) {
    .c-block-content--pb {
        padding-bottom: 2.66667vw;
    }
}

.c-block-content__left {
    width: 288px;
}

@media screen and (max-width: 750px) {
    .c-block-content__left {
        width: 18.13333vw;
    }
}

@media screen and (max-width: 750px) {
    .c-block-content__left--02 {
        width: 20.66667vw;
    }
}

.c-block-content__right {
    width: 702px;
}

@media screen and (max-width: 750px) {
    .c-block-content__right {
        width: 68vw;
    }
}

.c-block-content__top-img {
    position: relative;
    margin-bottom: 18px;
}

@media screen and (max-width: 750px) {
    .c-block-content__top-img {
        margin-bottom: 2.4vw;
        width: 64.53333vw;
    }
}

@media screen and (max-width: 750px) {
    .c-block-content__top-img--talk {
        margin-left: -0.93333vw;
        width: 48.26667vw;
    }
}

.c-block-content__top-img-txt {
    position: absolute;
    bottom: -8px;
    left: 0;
    color: #6e285a;
    letter-spacing: 0.2em;
    font-weight: bold;
    font-size: 20px;

    font-feature-settings: 'palt';
}

@media screen and (max-width: 750px) {
    .c-block-content__top-img-txt {
        bottom: -1.86667vw;
        font-size: 2.66667vw;
    }
}

.c-block-content__top-img-txt--talk {
    bottom: -24px;
    left: 3px;
}

@media screen and (max-width: 750px) {
    .c-block-content__top-img-txt--talk {
        bottom: -3.2vw;
        left: 0.4vw;
    }
}

.c-block-content__ttl {
    margin-bottom: 10px;
    letter-spacing: 0.2em;
    font-weight: bold;
    font-size: 32px;

    font-feature-settings: 'palt';
}

@media screen and (max-width: 750px) {
    .c-block-content__ttl {
        margin-bottom: 1.33333vw;
        font-size: 4.26667vw;
    }
}

.c-block-content__txt {
    margin-bottom: 26px;
    letter-spacing: 0.05em;
    font-size: 18px;
    line-height: 1.78;

    font-feature-settings: 'palt';
}

@media screen and (max-width: 750px) {
    .c-block-content__txt {
        margin-bottom: 2.66667vw;
        font-size: 2.66667vw;
        line-height: 1.6;
    }
}

/* ---------------------------------------------
*   c-block-kv
--------------------------------------------- */
.c-block-kv__inner {
    margin: 0 auto;
    width: 1000px;
}

@media screen and (max-width: 750px) {
    .c-block-kv__inner {
        width: 92vw;
    }
}

.c-block-kv__container {
    position: relative;
    margin: 0 auto;
    padding-top: 90px;
    width: 1000px;
}

@media screen and (max-width: 750px) {
    .c-block-kv__container {
        padding-top: 17.33333vw;
        width: 92vw;
    }
}

.c-block-kv__top {
    width: 100%;
    height: 750px;
    background: #59c9c8 url(../img/img_mv01.png) 0 0 no-repeat;
    background-position: center;
    background-size: auto 100%;
}

@media screen and (max-width: 750px) {
    .c-block-kv__top {
        width: 100%;
        height: 102.66667vw;
        background: #59c9c8 url(../img/img_mv01_sp.png) 0 0 no-repeat;
        background-position: center;
        background-size: auto 100%;
    }
}

.c-block-kv__top-ttl {
    margin-bottom: 115px;
    color: #fff;
    text-align: right;
    font-weight: bold;
    font-size: 80px;
    line-height: 1.25;

    font-feature-settings: 'palt';
}

@media screen and (max-width: 750px) {
    .c-block-kv__top-ttl {
        margin-bottom: 6.66667vw;
        font-size: 6.66667vw;
    }
}

.c-block-kv__top-txt {
    text-align: right;
    letter-spacing: 0.04em;
    font-weight: bold;
    font-size: 34px;
    line-height: 1.47;

    font-feature-settings: 'palt';
}

@media screen and (max-width: 750px) {
    .c-block-kv__top-txt {
        margin-bottom: 2vw;
        letter-spacing: 0;
        font-size: 4vw;
    }
}

.c-block-kv__top-txt--sm {
    text-align: right;
    letter-spacing: 0.08em;
    font-weight: normal;
    font-size: 24px;
    line-height: 1.75;
}

@media screen and (max-width: 750px) {
    .c-block-kv__top-txt--sm {
        letter-spacing: 0.05em;
        font-size: 2.93333vw;
    }
}

.c-block-kv__bottom {
    padding-top: 34px;
    width: 100%;
    height: 574px;
    background: #fff url(../img/img_mv02.png) 0 0 no-repeat;
    background-position: center;
    background-size: auto 100%;
}

@media screen and (max-width: 750px) {
    .c-block-kv__bottom {
        padding-top: 3.33333vw;
        height: 89.86667vw;
        background: #fff url(../img/img_mv02_sp.png) 0 0 no-repeat;
        background-size: auto 100%;
    }
}

.c-block-kv__bottom-txt {
    color: #fff;
    text-align: center;
    letter-spacing: 0.05em;
    font-size: 20px;
    line-height: 2;

    font-feature-settings: 'palt';
}

@media screen and (max-width: 750px) {
    .c-block-kv__bottom-txt {
        font-size: 2.66667vw;
        line-height: 1.8;
    }
}

.c-block-kv__logo {
    position: absolute;
    top: 20px;
    right: 0;
}

@media screen and (max-width: 750px) {
    .c-block-kv__logo {
        top: 2%;
        right: 0;
    }
}

@media screen and (max-width: 750px) {
    .c-block-kv__logo img {
        width: 51.46667vw;
    }
}

/* ---------------------------------------------
*   c-block-recommend
--------------------------------------------- */
.c-block-recommend__ttl {
    margin-bottom: 20px;
    text-align: center;
}

@media screen and (max-width: 750px) {
    .c-block-recommend__ttl {
        margin: 0 auto 1.86667vw;
        width: 66vw;
    }
}

.c-block-recommend__txt {
    margin-bottom: 31px;
    text-align: center;
}

@media screen and (max-width: 750px) {
    .c-block-recommend__txt {
        margin: 0 auto 4.26667vw;
        width: 59.2vw;
    }
}

.c-block-recommend__list {
    display: flex;
}

@media screen and (max-width: 750px) {
    .c-block-recommend__list {
        flex-direction: column;
        margin: 0 auto;
        width: 58.66667vw;

        align-items: center;
    }
}

.c-block-recommend__item {
    width: 33%;
    border-left: 3px dotted #fff;
    text-align: center;
}

@media screen and (max-width: 750px) {
    .c-block-recommend__item {
        padding: 3.46667vw 0;
        width: 100%;
        border-top: 0.4vw dotted #fff;
        border-left: none;
    }
}

.c-block-recommend__item:last-of-type {
    border-right: 3px dotted #fff;
}

@media screen and (max-width: 750px) {
    .c-block-recommend__item:last-of-type {
        border-right: none;
        border-bottom: 0.4vw dotted #fff;
    }
}

.c-block-recommend__item-txt {
    letter-spacing: 0.05em;
    font-size: 16px;

    font-feature-settings: 'palt';
}

@media screen and (max-width: 750px) {
    .c-block-recommend__item-txt {
        font-size: 2.66667vw;
    }
}

.c-block-recommend__item-img {
    margin-bottom: 6px;
    width: 100%;
}

@media screen and (max-width: 750px) {
    .c-block-recommend__item-img {
        margin: 0 auto 2.93333vw;
    }
}

@media screen and (max-width: 750px) {
    .c-block-recommend__item-img--1 {
        width: 42.8vw;
    }
}

@media screen and (max-width: 750px) {
    .c-block-recommend__item-img--2 {
        margin-bottom: 1.06667vw;
    }
}

@media screen and (max-width: 750px) {
    .c-block-recommend__item-img--2 img {
        width: 38.66667vw;
    }
}

@media screen and (max-width: 750px) {
    .c-block-recommend__item-img--3 {
        margin-bottom: 1.06667vw;
    }
}

@media screen and (max-width: 750px) {
    .c-block-recommend__item-img--3 img {
        width: 42.53333vw;
    }
}

/* ---------------------------------------------
*   c-btn
--------------------------------------------- */
.c-btn {
    position: relative;
    display: block;
    margin: 0 auto;
    padding: 19px 0 18px 30px;
    width: 500px;
    background-color: #6e285a;
    color: #fff;
    letter-spacing: 0.1em;
    font-weight: bold;
    font-size: 40px;
    line-height: 2.1;

    font-feature-settings: 'palt';
}

@media screen and (min-width: 751px) {
    .c-btn {
        transition: opacity 0ms;
    }
    .c-btn:hover {
        opacity: 0.7;
    }
}

@media screen and (max-width: 750px) {
    .c-btn {
        padding: 1.73333vw 0 1.6vw 2.53333vw;
        width: 48vw;
        font-size: 4vw;
    }
}

.c-btn:after {
    position: absolute;
    top: 50%;
    right: 0;
    width: 33px;
    height: 57px;
    background: url(../img/icon_arrow.png) 0 0 no-repeat;
    background-size: 100% auto;
    content: '';
    transform: translate(-50%, -50%);
}

@media screen and (max-width: 750px) {
    .c-btn:after {
        right: 0.66667vw;
        width: 4.13333vw;
        height: 7.06667vw;
    }
}

/* ---------------------------------------------
*   c-card-speaker
--------------------------------------------- */
.c-card-speaker {
    padding: 21px 0;
    border-bottom: 1px dotted #666666;
}

@media screen and (max-width: 750px) {
    .c-card-speaker {
        padding: 0 0 3.46667vw;
    }
}

.c-card-speaker:nth-of-type(2n) {
    margin-bottom: 48px;
    border-bottom: 1px solid #666666;
}

@media screen and (max-width: 750px) {
    .c-card-speaker:nth-of-type(2n) {
        margin-bottom: 6.26667vw;
        border-bottom: 0.13333vw solid #666666;
    }
}

@media screen and (max-width: 750px) {
    .c-card-speaker--btm {
        padding-bottom: 6vw;
    }
}

.c-card-speaker__top {
    display: flex;

    justify-content: space-between;
}

@media screen and (max-width: 750px) {
    .c-card-speaker__top {
        margin-bottom: 0.66667vw;
    }
}

.c-card-speaker__top-inner {
    display: flex;

    justify-content: space-between;
}

@media screen and (max-width: 750px) {
    .c-card-speaker__top-inner {
        position: relative;
        flex-direction: column-reverse;
    }
}

@media screen and (max-width: 750px) {
    .c-card-speaker__moderate-inner {
        display: flex;
        flex-direction: column-reverse;
    }
}

.c-card-speaker__top-inner img {
    margin-top: 12px;
    height: 65px;
}

@media screen and (max-width: 750px) {
    .c-card-speaker__top-inner img {
        position: absolute;
        top: 0;
        right: 0;
        margin-top: 0;
        margin-left: auto;
        width: 32vw;
        height: auto;
    }
}

.c-card-speaker__left {
    margin-top: 10px;
    width: 200px;
}

@media screen and (max-width: 750px) {
    .c-card-speaker__left {
        margin-top: 8.66667vw;
        width: 20.66667vw;
    }
}

.c-card-speaker__right {
    width: 770px;
}

@media screen and (max-width: 750px) {
    .c-card-speaker__right {
        width: 68vw;
    }
}

.c-card-speaker__txt {
    letter-spacing: 0.05em;
    font-size: 16px;
    line-height: 1.63;

    font-feature-settings: 'palt';
}

@media screen and (max-width: 750px) {
    .c-card-speaker__txt {
        font-size: 2.66667vw;
    }
}

.c-card-speaker__txt--bold {
    font-weight: bold;
}

.c-card-speaker__txt--m {
    font-size: 18px;
}

@media screen and (max-width: 750px) {
    .c-card-speaker__txt--m {
        font-size: 2.4vw;
    }
}

@media screen and (max-width: 750px) {
    .c-card-speaker__txt--m-1 {
        margin-bottom: 1.2vw;
        font-size: 2.66667vw;
    }
}

.c-card-speaker__txt--l {
    font-size: 22px;
}

@media screen and (max-width: 750px) {
    .c-card-speaker__txt--l {
        font-size: 2.66667vw;
    }
}

.c-card-speaker__txt--xlg {
    font-size: 28px;
}

@media screen and (max-width: 750px) {
    .c-card-speaker__txt--xlg {
        font-size: 3.73333vw;
    }
}

.c-card-speaker__txt--purple {
    color: #6e285a;
}

@media screen and (max-width: 750px) {
    .c-card-speaker__txt--speaker {
        padding-top: 6.66667vw;
    }
}

.c-card-speaker__name {
    margin-bottom: 11px;
}

@media screen and (max-width: 750px) {
    .c-card-speaker__name {
        margin-bottom: 1.33333vw;
    }
}

.c-card-speaker__name-img {
    position: relative;
}

@media screen and (max-width: 750px) {
    .c-card-speaker__name-img {
        text-align: right;
    }
}

.c-card-speaker__name-img img {
    position: absolute;
    top: -71px;
    right: -6px;
}

@media screen and (max-width: 750px) {
    .c-card-speaker__name-img img {
        position: static;
        width: 39.2vw;
    }
}

.c-card-speaker__bottom {
    display: flex;
}

@media screen and (max-width: 750px) {
    .c-card-speaker__bottom {
        width: 66vw;

        flex-wrap: wrap;
    }
}

@media screen and (max-width: 750px) {
    .c-card-speaker__bottom-item img {
        width: 21.6vw;
    }
}

.c-card-speaker__bottom-item {
    margin-right: 40px;
    width: 163px;
}

@media screen and (max-width: 750px) {
    .c-card-speaker__bottom-item {
        margin-right: 0;
        width: 29.86667vw;
    }
    .c-card-speaker__bottom-item:nth-of-type(odd) {
        margin-right: 5.33333vw;
    }
    .c-card-speaker__bottom-item:nth-of-type(1) {
        margin-bottom: 20px;
    }
}

@media screen and (max-width: 750px) and (max-width: 750px) {
    .c-card-speaker__bottom-item:nth-of-type(1) {
        margin-bottom: 2.66667vw;
    }
}

@media screen and (max-width: 750px) {
    .c-card-speaker__bottom-item:nth-of-type(2) {
        margin-bottom: 20px;
    }
}

@media screen and (max-width: 750px) and (max-width: 750px) {
    .c-card-speaker__bottom-item:nth-of-type(2) {
        margin-bottom: 2.66667vw;
    }
}

.c-card-speaker__bottom-item:last-of-type {
    margin-right: 0;
}

.c-card-speaker__bottom-item--slim {
    width: 139px;
}

@media screen and (max-width: 750px) {
    .c-card-speaker__bottom-item--slim {
        width: 29.86667vw;
    }
}

@media screen and (max-width: 750px) {
    .c-card-speaker__bottom-item--slim img {
        width: 18.4vw;
    }
}

.c-card-speaker__bottom-item-img {
    margin-bottom: 15px;
}

@media screen and (max-width: 750px) {
    .c-card-speaker__bottom-item-img {
        margin-bottom: 2vw;
    }
}

.c-card-speaker__bottom-item-txt {
    letter-spacing: 0.03em;
    font-size: 14px;

    font-feature-settings: 'palt';
}

.windows .c-card-speaker__bottom-item-txt {
    letter-spacing: -0.05em;
}

.iphone .c-card-speaker__bottom-item-txt {
    letter-spacing: -0.05em;
}

@media screen and (max-width: 750px) {
    .c-card-speaker__bottom-item-txt {
        width: 32vw;
        font-size: 2.4vw;
        line-height: 1.67;
    }
}

/* ---------------------------------------------
*   c-chapter-overview
--------------------------------------------- */
.c-chapter-overview {
    position: relative;
    padding: 54px 0 55px;
    background-color: #EAE7D0;
}

@media screen and (max-width: 750px) {
    .c-chapter-overview {
        padding: 3.6vw 0 4.66667vw;
    }
}

.c-chapter-overview:after {
    position: absolute;
    bottom: -60px;
    left: 50%;
    width: 0;
    height: 0;
    border-width: 40px 50px 0 50px;
    border-style: solid;
    border-color: #EAE7D0 transparent transparent transparent;
    content: '';
    transform: translate(-50%, -50%);
}

@media screen and (max-width: 750px) {
    .c-chapter-overview:after {
        bottom: -4vw;
        border-width: 4vw 4.66667vw 0 4.66667vw;
        transform: translate(-50%, 0);
    }
}

.c-chapter-overview__inner {
    margin: 0 auto;
    width: 1000px;
}

@media screen and (max-width: 750px) {
    .c-chapter-overview__inner {
        width: 92vw;
    }
}

.c-chapter-overview__top-ttl {
    position: relative;
    margin: 5px 0 18px;
}

@media screen and (max-width: 750px) {
    .c-chapter-overview__top-ttl {
        margin: 1.33333vw 0 2.4vw;
    }
}

.c-chapter-overview__top-ttl-note {
    position: absolute;
    bottom: -12px;
    left: 0;
    letter-spacing: 0.05em;
    font-weight: bold;
    font-size: 28px;

    font-feature-settings: 'palt';
}

@media screen and (max-width: 750px) {
    .c-chapter-overview__top-ttl-note {
        bottom: -2.26667vw;
        font-size: 2.93333vw;
    }
}

.c-chapter-overview__top-txt {
    letter-spacing: 0.05em;
    font-weight: bold;
    font-size: 24px;

    font-feature-settings: 'palt';
}

@media screen and (max-width: 750px) {
    .c-chapter-overview__top-txt {
        font-size: 2.66667vw;
    }
}

.c-chapter-overview__top-txt--lg {
    font-size: 40px;
    line-height: 1.38;
}

@media screen and (max-width: 750px) {
    .c-chapter-overview__top-txt--lg {
        font-size: 4.26667vw;
    }
}

.c-chapter-overview__top-txt--sm {
    font-weight: normal;
    font-size: 16px;
    line-height: 1.75;
}

@media screen and (max-width: 750px) {
    .c-chapter-overview__top-txt--sm {
        font-size: 2.66667vw;
        line-height: 1.6;
    }
}

.c-chapter-overview__top-inner {
    display: flex;

    justify-content: space-between;
}

.c-chapter-overview__top-img {
    margin-top: -103px;
    width: 220px;
}

@media screen and (max-width: 750px) {
    .c-chapter-overview__top-img {
        margin-top: 1.06667vw;
        width: 26.8vw;
    }
}

.c-chapter-overview__top-txt-box {
    width: 755px;
}

@media screen and (max-width: 750px) {
    .c-chapter-overview__top-txt-box {
        width: 61.33333vw;
    }
}

.c-chapter-overview__bottom {
    display: flex;

    justify-content: space-between;
}

@media screen and (max-width: 750px) {
    .c-chapter-overview__bottom {
        margin: 0 auto;
        width: 69.33333vw;

        flex-wrap: wrap;
    }
}

.c-chapter-overview__bottom-item {
    width: 213px;
}

@media screen and (max-width: 750px) {
    .c-chapter-overview__bottom-item {
        width: 28vw;
    }
}

.c-chapter-overview__bottom-item-img {
    margin-bottom: 15px;
}

@media screen and (max-width: 750px) {
    .c-chapter-overview__bottom-item-img {
        margin-bottom: 1.73333vw;
        width: 26.66667vw;
    }
}

.c-chapter-overview__bottom-item-txt {
    letter-spacing: 0.05em;
    font-size: 16px;

    font-feature-settings: 'palt';
}

.windows .c-chapter-overview__bottom-item-txt {
    letter-spacing: -0.05em;
}

@media screen and (max-width: 750px) {
    .c-chapter-overview__bottom-item-txt {
        width: 29.06667vw;
        text-align: center;
        font-size: 2.13333vw;
    }
}

/* ---------------------------------------------
*   c-list-content
--------------------------------------------- */
.c-list-content__heading {
    padding: 7px 0 7px 15px;
    background-color: #79466A;
    color: #fff;
    letter-spacing: 0.2em;
    font-weight: bold;
    font-size: 24px;

    font-feature-settings: 'palt';
}

@media screen and (max-width: 750px) {
    .c-list-content__heading {
        padding: 0.93333vw 0 0.93333vw 1.6vw;
        font-size: 2.66667vw;
    }
}

.windows .c-list-content__heading {
    padding: 9px 0 5px 15px;
}

.c-list-content__ttl {
    padding: 18px 0 21px;
    letter-spacing: 0.05em;
    font-weight: bold;
    font-size: 28px;
    line-height: 1.14;

    font-feature-settings: 'palt';
}

@media screen and (max-width: 750px) {
    .c-list-content__ttl {
        padding: 1.2vw 0 1.73333vw;
        font-size: 3.73333vw;
        line-height: 1.43;
    }
}

.ie11 .c-list-content__ttl {
    padding: 18px 0 18px;
}

.c-list-content__menu {
    padding: 13px 0 13px;
    border-top: 1px solid #000000;
}

@media screen and (max-width: 750px) {
    .c-list-content__menu {
        padding: 1.73333vw 0 1.73333vw;
        border-top: 0.13333vw solid #000000;
    }
}

.c-list-content__menu:last-of-type {
    border-bottom: 1px solid #000000;
}

.c-list-content__menu-txt {
    letter-spacing: -0.01em;
    font-weight: bold;
    font-size: 18px;
    line-height: 1.56;
}

@media screen and (max-width: 750px) {
    .c-list-content__menu-txt {
        font-size: 2.66667vw;
    }
}

.c-list-content__item-txt {
    text-indent: 1em;
    letter-spacing: 0.05em;
    font-size: 18px;

    font-feature-settings: 'palt';
}

@media screen and (max-width: 750px) {
    .c-list-content__item-txt {
        font-size: 2.66667vw;
    }
}

/* ---------------------------------------------
*   c-list-data
--------------------------------------------- */
.c-list-data {
    position: relative;
    margin: 24px 0 10px;
    width: 100%;
    border-top: 1px solid #666666;
    border-bottom: 1px solid #666666;
}

@media screen and (max-width: 750px) {
    .c-list-data {
        margin: 1.6vw 0 1.33333vw;
        border-top: 0.13333vw solid #666666;
        border-bottom: 0.13333vw solid #666666;
    }
}

.c-list-data__content {
    display: flex;
    border-bottom: 1px dashed #666666;
}

@media screen and (max-width: 750px) {
    .c-list-data__content {
        padding: 0.66667vw 0;
        border-bottom: 0.13333vw dashed #666666;
    }
}

.c-list-data__content:nth-of-type(2n) {
    border-bottom: none;
}

.c-list-data__content-ttl {
    box-sizing: border-box;
    width: 388px;
    letter-spacing: 0.03em;
    font-weight: bold;
    font-size: 36px;
    line-height: 2.5;

    font-feature-settings: 'palt';
}

.windows .c-list-data__content-ttl {
    letter-spacing: -0.05em;
}

@media screen and (max-width: 750px) {
    .c-list-data__content-ttl {
        width: 40.66667vw;
        font-size: 3.73333vw;
        line-height: 2.3;
    }
}

.c-list-data__content-txt {
    padding-left: 30px;
    letter-spacing: 0.03em;
    font-weight: bold;
    font-size: 36px;
    line-height: 2.5;

    font-feature-settings: 'palt';
}

@media screen and (max-width: 750px) {
    .c-list-data__content-txt {
        padding-left: 1.06667vw;
        font-size: 3.73333vw;
        line-height: 2.3;
    }
}

.c-list-data__icon {
    position: absolute;
    top: 50%;
    right: 0;
    display: flex;
    flex-direction: column;
    width: 160px;
    height: 160px;
    border-radius: 50%;
    background-color: #ff0000;
    transform: translate(0, -50%);

    justify-content: center;
    align-items: center;
}

@media screen and (max-width: 750px) {
    .c-list-data__icon {
        width: 17.33333vw;
        height: 17.33333vw;
    }
}

.c-list-data__icon-txt {
    color: #fff;
    letter-spacing: 0.05em;
    font-weight: bold;
    font-size: 34px;
    line-height: 1.18;

    font-feature-settings: 'palt';
}

@media screen and (max-width: 750px) {
    .c-list-data__icon-txt {
        font-size: 3.46667vw;
    }
}

.c-list-data__icon-txt--lg {
    font-size: 56px;
}

@media screen and (max-width: 750px) {
    .c-list-data__icon-txt--lg {
        font-size: 5.6vw;
    }
}

/* ---------------------------------------------
*   c-section
--------------------------------------------- */
.c-section__inner {
    margin: 0 auto;
    width: 1000px;
}

@media screen and (max-width: 750px) {
    .c-section__inner {
        width: 92vw;
    }
}

.c-section--overview {
    padding-top: 54px;
}

@media screen and (max-width: 750px) {
    .c-section--overview {
        padding-top: 5.73333vw;
    }
}

.c-section--content {
    padding-top: 55px;
}

@media screen and (max-width: 750px) {
    .c-section--content {
        padding-top: 5.06667vw;
    }
}

.c-section__content-ttl {
    margin: 14px 0 0;
    padding: 20px 0 32px;
    border-top: 3px solid #666666;
    border-bottom: 1px solid #666666;
    text-align: center;
    letter-spacing: 0.05em;
    font-size: 20px;
    line-height: 1.8;

    font-feature-settings: 'palt';
}

@media screen and (max-width: 750px) {
    .c-section__content-ttl {
        margin: 1.33333vw 0 0;
        padding: 2.4vw 0 3.33333vw;
        border-top: 0.4vw solid #666666;
        border-bottom: 0.13333vw solid #666666;
        letter-spacing: 0.05em;
        font-size: 2.66667vw;
        line-height: 1.6;
    }
}

.c-section--recommend {
    position: relative;
    padding: 59px 0 56px;
    background-color: #99cc33;
}

@media screen and (max-width: 750px) {
    .c-section--recommend {
        padding: 6.66667vw 0 10vw;
    }
}

.c-section--recommend:before {
    position: absolute;
    top: 20px;
    left: 50%;
    width: 0;
    height: 0;
    border-width: 40px 50px 0 50px;
    border-style: solid;
    border-color: #fff transparent transparent transparent;
    content: '';
    transform: translate(-50%, -50%);
}

@media screen and (max-width: 750px) {
    .c-section--recommend:before {
        top: 0vw;
        border-width: 4vw 4.66667vw 0 4.66667vw;
        transform: translate(-50%, 0);
    }
}

.c-section--recommend:after {
    position: absolute;
    bottom: -60px;
    left: 50%;
    width: 0;
    height: 0;
    border-width: 40px 50px 0 50px;
    border-style: solid;
    border-color: #99cc33 transparent transparent transparent;
    content: '';
    transform: translate(-50%, -50%);
}

@media screen and (max-width: 750px) {
    .c-section--recommend:after {
        bottom: -4vw;
        border-width: 4vw 4.66667vw 0 4.66667vw;
        transform: translate(-50%, 0);
    }
}

.c-section--summary {
    padding: 51px 0 57px;
}

@media screen and (max-width: 750px) {
    .c-section--summary {
        padding: 6.8vw 0 7.6vw;
    }
}

.c-section__summary-ttl {
    position: relative;
    margin-bottom: 42px;
    text-align: center;
}

@media screen and (max-width: 750px) {
    .c-section__summary-ttl {
        margin: 0 auto;
        margin-bottom: 6.66667vw;
        width: 69.33333vw;
    }
}

.c-section__summary-txt {
    position: absolute;
    bottom: -70%;
    left: 50%;
    letter-spacing: 0.2em;
    font-weight: bold;
    font-size: 40px;
    transform: translate(-50%, -50%);

    font-feature-settings: 'palt';
}

@media screen and (max-width: 750px) {
    .c-section__summary-txt {
        bottom: -95%;
        left: 50%;
        width: 100%;
        font-size: 5.33333vw;
    }
}

/* ---------------------------------------------
*   c-ttl-1
--------------------------------------------- */
.c-ttl-1 {
    color: #000;
    text-align: center;
    letter-spacing: 0.2em;
    font-weight: bold;
    font-size: 50px;
    line-height: 1.7;

    font-feature-settings: 'palt';
}

@media screen and (max-width: 750px) {
    .c-ttl-1 {
        font-size: 5.33333vw;
    }
}

.windows .c-ttl-1 {
    letter-spacing: 0.2em;
}

.android .c-ttl-1 {
    letter-spacing: 0.2em;
}

.c-ttl-1--white {
    color: #fff;
}

/* ---------------------------------------------
*   c-ttl-book
--------------------------------------------- */
.c-ttl-book {
    margin: 25px 0 29px;
    padding: 13px 0;
    width: 100%;
    border-top: 1px solid #666666;
    border-bottom: 1px solid #666666;
    letter-spacing: 0.2em;
    font-weight: bold;
    font-size: 22px;

    font-feature-settings: 'palt';
}

@media screen and (max-width: 750px) {
    .c-ttl-book {
        margin: 3.33333vw 0 2.66667vw;
        padding: 1.33333vw 0 1.46667vw;
        border-top: 0.2vw solid #666666;
        border-bottom: 0.2vw solid #666666;
        font-size: 3.2vw;
    }
}

.windows .c-ttl-book {
    letter-spacing: 0.2em;
}

.android .c-ttl-book {
    letter-spacing: 0.2em;
}

.c-ttl-book--sm {
    margin: 20px 0 18px;
    padding: 5px 0 6px;
    font-size: 18px;
}

@media screen and (max-width: 750px) {
    .c-ttl-book--sm {
        margin: 2.93333vw 0 2.4vw;
        padding: 1.46667vw 0;
        font-size: 3.2vw;
    }
}

.ie .c-ttl-book--sm {
    position: relative;
    top: .2em;
}

/* ---------------------------------------------
*   c-txt-1
--------------------------------------------- */
.c-txt-1 {
    letter-spacing: 0.05em;
    font-size: 20px;
    line-height: 1.8;

    font-feature-settings: 'palt';
}

@media screen and (max-width: 750px) {
    .c-txt-1 {
        font-size: 2.66667vw;
        line-height: 1.6;
    }
}

.c-txt-1--center {
    text-align: center;
}

.c-txt-1--sm {
    letter-spacing: 0.08em;
    font-size: 18px;
    line-height: 2;
}

@media screen and (max-width: 750px) {
    .c-txt-1--sm {
        font-size: 2.4vw;
        line-height: 1.56;
    }
}

.c-txt-1--red {
    color: #ff0000;
}

.windows .c-txt-1--lts {
    letter-spacing: -0.04em;
}

@media screen and (max-width: 750px) {
    .c-txt-1--lts {
        letter-spacing: 0.08em;
    }
}

/* ==========================================================
*
*   javascript style hooks
*
========================================================== */
/* ==========================================================
*
*   utility
*
========================================================== */
/* ---------------------------------------------
*   background-color
--------------------------------------------- */
.bg-white {
    background-color: #fff !important;
}

/* ---------------------------------------------
*   font-wight
--------------------------------------------- */
.fw-normal {
    font-weight: 500 !important;
}

.fw-bold {
    font-weight: 700 !important;
}

/* ---------------------------------------------
*   text-align
--------------------------------------------- */
.txt-al-center {
    text-align: center !important;
}

.txt-al-right {
    text-align: right !important;
}

.txt-al-left {
    text-align: left !important;
}

@media screen and (min-width: 751px) {
    .pc-hide {
        display: none !important;
    }
}

@media screen and (max-width: 750px) {
    .sp-hide {
        display: none !important;
    }
}

/* ---------------------------------------------
*   margin-top
--------------------------------------------- */
.mgt-pc--0 {
    margin-top: 0 !important;
}

.mgt-pc--5 {
    margin-top: 5px !important;
}

.mgt-pc--10 {
    margin-top: 10px !important;
}

.mgt-pc--15 {
    margin-top: 15px !important;
}

.mgt-pc--20 {
    margin-top: 20px !important;
}

.mgt-pc--25 {
    margin-top: 25px !important;
}

.mgt-pc--30 {
    margin-top: 30px !important;
}

.mgt-pc--35 {
    margin-top: 35px !important;
}

.mgt-pc--40 {
    margin-top: 40px !important;
}

.mgt-pc--45 {
    margin-top: 45px !important;
}

.mgt-pc--50 {
    margin-top: 50px !important;
}

.mgt-pc--55 {
    margin-top: 55px !important;
}

.mgt-pc--60 {
    margin-top: 60px !important;
}

.mgt-pc--65 {
    margin-top: 65px !important;
}

.mgt-pc--70 {
    margin-top: 70px !important;
}

.mgt-pc--75 {
    margin-top: 75px !important;
}

.mgt-pc--80 {
    margin-top: 80px !important;
}

.mgt-pc--85 {
    margin-top: 85px !important;
}

.mgt-pc--90 {
    margin-top: 90px !important;
}

.mgt-pc--95 {
    margin-top: 95px !important;
}

.mgt-pc--100 {
    margin-top: 100px !important;
}

.mgt-pc--105 {
    margin-top: 105px !important;
}

.mgt-pc--110 {
    margin-top: 110px !important;
}

.mgt-pc--115 {
    margin-top: 115px !important;
}

.mgt-pc--120 {
    margin-top: 120px !important;
}

.mgt-pc--125 {
    margin-top: 125px !important;
}

.mgt-pc--130 {
    margin-top: 130px !important;
}

.mgt-pc--135 {
    margin-top: 135px !important;
}

.mgt-pc--140 {
    margin-top: 140px !important;
}

.mgt-pc--145 {
    margin-top: 145px !important;
}

.mgt-pc--150 {
    margin-top: 150px !important;
}

.mgt-pc--155 {
    margin-top: 155px !important;
}

.mgt-pc--160 {
    margin-top: 160px !important;
}

.mgt-pc--165 {
    margin-top: 165px !important;
}

.mgt-pc--170 {
    margin-top: 170px !important;
}

.mgt-pc--175 {
    margin-top: 175px !important;
}

.mgt-pc--180 {
    margin-top: 180px !important;
}

.mgt-pc--185 {
    margin-top: 185px !important;
}

.mgt-pc--190 {
    margin-top: 190px !important;
}

.mgt-pc--195 {
    margin-top: 195px !important;
}

.mgt-pc--200 {
    margin-top: 200px !important;
}

.mgt-pc--205 {
    margin-top: 205px !important;
}

.mgt-pc--210 {
    margin-top: 210px !important;
}

.mgt-pc--215 {
    margin-top: 215px !important;
}

.mgt-pc--220 {
    margin-top: 220px !important;
}

.mgt-pc--225 {
    margin-top: 225px !important;
}

.mgt-pc--230 {
    margin-top: 230px !important;
}

.mgt-pc--235 {
    margin-top: 235px !important;
}

.mgt-pc--240 {
    margin-top: 240px !important;
}

.mgt-pc--245 {
    margin-top: 245px !important;
}

.mgt-pc--250 {
    margin-top: 250px !important;
}

@media screen and (max-width: 750px) {
    .mgt-sp--0 {
        margin-top: 0 !important;
    }
    .mgt-sp--5 {
        margin-top: 0.66667vw !important;
    }
    .mgt-sp--10 {
        margin-top: 1.33333vw !important;
    }
    .mgt-sp--15 {
        margin-top: 2vw !important;
    }
    .mgt-sp--20 {
        margin-top: 2.66667vw !important;
    }
    .mgt-sp--25 {
        margin-top: 3.33333vw !important;
    }
    .mgt-sp--30 {
        margin-top: 4vw !important;
    }
    .mgt-sp--35 {
        margin-top: 4.66667vw !important;
    }
    .mgt-sp--40 {
        margin-top: 5.33333vw !important;
    }
    .mgt-sp--45 {
        margin-top: 6vw !important;
    }
    .mgt-sp--50 {
        margin-top: 6.66667vw !important;
    }
    .mgt-sp--55 {
        margin-top: 7.33333vw !important;
    }
    .mgt-sp--60 {
        margin-top: 8vw !important;
    }
    .mgt-sp--65 {
        margin-top: 8.66667vw !important;
    }
    .mgt-sp--70 {
        margin-top: 9.33333vw !important;
    }
    .mgt-sp--75 {
        margin-top: 10vw !important;
    }
    .mgt-sp--80 {
        margin-top: 10.66667vw !important;
    }
    .mgt-sp--85 {
        margin-top: 11.33333vw !important;
    }
    .mgt-sp--90 {
        margin-top: 12vw !important;
    }
    .mgt-sp--95 {
        margin-top: 12.66667vw !important;
    }
    .mgt-sp--100 {
        margin-top: 13.33333vw !important;
    }
    .mgt-sp--105 {
        margin-top: 14vw !important;
    }
    .mgt-sp--110 {
        margin-top: 14.66667vw !important;
    }
    .mgt-sp--115 {
        margin-top: 15.33333vw !important;
    }
    .mgt-sp--120 {
        margin-top: 16vw !important;
    }
    .mgt-sp--125 {
        margin-top: 16.66667vw !important;
    }
    .mgt-sp--130 {
        margin-top: 17.33333vw !important;
    }
    .mgt-sp--135 {
        margin-top: 18vw !important;
    }
    .mgt-sp--140 {
        margin-top: 18.66667vw !important;
    }
    .mgt-sp--145 {
        margin-top: 19.33333vw !important;
    }
    .mgt-sp--150 {
        margin-top: 20vw !important;
    }
    .mgt-sp--155 {
        margin-top: 20.66667vw !important;
    }
    .mgt-sp--160 {
        margin-top: 21.33333vw !important;
    }
    .mgt-sp--165 {
        margin-top: 22vw !important;
    }
    .mgt-sp--170 {
        margin-top: 22.66667vw !important;
    }
    .mgt-sp--175 {
        margin-top: 23.33333vw !important;
    }
    .mgt-sp--180 {
        margin-top: 24vw !important;
    }
    .mgt-sp--185 {
        margin-top: 24.66667vw !important;
    }
    .mgt-sp--190 {
        margin-top: 25.33333vw !important;
    }
    .mgt-sp--195 {
        margin-top: 26vw !important;
    }
    .mgt-sp--200 {
        margin-top: 26.66667vw !important;
    }
    .mgt-sp--205 {
        margin-top: 27.33333vw !important;
    }
    .mgt-sp--210 {
        margin-top: 28vw !important;
    }
    .mgt-sp--215 {
        margin-top: 28.66667vw !important;
    }
    .mgt-sp--220 {
        margin-top: 29.33333vw !important;
    }
    .mgt-sp--225 {
        margin-top: 30vw !important;
    }
    .mgt-sp--230 {
        margin-top: 30.66667vw !important;
    }
    .mgt-sp--235 {
        margin-top: 31.33333vw !important;
    }
    .mgt-sp--240 {
        margin-top: 32vw !important;
    }
    .mgt-sp--245 {
        margin-top: 32.66667vw !important;
    }
    .mgt-sp--250 {
        margin-top: 33.33333vw !important;
    }
}

/* ---------------------------------------------
*   margin-bottom
--------------------------------------------- */
.mgb-pc--0 {
    margin-bottom: 0 !important;
}

.mgb-pc--5 {
    margin-bottom: 5px !important;
}

.mgb-pc--10 {
    margin-bottom: 10px !important;
}

.mgb-pc--15 {
    margin-bottom: 15px !important;
}

.mgb-pc--20 {
    margin-bottom: 20px !important;
}

.mgb-pc--25 {
    margin-bottom: 25px !important;
}

.mgb-pc--30 {
    margin-bottom: 30px !important;
}

.mgb-pc--35 {
    margin-bottom: 35px !important;
}

.mgb-pc--40 {
    margin-bottom: 40px !important;
}

.mgb-pc--45 {
    margin-bottom: 45px !important;
}

.mgb-pc--50 {
    margin-bottom: 50px !important;
}

.mgb-pc--55 {
    margin-bottom: 55px !important;
}

.mgb-pc--60 {
    margin-bottom: 60px !important;
}

.mgb-pc--65 {
    margin-bottom: 65px !important;
}

.mgb-pc--70 {
    margin-bottom: 70px !important;
}

.mgb-pc--75 {
    margin-bottom: 75px !important;
}

.mgb-pc--80 {
    margin-bottom: 80px !important;
}

.mgb-pc--85 {
    margin-bottom: 85px !important;
}

.mgb-pc--90 {
    margin-bottom: 90px !important;
}

.mgb-pc--95 {
    margin-bottom: 95px !important;
}

.mgb-pc--100 {
    margin-bottom: 100px !important;
}

.mgb-pc--105 {
    margin-bottom: 105px !important;
}

.mgb-pc--110 {
    margin-bottom: 110px !important;
}

.mgb-pc--115 {
    margin-bottom: 115px !important;
}

.mgb-pc--120 {
    margin-bottom: 120px !important;
}

.mgb-pc--125 {
    margin-bottom: 125px !important;
}

.mgb-pc--130 {
    margin-bottom: 130px !important;
}

.mgb-pc--135 {
    margin-bottom: 135px !important;
}

.mgb-pc--140 {
    margin-bottom: 140px !important;
}

.mgb-pc--145 {
    margin-bottom: 145px !important;
}

.mgb-pc--150 {
    margin-bottom: 150px !important;
}

.mgb-pc--155 {
    margin-bottom: 155px !important;
}

.mgb-pc--160 {
    margin-bottom: 160px !important;
}

.mgb-pc--165 {
    margin-bottom: 165px !important;
}

.mgb-pc--170 {
    margin-bottom: 170px !important;
}

.mgb-pc--175 {
    margin-bottom: 175px !important;
}

.mgb-pc--180 {
    margin-bottom: 180px !important;
}

.mgb-pc--185 {
    margin-bottom: 185px !important;
}

.mgb-pc--190 {
    margin-bottom: 190px !important;
}

.mgb-pc--195 {
    margin-bottom: 195px !important;
}

.mgb-pc--200 {
    margin-bottom: 200px !important;
}

.mgb-pc--205 {
    margin-bottom: 205px !important;
}

.mgb-pc--210 {
    margin-bottom: 210px !important;
}

.mgb-pc--215 {
    margin-bottom: 215px !important;
}

.mgb-pc--220 {
    margin-bottom: 220px !important;
}

.mgb-pc--225 {
    margin-bottom: 225px !important;
}

.mgb-pc--230 {
    margin-bottom: 230px !important;
}

.mgb-pc--235 {
    margin-bottom: 235px !important;
}

.mgb-pc--240 {
    margin-bottom: 240px !important;
}

.mgb-pc--245 {
    margin-bottom: 245px !important;
}

.mgb-pc--250 {
    margin-bottom: 250px !important;
}

@media screen and (max-width: 750px) {
    .mgb-sp--0 {
        margin-bottom: 0 !important;
    }
    .mgb-sp--5 {
        margin-bottom: 0.66667vw !important;
    }
    .mgb-sp--10 {
        margin-bottom: 1.33333vw !important;
    }
    .mgb-sp--15 {
        margin-bottom: 2vw !important;
    }
    .mgb-sp--20 {
        margin-bottom: 2.66667vw !important;
    }
    .mgb-sp--25 {
        margin-bottom: 3.33333vw !important;
    }
    .mgb-sp--30 {
        margin-bottom: 4vw !important;
    }
    .mgb-sp--35 {
        margin-bottom: 4.66667vw !important;
    }
    .mgb-sp--40 {
        margin-bottom: 5.33333vw !important;
    }
    .mgb-sp--45 {
        margin-bottom: 6vw !important;
    }
    .mgb-sp--50 {
        margin-bottom: 6.66667vw !important;
    }
    .mgb-sp--55 {
        margin-bottom: 7.33333vw !important;
    }
    .mgb-sp--60 {
        margin-bottom: 8vw !important;
    }
    .mgb-sp--65 {
        margin-bottom: 8.66667vw !important;
    }
    .mgb-sp--70 {
        margin-bottom: 9.33333vw !important;
    }
    .mgb-sp--75 {
        margin-bottom: 10vw !important;
    }
    .mgb-sp--80 {
        margin-bottom: 10.66667vw !important;
    }
    .mgb-sp--85 {
        margin-bottom: 11.33333vw !important;
    }
    .mgb-sp--90 {
        margin-bottom: 12vw !important;
    }
    .mgb-sp--95 {
        margin-bottom: 12.66667vw !important;
    }
    .mgb-sp--100 {
        margin-bottom: 13.33333vw !important;
    }
    .mgb-sp--105 {
        margin-bottom: 14vw !important;
    }
    .mgb-sp--110 {
        margin-bottom: 14.66667vw !important;
    }
    .mgb-sp--115 {
        margin-bottom: 15.33333vw !important;
    }
    .mgb-sp--120 {
        margin-bottom: 16vw !important;
    }
    .mgb-sp--125 {
        margin-bottom: 16.66667vw !important;
    }
    .mgb-sp--130 {
        margin-bottom: 17.33333vw !important;
    }
    .mgb-sp--135 {
        margin-bottom: 18vw !important;
    }
    .mgb-sp--140 {
        margin-bottom: 18.66667vw !important;
    }
    .mgb-sp--145 {
        margin-bottom: 19.33333vw !important;
    }
    .mgb-sp--150 {
        margin-bottom: 20vw !important;
    }
    .mgb-sp--155 {
        margin-bottom: 20.66667vw !important;
    }
    .mgb-sp--160 {
        margin-bottom: 21.33333vw !important;
    }
    .mgb-sp--165 {
        margin-bottom: 22vw !important;
    }
    .mgb-sp--170 {
        margin-bottom: 22.66667vw !important;
    }
    .mgb-sp--175 {
        margin-bottom: 23.33333vw !important;
    }
    .mgb-sp--180 {
        margin-bottom: 24vw !important;
    }
    .mgb-sp--185 {
        margin-bottom: 24.66667vw !important;
    }
    .mgb-sp--190 {
        margin-bottom: 25.33333vw !important;
    }
    .mgb-sp--195 {
        margin-bottom: 26vw !important;
    }
    .mgb-sp--200 {
        margin-bottom: 26.66667vw !important;
    }
    .mgb-sp--205 {
        margin-bottom: 27.33333vw !important;
    }
    .mgb-sp--210 {
        margin-bottom: 28vw !important;
    }
    .mgb-sp--215 {
        margin-bottom: 28.66667vw !important;
    }
    .mgb-sp--220 {
        margin-bottom: 29.33333vw !important;
    }
    .mgb-sp--225 {
        margin-bottom: 30vw !important;
    }
    .mgb-sp--230 {
        margin-bottom: 30.66667vw !important;
    }
    .mgb-sp--235 {
        margin-bottom: 31.33333vw !important;
    }
    .mgb-sp--240 {
        margin-bottom: 32vw !important;
    }
    .mgb-sp--245 {
        margin-bottom: 32.66667vw !important;
    }
    .mgb-sp--250 {
        margin-bottom: 33.33333vw !important;
    }
}
