@charset "utf-8";

.title-wrap {
        display: flex;
        align-items: center;
        justify-content: center;
        height: 150px;
        margin: 0 0 5rem auto;
        color: #ffffff;
        font-size: 3rem;
        background-color: #54BC00;
        background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23e8ffc2' fill-opacity='0.14' fill-rule='evenodd'%3E%3Ccircle cx='3' cy='3' r='3'/%3E%3Ccircle cx='13' cy='13' r='3'/%3E%3C/g%3E%3C/svg%3E");
}

.main-contents {
        margin: 0 auto;
        padding-top: 0;
}

.contents-inner {
        max-width: 940px;
        padding: 0 20px;
        margin: 0 auto 10rem;
}

/* common */
.first-title {
        padding: 1rem 1rem 1rem 2rem;
        margin-bottom: 3rem;
        font-size: 3rem;
        font-weight: bold;
        background: #fff0de;
        border-left: solid 5px #EF8200;
}

.first-sub-title {
        padding: 1rem 1rem 1rem 2rem;
        margin-bottom: 3rem;
        font-size: 2.5rem;
        font-weight: bold;
        background-color: #dddddd;
}

.first-sub-title-h4 {
        position: relative;
        margin-bottom: 1rem;
        padding-left: 3rem;
        color: #104AB5;
        font-weight: bold;
        font-size: 2.3rem;
}

.first-sub-title-h4::before {
        font-family: "Font Awesome 5 Free";
        content: "\f111";
        font-weight: 900;
        position: absolute;
        top: 50%;
        left: 0;
        transform: translateY(-50%);
        color: #104AB5;
}

.sub-title-h5 {
        margin-bottom: 1rem;
        color: #54BC00;
        font-size: 2rem;
        font-weight: bold;
}

.title-header-style {
        margin-top: 2rem;
}

.explanation {
        margin-left: 2rem;
        color: #EF8200;
        font-size: 1.7rem;
}

.paragraph {
        margin-bottom: 5rem;
        text-align: justify;
}

.paragraph-bgc {
        padding: 3rem;
        margin-bottom: 5rem;
        background-color: #f8f8f8;
        border-radius: 10px 30px;
}

.paragraph-bgc-w {
        padding: 2.5rem;
        background-color: #ffffff;
        border-radius: 5px 20px;
}

/* accordion */
.accordion_area {
        margin: 2rem auto 5rem;
}

.accordion_area .accordion_one .ac_header {
        padding: 2rem;
        position: relative;
        z-index: +1;
        cursor: pointer;
        transition: .2s;
        color: #ffffff;
        background-color: #e5001b;
        box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.2);
}

.accordion_area .accordion_one .ac_header:not(.open):hover {
        color: #ffffff;
        background-color: #e5001b;
}

.accordion_area .accordion_one .ac_header .i_box {
        position: absolute;
        top: 50%;
        right: 2rem;
        width: 20px;
        height: 20px;
        margin-top: -10px;
}

.accordion_area .accordion_one .ac_header .i_box::before,
.accordion_area .accordion_one .ac_header .i_box::after {
        position: absolute;
        content: "";
        margin: auto;
        box-sizing: border-box;
        vertical-align: middle;
}

.accordion_area .accordion_one .ac_header .i_box::before {
        border-top: 2px solid #ffffff;
        width: 20px;
        height: 0;
        top: 0;
        bottom: 0;
        right: 0;
}

.accordion_area .accordion_one .ac_header .i_box::after {
        border-left: 2px solid #ffffff;
        width: 0;
        height: 20px;
        top: 0;
        bottom: 0;
        right: 9px;
        transition: .3s;
}

.accordion_area .accordion_one .ac_header.open .i_box::after {
        height: 0;
}

.accordion_area .accordion_one .ac_header:not(.open):hover .i_box::before {
        border-top: 2px solid #ffffff;
}

.accordion_area .accordion_one .ac_header:not(.open):hover .i_box::after {
        border-left: 2px solid #ffffff;
}

.accordion_area .accordion_one .ac_inner {
        display: none;
        box-sizing: border-box;
        background: #fff;
}

.p-faq__q-txt {
        text-align: center;
        font-size: 3rem;
}

.seminar-list {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-top: 2rem;
}

.seminar-list-item {
        width: 31%;
        margin-bottom: 1rem;
        font-size: 2rem;
}

.seminar-photo-img-wrap {
        width: 90%;
        margin: 3rem auto 5rem;
}

/* btn */
.seminar-list-link {
        display: inline-block;
        width: 100%;
}

.seminar-list-link:hover {
        transform: scale(1.02);
        transition: .3s;
}

.seminar-photo-img {
        width: 100%;
}

/* balloon */

.balloon-bgc {
        padding: 5rem 0;
        margin-bottom: 10rem;
        text-align: justify;
        background-color: #f8f8f8;
}

.balloon-inner {
        max-width: 940px;
        padding: 3rem 20px;
        margin: 0 auto;
        background-color: #ffffff;
}

.balloon {
        display: flex;
        justify-content: center;
        align-items: start;
        gap: 0 22px;
        margin-top: 6rem;
}

.balloon img {
        max-width: 80px;
        height: 90%;
        border-radius: 50%;
}

.balloon-01 img {
        border: 3px solid #EF8200;
}

.balloon-01 p {
        position: relative;
        margin: 3px 0 0;
        padding: .8em 1em;
        border-radius: 5px;
        color: #ffffff;
        background-color: #EF8200;
}

.balloon-01 p::before {
        position: absolute;
        right: -15px;
        width: 15px;
        height: 30px;
        background-color: #EF8200;
        clip-path: polygon(0 0, 100% 50%, 0 100%);
        content: '';
}

.balloon-02 p {
        position: relative;
        margin: 3px 0 0;
        padding: .8em 1em;
        border-radius: 5px;
        color: #ffffff;
}

.balloon-02 p::before {
        position: absolute;
        left: -14px;
        width: 15px;
        height: 30px;
        background-color: #104AB5;
        clip-path: polygon(0 50%, 100% 0, 100% 100%);
        content: '';
}

.balloon-02 img {
        border: 3px solid #104AB5;
}

.balloon-02 p {
        background-color: #104AB5;
}

.balloon-03 img {
        border: 3px solid #54BC00;
}

.balloon-03 p {
        position: relative;
        margin: 3px 0 0;
        padding: .8em 1em;
        border-radius: 5px;
        color: #ffffff;
        background-color: #54BC00;
}

.balloon-03 p::before {
        position: absolute;
        right: -15px;
        width: 15px;
        height: 30px;
        background-color: #54BC00;
        clip-path: polygon(0 0, 100% 50%, 0 100%);
        content: '';
}

.seminar-voice {
        display: block;
        width: 100%;
        padding-bottom: 0.5rem;
        margin-bottom: 1rem;
        font-size: 2rem;
        font-weight: bold;
        border-bottom: 1px solid #ffffff;
}


/* page-contact */
.page-contact-block {
        top: 50%;
        right: 0;
        margin: 7rem auto 0;
}

.page-contact-btn-title {
        padding: 1rem 0;
        font-size: 2.2rem;
        text-align: center;
        color: #ffffff;
        background-color: #646464;
        background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='%23e8ffc2' fill-opacity='0.14' fill-rule='evenodd'%3E%3Ccircle cx='3' cy='3' r='3'/%3E%3Ccircle cx='13' cy='13' r='3'/%3E%3C/g%3E%3C/svg%3E");
}

.page-contact-btn {
        padding: 2rem;
        border: 3px solid #646464;
}

.page-contact-tel {
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 3rem;
        font-size: 1.8rem;
}

.contact-tel,
.contact-date {
        display: flex;
        justify-content: flex-start;
}

.contact-tel dt {
        margin-bottom: 0.5rem;
}

.page-contact-mail {
        width: 100%;
        display: flex;
        align-items: center;
}

.page-contact-btn-link {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 100%;
        padding: 2rem;
        color: #ffffff;
        font-size: 2rem;
        text-align: center;
        background-color: #646464;
}

.page-contact-btn-link:hover {
        animation: shad04 1.5s infinite;
}

@keyframes shad04 {
        0% {
                box-shadow: 0 0 0 0 #646464;
        }

        70% {
                box-shadow: 0 0 0 10px rgb(39 172 217 / 0%);
        }

        100% {
                box-shadow: 0 0 0 0 rgb(39 172 217 / 0%);
        }
}


@media screen and (max-width:768px) {

        .title-wrap {
                margin-bottom: 0;
        }

        .contents-inner {
                display: block;
                margin: 0 auto;
        }

        .first-title {
                font-size: 2.2rem;
        }

        .first-sub-title {
                padding: 1rem;
                font-size: 2rem;
        }

        .first-sub-title-h4 {
                font-size: 1.8rem;
        }

        .first-sub-title-h4::before {
                top: 0;
                transform: none;
        }

        .sub-title-h5 {
                font-size: 1.7rem;
        }

        .seminar-photo-img-wrap {
                width: 100%;
        }

        .p-faq__q-txt {
                font-size: 2.5rem;
        }

        .seminar-list-item {
                width: 32%;
        }

        .balloon-bgc {
                margin-bottom: 5rem;
        }

        .balloon-inner {
                margin: 0 20px;
        }

        .contents-inner-last {
                margin-bottom: 10rem;
        }

}

@media screen and (max-width:599px) {


        .page-contact-block {
                margin: 3rem auto;
        }

        .page-contact-tel,
        .page-contact-btn-link {
                font-size: 1.7rem;
        }

        .page-contact-btn {
                padding: 1rem;
        }

        .contact-date {
                display: block;
        }

        .accordion_area .accordion_one .ac_header {
                padding: 2rem 1rem;
        }

        .p-faq__q-txt {
                text-align: left;
                font-size: 1.6rem;
        }

        .accordion_area .accordion_one .ac_header .i_box::before {
                width: 10px;
        }

        .accordion_area .accordion_one .ac_header .i_box::after {
                height: 10px;
                right: 4px;
        }

        .seminar-list {
                display: block;
        }

        .seminar-list-item {
                width: 100%;
                margin-bottom: 2rem;
        }

        .balloon {
                margin-top: 3rem;
                gap: 0 15px;
        }

        .balloon-inner {
                padding: 1rem;
        }

        .balloon-01 p,
        .balloon-02 p,
        .balloon-03 p {
                padding: 1rem;
                font-size: 1.4rem;
        }

        .seminar-voice {
                font-size: 1.6rem;
        }

        .balloon img {
                max-width: 55px;
        }

        .balloon-01 p::before,
        .balloon-03 p::before {
                right: -9px;
                width: 10px;
                height: 20px;
        }

        .balloon-02 p::before {
                left: -9px;
                width: 10px;
                height: 20px;
        }


}