@charset 'utf-8';

/* .general ---*/
.inner {
    width: 100%;
}
.seminar-promo.hapa nav span {
    background-color: #28acc6;
}

.seminar-promo.hapa .line {
    background-color: #404040;
}

.seminar-promo.hapa .line-s {
    text-decoration: line-through;
    color: #999;
}

.seminar-promo.hapa .top-title {
    background-color: #1b809e;
}

.seminar-promo.hapa .sub-img {
    background-color: #1b809e;

    order: 2;
}

.seminar-promo.hapa .main-img {
    background-image: url(../images/main.jpg);
    background-position: center;
    background-size: cover;
}

.seminar-promo.hapa header h1 img {
    border: none;
}
.seminar-promo.hapa header h1 {
    background-color: #2891e2;
}
.seminar-promo.hapa .for-pc {
    display: none;
}
.seminar-promo.hapa .for-mobile {
    display: block;
}
.hapa .sub-img .inner {
    width: 100%;
}

.hapa .sub-img img {
    display: block;
    width: 388px;
    margin: 0 auto;
}

.live-banner {
    margin: 1em 0;
}

.live-banner img {
    padding: .6em;
    border: 1px solid #ccc;
    background-color: #fff;
}

.live-banner a span {
    font-size: 1.5em;
    display: block;
    margin: .5em auto 1em;
    text-align: center;
}

.img-frame .inner {
    padding: 0 .25em;
}

.img-frame .inner img {
    display: block;
    margin: 0 auto;
}


/*info*/

.seminar-promo.hapa .curriculum ol {
    margin: 0 0 1.5em 1.5em;
    padding: 0 0 1em;
    border-bottom: 1px dotted #ccc;
}

.seminar-promo.hapa .curriculum li {
    font-size: .9em;
    line-height: 1.75;
    list-style-type: disc;
}

.seminar-promo.hapa .details th {
    width: 30%;
    padding: .7em .5em;
    text-align: left;
    vertical-align: top;
    border-bottom: 1px dotted #cdcdcd;
    background-color: #f9f9f5;
}

.seminar-promo.hapa .details td {
    font-size: 1em;
    line-height: 1.6;
    padding: .7em;
    border-bottom: 1px dotted #cdcdcd;
}


/* - .ticket
 ------------------------------------------------------------ */

.hapa .ticket h2 {
    font-size: 1.4em;
    font-weight: bold;
    display: inline-block;
    padding: .2em 1em;
    color: #fff;
    background-color: #84cce0;
}

.hapa .ticket.due .wrap {
    padding: 1em;
    background-color: #f3f3f3;
    margin: 0 0 2em;
}

.seminar-promo.hapa .ticket.due {
    margin: 0;
    padding: 1em;
    text-align: center;
    background: none;
}

.ticket.due [class*=grid-][class*=-noGutter] .booking .inner {
    border: none;
    background: none;
    padding: 0;
}

.seminar-promo.hapa .ticket.due h3 {
    line-height: 1.25;
    margin: 0 0 .4em;
    padding: 0 0 0 .2em;
    border-left: 9px solid #adadad;
    background: none;
}

.seminar-promo.hapa .ticket.due h3 span {
    font-size: 65%;
    display: block;
}

.hapa .ticket .inner {
    /* padding: 1em; */
}

.hapa .booking h3 {
    font-size: 1.05em;
    font-weight: bold;
    margin: 0;
    padding: .25em;
    text-align: center;
    background-color: #dae8f3;
}

.hapa .ticket.tre h3 {
    background-color: #e4f4f9;
}

.luogo a {
    color: #333;
    border-top: 1px dotted #ccc;
    padding: .35em 0;
}

.hapa .type-info {
    text-align: left;
    margin: 0 0 .5em;
}

.hapa .type-info .discountless {
    font-size: 140%;
    font-weight: bold;
}

.hapa h4.type-label {
    font-size: 1.1em;
    font-weight: bold;
}

.seminar-promo.hapa .ticket.due [class*=grid-][class*=-noGutter] .book-info .inner {
    margin: 0 0 1em;
    text-align: left;
    padding: 0 1em;
}

.hapa [class*=t-type-] {
    /* margin: 1em 0 0; */
    padding: 2em 1em;
    background-color: #fff;
    border-bottom: 1px dashed #aaa;
}

.hapa .t-type-standard {
    margin: 0 0 1em;
    /* border-top: 1px dashed #aaa; */
    border-bottom: 1px dashed #aaa;
    /* padding: 1em; */
    /* background-color: #fff; */
}

.hapa .button-wrap a {
    width: 100%;
    margin: .35em 0;
    padding: .5em;
    text-align: center;
    color: #fff;
    border-radius: 2px;
    background-color: #d47383;
}

.hapa .button-wrap a .fa {
    font-size: 1em;
    color: #fff;
}

.hapa .button-wrap .style-b a {
    font-size: .9em;
    background-color: #5dbdcb;
}

.dummy {
    display: none !important;
}

.hapa .data {
    /* font-size: 1.15em; */
    /* margin: .7em 0 .2em; */
}

.hapa .col-12.wrap:nth-of-type(10) .seminar-date:after {
    content: '祝日';
    font-weight: bold;
}
.hapa .col-12.wrap:nth-of-type(11) .seminar-date:after {
    content: '祝日';
    font-weight: bold;
}
.hapa .seminar-time {
    font-size: .9em;
    padding: .3em 0;
}

.hapa .button-wrap a.one-click {
    /* font-size: 1.15em; */
    background-color: #9999cb;
}

.hapa .discount {
    font-size: 1.3em;
}

.hapa .discount b {
    color: #f04124;
}

.hapa .booking {
    position: relative;
}

.hapa .booking .avv {
    font-size: 1.35em;
    font-weight: bold;
    position: absolute;
    top: 2.2em;
    right: 1.8em;
    padding: .25em;
    color: #ef6f56;
    border: 1px solid #ef6f56;
}

.hapa .requested-count {
    /* text-align: center; */
    /* font-size: .85em; */
    /* margin: .8em 0 0 0; */
}

.hapa .requested-count .fa {
    font-size: 1.5em;
    position: relative;
    top: 2px;
    color: #2ecc71;
}

.hapa .requested-count span {
    font-weight: bold;
    padding: .3em;
    border: 1px solid #ef6f56;
}


/*after-party*/

.hapa .after-party .inner {
    margin: 0 0 2em;
    padding: 1.5em;
    border: 1px solid #ccc;
}

.hapa .after-party h5 {
    font-size: 1.25em;
    margin: .5em 0;
    letter-spacing: 5px;
}

.hapa .after-party p {
    font-size: .9em;
    margin: 1em 0;
}

.hapa .after-party p em {
    font-weight: bold;
}

.sold-out-text {
    font-size: 30px;
    font-weight: bold;
    margin-top: 100px;
    opacity: .6;
    color: red;
}

.seminar-list {
    margin: 2em auto;
    padding: 1em;
    width: 100%;
}

.seminar-list h4 {
    text-align: center;
    margin: 0 auto 2em;
    max-width: 34%;
}
.seminar-list .wrapper {
    display: grid;
    margin: 0 0 1em;
    border: 1px solid #dedede;
    grid-template-columns: 20%;
    grid-template-rows: 40px;
}
.seminar-list .wrapper.close {
    background-color: #a9a9a9;
}
.seminar-list .wrapper.close > div:not(.buy) {
    text-decoration: line-through;
}
.seminar-list .wrapper.close .buy {
    background-color: #ccc;
    font-weight: bold;
}
.seminar-list .wrapper:nth-of-type(even) {
    background-color: #eaf3f2;
}

.seminar-list .wrapper div {
    line-height: 40px;
    text-align: center;
}

.seminar-list .wrapper .day {
    font-weight: bold;
    line-height: 40px;
    padding: 0 0 0 .5em;
    text-align: left;
    border-bottom: 2px dotted #e4e4e4;

    grid-column-start: 1;
    grid-column-end: 6;
}

.seminar-list .place {
    grid-column-start: 1;
    grid-column-end: 2;
}

.seminar-list .time {
    grid-column-start: 2;
    grid-column-end: 5;
}

.seminar-list .rank {
    font-weight: bold;
    grid-column-start: 5;
    grid-column-end: 6;
}

.seminar-list .buy {
    background-color: #dedede;
    grid-column-start: 1;
    grid-column-end: 6;
}

.seminar-list .buy a {
    display: block;
    color: #fff;
    background-color: #4ca2dc;
}

[class*=info-seminar-] {
    padding: 1em;
}

.seminar-list .wrapper:nth-of-type(even) .buy a {
    background-color: #27a39b;
}

[class*=info-seminar-] {
    padding: 1em;
    width: 100%;
    margin: 0 auto;
}

.info-seminar-01 .inner {
    padding: 1em;
}

.info-seminar-01 h3 {}

.info-seminar-01 h3 img {}

.info-seminar-01 ol {
    margin: 1em 0 0 2em;
}

.info-seminar-01 li {
    line-height: 2;
    list-style-type: disc;
    border-bottom: 1px dotted #ccc;
}

.info-seminar-01 p {
    margin: 1em 0;
    font-size: .85em;
    letter-spacing: 1px;
}
.info-seminar-01 p span {
    display: block;
ぢ
    spl:;
    margin: .5em 0 0;
    font-weight: bold;
    color: #d26464;
}
.info-seminar-02 {
    background-color: #f3f3f3;
}

.seminar-promo [class*=info-seminar-] [class*=curriculum-] {
    background-color: #fff;
    padding: .5em;
}

.seminar-promo [class*=info-seminar-] [class*=curriculum-] h3 {
    border-bottom: 1px dotted #aaa;
    margin: .3em .3em 1em;
}

.seminar-promo [class*=info-seminar-] [class*=curriculum-] p {
    font-size: 1.1em;
    margin: 0 0 2em .5em;
}

.seminar-promo [class*=info-seminar-] .curriculum-02 p {
    font-size: .9em;
    margin: 0 0 1em .5em;
}

.seminar-promo [class*=info-seminar-] [class*=curriculum-] span {
    display: block;
    font-size: 1.8em;
    margin: .3em 0 0 0;
}

.button-wrap {
    display: flex;
    flex-direction: column;
}

.booking .inner {
    background-color: #fff;
}



.anchor {
    margin: 4em 0;
    width: 100%;
    margin: 0 auto;
}

.anchor h4 {
    text-align: center;
    margin: 0 auto 2em;
    max-width: 35%;
    height: 2em;
}
.u-line {
    position: relative;
    padding-bottom: 0.25em;
    border-bottom: 3px solid #DDD;
}
.u-line::after {
    position: absolute;
    content: " ";
    border-bottom: solid 3px #446689;
    left: 0;
    right: 0;
    bottom: -.2em;
    margin: auto;
    width: 15%;
    display: block;
}



/* - ## x <= 569px
 ------------------------------------------------------------ */

@media screen and (min-width:569px) {
    .seminar-promo .details th:lang(ja) {
        width: 35%;
        min-width: inherit;
    }
}


/* - ## x <= 768px
 ------------------------------------------------------------ */

@media screen and (min-width:768px) {
    .seminar-promo.hapa .for-pc {
        display: block;
    }
    .seminar-promo.hapa .for-mobile {
        display: none;
    }

    /*booking*/
    .hapa .booking h3 {
        font-size: 1.2em;
    }
    .button-wrap {
        flex-direction: row;

        justify-content: space-around;
    }
    .hapa .button-wrap a {
        margin: 0 .2em;
    }
    .seminar-list ul {
        display: grid;

        grid-template-columns: 20% 20% 20% 20% 20%;
        grid-template-rows: 25px 25px 25px 25px 25px;
    }
    /*list*/
    .seminar-list .wrapper {
        display: grid;
        width: 100%;
        margin: 0 auto .1em;
        border: 1px solid #dedede;
        grid-template-columns: 24% 20% 20% 10%;
        grid-template-rows: 40px;
    }
    .seminar-list .wrapper .day {
        padding: 0 0 0 1em;
        border: none;

        grid-column-start: 1;
        grid-column-end: 2;
    }
    .seminar-list .wrapper .place {
        grid-column-start: 2;
        grid-column-end: 3;
    }
    .seminar-list .wrapper .time {
        grid-column-start: 3;
        grid-column-end: 4;
    }
    .seminar-list .wrapper .rank {
        grid-column-start: 4;
        grid-column-end: 5;
    }
    .seminar-list .wrapper .buy {
        grid-column-start: 5;
        grid-column-end: 6;
    }
    .hapa .data {
        font-size: 1.6em;
        margin: .7em 0 .3em;
    }
    .hapa .seminar-time {
        padding: .5em 0 .7em;
    }
    .seminar-promo.hapa .ticket.due h3 {
        font-size: 2em;
    }
    .ticket.due [class*=grid-][class*=-noGutter] .booking .inner {
        margin: 0 0 0 1em;
    }
    .seminar-promo.hapa .ticket.due [class*=grid-][class*=-noGutter] .book-info .inner {
        padding: 0;
    }
    .hapa h4.type-label {
        display: inline;
        padding: 0 1em 0 .5em;
    }
}


/* - ## x >= 1025px
 ------------------------------------------------------------ */

@media screen and (min-width:1024px) {
    .seminar-promo.hapa .top-title {
        max-height: 375px;
    }
    /*booking*/
    .hapa .button-wrap {
        /* padding: 0 1em; */
    }

    /*info*/
    .hapa .after-party .inner {
        margin: 1em 2em;
    }
}