@charset "UTF-8";
.gray {
    background-color: var(--color-black-50);
}

.navy {
    background: #1a1a1a;
    color: #ffffff;
}

p {
    line-height: 1.5em;
}
p .fontS20 {
    font-size: 20px;
}
p .bold {
    font-weight: bold;
}

.ilb {
    display: inline-block;
}

.secContact {
    padding: 120px 0;
}
@media only screen and (max-width: 768px) {
    .secContact {
        padding: 30px 0 80px;
    }
}
.secContact .inner {
    position: relative;
    padding-top: 60px;
}
.secContact .inner::before {
    content: "CONTACT";
    position: absolute;
    top: -22%;
    left: -90px;
    width: auto;
    height: 97px;
    z-index: -1;
    color: var(--color-black-60);
    display: block;
    font-family: Times New Roman, sans-serif;
    font-feature-settings: "palt";
    font-size: 9.375rem;
    font-weight: normal;
    letter-spacing: -4px;
    line-height: 1;
    white-space: nowrap;
}
@media only screen and (max-width: 1500px) {
    .secContact .inner::before {
        left: -30px;
    }
}
@media only screen and (max-width: 1024px) {
    .secContact .inner::before {
        height: 60px;
        left: -10px;
        font-size: 6rem;
        top: -8%;
    }
}
@media only screen and (max-width: 768px) {
    .secContact .inner::before {
        height: 40px;
        font-size: 4rem;
        top: -4%;
    }
}
@media only screen and (max-width: 480px) {
    .secContact .inner::before {
        height: 25px;
        font-size: 2.3rem;
    }
}
.secContact .inner .flexCont {
    margin-top: 10px;
    display: flex;
    flex-wrap: wrap;
}
.secContact .inner .flexCont > div {
    display: flex;
    align-items: center;
}
.secContact .inner .flexCont .txt {
    justify-content: flex-start;
    width: 38%;
    border-right: 1px solid #ced0d5;
}
@media only screen and (max-width: 1300px) {
    .secContact .inner .flexCont .txt {
        width: 100%;
        justify-content: center;
        border-right: none;
        padding-bottom: 50px;
    }
}
@media only screen and (max-width: 480px) {
    .secContact .inner .flexCont .txt {
        padding-bottom: 30px;
    }
}
.secContact .inner .flexCont .txt .cont {
    display: block;
    position: relative;
}
.secContact .inner .flexCont .txt .cont .ttl {
    position: absolute;
    top: -45px;
    left: 0px;
}
.secContact .inner .flexCont .txt .cont .ttl h2 {
    font-size: 20px;
    font-weight: bold;
    color: var(--color-primary01);
}
.secContact .inner .flexCont .txt .cont h3 {
    font-size: 28px;
    font-weight: bold;
    line-height: 1;
}
@media only screen and (max-width: 480px) {
    .secContact .inner .flexCont .txt .cont h3 {
        font-size: 20px;
    }
}
.secContact .inner .flexCont .txt .cont p {
    margin-top: 15px;
    font-size: 16px;
}
@media only screen and (max-width: 480px) {
    .secContact .inner .flexCont .txt .cont p {
        font-size: 14px;
    }
}
.secContact .inner .flexCont .tel {
    width: 32%;
    justify-content: center;
    border-right: 1px solid #ced0d5;
}
@media only screen and (max-width: 1300px) {
    .secContact .inner .flexCont .tel {
        width: 50%;
    }
}
@media only screen and (max-width: 768px) {
    .secContact .inner .flexCont .tel {
        width: 100%;
        border-right: none;
        padding-bottom: 50px;
    }
}
@media only screen and (max-width: 480px) {
    .secContact .inner .flexCont .tel {
        padding-bottom: 30px;
    }
}
.secContact .inner .flexCont .tel .cont a:hover {
    color: #1a1a1a;
}
.secContact .inner .flexCont .tel .cont p {
    font-size: 43px;
    font-weight: bold;
    font-family: Yu Gothic UI, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    padding-left: 30px;
    line-height: 1;
    position: relative;
}
@media only screen and (max-width: 1024px) {
    .secContact .inner .flexCont .tel .cont p {
        font-size: 38px;
    }
}
.secContact .inner .flexCont .tel .cont p::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0px;
    transform: translateY(-50%);
    width: 22px;
    height: 22px;
    background-image: url(/online-event/img/contact_tel.webp);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}
.secContact .inner .flexCont .tel .cont .img {
    margin-top: 10px;
    line-height: 1;
}
.secContact .inner .flexCont .mail-btn {
    width: 30%;
    justify-content: flex-end;
}
@media only screen and (max-width: 1300px) {
    .secContact .inner .flexCont .mail-btn {
        width: 50%;
        justify-content: center;
    }
}
@media only screen and (max-width: 768px) {
    .secContact .inner .flexCont .mail-btn {
        width: 100%;
        display: block;
    }
}
.secContact .inner .flexCont .mail-btn .cont .p-cta-block__button {
    margin-top: 0px;
}
@media print, screen and (min-width: 64em) {
    .secContact .inner .flexCont .mail-btn .cont .p-cta-block__button {
        width: 320px;
        box-sizing: border-box;
        /* margin-top: 20px; */
        margin-left: 28px;
    }
}
@media only screen and (max-width: 63.9375em) {
    .secContact .inner .flexCont .mail-btn .cont .p-cta-block__button {
        width: 100%;
    }
}
/* CTAボタン */
.secContact .inner .flexCont .mail-btn .cont .c-button {
    background-color: transparent;
    background-image: var(--color-gradation-main);
    position: relative;
}

.secContact .inner .flexCont .mail-btn .cont .c-button::before {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--color-gradation-hover);
    clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
    transition: clip-path 0.45s ease;
    z-index: 0;
}

@media print, screen and (min-width: 769px) {
    .secContact .inner .flexCont .mail-btn .cont .c-button:hover {
        background-color: transparent;
    }
    .secContact .inner .flexCont .mail-btn .cont .c-button:hover::before {
        clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
    }
    .secContact .inner .flexCont .mail-btn .cont .c-button:hover::after {
        display: none;
    }
    .secContact .inner .flexCont .mail-btn .cont .c-button:hover > span {
        color: var(--color-white-00);
    }
    .secContact .inner .flexCont .mail-btn .cont .c-button:hover > .c-arrow {
        background-color: var(--color-white-00);
    }
    .secContact .inner .flexCont .mail-btn .cont .c-button:hover > .c-arrow:before {
        border-color: var(--color-primary01);
    }
}

.c-block {
    padding-bottom: 110px;
}
.c-block.-pdb {
    padding-bottom: 0;
}
@media only screen and (max-width: 900px) {
    .c-block {
        padding-bottom: 80px;
    }
}
@media only screen and (max-width: 640px) {
    .c-block {
        padding-bottom: 60px;
    }
}
@media only screen and (max-width: 480px) {
    .c-block {
        padding-bottom: 40px;
    }
}
.c-block.bm-none {
    padding-bottom: 0;
}

.top-bottom {
    padding: 110px 0;
}
@media only screen and (max-width: 900px) {
    .top-bottom {
        padding: 80px 0;
    }
}
@media only screen and (max-width: 640px) {
    .top-bottom {
        padding: 60px 0;
    }
}
@media only screen and (max-width: 480px) {
    .top-bottom {
        padding: 40px 0;
    }
}

.w-bg {
    background: #ffffff;
}

.y-border {
    border: 4px solid var(--color-primary01);
}

.tbbr {
    display: none;
}
@media only screen and (max-width: 900px) {
    .tbbr {
        display: inline-block;
    }
}

.spbr {
    display: none;
}
@media only screen and (max-width: 480px) {
    .spbr {
        display: inline-block;
    }
}

@media only screen and (max-width: 640px) {
    .sp_none {
        display: none;
    }
}

.section-info {
    margin-bottom: 56px;
    padding-left: 100px;
    position: relative;
}
@media only screen and (max-width: 1024px) {
    .section-info {
        padding-left: 75px;
    }
}
@media only screen and (max-width: 480px) {
    .section-info {
        padding-left: 50px;
    }
}
.section-info.mb20 {
    margin-bottom: 20px;
}
.section-info .section-title {
    position: relative;
}
.section-info .section-title::before {
    content: "";
    position: absolute;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    color: var(--color-black-50);
    display: block;
    font-family: Times New Roman, sans-serif;
    font-feature-settings: "palt";
    font-size: 9.375rem;
    font-weight: normal;
    letter-spacing: -4px;
    line-height: 1;
    position: absolute;
    white-space: nowrap;
    z-index: -1;
    width: auto;
    top: 22%;
    right: 0;
    height: 97px;
}
@media only screen and (max-width: 1024px) {
    .section-info .section-title::before {
        top: 42%;
        font-size: 6rem;
        height: 60px;
    }
}
@media only screen and (max-width: 768px) {
    .section-info .section-title::before {
        top: 46%;
        font-size: 4rem;
        height: 40px;
    }
}
@media only screen and (max-width: 480px) {
    .section-info .section-title::before {
        font-size: 2.3rem;
        letter-spacing: normal;
        top: 83%;
        height: 25px;
    }
}
.section-info.sec01 .section-title::before {
    content: "HIGH SPEED";
}
@media only screen and (max-width: 1024px) {
    .section-info.sec01 .section-title::before {
    }
}
@media only screen and (max-width: 768px) {
    .section-info.sec01 .section-title::before {
    }
}
@media only screen and (max-width: 480px) {
    .section-info.sec01 .section-title::before {
    }
}
.section-info.sec02 .section-title::before {
    content: "DEVICE";
    color: var(--color-black-60);
}
@media only screen and (max-width: 1024px) {
    .section-info.sec02 .section-title::before {
    }
}
@media only screen and (max-width: 768px) {
    .section-info.sec02 .section-title::before {
    }
}
@media only screen and (max-width: 480px) {
    .section-info.sec02 .section-title::before {
    }
}
.section-info.sec03 .section-title::before {
    content: "SPACE";
}
@media only screen and (max-width: 1024px) {
    .section-info.sec03 .section-title::before {
    }
}
@media only screen and (max-width: 768px) {
    .section-info.sec03 .section-title::before {
    }
}
@media only screen and (max-width: 480px) {
    .section-info.sec03 .section-title::before {
    }
}

.section-title .label {
    position: relative;
    margin-top: 20px;
    margin-bottom: 40px;
}
.section-title .label .num {
    position: absolute;
    color: #ffffff;
    top: 50%;
    left: 50%;
    z-index: 5;
    transform: translate(-50%, -50%);
    font-weight: bold;
    font-family: Yu Gothic UI, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}
.section-title .bg {
    position: relative;
    width: 50px;
    height: 50px;
    background: var(--color-primary01);
    transform: rotate(45deg);
    margin: 0 auto;
}
@media only screen and (max-width: 768px) {
    .section-title .bg {
        width: 40px;
        height: 40px;
    }
}
@media only screen and (max-width: 480px) {
    .section-title .bg {
        width: 30px;
        height: 30px;
    }
}
.section-title .bg:before {
    content: "";
    width: 1px;
    height: 40px;
    background: var(--color-primary01);
    left: -6px;
    top: 0;
    position: absolute;
}
@media only screen and (max-width: 768px) {
    .section-title .bg:before {
        left: -4px;
    }
}
@media only screen and (max-width: 480px) {
    .section-title .bg:before {
        height: 30px;
    }
}
.section-title .bg:after {
    content: "";
    width: 40px;
    height: 40px;
    right: -6px;
    top: -6px;
    position: absolute;
    border: 1px solid var(--color-primary01);
    box-sizing: border-box;
}
@media only screen and (max-width: 768px) {
    .section-title .bg:after {
        right: -4px;
        top: -4px;
    }
}
@media only screen and (max-width: 480px) {
    .section-title .bg:after {
        width: 30px;
        height: 30px;
    }
}
.section-title .wrap {
    position: relative;
    margin-bottom: 40px;
    margin-top: 100px;
    display: inline-block;
}
.section-title .wrap.mt0 {
    margin-top: 0px;
}
.section-title .wrap.center {
    width: 100%;
}
.section-title .wrap.center h2 {
    border-bottom: none;
    text-align: center;
}
@media only screen and (max-width: 768px) {
    .section-title .wrap {
        margin-bottom: 25px;
        margin-top: 80px;
    }
}
@media only screen and (max-width: 480px) {
    .section-title .wrap {
        margin-bottom: 0px;
        margin-top: 60px;
    }
}
.section-title .wrap h2 {
    border-bottom: 3px double var(--color-primary01);
    line-height: 1.25em;
    font-weight: bold;
    font-size: 40px;
}
@media only screen and (max-width: 1024px) {
    .section-title .wrap h2 {
        font-size: 36px;
    }
}
@media only screen and (max-width: 768px) {
    .section-title .wrap h2 {
        font-size: 30px;
        margin-bottom: 25px;
    }
}
@media only screen and (max-width: 480px) {
    .section-title .wrap h2 {
        font-size: 24px;
    }
}
.section-title .wrap.center {
    display: block;
    border-bottom: none;
}
@media only screen and (max-width: 767px) {
    .section-title .wrap.center {
        font-size: 26px;
    }
}
.section-title .wrap .label {
    position: absolute;
    left: -90px;
    top: 0px;
    transform: translateY(-20px);
}
@media only screen and (max-width: 1024px) {
    .section-title .wrap .label {
        left: -80px;
    }
}
@media only screen and (max-width: 768px) {
    .section-title .wrap .label {
        left: -60px;
    }
}
@media only screen and (max-width: 480px) {
    .section-title .wrap .label {
        left: -50px;
    }
}
.section-title .wrap .label p {
    font-size: 20px;
}
@media only screen and (max-width: 768px) {
    .section-title .wrap .label p {
        font-size: 18px;
    }
}

.section-read {
    margin-bottom: 40px;
}
.section-read p {
    font-size: 26px;
    font-weight: bold;
    line-height: 1.75;
}
@media only screen and (max-width: 1024px) {
    .section-read p {
        font-size: 22px;
    }
}
@media only screen and (max-width: 768px) {
    .section-read p {
        font-size: 18px;
    }
}
@media only screen and (max-width: 480px) {
    .section-read p {
        font-size: 16px;
    }
}
.section-read p .red {
    color: #ff0000;
}
.section-read p .strong {
    font-size: 36px;
}
@media only screen and (max-width: 1024px) {
    .section-read p .strong {
        font-size: 24px;
    }
}
@media only screen and (max-width: 768px) {
    .section-read p .strong {
        font-size: 20px;
    }
}
@media only screen and (max-width: 480px) {
    .section-read p .strong {
        font-size: 16px;
    }
}

.p-detail-visual::after {
    width: 100%;
}

/* .p-detail-visual__inner .p-detail-visual__title {
    font-size: 48px;
    line-height: 1;
    display: block;
    text-align: center;
}
@media only screen and (max-width: 1024px) {
    .p-detail-visual__inner .p-detail-visual__title {
        font-size: 40px;
    }
}
@media only screen and (max-width: 768px) {
    .p-detail-visual__inner .p-detail-visual__title {
        font-size: 24px;
    }
}
@media only screen and (max-width: 480px) {
    .p-detail-visual__inner .p-detail-visual__title {
        font-size: 18px;
    }
} */
.p-detail-visual__inner .p-detail-visual__subtitle {
    color: #ffffff;
    font-size: 20px;
    text-align: center;
    font-weight: bold;
    margin-top: 30px;
}
.p-detail-visual__inner .p-detail-visual__subtitle span {
    display: inline-block;
}
@media only screen and (max-width: 768px) {
    .p-detail-visual__inner .p-detail-visual__subtitle span {
        display: inline;
    }
}
@media only screen and (max-width: 768px) {
    .p-detail-visual__inner .p-detail-visual__subtitle {
        text-align: left;
        font-size: 14px;
    }
}
@media only screen and (max-width: 480px) {
    .p-detail-visual__inner .p-detail-visual__subtitle {
        margin-top: 15px;
        line-height: 1.3;
    }
}

.read-text h2 {
    font-size: 30px;
    font-weight: bold;
    line-height: 1.66;
    margin-bottom: 48px;
    padding-top: 110px;
}
@media only screen and (max-width: 900px) {
    .read-text h2 {
        font-size: 24px;
        margin-bottom: 36px;
    }
}
@media only screen and (max-width: 640px) {
    .read-text h2 {
        font-size: 20px;
        margin-bottom: 24px;
        text-align: left;
        display: inline-block;
        padding-top: 40px;
    }
}
.read-text h3 {
    font-size: 20px;
    line-height: 2em;
}
.read-text h3 span {
    display: inline-block;
}
@media only screen and (max-width: 640px) {
    .read-text h3 span {
        display: inline;
    }
}
@media only screen and (max-width: 900px) {
    .read-text h3 {
        font-size: 18px;
        line-height: 1.8;
    }
}
@media only screen and (max-width: 640px) {
    .read-text h3 {
        font-size: 16px;
        text-align: left;
        display: inline-block;
    }
}

* {
    box-sizing: border-box;
}

.pagetab {
    display: flex;
    width: 100%;
    padding: 24px 0;
    box-sizing: border-box;
    flex-wrap: wrap;
    justify-content: center;
}
@media only screen and (max-width: 768px) {
    .pagetab {
        margin: auto;
    }
}
.pagetab .pagetab_item {
    display: block;
    background: #f2f6f7;
    text-align: center;
    padding: 24px;
    border: 1px solid #f2f6f7;
    width: 25%;
    transition: 0.3s all;
    position: relative;
}
@media only screen and (min-width: 769px) {
    .pagetab .pagetab_item:hover {
        color: #1a1a1a;
        background: #ffffff;
        border: 1px solid var(--color-primary01);
        cursor: pointer;
    }
    .pagetab .pagetab_item:hover::before {
        bottom: 12px;
    }
}
@media only screen and (max-width: 768px) {
    .pagetab .pagetab_item {
        padding: 12px;
    }
}
@media only screen and (max-width: 640px) {
    .pagetab .pagetab_item {
        width: 50%;
        max-width: 260px;
    }
}
.pagetab .pagetab_item:before {
    position: absolute;
    content: "";
    width: 8px;
    height: 8px;
    border: 2px solid #1a1a1a;
    transform: translateX(-50%) rotate(45deg);
    box-sizing: border-box;
    border-top: none;
    border-left: none;
    left: 50%;
    bottom: 24px;
    transition: 0.5s;
}
@media only screen and (max-width: 768px) {
    .pagetab .pagetab_item:before {
        bottom: 12px;
    }
}
.pagetab .pagetab_item .label {
    position: relative;
    margin-top: 20px;
    margin-bottom: 40px;
}
@media only screen and (max-width: 768px) {
    .pagetab .pagetab_item .label {
        margin-bottom: 20px;
    }
}
.pagetab .pagetab_item .label .num {
    position: absolute;
    color: #ffffff;
    left: 50%;
    z-index: 5;
    transform: translate(-50%, -50%);
    top: 50%;
    font-family: Yu Gothic UI, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}
.pagetab .pagetab_item .bg {
    position: relative;
    width: 40px;
    height: 40px;
    background: var(--color-primary01);
    transform: rotate(45deg);
    margin: 0 auto;
}
@media only screen and (max-width: 768px) {
    .pagetab .pagetab_item .bg {
        width: 40px;
        height: 40px;
    }
}
@media only screen and (max-width: 480px) {
    .pagetab .pagetab_item .bg {
        width: 30px;
        height: 30px;
    }
}
.pagetab .pagetab_item .bg:before {
    content: "";
    width: 1px;
    height: 40px;
    background: var(--color-primary01);
    left: -6px;
    top: 0;
    position: absolute;
}
@media only screen and (max-width: 768px) {
    .pagetab .pagetab_item .bg:before {
        left: -4px;
    }
}
@media only screen and (max-width: 480px) {
    .pagetab .pagetab_item .bg:before {
        height: 30px;
    }
}
.pagetab .pagetab_item .bg:after {
    content: "";
    width: 40px;
    height: 40px;
    right: -6px;
    top: -6px;
    position: absolute;
    border: 1px solid var(--color-primary01);
    box-sizing: border-box;
}
@media only screen and (max-width: 768px) {
    .pagetab .pagetab_item .bg:after {
        right: -4px;
        top: -4px;
    }
}
@media only screen and (max-width: 480px) {
    .pagetab .pagetab_item .bg:after {
        width: 30px;
        height: 30px;
    }
}
.pagetab .pagetab_item .image {
    margin: 0 auto;
    margin-bottom: 30px;
}
@media only screen and (max-width: 1024px) {
    .pagetab .pagetab_item .image {
        margin-bottom: 20px;
    }
}
@media only screen and (max-width: 768px) {
    .pagetab .pagetab_item .image {
        margin-bottom: 20px;
    }
}
.pagetab .pagetab_item .image img {
    height: 100%;
}
.pagetab .pagetab_item p {
    font-weight: bold;
    font-size: 20px;
    margin-bottom: 28px;
}
@media only screen and (max-width: 768px) {
    .pagetab .pagetab_item p {
        font-size: 16px;
        margin-bottom: 14px;
    }
}
.pagetab .pagetab_item:hover {
    color: #1a1a1a;
}

.c-block__main .column {
    display: flex;
    flex-wrap: wrap;
    margin: -50px -15px 0;
}
.c-block__main .column .column_inner {
    width: 50%;
    padding: 50px 15px 0;
    position: relative;
}
.c-block__main .column .column_inner.wide_column {
    width: 100%;
}
@media only screen and (max-width: 1024px) {
    .c-block__main .column .column_inner {
        width: 100%;
    }
}
.c-block__main .block {
    border: 3px solid var(--color-primary01);
    padding: 35px 30px 30px;
    position: relative;
    height: 100%;
}
.c-block__main .block .block_inner {
    position: relative;
    height: 100%;
    background: #f0f1f2;
}
@media only screen and (max-width: 768px) {
    .c-block__main .block {
        padding: 35px 20px 20px;
    }
}
@media only screen and (max-width: 480px) {
    .c-block__main .block {
        padding: 35px 15px 15px;
    }
}
.c-block__main .block .circle {
    position: absolute;
    width: 60px;
    height: 60px;
    border-radius: 50vh;
    left: 10px;
    top: -30px;
    background: var(--color-primary01);
    color: #ffffff;
    font-weight: bold;
}
.c-block__main .block .circle.b-block {
    background: #1a1a1a;
}
.c-block__main .block .circle span {
    width: 100%;
    display: inline-block;
    text-align: center;
    line-height: 0.5em;
    font-size: 14px;
    transform: translateY(4px);
}
.c-block__main .block .circle span.num {
    font-size: 28px;
    font-family: Yu Gothic UI, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}
.c-block__main .block.border-none {
    border: none;
}
.c-block__main .block.b-block {
    border-color: #1a1a1a;
}
.c-block__main .block.b-block .block-title {
    border-bottom: 1px solid #1a1a1a;
}
.c-block__main .block.b-block .block-title p {
    color: #1a1a1a;
}
.c-block__main .block.b-block .plan-price .plan {
    background: #1a1a1a;
}
.c-block__main .block.b-block .plan-price .plan:before {
    border-color: transparent transparent transparent #1a1a1a;
}
.c-block__main .block.b-block .plan-price .price {
    color: #1a1a1a;
    font-size: 20px;
    font-weight: bold;
}
.c-block__main .block.b-block .plan-price .price .font-xl {
    font-size: 60px;
    font-family: Yu Gothic UI, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    line-height: 1;
}
.c-block__main .block.b-block .plan-price .price .font-l {
    font-size: 36px;
}
@media only screen and (max-width: 1300px) {
    .c-block__main .block.b-block .plan-price .price {
        font-size: 16px;
    }
    .c-block__main .block.b-block .plan-price .price .font-xl {
        font-size: 40px;
    }
    .c-block__main .block.b-block .plan-price .price .font-l {
        font-size: 20px;
    }
}
@media only screen and (min-width: 1025px) {
    .c-block__main .block.full .full_inner {
        display: flex;
        justify-content: space-between;
    }
    .c-block__main .block.full .full_inner .wrap {
        width: calc(100% - 569px);
        padding-right: 30px;
    }
    .c-block__main .block.full .full_inner .plan-detail {
        width: 569px;
    }
    .c-block__main .block.full .full_inner .plan-price {
        margin-bottom: -20px;
    }
}
.c-block__main .block-title {
    border-bottom: 1px solid var(--color-primary01);
    background: #fff;
}
.c-block__main .block-title.w660 {
    max-width: 660px;
    margin-left: auto;
    margin-right: auto;
}
.c-block__main .block-title p {
    font-size: 24px;
    font-weight: bold;
    color: var(--color-primary01);
    padding: 0 24px;
}
.c-block__main .block-title p.center {
    text-align: center;
}
@media only screen and (max-width: 1200px) {
    .c-block__main .block-title p {
        font-size: 24px;
        padding: 0 10px;
    }
}
@media only screen and (max-width: 768px) {
    .c-block__main .block-title p {
        font-size: 26px;
        padding: 0;
    }
}
@media only screen and (max-width: 480px) {
    .c-block__main .block-title p {
        font-size: 16px;
    }
}
.c-block__main .block-title .sub-info {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}
@media only screen and (max-width: 480px) {
    .c-block__main .block-title .sub-info {
        flex-wrap: wrap;
        margin-bottom: 15px;
    }
}
.c-block__main .block-title .sub-info p {
    font-weight: bold;
    color: var(--color-primary01);
    font-size: 24px;
}
@media only screen and (max-width: 1200px) {
    .c-block__main .block-title .sub-info p {
        font-size: 20px;
    }
}
@media only screen and (max-width: 768px) {
    .c-block__main .block-title .sub-info p {
        font-size: 16px;
    }
}
@media only screen and (max-width: 480px) {
    .c-block__main .block-title .sub-info p {
        width: 100%;
    }
}
.c-block__main .block-title .sub-info p .red {
    font-size: 36px;
    color: #ff0000;
}
@media only screen and (max-width: 1200px) {
    .c-block__main .block-title .sub-info p .red {
        font-size: 30px;
    }
}
@media only screen and (max-width: 768px) {
    .c-block__main .block-title .sub-info p .red {
        font-size: 24px;
    }
}
.c-block__main .block-title .sub-info p .font-s {
    font-size: 16px;
}
@media only screen and (max-width: 1200px) {
    .c-block__main .block-title .sub-info p .font-s {
        font-size: 14px;
    }
}
@media only screen and (max-width: 480px) {
    .c-block__main .block-title .sub-info p + p {
        margin-top: 5px;
    }
}
.c-block__main .plan-price,
.c-block__main .plan-price2 {
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100px;
    padding: 10px 0;
}
@media only screen and (max-width: 640px) {
    .c-block__main .plan-price,
    .c-block__main .plan-price2 {
        /*flex-wrap: wrap;
    justify-content: flex-start;
    .price {
      width: 100%;
    }*/
    }
}
@media only screen and (max-width: 480px) {
    .c-block__main .plan-price,
    .c-block__main .plan-price2 {
        justify-content: space-between;
    }
}
.c-block__main .plan-price .plan,
.c-block__main .plan-price2 .plan {
    display: inline-block;
    background: var(--color-primary01);
    position: relative;
    height: 40px;
}
@media only screen and (max-width: 1300px) {
    .c-block__main .plan-price .plan,
    .c-block__main .plan-price2 .plan {
        height: 30px;
    }
}
@media only screen and (max-width: 480px) {
    .c-block__main .plan-price .plan,
    .c-block__main .plan-price2 .plan {
        width: 80px;
    }
}
.c-block__main .plan-price .plan:before,
.c-block__main .plan-price2 .plan:before {
    content: "";
    position: absolute;
    width: 20px;
    height: 40px;
    left: 100%;
    /*border: 20px solid transparent;
  border-right: 0px solid transparent;
  border-left: 20px solid $yellow;*/
    box-sizing: border-box;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 0 20px 20px;
    border-color: transparent transparent transparent var(--color-primary01);
}
@media only screen and (max-width: 1300px) {
    .c-block__main .plan-price .plan:before,
    .c-block__main .plan-price2 .plan:before {
        /*
              width: 20px;
      height: 30px;
      border: 14px solid transparent;
      border-left: 14px solid $yellow;
    */
        width: 10px;
        border-width: 15px 0 15px 10px;
    }
}
.c-block__main .plan-price .plan span,
.c-block__main .plan-price2 .plan span {
    display: inline-block;
    font-size: 20px;
    font-weight: bold;
    color: #ffffff;
    line-height: 40px;
    padding: 0 16px;
}
@media only screen and (max-width: 1300px) {
    .c-block__main .plan-price .plan span,
    .c-block__main .plan-price2 .plan span {
        font-size: 14px;
        line-height: 1;
    }
}
@media only screen and (max-width: 768px) {
    .c-block__main .plan-price .plan span,
    .c-block__main .plan-price2 .plan span {
        padding: 0 8px;
    }
}
@media only screen and (max-width: 480px) {
    .c-block__main .plan-price .plan span,
    .c-block__main .plan-price2 .plan span {
        padding: 0 2px 0 4px;
        font-size: 12px;
    }
}
.c-block__main .plan-price .price,
.c-block__main .plan-price2 .price {
    padding-left: 30px;
    color: var(--color-primary01);
    font-size: 20px;
    font-weight: bold;
    line-height: 1;
}
@media only screen and (max-width: 480px) {
    .c-block__main .plan-price .price,
    .c-block__main .plan-price2 .price {
        text-align: right;
        width: calc(100% - 66px);
    }
    .c-block__main .plan-price .price .ilb,
    .c-block__main .plan-price2 .price .ilb {
        margin-top: 5px;
    }
}
.c-block__main .plan-price .price .font-xl,
.c-block__main .plan-price2 .price .font-xl {
    font-size: 80px;
    font-family: Yu Gothic UI, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    line-height: 1;
}
.c-block__main .plan-price .price .font-l,
.c-block__main .plan-price2 .price .font-l {
    font-size: 36px;
}
@media only screen and (max-width: 1300px) {
    .c-block__main .plan-price .price,
    .c-block__main .plan-price2 .price {
        font-size: 16px;
    }
    .c-block__main .plan-price .price .font-xl,
    .c-block__main .plan-price2 .price .font-xl {
        font-size: 40px;
    }
    .c-block__main .plan-price .price .font-l,
    .c-block__main .plan-price2 .price .font-l {
        font-size: 20px;
    }
}
.c-block__main .plan-price2 {
    flex-wrap: wrap;
    max-width: 620px;
    margin-left: auto;
    margin-right: auto;
    height: auto;
}
@media only screen and (max-width: 1300px) {
    .c-block__main .plan-price2 {
        max-width: 430px;
    }
}
.c-block__main .plan-price2 .addtext {
    margin-top: 20px;
    width: 100%;
}
.c-block__main .plan-price2 .price {
    padding-left: 30px;
    padding-bottom: 5px;
}
.c-block__main .plan-detail {
    background: #f0f1f2;
    height: auto;
}
.c-block__main .plan-detail ul {
    padding: 24px;
    height: 100%;
}
@media only screen and (max-width: 480px) {
    .c-block__main .plan-detail ul {
        padding: 15px;
    }
}
.c-block__main .plan-detail ul.vCenter {
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.c-block__main .plan-detail li {
    position: relative;
    padding-left: 18px;
}
@media only screen and (max-width: 480px) {
    .c-block__main .plan-detail li {
        font-size: 14px;
    }
}
.c-block__main .plan-detail li:before {
    content: "";
    position: absolute;
    width: 6px;
    height: 6px;
    border-radius: 50vh;
    background-color: #c2cfc9;
    top: 10px;
    left: 0em;
}

.c-block__sec {
    padding: 36px;
}
.c-block__sec:not(:last-child) {
    margin-bottom: 36px;
}
@media only screen and (max-width: 480px) {
    .c-block__sec {
        padding: 20px;
    }
}
.c-block__sec.kizai {
    padding: 36px 10px;
}
.c-block__sec .c-block__read .wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--color-primary01);
    flex-wrap: wrap;
}
.c-block__sec .c-block__read .wrap .title {
    font-size: 38px;
    font-weight: bold;
    padding-right: 42px;
    border-right: 1px solid gray;
}
.c-block__sec .c-block__read .wrap .price {
    padding-left: 42px;
}
.c-block__sec .c-block__read .wrap .price .label {
    background: var(--color-primary01);
}
.c-block__sec .c-block__read .wrap .price .font-xl {
    font-size: 80px;
    font-weight: bold;
    color: var(--color-primary01);
}
.c-block__sec .c-block__read .annotation_text {
    width: 100%;
    color: #1a1a1a;
    text-align: right;
}
.c-block__sec .kizaiPlan {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding-bottom: 20px;
    margin-bottom: 30px;
}
.c-block__sec .kizaiPlan .contL {
    display: flex;
    align-items: center;
    padding-right: 40px;
    border-right: 1px solid var(--color-primary01);
}
@media only screen and (max-width: 1200px) {
    .c-block__sec .kizaiPlan .contL {
        width: 100%;
        padding-right: 0px;
        justify-content: center;
        margin-bottom: 30px;
        border-right: none;
    }
}
.c-block__sec .kizaiPlan .contL h3 {
    font-size: 38px;
    font-weight: bold;
    color: var(--color-primary01);
    line-height: 1;
}
@media only screen and (max-width: 768px) {
    .c-block__sec .kizaiPlan .contL h3 {
        font-size: 30px;
    }
}
@media only screen and (max-width: 480px) {
    .c-block__sec .kizaiPlan .contL h3 {
        font-size: 24px;
    }
}
.c-block__sec .kizaiPlan .contR {
    display: flex;
    align-items: center;
    padding-left: 40px;
}
@media only screen and (max-width: 1200px) {
    .c-block__sec .kizaiPlan .contR {
        width: 100%;
        padding-left: 0px;
        justify-content: center;
        margin-bottom: 15px;
    }
}
.c-block__sec .kizaiPlan .contR .tag {
    padding-right: 12px;
}
.c-block__sec .kizaiPlan .contR .tag .wrap {
    background-color: var(--color-primary01);
    height: 36px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 12px;
    position: relative;
}
@media only screen and (max-width: 480px) {
    .c-block__sec .kizaiPlan .contR .tag .wrap {
        padding: 0 6px;
    }
}
.c-block__sec .kizaiPlan .contR .tag .wrap::before {
    content: "";
    position: absolute;
    top: 0px;
    right: -12px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 18px 0 18px 12px;
    border-color: transparent transparent transparent var(--color-primary01);
}
.c-block__sec .kizaiPlan .contR .tag .wrap span {
    font-size: 20px;
    font-weight: bold;
    color: #fff;
    line-height: 1;
}
@media only screen and (max-width: 768px) {
    .c-block__sec .kizaiPlan .contR .tag .wrap span {
        font-size: 16px;
    }
}
@media only screen and (max-width: 480px) {
    .c-block__sec .kizaiPlan .contR .tag .wrap span {
        font-size: 12px;
    }
}
.c-block__sec .kizaiPlan .contR .tag .wrap span br {
    display: none;
}
@media only screen and (max-width: 480px) {
    .c-block__sec .kizaiPlan .contR .tag .wrap span br {
        display: block;
    }
}
.c-block__sec .kizaiPlan .contR .price {
    color: var(--color-primary01);
    padding-bottom: 5px;
    margin-left: 20px;
    position: relative;
}
@media only screen and (max-width: 480px) {
    .c-block__sec .kizaiPlan .contR .price {
        padding-bottom: 0px;
        margin-left: 10px;
    }
}
.c-block__sec .kizaiPlan .contR .price .num {
    font-size: 80px;
    font-weight: bold;
    font-family: Yu Gothic UI, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    line-height: 1;
}
@media only screen and (max-width: 768px) {
    .c-block__sec .kizaiPlan .contR .price .num {
        font-size: 50px;
    }
}
@media only screen and (max-width: 480px) {
    .c-block__sec .kizaiPlan .contR .price .num {
        font-size: 30px;
    }
}
.c-block__sec .kizaiPlan .contR .price .yen {
    font-size: 36px;
    font-weight: bold;
    line-height: 1;
}
@media only screen and (max-width: 768px) {
    .c-block__sec .kizaiPlan .contR .price .yen {
        font-size: 24px;
    }
}
@media only screen and (max-width: 480px) {
    .c-block__sec .kizaiPlan .contR .price .yen {
        font-size: 20px;
    }
}
.c-block__sec .kizaiPlan .contR .price .txt {
    font-size: 20px;
    font-weight: bold;
    line-height: 1;
}
@media only screen and (max-width: 768px) {
    .c-block__sec .kizaiPlan .contR .price .txt {
        font-size: 16px;
    }
}
@media only screen and (max-width: 480px) {
    .c-block__sec .kizaiPlan .contR .price .txt {
        font-size: 14px;
    }
}
.c-block__sec .kizaiPlan .contR .price .kome {
    position: absolute;
    bottom: -30px;
    right: 0px;
}
@media only screen and (max-width: 480px) {
    .c-block__sec .kizaiPlan .contR .price .kome {
        margin-left: -30px;
    }
}
.c-block__sec .kizaiPlan .contR .price .kome p {
    color: #1a1a1a;
}
@media only screen and (max-width: 768px) {
    .c-block__sec .kizaiPlan .contR .price .kome p {
        font-size: 14px;
    }
}
.c-block__sec .sec_read {
    text-align: center;
    line-height: 1.25;
    margin-bottom: 36px;
}
@media only screen and (max-width: 480px) {
    .c-block__sec .sec_read {
        margin-bottom: 18px;
    }
}
.c-block__sec .sec_read .head {
    font-size: 48px;
    font-weight: bold;
    margin-bottom: 26px;
}
@media only screen and (max-width: 768px) {
    .c-block__sec .sec_read .head {
        font-size: 32px;
    }
}
@media only screen and (max-width: 480px) {
    .c-block__sec .sec_read .head {
        font-size: 20px;
    }
}
.c-block__sec .sec_read .read {
    font-size: 16px;
}

.catalog_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: -5px;
}
.catalog_list .catalog_item {
    width: 25%;
    padding: 20px;
    box-sizing: border-box;
    position: relative;
}
@media only screen and (max-width: 1200px) {
    .catalog_list .catalog_item {
        padding: 15px;
    }
}
@media only screen and (max-width: 1024px) {
    .catalog_list .catalog_item {
        width: 50%;
    }
}
@media only screen and (max-width: 768px) {
    .catalog_list .catalog_item {
        width: 100%;
    }
}
@media only screen and (max-width: 600px) {
    .catalog_list .catalog_item {
        width: 100%;
        max-width: 300px;
    }
    .catalog_list .catalog_item + .catalog_item {
        margin-top: 15px;
    }
}
.catalog_list .catalog_item::before {
    content: "";
    position: absolute;
    bottom: 0px;
    left: 20px;
    width: calc(100% - 40px);
    height: 1px;
    background-color: #ced0d5;
}
@media only screen and (max-width: 1200px) {
    .catalog_list .catalog_item::before {
        left: 15px;
        width: calc(100% - 30px);
    }
}
.catalog_list .catalog_item::after {
    content: "";
    position: absolute;
    top: 20px;
    right: 0px;
    width: 1px;
    height: calc(100% - 40px);
    background-color: #ced0d5;
}
@media only screen and (max-width: 1200px) {
    .catalog_list .catalog_item::after {
        top: 15px;
        height: calc(100% - 30px);
    }
}
@media only screen and (max-width: 768px) {
    .catalog_list .catalog_item:nth-child(1)::after {
        width: 0;
        height: 0;
    }
}
@media only screen and (max-width: 1024px) {
    .catalog_list .catalog_item:nth-child(2)::after {
        width: 0;
        height: 0;
    }
}
@media only screen and (max-width: 768px) {
    .catalog_list .catalog_item:nth-child(3)::after {
        width: 0;
        height: 0;
    }
}
.catalog_list .catalog_item:nth-child(4)::after {
    width: 0;
    height: 0;
}
.catalog_list .catalog_item:nth-child(5)::before {
    width: 0;
    height: 0;
}
@media only screen and (max-width: 1024px) {
    .catalog_list .catalog_item:nth-child(5)::before {
        width: calc(100% - 30px);
        height: 1px;
    }
}
@media only screen and (max-width: 768px) {
    .catalog_list .catalog_item:nth-child(5)::after {
        width: 0;
        height: 0;
    }
}
.catalog_list .catalog_item:nth-child(6)::before {
    width: 0;
    height: 0;
}
@media only screen and (max-width: 1024px) {
    .catalog_list .catalog_item:nth-child(6)::before {
        width: calc(100% - 30px);
        height: 1px;
    }
}
@media only screen and (max-width: 1024px) {
    .catalog_list .catalog_item:nth-child(6)::after {
        width: 0;
        height: 0;
    }
}
.catalog_list .catalog_item:nth-child(7)::before {
    width: 0;
    height: 0;
}
@media only screen and (max-width: 768px) {
    .catalog_list .catalog_item:nth-child(7)::before {
        width: calc(100% - 30px);
        height: 1px;
    }
}
@media only screen and (max-width: 1024px) {
    .catalog_list .catalog_item:nth-child(7)::after {
        top: 15px;
        height: calc(100% - 30px);
    }
}
@media only screen and (max-width: 768px) {
    .catalog_list .catalog_item:nth-child(7)::after {
        width: 0;
        height: 0;
    }
}
.catalog_list .catalog_item:nth-child(8)::before {
    width: 0;
    height: 0;
}
.catalog_list .catalog_item:nth-child(8)::after {
    width: 0;
    height: 0;
}
.catalog_list .catalog_item .catalog_name {
    display: flex;
    min-height: 60px;
}
.catalog_list .catalog_item .catalog_name .num {
    margin-right: 10px;
    background: var(--color-primary01);
    color: #ffffff;
    width: 30px;
    height: 30px;
    line-height: 1;
    display: flex;
    justify-content: center;
    align-items: center;
}
@media only screen and (max-width: 1200px) {
    .catalog_list .catalog_item .catalog_name .num {
        width: 24px;
        height: 24px;
    }
}
.catalog_list .catalog_item .catalog_name .num span {
    font-size: 16px;
    font-weight: bold;
    font-family: Yu Gothic UI, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}
@media only screen and (max-width: 1200px) {
    .catalog_list .catalog_item .catalog_name .num span {
        font-size: 14px;
    }
}
.catalog_list .catalog_item .catalog_name .text {
    width: calc(100% - 30px);
    font-size: 16px;
    font-weight: bold;
}
@media only screen and (max-width: 1200px) {
    .catalog_list .catalog_item .catalog_name .text {
        width: calc(100% - 26px);
        font-size: 14px;
    }
}
.catalog_list .catalog_item .catalog_name .text .ano {
    font-size: 14px;
    font-weight: normal;
}
@media only screen and (max-width: 1200px) {
    .catalog_list .catalog_item .catalog_name .text .ano {
        font-size: 12px;
    }
}
.catalog_list .catalog_item .catalog_image {
    text-align: center;
    height: 220px;
}
@media only screen and (max-width: 600px) {
    .catalog_list .catalog_item .catalog_image {
        height: auto;
    }
}
.catalog_list .catalog_item .catalog_image img {
    display: inline-block;
    max-width: 100%;
    height: auto;
}
.catalog_list.other .catalog_name {
    display: block;
    text-align: center;
}
.catalog_list.other .catalog_price {
    text-align: center;
    font-weight: bold;
}

.catalog_list2 .wrap {
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
    margin: -30px;
}
.catalog_list2 .wrap .catalog_item {
    width: 50%;
    display: flex;
    padding: 30px;
}
@media only screen and (max-width: 768px) {
    .catalog_list2 .wrap .catalog_item {
        width: 100%;
    }
}
.catalog_list2 .wrap .catalog_item .catalog_image {
    width: 30%;
    display: flex;
    justify-content: center;
    align-items: center;
}
@media only screen and (max-width: 1024px) {
    .catalog_list2 .wrap .catalog_item .catalog_image {
        width: 25%;
    }
}
.catalog_list2 .wrap .catalog_item .catalog_image img {
    max-width: 100%;
    height: auto;
}
.catalog_list2 .wrap .catalog_item .catalog_txt {
    width: 70%;
    padding-left: 50px;
    padding-top: 15px;
}
@media only screen and (max-width: 1200px) {
    .catalog_list2 .wrap .catalog_item .catalog_txt {
        padding-left: 30px;
    }
}
@media only screen and (max-width: 1024px) {
    .catalog_list2 .wrap .catalog_item .catalog_txt {
        width: 75%;
        padding-left: 15px;
    }
}
@media only screen and (max-width: 768px) {
    .catalog_list2 .wrap .catalog_item .catalog_txt {
        padding-left: 30px;
    }
}
@media only screen and (max-width: 480px) {
    .catalog_list2 .wrap .catalog_item .catalog_txt {
        padding-top: 5px;
    }
}
.catalog_list2 .wrap .catalog_item .catalog_txt .catalog_name p {
    font-size: 16px;
    font-weight: bold;
}
@media only screen and (max-width: 480px) {
    .catalog_list2 .wrap .catalog_item .catalog_txt .catalog_name p {
        font-size: 14px;
    }
}
.catalog_list2 .wrap .catalog_item .catalog_txt .catalog_price p {
    font-size: 16px;
}
@media only screen and (max-width: 480px) {
    .catalog_list2 .wrap .catalog_item .catalog_txt .catalog_price p {
        font-size: 14px;
    }
}

.flow-container {
    margin: 0 -20px;
}
@media only screen and (max-width: 1200px) {
    .flow-container {
        margin: 0 -10px;
    }
}
.flow-container .wrap {
    display: flex;
    width: 100%;
}
@media only screen and (max-width: 1024px) {
    .flow-container .wrap {
        flex-wrap: wrap;
    }
}
.flow-container .wrap .flow-item {
    width: 34%;
    padding: 0 20px 20px 20px;
    position: relative;
}
@media only screen and (max-width: 1200px) {
    .flow-container .wrap .flow-item {
        padding: 10px;
    }
}
@media only screen and (max-width: 1024px) {
    .flow-container .wrap .flow-item {
        width: 50%;
    }
}
@media only screen and (max-width: 480px) {
    .flow-container .wrap .flow-item {
        width: 100%;
    }
}
.flow-container .wrap .flow-item .flow-item_inner {
    border: 4px solid var(--color-primary01);
    position: relative;
    padding: 24px 15px;
    position: relative;
    height: 100%;
}
@media only screen and (max-width: 1200px) {
    .flow-container .wrap .flow-item .flow-item_inner {
        padding: 20px;
    }
}
.flow-container .wrap .flow-item .num {
    position: absolute;
    color: #ffffff;
    font-weight: bold;
    background: var(--color-primary01);
    height: 30px;
    top: -15px;
    left: 20px;
    width: auto;
    padding: 0 10px;
}
.flow-container .wrap .flow-item .num span {
    line-height: 30px;
    text-align: center;
    display: block;
    font-family: Yu Gothic UI, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}
.flow-container .wrap .flow-item .flow-title p {
    text-align: center;
    font-size: 20px;
    line-height: 1.2em;
    font-weight: bold;
    color: var(--color-primary01);
    margin-bottom: 24px;
}
.flow-container .wrap .flow-item .flow-read {
    font-size: 16px;
}
.flow-container .wrap .flow-item.arrow .flow-item_inner:after {
    position: absolute;
    right: -44px;
    top: 50%;
    transform: translatey(-50%);
    content: "";
    width: 40px;
    height: 40px;
    box-sizing: border-box;
    border: 20px solid transparent;
    border-left: 20px solid var(--color-primary01);
}
@media only screen and (max-width: 1200px) {
    .flow-container .wrap .flow-item.arrow .flow-item_inner:after {
        right: -30px;
        width: 30px;
        height: 30px;
        border: 15px solid transparent;
        border-left: 15px solid var(--color-primary01);
    }
}
@media only screen and (max-width: 480px) {
    .flow-container .wrap .flow-item.arrow .flow-item_inner:after {
        right: 50%;
        top: auto;
        bottom: -30px;
        transform: translateX(50%) rotate(90deg);
    }
}

.center {
    text-align: center;
}

.contact-info .columns {
    display: flex;
    justify-content: space-between;
    align-items: center;
    line-height: 1;
}
@media only screen and (max-width: 900px) {
    .contact-info .columns {
        display: block;
    }
}
.contact-info .column-1,
.contact-info .column-2 {
    height: 70px;
    border-right: 2px solid #f0f1f2;
}
.contact-info .column-1 {
    padding-right: 36px;
}
.contact-info .column-2 {
    padding: 0 36px;
}
.contact-info .column-3 {
    padding-left: 36px;
}
.contact-info-title {
    font-size: 20px;
    color: var(--color-primary01);
    font-weight: bold;
}
.contact-info .read {
    line-height: 1;
}
.contact-info .read .read-1 {
    font-size: 28px;
    font-weight: bold;
    margin-bottom: 24px;
}
.contact-info .read .read-2 {
    font-size: 16px;
}
.contact-info .contact .tel p {
    display: block;
    font-size: 42px;
    font-weight: bold;
}
.contact-info .contact .email p {
    font-size: 20px;
    font-weight: bold;
}
.contact-info .contact-btn .c-button {
    padding: 1em 2em;
}

.exp-border {
    border: 1px solid #1a1a1a;
    position: relative;
    padding: 64px 32px 32px;
    height: auto;
    background: #ffffff;
}
@media only screen and (max-width: 768px) {
    .exp-border {
        padding: 64px 20px 20px;
    }
}
@media only screen and (max-width: 480px) {
    .exp-border {
        padding: 44px 15px 15px;
    }
}
.exp-border.gray {
    background: #f0f1f2;
}
.exp-border.border-none {
    border: none;
}
.exp-border .title {
    position: absolute;
    background: #1a1a1a;
    color: #ffffff;
    line-height: 1em;
    font-weight: bold;
    padding: 8px 12px;
    top: 0;
    left: 0;
}
@media only screen and (max-width: 480px) {
    .exp-border .title {
        padding: 6px 8px;
        font-size: 15px;
    }
}
.exp-border .contents .head02 {
    font-weight: bold;
    line-height: 1.5;
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: 1px solid #ced0d5;
}
@media only screen and (max-width: 768px) {
    .exp-border .contents .head02 {
        padding-bottom: 15px;
        margin-bottom: 15px;
    }
}
@media only screen and (max-width: 480px) {
    .exp-border .contents .head02 {
        padding-bottom: 10px;
        margin-bottom: 10px;
    }
}
.exp-border .contents .list li {
    position: relative;
    padding-left: 18px;
}
.exp-border .contents .list li.width50 {
    display: inline-block;
    width: 45%;
}
@media only screen and (max-width: 1200px) {
    .exp-border .contents .list li.width50 {
        width: 30%;
    }
}
@media only screen and (max-width: 767px) {
    .exp-border .contents .list li.width50 {
        width: 100%;
    }
}
.exp-border .contents .list li p {
    line-height: 2em;
}
.exp-border .contents .list li:before {
    content: "";
    position: absolute;
    width: 6px;
    height: 6px;
    border-radius: 50vh;
    background-color: #c2cfc9;
    top: 10px;
    left: 0em;
}

.section_plan {
    padding-bottom: 100px;
}
.section_plan .column-container {
    display: flex;
}
@media only screen and (max-width: 1200px) {
    .section_plan .column-container {
        display: block;
    }
}
.section_plan .l-column {
    width: 490px;
    margin-right: 36px;
}
@media only screen and (max-width: 1200px) {
    .section_plan .l-column {
        width: 100%;
    }
    .section_plan .l-column + .r-column {
        margin-top: 20px;
    }
}
.section_plan .l-column .plan-info {
    border-left: 2px solid var(--color-primary01);
    padding: 8px 20px;
    margin-bottom: 30px;
}
@media only screen and (max-width: 768px) {
    .section_plan .l-column .plan-info {
        padding: 6px 0px 6px 10px;
        margin-bottom: 40px;
    }
}
.section_plan .l-column .plan-info .plan-name {
    font-weight: bold;
    font-size: 20px;
    margin-left: -0.5em;
}
@media only screen and (max-width: 480px) {
    .section_plan .l-column .plan-info .plan-name {
        font-size: 16px;
    }
}
.section_plan .l-column .plan-info .plan-company {
    font-weight: bold;
    font-size: 26px;
}
@media only screen and (max-width: 480px) {
    .section_plan .l-column .plan-info .plan-company {
        font-size: 22px;
    }
}
.section_plan .l-column .plan-info .plan-read {
    font-weight: normal;
    font-size: 20px;
}
@media only screen and (max-width: 480px) {
    .section_plan .l-column .plan-info .plan-read {
        font-size: 16px;
    }
}
.section_plan .l-column .plan-table table {
    font-weight: bold;
    margin-top: -20px;
    margin-bottom: 10px;
    border-collapse: separate;
    border-spacing: 0 20px;
}
.section_plan .l-column .plan-table table th {
    display: inline-block;
    background: #f0f1f2;
    border-radius: 2px;
    width: 100%;
    text-align: center;
}
.section_plan .l-column .plan-table table td {
    padding-left: 20px;
}
.section_plan .l-column .plan-table table td ul {
    width: 100%;
}
.section_plan .l-column .plan-table table td ul li {
    position: relative;
    padding-left: 18px;
}
.section_plan .l-column .plan-table table td ul li .images {
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center;
    margin-bottom: 12px;
}
.section_plan .l-column .plan-table table td ul li .images .image {
    text-align: center;
}
.section_plan .l-column .plan-table table td ul li:before {
    content: "";
    position: absolute;
    width: 6px;
    height: 6px;
    border-radius: 50vh;
    background-color: #c2cfc9;
    top: 10px;
    left: 0em;
}
@media only screen and (max-width: 640px) {
    .section_plan .l-column .plan-table table {
        display: block;
    }
    .section_plan .l-column .plan-table table tbody,
    .section_plan .l-column .plan-table table tr {
        display: block;
    }
    .section_plan .l-column .plan-table table th {
        display: block;
    }
    .section_plan .l-column .plan-table table td {
        display: block;
        margin-bottom: 0.5em;
        padding-left: 0;
        text-align: center;
    }
}
.section_plan .r-column {
    flex: 1;
}
@media only screen and (max-width: 1024px) {
    .section_plan .r-column {
        margin-top: 32px;
    }
}
.section_plan .r-column .exp-border {
    height: 100%;
    box-sizing: border-box;
}
.section_plan .r-column .contents img {
    max-width: 100%;
    height: auto;
}
.section_plan .r-column .contents {
    height: 100%;
}
.section_plan .r-column .contents.layoutA {
    display: flex;
    align-items: center;
}
.section_plan .r-column .contents.layoutA .image_wrap.image_01 {
    margin-top: 48px;
    margin-right: 10px;
}
.section_plan .r-column .contents.layoutA .image_wrap.image_02 {
    margin-bottom: 30px;
}
.section_plan .r-column .contents.layoutA .image_wrap img {
    max-width: 100%;
}
.section_plan .r-column .contents.layoutB {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
}
.section_plan .r-column .contents.layoutB .image_01 {
    margin-bottom: 20px;
}

.c-block__main .operator_list {
    margin-bottom: 60px;
}
.c-block__main .operator_list li {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    border-bottom: 1px solid #ced0d5;
    padding: 12px;
    padding-right: 12px;
    padding-left: 100px;
}
@media only screen and (max-width: 768px) {
    .c-block__main .operator_list li {
        display: block;
    }
}
.c-block__main .operator_list li:first-child {
    border-top: 1px solid #ced0d5;
}
.c-block__main .operator_list li.appeal:before,
.c-block__main .operator_list li.appeal:after {
    top: 50%;
    transform: translateY(-50%);
}
@media only screen and (max-width: 768px) {
    .c-block__main .operator_list li.appeal:before,
    .c-block__main .operator_list li.appeal:after {
        top: 0;
        transform: translateY(30px);
    }
}
.c-block__main .operator_list li.appeal:before {
    content: "オススメ";
    position: absolute;
    color: #ffffff;
    font-weight: bold;
    background: var(--color-primary01);
    padding: 0 8px;
    height: 24px;
    line-height: 24px;
    left: 0px;
    box-sizing: border-box;
}
.c-block__main .operator_list li.appeal:after {
    content: "";
    position: absolute;
    left: 80px;
    box-sizing: border-box;
    width: 20px;
    height: 24px;
    border: 12px solid transparent;
    border-right: 8px solid transparent;
    border-left: 12px solid var(--color-primary01);
}
@media only screen and (max-width: 1024px) {
    .c-block__main .operator_list li {
        padding-left: 80px;
    }
    .c-block__main .operator_list li.appeal:before {
        content: "オススメ";
        font-size: 13px;
        padding: 0 8px;
        height: 20px;
        line-height: 20px;
        left: 0px;
    }
    .c-block__main .operator_list li.appeal:after {
        left: 68px;
        width: 12px;
        height: 18px;
        border: 10px solid transparent;
        border-right: 7px solid transparent;
        border-left: 10px solid var(--color-primary01);
    }
}
@media only screen and (max-width: 768px) {
    .c-block__main .operator_list li .operator_info p {
        font-size: 14px;
    }
}
.c-block__main .operator_list li .komeList {
    margin-top: 10px;
}
.c-block__main .operator_list li .komeList ul li {
    padding: 0;
    border: none;
}
.c-block__main .operator_list .operator_name {
    display: flex;
    align-items: center;
    position: relative;
    margin-right: 48px;
}
.c-block__main .operator_list .operator_name:after {
    position: absolute;
    content: "";
    width: 8px;
    height: 8px;
    border: 2px solid #1a1a1a;
    transform: translateX(-50%) rotate(45deg);
    box-sizing: border-box;
    border-bottom: none;
    border-left: none;
    right: -24px;
    top: 50%;
}
.c-block__main .operator_list .operator_name .image {
    margin-right: 24px;
}
.c-block__main .operator_list .operator_name p {
    font-size: 14px;
    font-weight: bold;
    line-height: 1.2em;
    width: 200px;
}
@media only screen and (max-width: 1024px) {
    .c-block__main .operator_list .operator_name {
        margin-right: 34px;
    }
    .c-block__main .operator_list .operator_name p {
        font-size: 18px;
        width: 180px;
    }
}
@media only screen and (max-width: 768px) {
    .c-block__main .operator_list .operator_name {
        margin-right: 0;
    }
    .c-block__main .operator_list .operator_name:after {
        display: none;
    }
    .c-block__main .operator_list .operator_name .image {
        margin-right: 12px;
    }
    .c-block__main .operator_list .operator_name .image img {
        width: 40px;
        height: auto;
    }
}

.placement {
    margin-bottom: 50px;
    display: flex;
    flex-wrap: wrap;
}
@media only screen and (max-width: 768px) {
    .placement {
        margin-bottom: 30px;
    }
}
.placement .contL,
.placement .contR {
    display: flex;
    flex-wrap: wrap;
}
.placement .contL {
    width: 67%;
    padding-right: 10px;
}
@media only screen and (max-width: 1400px) {
    .placement .contL {
        width: 100%;
        padding-right: 0px;
    }
}
.placement .contR {
    width: 33%;
}
@media only screen and (max-width: 1400px) {
    .placement .contR {
        width: 100%;
        margin-top: 10px;
    }
}
.placement .contBox {
    width: 100%;
    border: 1px solid #1a1a1a;
    padding: 30px 25px;
    display: flex;
    position: relative;
}
@media only screen and (max-width: 480px) {
    .placement .contBox {
        padding: 30px 10px;
    }
}
.placement .contBox .tag {
    position: absolute;
    top: 0px;
    left: 0px;
    padding: 8px 12px;
    background-color: #1a1a1a;
}
.placement .contBox .tag p {
    font-size: 18px;
    color: #fff;
    font-weight: bold;
    line-height: 1;
}
.placement .contBox.box01 {
    flex-wrap: wrap;
}
.placement .contBox.box01 .cont {
    width: 16.666666%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}
@media only screen and (max-width: 1024px) {
    .placement .contBox.box01 .cont {
        width: 33.333333%;
    }
}
@media only screen and (max-width: 768px) {
    .placement .contBox.box01 .cont {
        width: 100%;
        margin-top: 50px;
    }
}
@media only screen and (max-width: 1024px) {
    .placement .contBox.box01 .cont:nth-child(4),
    .placement .contBox.box01 .cont:nth-child(5),
    .placement .contBox.box01 .cont:nth-child(6) {
        margin-top: 50px;
    }
}
.placement .contBox.box01 .cont.borderL {
    border-left: 1px solid #ced0d5;
}
@media only screen and (max-width: 768px) {
    .placement .contBox.box01 .cont.borderL {
        border-left: none;
    }
}
.placement .contBox.box01 .cont .img {
    width: 100%;
    height: 134px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}
.placement .contBox.box01 .cont .img.pt10 {
    padding-top: 10px;
}
.placement .contBox.box01 .cont .img p {
    width: 100%;
    text-align: center;
    font-weight: bold;
}
.placement .contBox.box01 .cont .txt p {
    text-align: center;
    font-weight: bold;
}
.placement .contBox.box01 .cont .txt p.yellow {
    color: var(--color-primary01);
}
.placement .contBox.box02 {
    flex-wrap: wrap;
}
.placement .contBox.box02 .cont {
    display: flex;
    justify-content: center;
    align-content: center;
    flex-wrap: wrap;
}
.placement .contBox.box02 .cont.w1 {
    width: 20%;
}
@media only screen and (max-width: 1024px) {
    .placement .contBox.box02 .cont.w1 {
        width: 50%;
    }
}
@media only screen and (max-width: 768px) {
    .placement .contBox.box02 .cont.w1 {
        width: 100%;
        margin-top: 50px;
    }
}
.placement .contBox.box02 .cont.w1 .contC + .contC {
    margin-top: 15px;
}
.placement .contBox.box02 .cont.w2 {
    width: 25%;
    border-left: 1px solid #ced0d5;
}
@media only screen and (max-width: 1024px) {
    .placement .contBox.box02 .cont.w2 {
        width: 50%;
        margin-top: 50px;
        border-left: none;
    }
}
@media only screen and (max-width: 768px) {
    .placement .contBox.box02 .cont.w2 {
        width: 100%;
    }
}
.placement .contBox.box02 .cont.w2 .contC + .contC {
    margin-top: 15px;
}
.placement .contBox.box02 .cont.w3 {
    width: 35%;
    border-left: 1px solid #ced0d5;
}
@media only screen and (max-width: 1024px) {
    .placement .contBox.box02 .cont.w3 {
        width: 50%;
        margin-top: 50px;
    }
}
@media only screen and (max-width: 768px) {
    .placement .contBox.box02 .cont.w3 {
        width: 100%;
        border-left: none;
    }
}
.placement .contBox.box02 .cont .contC {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}
.placement .contBox.box02 .cont .contC.w50 {
    width: 50%;
}
.placement .contBox.box02 .cont .contC.w100 {
    margin-top: 15px;
}
.placement .contBox.box02 .cont .img {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}
.placement .contBox.box02 .cont .img.pt10 {
    padding-top: 10px;
}
.placement .contBox.box02 .cont .img p {
    width: 100%;
    text-align: center;
    font-weight: bold;
}
.placement .contBox.box02 .cont .txt {
    margin-top: 5px;
}
.placement .contBox.box02 .cont .txt p {
    text-align: center;
    font-weight: bold;
}
.placement .contBox.box02 .cont .txt p.yellow {
    color: var(--color-primary01);
}
.placement .contBox.box02 .cont .word {
    width: 100%;
    margin-top: 15px;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    justify-content: flex-start;
    align-content: center;
    flex-wrap: wrap;
}
.placement .contBox.box02 .cont .word span {
    display: inline-block;
    margin-left: auto;
    margin-right: auto;
    padding: 4px 8px;
    font-weight: bold;
    color: #fff;
}
.placement .contBox.box02 .cont .word span.bg {
    background-color: #1a1a1a;
    border-radius: 5px;
}
.placement .contBox.box03 {
    flex-wrap: wrap;
    justify-content: center;
}
.placement .contBox.box03 .ttl {
    width: 100%;
    margin-bottom: 5px;
}
.placement .contBox.box03 .ttl p {
    text-align: center;
    font-weight: bold;
}
.placement .contBox.box03 .cont {
    width: 50%;
    display: flex;
    justify-content: center;
    align-content: center;
    flex-wrap: wrap;
}
@media only screen and (max-width: 1400px) {
    .placement .contBox.box03 .cont {
        width: 140px;
    }
}
.placement .contBox.box03 .cont .img {
    width: 100%;
    height: 71px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}
.placement .contBox.box03 .cont .img.pt10 {
    padding-top: 10px;
}
.placement .contBox.box03 .cont .img p {
    width: 100%;
    text-align: center;
    font-weight: bold;
}
.placement .contBox.box03 .cont .txt {
    margin-top: 5px;
}
.placement .contBox.box03 .cont .txt p {
    text-align: center;
    font-weight: bold;
}
.placement .contBox.box03 .cont .txt p.yellow {
    color: var(--color-primary01);
}
.placement .contBox.box04 .cont {
    width: 100%;
    display: flex;
    justify-content: center;
    align-content: center;
    flex-wrap: wrap;
}
.placement .contBox.box04 .cont .img {
    margin-top: 15px;
    width: 100%;
    height: 71px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}
.placement .contBox.box04 .cont .img.pt10 {
    padding-top: 10px;
}
.placement .contBox.box04 .cont .img p {
    width: 100%;
    text-align: center;
    font-weight: bold;
}
.placement .contBox.box04 .cont .word {
    max-width: 300px;
    margin-top: 15px;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    justify-content: flex-start;
    align-content: center;
    flex-wrap: wrap;
}
.placement .contBox.box04 .cont .word span {
    display: inline-block;
    margin: 3px;
    padding: 4px 8px;
    font-weight: bold;
}
.placement .contBox.box04 .cont .word span.bg {
    background-color: #f0f1f2;
    border-radius: 5px;
}
.placement .contBox.box05 {
    justify-content: center;
}
.placement .contBox.box05 .cont {
    width: 50%;
    display: flex;
    justify-content: center;
    align-content: center;
    flex-wrap: wrap;
}
@media only screen and (max-width: 1400px) {
    .placement .contBox.box05 .cont {
        max-width: 140px;
    }
}
.placement .contBox.box05 .cont .txt {
    width: 100%;
}
.placement .contBox.box05 .cont .txt p {
    text-align: center;
    font-weight: bold;
}
@media only screen and (max-width: 480px) {
    .placement .contBox.box05 .cont .txt p {
        font-size: 14px;
    }
}
.placement .contBox.box05 .cont .txt + .txt {
    margin-top: 40px;
    position: relative;
}
.placement .contBox.box05 .cont .txt + .txt::before {
    content: "";
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
    width: 10px;
    height: 1px;
    background-color: #1a1a1a;
}
.placement .contBox.box05 .cont .txt + .txt::after {
    content: "";
    position: absolute;
    top: -25px;
    left: 50%;
    transform: translateX(-50%);
    height: 10px;
    width: 1px;
    background-color: #1a1a1a;
}
.placement .contBox.box05 .cont .img {
    margin-top: 15px;
    width: 100%;
    height: 71px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}
.placement .contBox.box05 .cont .img.pt10 {
    padding-top: 10px;
}
.placement .contBox.box05 .cont .img p {
    width: 100%;
    text-align: center;
    font-weight: bold;
}
.placement .contBox.box05 .cont .word {
    max-width: 300px;
    margin-top: 15px;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    justify-content: flex-start;
    align-content: center;
    flex-wrap: wrap;
}
.placement .contBox.box05 .cont .word span {
    display: inline-block;
    margin: 3px;
    padding: 4px 8px;
    font-weight: bold;
    color: #fff;
}
.placement .contBox.box05 .cont .word span.bg {
    background-color: #1a1a1a;
    border-radius: 5px;
}
.placement .contBox + .contBox {
    margin-top: 10px;
}

.example_image {
    padding: 30px 30px 30px 60px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 60px;
}
@media only screen and (max-width: 1200px) {
    .example_image {
        padding: 30px 15px;
    }
}
.example_image .title {
    font-size: 20px;
    line-height: 1.5;
    width: 160px;
}
.example_image .title p {
    font-weight: bold;
}
@media only screen and (max-width: 1200px) {
    .example_image {
        display: block;
    }
    .example_image .title {
        width: 100%;
        text-align: center;
        margin-bottom: 15px;
    }
    .example_image .title p > span {
        display: inline-block;
    }
}
.example_image .images {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: calc(100% - 160px);
}
@media only screen and (max-width: 1200px) {
    .example_image .images {
        width: 100%;
    }
}
.example_image .image_and_text {
    width: 25%;
    padding: 0 15px;
    text-align: center;
}
@media only screen and (max-width: 1024px) {
    .example_image .image_and_text {
        width: 50%;
        padding: 15px;
    }
    .example_image .image_and_text > img,
    .example_image .image_and_text > p {
        padding-left: 15px;
        padding-right: 15px;
    }
}
@media only screen and (max-width: 768px) {
    .example_image .image_and_text {
        width: 100%;
        padding: 15px 0;
    }
}
.example_image .image_and_text:nth-child(1) {
    padding-left: 0px;
}
.example_image .image_and_text:nth-child(4) {
    padding-right: 0px;
}
@media only screen and (max-width: 768px) {
    .example_image .image_and_text > img {
        padding-left: 0px;
        padding-right: 0px;
    }
}
.example_image .image_and_text img {
    max-width: 100%;
}
.example_image .image_and_text p {
    text-align: center;
    font-weight: bold;
    line-height: 1.5;
    margin-left: -15px;
    margin-right: -15px;
}
.example_image .image_and_text p .font-s {
    display: block;
    font-size: 14px;
}
@media only screen and (max-width: 1200px) {
    .example_image .image_and_text p .font-s {
        letter-spacing: -0.1em;
    }
}

.annotation li {
    text-indent: -1em;
    padding-left: 1em;
}
.annotation li:not(:last-child) {
    margin-bottom: 1em;
}
.annotation li p:before {
    content: "※";
}

.c-block__inner {
    padding: 0 50px;
}
.c-block__inner.-pdrl {
    padding: 0;
}
@media only screen and (max-width: 900px) {
    .c-block__inner {
        padding-left: 4.6875%;
        padding-right: 4.6875%;
    }
}
/*2025-814 .p-service-block流用*/
.c-block__inner .p-service-block__bg {
    background-color: var(--color-black-60);
}
.c-block__inner .p-service-block__bg-text {
    color: var(--color-black-50);
}
.c-block__inner .c-image {
    margin-top: 10px;
}
.p-service-block__box.-height {
    min-height: auto;
}

.last-section {
    margin-bottom: 0px;
}

#pagetab-02 .plan-section01 {
    margin: 0 -6px;
}
#pagetab-02 .komeList ul li {
    text-align: right;
}
#pagetab-02 .plan-container {
    display: flex;
    width: 100%;
    margin-bottom: 15px;
}
#pagetab-02 .plan-container .l-column,
#pagetab-02 .plan-container .r-column {
    width: 50%;
    padding: 0 6px;
}
#pagetab-02 .plan-container .l-column > .column-title,
#pagetab-02 .plan-container .r-column > .column-title {
    margin-bottom: 12px;
}
@media only screen and (max-width: 1400px) {
    #pagetab-02 .plan-container {
        flex-wrap: wrap;
    }
    #pagetab-02 .plan-container .l-column,
    #pagetab-02 .plan-container .r-column {
        width: 100%;
    }
    #pagetab-02 .plan-container .l-column > .column-title,
    #pagetab-02 .plan-container .r-column > .column-title {
        margin: 0;
        margin-bottom: 12px;
    }
    #pagetab-02 .plan-container .l-column {
        margin-bottom: 30px;
    }
}
#pagetab-02 .plan-container .r-column .column-title {
    background: var(--color-primary01);
}
#pagetab-02 .plan-container .r-column .plansheet .plansheet_inner {
    box-sizing: border-box;
    border: 1px solid var(--color-primary01);
}
@media only screen and (min-width: 1025px) {
    #pagetab-02 .plan-container .r-column .plansheet.plan-c {
        width: 60%;
    }
}
#pagetab-02 .plan-container .r-column .plansheet.plan-c .plansheet_inner {
    border: 4px solid var(--color-primary01);
}
#pagetab-02 .plan-container .column-title {
    font-weight: bold;
    color: #ffffff;
    font-size: 20px;
    background: #1a1a1a;
    text-align: center;
    height: 50px;
}
#pagetab-02 .plan-container .column-title p {
    line-height: 50px;
}
@media only screen and (max-width: 767px) {
    #pagetab-02 .plan-container .column-title {
        font-size: 18px;
        height: 46px;
    }
    #pagetab-02 .plan-container .column-title p {
        line-height: 46px;
    }
}
@media only screen and (max-width: 480px) {
    #pagetab-02 .plan-container .column-title {
        font-size: 16px;
        height: 40px;
    }
    #pagetab-02 .plan-container .column-title p {
        line-height: 40px;
    }
}
#pagetab-02 .s-container {
    display: flex;
    margin: 0 -6px;
    align-items: stretch;
    height: calc(100% - 62px);
    box-sizing: border-box;
}
@media only screen and (max-width: 768px) {
    #pagetab-02 .s-container {
        flex-wrap: wrap;
    }
}
#pagetab-02 .s-container .plansheet {
    width: 50%;
    padding: 0 6px;
    position: relative;
}
@media only screen and (max-width: 768px) {
    #pagetab-02 .s-container .plansheet {
        width: 100%;
    }
    #pagetab-02 .s-container .plansheet + .plansheet {
        margin-top: 12px;
    }
}
#pagetab-02 .s-container .plansheet .plansheet_inner {
    position: relative;
    height: 100%;
    border: 1px solid #1a1a1a;
    background: #ffffff;
}
@media only screen and (max-width: 1024px) {
    #pagetab-02 .s-container .plansheet {
        margin: 0;
    }
}
#pagetab-02 .s-container .plansheet .contents {
    padding: 20px 14px;
}
#pagetab-02 .s-container .plansheet .contents .label {
    display: inline-block;
    font-size: 12px;
    background: #f0f1f2;
    height: 20px;
    border-radius: 2px;
    text-align: center;
    line-height: 20px;
    font-weight: bold;
    margin: 0 auto;
    margin-bottom: 20px;
    padding: 0 4px;
}
@media only screen and (max-width: 768px) {
    #pagetab-02 .s-container .plansheet .contents .label {
        margin-bottom: 16px;
    }
}
@media only screen and (max-width: 768px) {
    #pagetab-02 .s-container .plansheet .contents .label {
        margin-bottom: 12px;
    }
}
#pagetab-02 .s-container .plansheet .contents .label.yellow {
    color: var(--color-primary01);
}
#pagetab-02 .s-container .plansheet .contents-price,
#pagetab-02 .s-container .plansheet .contents-use {
    border-bottom: 1px solid #f0f1f2;
    margin-bottom: 20px;
    padding-bottom: 20px;
    text-align: center;
}
#pagetab-02 .s-container .plansheet .contents-planlist {
    text-align: center;
}
#pagetab-02 .s-container .plansheet .contents .text {
    font-weight: bold;
}
@media only screen and (max-width: 480px) {
    #pagetab-02 .s-container .plansheet .contents .text {
        font-size: 14px;
    }
}
#pagetab-02 .s-container .plansheet .contents .text.yellow {
    color: var(--color-primary01);
}
#pagetab-02 .s-container .plansheet .contents .text .font-l {
    font-size: 40px;
    font-family: Yu Gothic UI, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    line-height: 1;
}
@media only screen and (max-width: 1400px) {
    #pagetab-02 .s-container .plansheet .contents .text .font-l {
        font-size: 36px;
    }
}
#pagetab-02 .s-container .plansheet .contents .text .font-l.kara {
    position: relative;
}
#pagetab-02 .s-container .plansheet .contents .text .font-l.kara::before {
    content: "～";
    position: absolute;
    top: 10px;
    right: -16px;
    font-size: 16px;
}
@media only screen and (max-width: 768px) {
    #pagetab-02 .s-container .plansheet .contents .text .font-l.kara::before {
        top: 6px;
        right: -12px;
        font-size: 12px;
    }
}
@media only screen and (max-width: 480px) {
    #pagetab-02 .s-container .plansheet .contents .text .font-l.kara::before {
        top: 14px;
    }
}
#pagetab-02 .s-container .plansheet .contents .text .font-m {
    display: block;
    margin-top: 5px;
    font-size: 20px;
    line-height: 1.5em;
}
@media only screen and (max-width: 768px) {
    #pagetab-02 .s-container .plansheet .contents .text .font-m {
        font-size: 16px;
    }
}
#pagetab-02 .s-container .plansheet .contents .text .red {
    color: #ff0000;
}
@media only screen and (max-width: 1400px) {
    #pagetab-02 .s-container .plansheet .contents .text ul {
        max-width: 250px;
        margin-left: auto;
        margin-right: auto;
    }
}
#pagetab-02 .s-container .plansheet .contents .text ul li {
    position: relative;
    padding-left: 24px;
    text-align: left;
    color: #1a1a1a;
}
#pagetab-02 .s-container .plansheet .contents .text ul li p {
    line-height: 1.5em;
}
#pagetab-02 .s-container .plansheet .contents .text ul li p.yellow {
    margin-top: 10px;
    color: var(--color-primary01);
}
#pagetab-02 .s-container .plansheet .contents .text ul li p.red {
    margin-top: 10px;
    color: #ff0000;
}
#pagetab-02 .s-container .plansheet .contents .text ul li:before {
    content: "";
    position: absolute;
    width: 6px;
    height: 6px;
    border-radius: 50vh;
    background-color: #c2cfc9;
    top: 8px;
    left: 8px;
}
@media only screen and (max-width: 480px) {
    #pagetab-02 .s-container .plansheet .contents .text ul li:before {
        top: 6px;
    }
}
#pagetab-02 .s-container .plansheet .contents .text ul li.yellow::before {
    background-color: var(--color-primary01);
}
#pagetab-02 .s-container .plansheet .contents .text ul li.red::before {
    background-color: #ff0000;
}
#pagetab-02 .s-container .plansheet .contents .text > ul > li > ul > li {
    padding-left: 12px;
}
#pagetab-02 .s-container .plansheet .contents .text > ul > li > ul > li:before {
    content: "";
    position: absolute;
    width: 6px;
    height: 6px;
    border-radius: 50vh;
    background-color: #c2cfc9;
    top: 8px;
    left: 0px;
}
@media only screen and (max-width: 480px) {
    #pagetab-02 .s-container .plansheet .contents .text > ul > li > ul > li:before {
        top: 6px;
    }
}

.contact-last {
    padding: 110px 0;
}
.contact-last .container {
    display: flex;
    justify-content: space-between;
}
.contact-last .l-column {
    border-right: #111 1px solid;
    padding-right: 100px;
    flex-grow: 1;
    width: 70%;
}
.contact-last .r-column {
    padding-left: 100px;
}
.contact-last .title-block {
    margin-bottom: 36px;
}
.contact-last .title-block .title {
    font-size: 20px;
    color: var(--color-primary01);
    font-weight: bold;
    margin-bottom: 14px;
    line-height: 1em;
}
.contact-last .title-block .sub-title {
    font-size: 28px;
    font-weight: bold;
    margin-bottom: 24px;
    line-height: 1em;
}
.contact-last .title-block .read {
    line-height: 1.75em;
}
.contact-last .wrap {
    display: flex;
    justify-content: space-between;
    margin-bottom: 36px;
    align-items: center;
}
.contact-last .wrap .contact {
    margin-right: 54px;
}
.contact-last .wrap .contact .tel {
    font-weight: bold;
    font-size: 42px;
    line-height: 1em;
    margin-bottom: 14px;
}
.contact-last .wrap .contact .email {
    font-size: 20px;
    line-height: 1em;
    font-weight: bold;
}
.contact-last .wrap .contact-btn a {
    height: 60px;
    width: 320px;
}
.contact-last .wrap .contact-btn a span {
    font-size: 16px;
}
.contact-last .faq {
    display: flex;
}
.contact-last .faq p {
    margin-right: 24px;
}
.contact-last .faq p .c-link {
    width: auto;
    color: #ffffff;
    transition: 0.5s all;
}
.contact-last .faq p .c-link:hover {
    color: var(--color-primary01);
}

.komeList.pl15 {
    padding-left: 15px;
}
.komeList ul li > span {
    display: inline-block;
    font-size: 16px;
    font-weight: 400;
    position: relative;
    padding-left: 1.25em;
    line-height: 1.5;
}
@media only screen and (max-width: 768px) {
    .komeList ul li > span {
        font-size: 14px;
    }
}
.komeList ul li > span:before {
    content: "※";
    position: absolute;
    top: 0.05em;
    left: 0;
}

.p-faq-module__q .ilb + .ilb {
    margin-top: 0.25em;
}

.p-faq-module__a .ilb + .ilb {
    margin-top: 0.75em;
}

.faqTxt {
    margin-top: 60px;
    padding-left: 40px;
}
@media only screen and (max-width: 768px) {
    .faqTxt {
        margin-top: 30px;
    }
}

/*20230330修正*/
@media only screen and (max-width: 1024px) {
    #pagetab-02 .plan-container {
        display: block;
    }
}
#pagetab-02 .plan-container .l-column {
    width: 33.3333333333%;
}
@media only screen and (max-width: 1024px) {
    #pagetab-02 .plan-container .l-column {
        width: 100%;
        margin-bottom: 30px;
    }
}
#pagetab-02 .plan-container .l-column .plansheet {
    width: 100%;
    height: 100%;
}
#pagetab-02 .plan-container .r-column {
    width: 100%;
    height: 100%;
    padding: 0 100px 40px;
}
@media only screen and (max-width: 1024px) {
    #pagetab-02 .plan-container .r-column {
        padding: 0 0 40px;
    }
}
#pagetab-02 .plan-container .r-column .plansheet {
    width: 100%;
    height: 100%;
}
@media only screen and (min-width: 1025px) {
    #pagetab-02 .plan-container .r-column .plansheet.plan-c {
        width: 100%;
    }
}
#pagetab-02 .plan-container .r-column .plansheet .plansheet_inner.plan-n {
    border: 1px solid #1a1a1a;
}
#pagetab-02 .plan-container .r-column .plansheet .plansheet_inner.plan-n .column-title {
    background: #1a1a1a;
}
#pagetab-02 .plan-container .r-column .cont_l,
#pagetab-02 .plan-container .r-column .cont_r {
    width: 50%;
}
@media only screen and (max-width: 1024px) {
    #pagetab-02 .plan-container .r-column .cont_l,
    #pagetab-02 .plan-container .r-column .cont_r {
        width: 100%;
        margin-bottom: 30px;
    }
}
#pagetab-02 .plan-container .r-column .cont_r {
    display: flex;
    flex-direction: column;
}
#pagetab-02 .plan-container .r-column .cont_r .column-title p {
    height: auto;
    line-height: 1.2;
}
#pagetab-02 .plan-container .r-column .cont_r .column-title p span {
    font-size: 16px;
}
#pagetab-02 .plan-container .r-column .cont_r .plansheet + .plansheet {
    padding-top: 12px;
}
#pagetab-02 .plan-container .r-column .cont_r .plansheet .contents ul li:before {
    top: 12px;
}
#pagetab-02 .plan-container .r-column .cont_r .plansheet .contents .text p.remark {
    font-weight: normal;
    text-align: left;
    font-size: 14px;
}
#pagetab-02 .plan-container .r-column .cont_r .plansheet .contents .text.p-center {
    display: flex;
    flex-direction: column;
    align-items: center;
} /*# sourceMappingURL=online-event.css.map */

@media only screen and (max-width: 768px) {
    .section-read.type_a {
        padding-top: 30px;
    }
}

/*20230627*/
img {
    width: auto;
}
.online-container {
    padding-top: 80px;
}

/*6つの安心ポイント*/
.point_list {
    display: flex;
    flex-wrap: wrap;
}
.point_item {
    width: 33.3333%;
    padding: 20px;
}
.point_txt {
    text-align: center;
    font-size: 20px;
}
.point_txt .mini {
    font-size: 16px;
}

.point_txt .number {
    display: inline-block;
    line-height: 1;
    font-size: 60px;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    font-weight: 500;
    -webkit-transform: skewX(-11.5deg);
    transform: skewX(-11.5deg);
    color: var(--color-primary01);
    opacity: 0.4;
}

@media only screen and (max-width: 768px) {
    .point_item {
        width: 100%;
        padding: 0px;
        padding-bottom: 20px;
    }
    .point_txt {
        font-size: 16px;
    }
    .point_txt .mini {
        font-size: 14px;
    }
    .point_txt .number {
        font-size: 40px;
    }
}

/*動画*/

.movie {
    padding-top: 40px;
    max-width: 100%;
    height: calc(50vw * 0.75);
    margin: auto;
}
@media only screen and (max-width: 768px) {
    .movie {
        height: calc(80vw * 0.75);
    }
}
.movie .inner,
.movie .inner iframe {
    height: 100%;
}

.movie .inner,
.movie .inner iframe {
    height: 100%;
    width: 100%;
}

/*スイッチャー構成図 一例*/

.switcher_list {
    display: flex;
    padding-bottom: 60px;
    flex-wrap: wrap;
}
.switcher_item {
    padding: 0 10px;
    text-align: center;
}
@media only screen and (max-width: 768px) {
    .switcher_item {
        padding-bottom: 20px;
        width: 50%;
        font-size: 12px;
    }
}
@media only screen and (max-width: 375px) {
    .switcher_item {
        width: 100%;
    }
}
