/* ==========================================================================
        BF追加スタイル
        -2019.01.17        sbym
========================================================================== */

/* Web Font
======================================================= */
@import url("https://fonts.googleapis.com/css?family=Noto+Serif+JP");

/* 汎用スタイル設定
======================================================= */
/* ※ カラー 赤 */
.note_red {
        color: #b6000d;
}

/* ※ カラー 青(cobalt blue) */
.note_blue,
.__color--blue {
        color: #3b77a7;
}

/* ※ カラー Classic Blue*/
.__color--classicblue {
        color: #0f4c81;
}

.fw-b {
        font-weight: bold;
}

.fw-n {
        font-weight: normal;
}

/*縦書き*/
.__text--vertical-l {
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
}

.__text--horizontal-l {
        -ms-writing-mode: horizontal-tb;
        writing-mode: horizontal-tb;
}

/*--------- fit-content ----------*/
.__fit--content-l {
        width: fit-content;
        max-width: 100%;
}

/*見出し設定*/
#parts-new h3.program__heading.program__heading--color,
.program__heading.program__heading--color {
        color: #fff;
        font-size: 20px;
        font-size: 2rem;
        padding: 4px 20px 4px 20px;
        border-left: none;
}

#parts-new h3.program__heading.program__heading--color::after,
.program__heading.program__heading--color::after {
        background-color: #000;
        mix-blend-mode: color-burn;
        opacity: 0.3;
}

#parts-new h5.program__heading {
        border: 1px solid #eee;
        border-radius: 5px;
        background-color: transparent;
        padding: 1rem;
        font-size: 1.5rem;
        color: #222;
        margin-bottom: 1.6rem;
}

#parts-new h5.program__heading {
        border-left: 5px solid #b6000d;
        padding-left: 0.5em;
}

div.program__heading--border {
        border: 1px solid #eee;
        border-radius: 5px;
        background-color: transparent;
        padding: 1rem;
        margin-bottom: 1.6rem;
}

.program__heading--border > h5.program__heading--border-left {
        border-left: 5px solid #b6000d;
        padding-left: 10px;
        font-size: 1.5rem;
        color: #222;
}

.program__heading--border > p {
        padding-left: 15px;
}

/* テキストの左右に水平線*/
.text-divider {
        display: flex;
        align-items: center;
        --text-divider-gap: 1rem;
}

.text-divider::before,
.text-divider::after {
        content: "";
        height: 1px;
        background-color: #333;
        flex-grow: 1;
}

.text-divider::before {
        margin-right: 1rem;
        margin-right: var(--text-divider-gap);
}

.text-divider::after {
        margin-left: 1rem;
        margin-left: var(--text-divider-gap);
}

.btn__alink-hover:hover {
        opacity: 0.7;
        text-decoration: underline;
}

/* テキストの左右に斜め線 (JP1572)*/
.text-aslant-line {
        position: relative;
        padding: 1rem 1.5rem;
        font-size: 1.5rem;
        font-weight: bold;
        text-align: center;
}

.text-aslant-line::before,
.text-aslant-line::after {
        position: absolute;
        top: 1rem;
        height: 2rem;
        content: "";
}

.text-aslant-line::before {
        border-left: solid 3px;
        left: 0;
        transform: rotate(-30deg);
}

.text-aslant-line::after {
        border-right: solid 3px;
        right: 0;
        transform: rotate(30deg);
}

/*SNSボタン*/
.btn__sns a {
        text-decoration: none;
        display: inline-block;
        margin: 0 5px 5px 0;
        font-size: 12px;
        font-weight: 400;
        border-radius: 2px;
        color: #222;
        text-align: center;
        background: #fafafa;
        border: 1px solid rgba(0, 0, 0, 0.1);
        box-shadow: 0 1px 0 rgba(0, 0, 0, 0.03);
        text-shadow: none;
        line-height: 25px;
        padding: 1px 5px 0;
        vertical-align: baseline;
}

.btn__sns a em {
        position: relative;
        top: 3px;
        font-size: 1.3em;
        text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.1);
}

.btn__sns a span {
        margin: 0 3px 0 2px;
        text-align: center;
        line-height: 20px;
        vertical-align: middle;
}

.btn__sns .facebook a:hover {
        background-color: #3b5998;
        color: #fff;
}

.btn__sns .twitter a:hover {
        background-color: #1da1f2;
        color: #fff;
}

/*蛍光マーカー*/
.marker.blue {
        background: linear-gradient(rgba(162, 194, 230, 0) 60%, rgba(162, 194, 230, 0.5) 60%);
}

.marker.pink {
        background: linear-gradient(rgba(231, 53, 98, 0) 60%, rgba(231, 53, 98, 0.4) 60%);
}

.marker.yellow {
        background: linear-gradient(rgba(255, 243, 82, 0) 60%, rgba(255, 243, 82, 0.7) 60%);
}

.marker.green {
        background: linear-gradient(rgba(159, 194, 77, 0) 60%, rgba(159, 194, 77, 0.7) 60%);
}

.marker.violet {
        background: linear-gradient(rgba(166, 136, 189, 0) 60%, rgba(166, 136, 189, 0.7) 60%);
}

/* BJ塾 追加パーツ
======================================================= */
h2.__bjtitle--red span {
        color: #a7362f;
        font-size: 1.8rem;
        border-bottom: 3px solid #a7362f;
        padding: 0.5em 1em;
}

.open_course_point {
        position: relative;
        margin-top: 1em;
        padding: 2.4rem 2rem 2rem;
        border: 1px solid #a7362f;
}

.open_course_point .box-title {
        position: absolute;
        top: 0;
        left: 0;
        font-size: 1.8rem;
        font-weight: bold;
        color: #a7362f;
        padding: 1rem 2rem;
        margin: 0;
        background-color: white;
        transform: translateY(-50%) translateX(1em);
}

dl.__list-items-l dt {
        clear: left;
        float: left;
        width: 10em;
        font-weight: bold;
}

dl.__list-items-l dd {
        margin-left: 10em;
        margin-bottom: 1rem;
}

/* JP1145 */
dl.__list-items-l.timetable__box-vertical--table {
        line-height: 55px;
        clear: both;
        margin-bottom: 2em;
        position: relative;
}

dl.__list-items-l.timetable__box-vertical--table p {
        line-height: 1.6;
        margin-bottom: 20px;
}

dl.__list-items-l.timetable__box-vertical--table dt {
        font-size: 14px;
        font-size: 1.4rem;
        color: #555;
        width: 140px;
        margin-top: 20px;
}

dl.__list-items-l.timetable__box-vertical--table dd {
        position: relative;
        margin: 20px 0 0;
        padding-left: 140px;
        border-bottom: 1px solid #a2c2e6;
}

dl.__list-items-l.timetable__box-vertical--table dd > div {
        margin-left: 20px;
}

.__bj-reg-under {
        position: relative;
        z-index: 1;
        overflow: hidden;
        display: block;
        margin: 0 auto;
        padding: 0;
        height: 60px;
        text-align: center;
        background: #b6000d;
        text-decoration: none;
        width: 300px;
        color: #fff;
}

.__bj-reg-under > p {
        line-height: 60px;
}

.__bj-reg-under a,
.__bj-reg-under a:hover {
        color: #fff;
        text-decoration: none;
}

.__bj-reg-under:hover {
        opacity: 0.8;
        filter: alpha(opacity=80);
        -moz-opacity: 0.8;
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
}

.__bj-reg-under::after {
        content: " ";
        position: absolute;
        z-index: -1;
        right: 0;
        bottom: 0;
        width: 100%;
        height: 500%;
        background-color: #c9010f;
        margin: 0 56% -10% 0;
        -webkit-transform: rotate(-35deg);
        transform: rotate(-35deg);
}

.__bj-reg-under span {
        background: url("../img/ico_blank_white.png") 0px 2px no-repeat;
        background-size: 15px;
        padding-left: 30px;
}

.__bj-uservoice {
        display: table;
        background: #fff;
        margin-bottom: 4px;
        padding: 10px 20px;
        width: 100%;
        box-sizing: border-box;
}

.__bj-uservoice dt,
.__bj-uservoice dd {
        display: table-cell;
        vertical-align: middle;
}

.__bj-uservoice dt {
        width: 150px;
        font-size: 1.2rem;
        text-align: center;
}

.__bj-uservoice dt img {
        width: 60px;
        display: block;
        margin: 0 auto 10px;
}

.__bj-uservoice dd p {
        margin-left: 1em;
}

.__bj-uservoice .fukidashi {
        position: relative;
        background: #fff;
        border: 1px solid #d8d8d8;
        margin: 10px;
        padding: 1em;
        border-radius: 6px;
}

.__bj-uservoice .fukidashi:after,
.__bj-uservoice .fukidashi:before {
        right: 100%;
        top: 50%;
        border: solid transparent;
        content: " ";
        height: 0;
        width: 0;
        position: absolute;
        pointer-events: none;
}

.__bj-uservoice .fukidashi:after {
        border-color: rgba(255, 255, 255, 0);
        border-right-color: #fff;
        border-width: 6px;
        margin-top: -6px;
}

.__bj-uservoice .fukidashi:before {
        border-color: rgba(221, 221, 221, 0);
        border-right-color: #ddd;
        border-width: 7px;
        margin-top: -7px;
}

/* SAP プライバシー追加パーツ
======================================================= */
.privacy_sap > p {
        margin-bottom: 1.6rem;
}

div .anchor {
        display: block;
        padding-top: 70px;
        margin-top: -70px;
}

/* 連載・レポート 追加パーツ
======================================================= */
.reports_cap_b_navy {
        font-size: 3.2rem;
        color: #000080;
        font-family: "Noto Serif JP", serif;
        font-weight: 800;
}

/*--- 参加者の属性 レスポンシブ対応 --- */
.reports_attribute {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        padding: 0.4rem;
}

.reports_attribute > div {
        padding: 1rem;
        flex: 0 0 320px;
        margin: 0 0 0.4rem 0;
}

#reports-page .series-page p.interviewer {
        margin: 1.4rem 0;
        font-size: 1.8rem;
        font-weight: bold;
        text-decoration: underline;
}

.__marker--blue {
        background: linear-gradient(transparent 50%, #aedceb 50%);
        font-weight: bold;
}

.__subtitle--blue {
        border-bottom: solid 3px #cce4ff;
        position: relative;
}

.__subtitle--blue:after {
        position: absolute;
        content: " ";
        display: block;
        border-bottom: solid 3px #5472cd;
        bottom: -3px;
        width: 20%;
}

/*--- Voice of attendees ---*/
.blog-content-block .__reports--voa p {
        text-indent: -1em;
        margin-left: 1em;
        font-weight: bold;
        color: #666699;
        font-size: 1.6rem !important;
        margin-bottom: 1.6rem;
}

.blog-content-block .__reports--voa p:last-of-type {
        margin-bottom: initial;
}

/*--- Voice of attendees フキダシ 2023.04.27 --- */
.blog-content-block div.__reports--voa.__reports--balloon {
        position: relative;
        background: #fefefe;
        border: 1px solid #ababab;
        border-radius: 12px;
        padding: 1.5em 1em;
}

.blog-content-block div.__reports--voa.__reports--balloon:before {
        content: "";
        position: absolute;
        top: 100%;
        left: 50.2%;
        border: 12px solid transparent;
        border-top: 15px solid #fefefe;
        z-index: 2;
}
.blog-content-block div.__reports--voa.__reports--balloon:after {
        position: absolute;
        content: "";
        top: 100%;
        left: 50%;
        border: 14px solid transparent;
        border-top: 16px solid #ababab;
}

.blog-content-block ul.summary li,
.block ul.summary li {
        line-height: 1.5;
        padding-left: 1.5em;
        list-style-type: none !important;
        position: relative;
}

.blog-content-block ul.summary li:before,
.block ul.summary li:before {
        color: #b6000d;
        font-family: FontAwesome;
        content: "\f0da";
        position: absolute;
        left: 0.5em;
}

/*h2 代用（目次入れたくない）*/
.reports_h2 {
        background: #464646;
        color: #fff;
        padding: 5px 20px;
        font-size: 24px;
        font-size: 2.4rem;
        font-weight: bold;
        margin: 0 0 0.75em;
        clear: both;
}

/* サイト職人でレポート作成 */
.main .block > h2.seminar_repo4 {
        background: #464646;
        color: #fff;
        padding: 0.4em 0.8em;
        font-size: 2.4rem;
        font-weight: bold;
}

.main .block > h2.seminar_repo4:before {
        content: " ";
        position: initial;
        height: 0;
        background-color: transparent;
}

.main .block > h2.seminar_repo4:after {
        content: " ";
        position: initial;
        height: 0;
        background-color: transparent;
}

.main .block > h3.seminar_repo4 {
        color: #2f366a;
        font-size: 2.2rem;
        font-weight: bold;
        background-color: transparent;
        border: none;
}

.main .block h4.seminar_repo4 {
        color: #2f366a;
        font-size: 2rem;
        font-weight: bold;
        border: none;
        padding: initial;
}

.main .block .report__txt > p {
        font-size: 1.4rem;
        line-height: 1.8;
}

/* 開催概要・プログラム 追加パーツ
======================================================= */
.va_middle {
        vertical-align: middle;
}

.seminar__place ul > li {
        background: transparent;
}

.__session--tag--id {
        border: 1px solid #333;
}

.__session--tag--category {
        font-size: 1.2rem;
        border-radius: 8px;
        padding: 0 1em;
        display: inline-block;
}

.seminar__top--normal .seminar__top-tit::after {
        background: rgba(255, 255, 255, 0);
}

/*modal 背景色無し*/
.timetable__alink--bgcolor-none a {
        background-color: transparent;
        text-align: initial;
}

.timetable__alink--bgnone a::after {
        background-color: transparent;
        width: 0;
        height: 0;
}

/*--- フキダシ--- */
div .balloon,
div .balloon_lavender {
        position: relative;
        margin-bottom: 1.6rem;
        padding: 1rem;
        background: #e5e5ff;
}

div .balloon:after,
div .balloon_lavender:after {
        position: absolute;
        content: "";
        top: 100%;
        left: 7%;
        border: 8px solid transparent;
        border-top: 10px solid #e5e5ff;
        width: 0;
        height: 0;
}

div .balloon.lemon:after {
        border-top: 10px solid #fffacd;
}

div .balloon p,
div .balloon_lavender p {
        font-size: 1.2rem;
        color: #00003e;
}

/*--- フキダシ 左向き ---*/
div .balloon-left {
        position: relative;
        display: inline-block;
        margin: 0 1rem;
        padding: 1.5rem 1rem 1.5rem 1.5rem;
        min-width: 120px;
        max-width: 100%;
        color: #555;
        background: #e0edff;
        border-radius: 5px;
}

div .balloon-left:before {
        content: "";
        position: absolute;
        top: 50%;
        left: -30px;
        margin-top: -15px;
        border: 15px solid transparent;
        border-right: 30px solid #e0edff;
}

div .balloon-left p {
        margin: 0;
        padding: 0;
}

div .balloon-left.lemon,
div .balloon.lemon {
        background: #fffacd;
}

div .balloon-left.lemon:before,
div .balloon.lemon:before {
        border-right: 30px solid #fffacd;
}

/*--- フキダシ もこもこ 2023.07.12 REC037 ---*/
.balloon-fluffy {
        position: relative;
        padding: 0.5rem 2rem 2rem 3.5rem;
        border-radius: 50%;
        box-shadow: 1rem -2rem #fffaf0;
        background-color: #fffaf0;
}

.balloon-fluffy::before {
        position: absolute;
        content: "";
        top: -60%;
        left: 6%;
        width: 18px;
        height: 18px;
        background-color: #fffaf0;
        border-radius: 50% 50% 50% 50% / 0% 0% 100% 100%;
}
.balloon-fluffy::after {
        position: absolute;
        content: "";
        top: -40%;
        left: 12%;
        width: 24px;
        height: 24px;
        background-color: #fffaf0;
        border-radius: 50%;
}

/* メニューのアイコン→マーク */
.side--event_alink li a[target="_self"] span {
        background: url("../img/arw_btn_r.png") no-repeat 0 center;
        background-size: 16px;
}

/* Font Awesome office building */
.fa-building:before {
        content: "\f1ad";
        color: #b6000d;
        font-family: FontAwesome;
}

/* Font Awesome video */
.fa-play-circle:before {
        content: "\f144";
        color: #fff;
        font-family: FontAwesome;
}

/* Font Awesome subway */
.fa-subway:before {
        content: "\f239";
        color: #b6000d;
        font-family: FontAwesome;
        margin-right: 0.5em;
}
.fa-subway.blue:before {
        color: #3b77a7;
}

/*下部申し込みボタン ベースは赤*/
.__reg__under_btn {
        position: relative;
        z-index: 1;
        overflow: hidden;
        display: block;
        margin: 0 auto;
        padding: 0;
        height: 60px;
        text-align: center;
        background: #b6000d;
        text-decoration: none;
        color: #fff;
}

.__reg__under_btn a,
.__reg__under_btn a:hover,
.__under_btn a,
.__under_btn a:hover {
        color: #fff;
        text-decoration: none;
        display: block;
        padding: 10px;
}

.__reg__under_btn:hover {
        opacity: 0.8;
        filter: alpha(opacity=80);
        -moz-opacity: 0.8;
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
}

.__reg__under_btn::after {
        content: " ";
        position: absolute;
        z-index: -1;
        top: 0;
        left: calc(50% + 30px);
        width: calc(100% - 30px);
        height: 500%;
        background-color: #c9010f;
        -webkit-transform: scale(1.5) rotate(-45deg);
        transform: scale(1.5) rotate(-45deg);
}

.__reg__under_btn span,
.__under_btn span,
.__under_btn.hover_skewx_slide_in span {
        background: url("../img/ico_blank_white.png") 0px 2px no-repeat;
        background-size: 15px;
        padding-left: 25px;
        line-height: 40px;
        font-size: 1.4rem;
        z-index: 1;
}

/*ボタン黒xグレー*/
.__reg__under_btn.black {
        background: #000;
}

.__reg__under_btn.black::after {
        background-color: #2b2b2b;
}

/*ボタン汎用*/
.__reg__under_btn.color {
        background: #ffa500;
}
.__reg__under_btn.color::after {
        background-color: #ccc;
        mix-blend-mode: soft-light;
}

/*ホバーで左から、ホバーアウトで右へ（斜め背景）*/
/*ベース色 黒*/
.__under_btn {
        position: relative;
        display: block;
        padding: 0;
        margin: 0 auto;
        color: #fff;
        background-color: #000;
        text-align: center;
        text-decoration: none;
        transition: 0.6s;
        height: 60px;
        font-size: 1.4rem;
        overflow: hidden;
}

.__under_btn.hover_skewx_slide_in::before {
        position: absolute;
        top: 0;
        left: 0;
        z-index: 0;
        content: "";
        width: 120%;
        height: 100%;
        background: #666;
        transform-origin: right top;
        transform: skewX(-30deg) scale(0, 1);
        transition: transform 0.3s;
        opacity: 0.4;
}

.__under_btn.hover_skewx_slide_in:hover::before {
        transform-origin: left top;
        transform: skewX(-30deg) scale(1, 1);
}

/*赤ボタン*/
.__under_btn.red {
        background-color: #b6000d;
}

.__under_btn.red.hover_skewx_slide_in::before {
        background-color: #ff0000;
}

/* グラデーションボタン */
.btn-gradation.green {
        display: inline-block;
        text-decoration: none;
        background-image: linear-gradient(-90deg, #288c66, #07685e);
        transition: 0.5s;
        background-size: 200%;
}

.btn-gradation.blue {
        display: inline-block;
        text-decoration: none;
        background-image: linear-gradient(-90deg, #a2ecff, #015aab);
        transition: 0.5s;
        background-size: 200%;
}

.btn-gradation.red {
        display: inline-block;
        text-decoration: none;
        background-image: linear-gradient(-90deg, #b6000d, #6a0008);
        transition: 0.5s;
        background-size: 200%;
}

.btn-gradation a,
.btn-gradation a:hover {
        color: #fff;
        text-decoration: none;
}

.btn-gradation:hover {
        color: #fff;
        background-position: right center;
}

/*--------- listリセット ----------*/
#parts-new .main ul.__list--reset {
        padding: 0;
        margin: 0;
}
#parts-new .main ul.__list--reset li {
        line-height: initial;
        background: none;
        margin-left: 16px;
        padding-left: 0;
        list-style: disc;
}
#parts-new .main ul.__list--reset.text13 li {
        font-size: 13px;
        font-size: 1.3rem;
}

/*---------- hoverメッセージ ----------*/
/*JP1296*/
.event_alink_btn .__hover--msg {
        display: inline-block;
}

.__hover--txt {
        display: none;
        position: absolute;
        padding: 10px;
        border-radius: 8px;
        background: #6495ed;
        color: #fff;
        font-size: 1.2rem;
        left: 55.5%;
        top: 148px;
}

/*
.__hover--txt::after {
  position: absolute;  transition: all 0.3s ease 0s;  opacity: 0; top: 15px;  left: -97px; display: block;  padding: 0.2em 0.5em;  content: attr(data-tooltip);  white-space: nowrap;  color: #ffffff;  border-radius: 6px;  background: #dc143c;  font-size: 1.2rem;
}
*/
/* .__hover--txt:hover::after { top: 16px; opacity: 0.9;} */

li:hover + span.__hover--txt {
        display: block;
}

.__hover--txt.__2lines {
        left: 58%;
        top: 132px;
        width: 264px;
}

/* 資料ダウンロード（JP1163）
======================================================= */
.doc__card {
        margin: 30px auto;
        width: 350px;
        background: #fff;
        border-radius: 5px;
        box-shadow: 0 2px 5px #ccc;
}

.doc__card .card-title {
        border-radius: 5px 5px 0 0;
        max-width: 100%;
        height: auto;
}

.doc__card .card-session {
        font-size: 12px;
        font-size: 1.2rem;
        padding: 5px 20px;
        line-height: 1.6;
        height: auto;
}

.doc__card .card-content {
        padding: 20px;
}

.doc__card .card-link {
        text-align: center;
        border-top: 1px solid #eee;
        padding: 20px;
}

.doc__card .card-link a {
        text-decoration: none;
        color: #333;
        margin: 0 10px;
}

.doc__card .card-link a:hover {
        color: #666;
}

/*JP1408*/
.doc__card-3col {
        width: calc(100% - 5px);
}

.doc__card-3col .card-title h4 {
        padding: 10px;
}

/* JP1885 */

.JP1885__grid--parent {
        display: grid;
        grid-template-columns: auto repeat(3, 1fr);
        grid-template-rows: repeat(56, auto) ;
        grid-column-gap: 16px;
        grid-row-gap: 0px;
        grid-auto-rows: 16px;
        font-size: 14px;
}

/*Time*/
.JP1885__grid--parent .time_1 { grid-area: 1 / 1 / 7 / 2;}
.JP1885__grid--parent .time_2 { grid-area: 7 / 1 / 13 / 2;}
.JP1885__grid--parent .time_3 { grid-area: 13 / 1 / 19 / 2;}
.JP1885__grid--parent .time_4 { grid-area: 19 / 1 /25 / 2;}
.JP1885__grid--parent .time_5 { grid-area: 25 / 1 / 31 / 2;}
.JP1885__grid--parent .time_6 { grid-area: 31 / 1 / 37 / 2;}
.JP1885__grid--parent .time_7 { grid-area: 37 / 1 / 43 / 2;}
.JP1885__grid--parent .time_8 { grid-area: 43 / 1 / 49 / 2;}
.JP1885__grid--parent .time_9 { grid-area: 49 / 1 / 55 / 2;}
.JP1885__grid--parent .time_10 { grid-area: 55 / 1 / 61 / 2;}


/*Main*/
.JP1885__grid--parent .main_1 { grid-area: 13 / 2 / 22 / 3;}
.JP1885__grid--parent .main_2 { grid-area: 28 / 2 / 37 / 3;}

.JP1885__grid--parent > div.mainroom {
        border: 1px solid #ffc567;        background-color: #fff3b8;
}

/*subA*/
.JP1885__grid--parent .subA_1 { grid-area: 1 / 3 / 5 / 4;}
.JP1885__grid--parent .subA_2 { grid-area: 9 / 3 / 13 / 4;}
.JP1885__grid--parent .subA_3 { grid-area: 17 / 3 / 21 / 4;}
.JP1885__grid--parent .subA_4 { grid-area: 25 / 3 / 29 / 4;}
.JP1885__grid--parent .subA_5 { grid-area: 33 / 3 / 37 / 4;}
.JP1885__grid--parent .subA_6 { grid-area: 41 / 3 / 45 / 4;}
.JP1885__grid--parent .subA_7 { grid-area: 49 / 3 / 53 / 4;}

/*subB*/
.JP1885__grid--parent .subB_1 { grid-area: 5 / 4 / 9 / 5;}
.JP1885__grid--parent .subB_2 { grid-area: 13 / 4 / 17 / 5;}
.JP1885__grid--parent .subB_3 { grid-area: 21 / 4 / 25 / 5;}
.JP1885__grid--parent .subB_4 { grid-area: 29 / 4 / 33 / 5;}
.JP1885__grid--parent .subB_5 { grid-area: 37 / 4 / 41 / 5;}
.JP1885__grid--parent .subB_6 { grid-area: 45 / 4 / 49 / 5;}
.JP1885__grid--parent .subB_7 { grid-area: 53 / 4 / 57 / 5;}

.JP1885__grid--parent > div.subroomA {
        border: 1px solid #5159f6;
        background-color: #e9eeff;
}
.JP1885__grid--parent > div.subroomB {
        border: 1px solid #ef9193;
        background-color: #ffeded;
}

.JP1885__grid--parent > div.subroomA span.session_tag {
        background-color: #5159f6;
}
.JP1885__grid--parent > div.subroomB span.session_tag {
        background-color: #ef9193;
}

.JP1885__grid--parent > div.mainroom, .JP1885__grid--parent > div.subroomA, .JP1885__grid--parent > div.subroomB {
        padding: 16px;
        transition-property: opacity;
        transition-duration: 0.5s;
}
.JP1885__grid--parent > div:hover.mainroom, .JP1885__grid--parent > div:hover.subroom {opacity: 0.7;}
.JP1885__grid--parent > div.timeframe {padding: 0 1em 0 0; border-right: 1px solid #dcdcdc;}


/* リカレント
======================================================= */

.timetable__box_5 .timetable__heading {
        font-size: 1.4rem;
        padding: 3px 0;
}

.timetable__box_5 p {
        font-size: 1.2rem;
}

.program__border_radius {
        padding: 0.2rem 1rem 0.1rem 0.5rem;
        margin-right: 1rem;
        font-weight: bold;
        color: #dc143c;
        background: transparent;
        border: solid 1px #dc143c;
        border-radius: 6px;
        line-height: 1.6;
}

/* 共通設定
======================================================= */

/* タグ・マーク関連-
--------------------------------------------------------*/
/*同時通訳*/
.interpreter {
        padding: 0.2rem 1rem 0.1rem 0.5rem;
        margin-right: 1rem;
        font-weight: bold;
        font-size: 1.2rem;
        color: #dc143c;
        background: transparent;
        border: solid 1px #dc143c;
        border-radius: 6px;
        line-height: 1.6;
        display: inline-block;
}

/* モーダルウィンドウ */
.modaal-container {
        max-width: 820px !important;
        border-radius: 1rem !important;
}

/*.modaal-content-container { padding: 3rem;} */

.modaal-close {
        right: 0px !important;
        top: 0px !important;
        width: 40px !important;
        height: 40px !important;
        background: transparent !important;
}

.modaal-close::before,
.modaal-close::after {
        background: #666 !important;
}

.btn__english {
        width: 12rem;
        height: 2.8rem;
        line-height: 2.8rem;
        margin: 1.6rem 0;
}

.btn__english a {
        display: block;
        width: 100%;
        height: 100%;
        padding: 0;
        text-decoration: none;
        background: #666;
        text-align: center;
        color: #fff;
        border-radius: 35px;
        -webkit-border-radius: 35px;
        -moz-border-radius: 35px;
        transition: all 0.5s ease;
}

.btn__english a:hover {
        opacity: 0.7;
        color: #fff;
}

.btn__english > a > span {
        font-size: 1.2rem;
}

/* アコーディオン ----2019.05.24 */
.__acodion--tab {
        position: relative;
        overflow: hidden;
        width: 100%;
        margin: 0 auto;
        color: #222;
}

.__acodion--tab input {
        position: absolute;
        z-index: -1;
        opacity: 0;
}

.__acodion--tab label {
        font-weight: bold;
        line-height: 3;
        position: relative;
        display: block;
        padding: 0 1em;
        cursor: pointer;
        margin: 0 0 1px 0;
        /* background: #da3c41; */
}

.__acodion--tab .__acodion--tab-content,
.__acodion--tab .__acodion--tab-content-l {
        overflow: hidden;
        max-height: 0;
        -webkit-transition: max-height 0.35s;
        transition: max-height 0.35s;
        color: #333;
        /* background: #f1c6c6; */
}

.__acodion--tab .__acodion--tab-content p,
.__acodion--tab .__acodion--tab-content-l p {
        margin: 0 1em;
}

.__acodion--tab .__acodion--tab-content .profile__item__detail p,
.__acodion--tab .__acodion--tab-content-l .profile__item__detail p {
        margin: 0;
}

/* :checked */
.__acodion--tab input:checked ~ .__acodion--tab-content {
        max-height: 40em;
}

.__acodion--tab input:checked ~ .__acodion--tab-content-l {
        /* max-height: 200em;*/
        max-height: 100%;
}

/* Icon */
.__acodion--tab label::after {
        line-height: 2;
        position: absolute;
        top: 0;
        right: 0;
        display: block;
        width: 2em;
        height: 2em;
        -webkit-transition: all 0.35s;
        transition: all 0.35s;
        text-align: center;
}

.__acodion--tab input[type="checkbox"] + label::after {
        content: "▼";
        font-size: 1.2rem;
        color: #fff;
        opacity: 0;
        transform: rotateZ(0deg);
}

.__acodion--tab input[type="checkbox"]:checked + label::after {
        transform: rotateZ(180deg);
}

/* フォームのフラットデザイン*/
.flat--radius input {
        border-radius: 4px;
        border: 1px solid #999;
        font-size: 1.4rem;
        color: #555;
        margin: auto 0.1em;
        outline: 0;
}

.flat--radius input[type="password"]:focus {
        border: 1px solid #333;
}

.flat--radius input.btn__login {
        background-color: #b6000d;
        border: 1px solid #b6000d;
        color: #fff;
        padding: 0.5rem 2rem;
}

/* 個別設定
======================================================= */
/* CSS grid speaker JP1095
----------------------------------------*/
.grid-container {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr 2fr;
        grid-template-rows: 0.5fr 1fr 1fr;
        grid-template-areas: "speaker__item__title speaker__item__title speaker__item__title speaker__item__title" "speaker__item__summary speaker__item__summary speaker__item__summary speaker__item__img" "speaker__item__profile speaker__item__profile speaker__item__profile speaker__item__img";
}

.speaker__item__title {
        grid-area: speaker__item__title;
}

.speaker__item__summary {
        grid-area: speaker__item__summary;
}

.speaker__item__profile {
        grid-area: speaker__item__profile;
}

.speaker__item__img {
        grid-area: speaker__item__img;
        display: flex;
        align-items: center;
        justify-content: center;
}

/* CSS grid speaker 3列（JP1110）
----------------------------------------*/
.speaker-3col.grid-container {
        display: grid;
        grid-template-columns: 0.8fr 1.2fr;
        grid-template-rows: 0.8fr 1.2fr;
        grid-template-areas: "speaker__item__caption speaker__item__caption" "speaker__item__img speaker__item__profile";
}

.speaker-3col > .speaker__item__caption {
        grid-area: speaker__item__caption;
        position: relative;
        width: 100%;
        height: calc(100% - 20px);
        background: #f5f5f5;
        padding: 1em;
        text-align: left;
        color: #383838;
        font-size: 1.6rem;
        border-radius: 8px;
        -webkit-border-radius: 8px;
        -moz-border-radius: 8px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-weight: bold;
}

/*.speaker-3col>.speaker__item__caption:after {
  border: solid transparent;
  content: '';
  height: 0;
  width: 0;
  pointer-events: none;
  position: absolute;
  border-color: rgba(185, 227, 249, 0);
  border-top-width: 10px;
  border-bottom-width: 10px;
  border-left-width: 7px;
  border-right-width: 7px;
  margin-left: -7px;
  border-top-color: #B9E3F9;
  top: 100%;
  left: 15%;
}
*/

.speaker-3col > .speaker__item__img {
        grid-area: speaker__item__img;
        display: flex;
        align-items: center;
        justify-content: center;
        padding-right: 1em;
}

.speaker-3col > .speaker__item__img img {
        width: 100%;
        max-width: 100%;
}

.speaker-3col > .speaker__item__profile {
        grid-area: speaker__item__profile;
        display: flex;
        align-items: center;
}

.speaker-3col > .speaker__item__profile p {
        font-size: 1.3rem;
}

.speaker-3col > .speaker__item__profile strong {
        font-size: 1.4rem;
}

/* JP1168 ibm */
.__acodion--tab.chevron label::before {
        line-height: 3;
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 2em;
        height: 2em;
        -webkit-transition: all 0.35s;
        transition: all 0.35s;
        text-align: center;
}

.__acodion--tab.chevron input[type="checkbox"] + label::before {
        font-family: "Fontawesome";
        content: "\f078";
        font-size: 1.2rem;
        line-height: 3;
        color: #000;
        opacity: 0.5;
        margin-right: 0.8em;
}

.__acodion--tab.chevron input[type="checkbox"]:checked + label::before {
        font-family: "Fontawesome";
        content: "\f077";
}

/* Box World Tour Tokyo 2019（JP1052）*/
/*2019.06.03*/
.boxwtt2019_tag {
        background-color: #0071f7;
}

/************************************
** トグル表示ボタン  2019.09.20 JP1098
************************************/
/*----- toggle共通 -----*/

/*中身を非表示にしておく*/
.toggle-wrap .toggle-content {
        height: 0;
        padding: 0;
        overflow: hidden;
        opacity: 0;
        transition: 0.6s;
}

/*チェックは見えなくする*/
.toggle-wrap > input[type="checkbox"] {
        display: none;
}

/*クリックで中身表示*/
.toggle-wrap > input[type="checkbox"]:checked ~ .toggle-content {
        display: block;
        height: auto;
        opacity: 1;
        padding: 10px 0;
}

/*----- toggle個別 -----*/

.toggle-wrap > input[type="checkbox"]:checked ~ .toggle-button:after {
        font-family: FontAwesome;
        content: "\f139";
        display: inline;
}

.toggle-wrap .toggle-button {
        display: block;
        cursor: pointer;
        padding: 3px 10px;
        background-color: #29417a;
        /*background: -webkit-linear-gradient(-20deg, rgb(22, 135, 237), rgb(20, 55, 90));
  background: linear-gradient(-20deg, rgb(22, 135, 237), rgb(20, 55, 90));*/
        border: 0px solid #ddd;
        text-align: center;
        margin-bottom: 1em;
        line-height: 2.5;
        color: #fff;
        font-size: 1.8rem;
}

.toggle-wrap .toggle-button:hover {
        opacity: 0.7;
}

.toggle-wrap .toggle-button:after {
        font-family: FontAwesome;
        content: "\f13a";
        display: inline;
}

/* JP1146 */
.toggle-wrap > input[type="checkbox"]:checked ~ .toggle-button2:before {
        font-family: FontAwesome;
        content: "\f107";
        display: inline;
}

.toggle-wrap .toggle-button2 {
        display: block;
        cursor: pointer;
        border: 0px solid #ddd;
        line-height: 2.5;
        font-size: 1.6rem;
}

.toggle-wrap .toggle-button2:hover {
        opacity: 0.9;
}

.toggle-wrap .toggle-button2:before {
        font-family: FontAwesome;
        content: "\f105";
        display: inline;
        padding-right: 0.5em;
}

.toggle-content ul.toggle-ul-bg-none {
        margin-left: 26px !important;
}

.toggle-content ul.toggle-ul-bg-none > li {
        background: transparent !important;
        padding: 0 !important;
}

.toggle-content ul.recurrent {
        margin-left: 0;
}

.boxwtt2019_tag p {
        color: #fff;
        margin: 0 auto;
        font-weight: bold;
        font-size: 1.4rem;
}

/* SAP Aliba Live Tokyo JP1050*/
/*2019.06.03*/
.sapalibalive a {
        color: #f0ab00;
}

.sapalibalive a:hover {
        opacity: 0.8;
        color: #fff;
}

/* JP1393 timetable 5days */
table.timetable__5days {
        width: 100%;
        table-layout: fixed;
        border-collapse: collapse;
        border-spacing: 0;
        border: none;
}

table.timetable__5days th,
table.timetable__5days td {
        border-right: 1px solid #0077c0;
        border-bottom: 1px solid #0077c0;
}

table.timetable__5days tbody {
        border-top: 1px solid #0077c0;
}

table.timetable__5days th {
        width: 70px;
        font-size: 12px;
        color: #666;
        text-align: center;
        background-color: #d8eefe;
        vertical-align: middle;
}

table.timetable__5days td {
        padding: 0.6em;
        font-size: 1.2rem;
        vertical-align: top;
}

table.timetable__5days td.__5days--timetable-line2 {
        font-size: 1.3rem;
        font-weight: bold;
        text-align: center;
}

table.timetable__5days .__5days--timetable-line2 {
        height: 58px;
}

table.timetable__5days .__5days--timetable-line3 {
        height: 132px;
}

.__bg--day1,
.__bg--day3,
.__bg--day5 {
        background: #f0f8ff;
}

.__bg--day2,
.__bg--day4 {
        background: #fafdff;
}

table.timetable__5days td.__5days--timetable-color {
        background: #68a4d9;
        color: #fff;
}

table.timetable__5days td.guest {
        background: #f2e5ff;
}
/* JP1619 個別カラー設定 */
#parts-new .program__tit--detail.__custom--blue::after {
        background-color: #008fd3;
}
.main .block > h2.__custom--blue:after {
        background-color: #008fd3;
}
.fa-subway.__custom--blue:before {
        color: #008fd3;
}
.__custom--blue .profile__item__explanatory::after {
        background-color: #008fd3;
}

/* 飯室塾_連動記事 */

ul.serialization,
ul.FBlive {
        border-radius: 5px;
        padding: 0.5em 1em 0.5em 2.3em;
        position: relative;
}

ul.serialization li,
ul.FBlive li {
        line-height: 1.5;
        padding: 1em 0;
        border-bottom: dashed 1px #999;
        list-style-type: none !important;
        background: transparent !important;
        margin-left: 0.7em;
}

ul.serialization li:before,
ul.FBlive li:before {
        font-family: FontAwesome;
        content: "\f138";
        position: absolute;
        left: 0.5em;
        color: #b6000d;
}

.btn__movie {
        margin-left: 2em;
        position: relative;
        height: 32px;
        box-sizing: border-box;
        padding: 0.2rem 1rem 0.2rem 0.8rem;
        background-color: #b6000d;
        color: #fff;
        border-radius: 3px;
        font-weight: 500;
        cursor: pointer;
        font-size: 1.3rem;
}

.btn__movie a {
        color: #fff;
        text-decoration: none;
}

.btn__movie a:hover {
        color: #fff;
        opacity: 0.8;
}

/* 資料ダウンロードページ */
.btn__dl {
        border-color: #dbdbdb;
        min-width: 300px;
        color: #222;
        text-align: center;
        text-decoration: none;
        font-size: 14px;
        padding: 14px;
        font-weight: bold;
        margin: 0 25px 0px 0;
}

.btn__dl:a {
        background-color: #fff;
        color: #434343;
        border-color: #dbdbdb;
        border-width: 2px;
        font-weight: bold;
}

/*JP1080*/
.jp1080__title--logo {
        height: 578px;
        background: url("https://www.b-forum.net/img/JP1080_title-logo.jpg") center/contain no-repeat;
}

/* JP1343 - 2021.05.20 */
.jp1343-entry {
        box-shadow: 0 24px 45px rgb(2 98 117 / 21%);
        box-sizing: border-box;
        border-radius: 16px;
        margin: 48px 48px 72px;
        padding: 7em 8em 8em;
}

/*--- セッション --- */
.session-partition {
        border-right: 1px solid #eee;
}

.session-partition:last-child {
        border-right: 0;
}

/* 画像装飾関連
----------------------------------*/

/* 斜めトリミング */
.slanting div.__item--slanting {
        width: 70%;
        margin: 5% 10%;
        display: inline-block;
        background: #eee;
        transform: skewX(-5deg);
        overflow: hidden;
}

.__item--slanting > img {
        width: 100%;
        transform: skewX(5deg) scale(1.1);
}

/* 斜めトリミング影 */
.slanting div.__item--slanting--shadow {
        box-shadow: 15px -15px #94adda;
}

/* sample design
======================================================= */

/* 背景の崩れた円がうごくやつ
----------------------------------*/
.__animation--circle {
        margin: 0;
        text-align: center;
}

.__bg--circle-wrapper {
        width: 280px;
        height: 280px;
        mix-blend-mode: multiply;
        position: relative;
        padding: 1rem;
        margin: auto;
}

.__bg--circle-wrapper p {
        font-size: 1.4rem;
        color: #fff;
        text-align: center;
        top: 50%;
        z-index: 1;
        position: absolute;
        padding: 0 5%;
}

.__bg--circle-1 {
        background: #f66;
        width: 100%;
        height: 100%;
        border-radius: 50% 50% 50% 70%/50% 50% 70% 60%;
        animation: border-animation 6s infinite linear, bg-color-gradation-1 10s infinite linear;
}

.__bg--circle-2 {
        background: #f92;
        width: 100%;
        height: 100%;
        border-radius: 40% 50% 40% 50%/50%;
        animation: border-animation 8s infinite linear;
}

.__bg--circle-3 {
        background: #f19ca7;
        width: 100%;
        height: 100%;
        border-radius: 60% 40% 45% 55%/30% 50% 50% 50%;
        animation: border-animation 4s infinite linear;
}

/* Animation */
@keyframes border-animation {
        to {
                transform: rotate(360deg);
        }
}

@keyframes bg-color-gradation-1 {
        0% {
                background-color: #e74c3c;
        }

        20% {
                background-color: #f1c40f;
        }

        40% {
                background-color: #1abc9c;
        }

        60% {
                background-color: #3498db;
        }

        80% {
                background-color: #9b59b6;
        }

        100% {
                background-color: #e74c3c;
        }
}

/* JP1095 */
.__btn--normal-gray {
        border: none;
        cursor: pointer;
        padding: 2em;
        position: relative;
        background-color: #eee;
        border-radius: 30px;
        line-height: 14px;
}

.__btn--gradient-gray {
        background-color: #eee;
        transition: all 0.5s ease-out;
        -webkit-transition: all 0.5s ease-out;
        box-shadow: inset 0px 0px #b6000d, inset 0px 0px #b6000d;
}

.__btn--gradient-gray .text {
        position: relative;
        z-index: 100;
        font-size: 1.4rem;
}

.__btn--gradient-gray:hover {
        box-shadow: inset 150px 70px 0px 0px #b6000d, inset -150px -70px 0px 0px #b6000d;
}

.__btn--gradient-gray:hover .text {
        color: #fff;
        transition: color 0.5s linear;
        -webkit-transition: color 0.5s linear;
}

.__bg-gradation--red {
        background-color: #6cb8ff;
        animation: __bg-gradation--red 10s infinite linear;
}

@keyframes __bg-gradation--red {
        0% {
                background-color: #e10000;
        }
        100% {
                background-color: #7e0001;
        }
}

/* =======================================================
     スマホ設定ここから
======================================================= */
@media screen and (max-width: 640px) {
        /*  汎用スタイル設定  */
        .sp_tac {
                text-align: center;
        }
        .sp_tar {
                text-align: right;
        }
        .sp_tal {
                text-align: left;
        }

        /* 概要・プログラム 追加パーツ
    ======================================================= */
        /*  テキスト  :*/
        h4.program__heading,
        div.program__txt--clock {
                word-break: normal;
        }
        .__text--vertical-s {
                -ms-writing-mode: tb-rl;
                writing-mode: vertical-rl;
        }
        .__text--horizontal-s {
                -ms-writing-mode: horizontal-tb;
                writing-mode: horizontal-tb;
        }
        .program__heading--border > h5.program__heading--border-left {
                border-left: 4px solid #b6000d;
                padding-left: 8px;
                font-size: 1.5rem;
                color: #222;
                font-weight: bold;
        }

        .program__heading--border > p {
                padding-left: 0px;
        }

        /*--- JP1080 --- */
        .jp1080__title--logo {
                height: 185px;
                background-size: contain;
        }

        /*--- セッション --- */
        .session-partition {
                border-right: 0px solid #e6e6fa;
        }

        /*--- 下部申し込みボタン --- */
        .__reg__under_btn span {
                background: url("../img/ico_blank_white.png") 0px 0px no-repeat;
                background-size: 15px;
                padding-left: 25px;
                line-height: 40px;
                font-size: 1.4rem;
        }

        /*---- CSS grid speaker JP1095 ---*/
        .grid-container {
                display: grid;
                grid-template-columns: 1fr 1fr 1fr 1fr;
                grid-template-rows: 0.3fr 1fr 0.9fr 0.5fr;
                grid-template-areas: "speaker__item__title speaker__item__title speaker__item__title speaker__item__title" "speaker__item__summary speaker__item__summary speaker__item__summary speaker__item__summary" "speaker__item__img speaker__item__img speaker__item__img speaker__item__img" "speaker__item__profile speaker__item__profile speaker__item__profile speaker__item__profile";
        }
        .speaker__item__title {
                grid-area: speaker__item__title;
                order: 1;
        }
        .speaker__item__summary {
                grid-area: speaker__item__summary;
                order: 2;
        }
        .speaker__item__profile {
                grid-area: speaker__item__profile;
                order: 4;
        }
        .speaker__item__img {
                grid-area: speaker__item__img;
                order: 3;
        }
        /* フォームのフラットデザイン*/
        .flat--radius input {
                margin-bottom: 1em;
                padding: 1.6rem;
        }
        .flat--radius input.btn__login {
                padding: 1.6rem;
        }

        /* JP1296*/
        .__hover--txt {
                position: absolute;
                left: 50%;
                top: 300px;
                transform: translateX(-50%);
                width: 80vw;
        }

        /* JP1343 - 2021.05.20 */
        .jp1343-entry {
                box-shadow: initial;
                box-sizing: border-box;
                border-radius: 0;
                margin: 1.6rem 0.8rem;
                padding: 0.8rem;
        }

        /* JP1393 - 2021.10.04*/
        table.timetable__5days th,
        table.timetable__5days td {
                display: block;
                width: 100%;
                height: initial;
                padding: 1.5em;
                border: 1px solid #ddd;
                border-bottom: 0;
        }

        table.timetable__5days th.__5days--timetable-color:first-of-type {
                display: none;
        }

        table.timetable__5days td.__5days--timetable-color:first-of-type {
                font-size: 1.4rem;
                padding: 0.8em 1em;
        }

        table.timetable__5days {
                margin-bottom: 32px;
                border-bottom: 0.5px solid #ddd;
        }
        .__bg--day1,
        .__bg--day2,
        .__bg--day3,
        .__bg--day4,
        .__bg--day5 {
                background: #fff;
        }
        /* JP1619 個別カラー設定 */
        .main .block > h2.__custom--blue:after {
                background-color: #008fd3;
        }
        #parts-new .program__tit--detail.__custom--blue::after {
                background-color: #008fd3;
        }
        .__custom--blue .profile__item__explanatory::after {
                background-color: #008fd3;
        }

        /* JP1885 */
        .JP1885__grid--parent {
                display: flex;
                flex-direction: column;
                grid-row-gap: 1em;
        }

        .JP1885__grid--parent > div.timeframe { display: none; }

        /* BJ塾 追加パーツ
    ======================================================= */
        h2.__bjtitle--red {
                text-align: center;
        }

        h2.__bjtitle--red span {
                font-weight: bold;
        }

        .__bj-reg-under {
                width: 96%;
                max-width: 300px;
        }

        dl.__list-items-s dt {
                clear: inherit;
                float: initial;
                width: 100%;
        }

        dl.__list-items-s dd {
                margin-left: 0;
                margin-bottom: 1rem;
        }

        /* JP1145 */
        dl.__list-items-s.timetable__box-vertical--table {
                line-height: 2;
                clear: both;
                margin-bottom: 2em;
                position: relative;
        }
        dl.__list-items-s.timetable__box-vertical--table dt {
                font-size: 14px;
                font-size: 1.4rem;
                color: #fff;
                width: 100%;
                margin: 0 0 1.6rem;
                padding-left: 0.5em;
                background-color: #6c9bd2;
                line-height: 5rem;
        }
        dl.__list-items-s.timetable__box-vertical--table dd {
                position: relative;
                margin: 0 0 3.2rem;
                padding-left: 0px;
                border-bottom: 0px solid transparent;
                background-color: transparent;
        }
        dl.__list-items-s.timetable__box-vertical--table dd:last-of-type {
                margin-bottom: 0;
        }
        dl.__list-items-s.timetable__box-vertical--table dd > div {
                margin-left: 15px;
        }

        .__bj-reg-under {
                position: relative;
                z-index: 1;
                overflow: hidden;
                display: block;
                margin: 0 auto;
                padding: 0;
                height: 60px;
                line-height: 60px;
                text-align: center;
                background: #b6000d;
                text-decoration: none;
                width: 300px;
                color: #fff;
        }

        .__bj-reg-under a,
        .__bj-reg-under a:hover {
                color: #fff;
                text-decoration: none;
        }
        .__bj-reg-under:hover {
                opacity: 0.8;
                filter: alpha(opacity=80);
                -moz-opacity: 0.8;
                -webkit-transition: 0.3s ease-in-out;
                -moz-transition: 0.3s ease-in-out;
                -o-transition: 0.3s ease-in-out;
                transition: 0.3s ease-in-out;
        }
        .__bj-reg-under::after {
                content: " ";
                position: absolute;
                z-index: -1;
                right: 0;
                bottom: 0;
                width: 100%;
                height: 500%;
                background-color: #c9010f;
                margin: 0 56% -10% 0;
                -webkit-transform: rotate(-35deg);
                transform: rotate(-35deg);
        }
        .__bj-reg-under span {
                background: url("../img/ico_blank_white.png") 0px 2px no-repeat;
                background-size: 15px;
                padding-left: 30px;
        }
        .__bj-uservoice {
                display: table;
                background: #fff;
                margin-bottom: 4px;
                padding: 0 10px;
                width: 100%;
                box-sizing: border-box;
        }
        .__bj-uservoice dt,
        .__bj-uservoice dd {
                display: table-cell;
                vertical-align: middle;
        }
        .__bj-uservoice dt {
                width: 48px;
                font-size: 1.2rem;
                text-align: center;
        }
        .__bj-uservoice dt img {
                width: 100%;
                display: block;
                margin: 0 auto 10px;
        }
        .__bj-uservoice dd p {
                margin-left: 1em;
        }
        .__bj-uservoice .fukidashi {
                position: relative;
                background: #fff;
                border: 1px solid #d8d8d8;
                margin: 10px;
                padding: 0.5em 0.5em 0.5em 0.1em;
                border-radius: 6px;
        }
        .__bj-uservoice .fukidashi:after,
        .__bj-uservoice .fukidashi:before {
                right: 100%;
                top: 50%;
                border: solid transparent;
                content: " ";
                height: 0;
                width: 0;
                position: absolute;
                pointer-events: none;
        }
        .__bj-uservoice .fukidashi:after {
                border-color: rgba(255, 255, 255, 0);
                border-right-color: #fff;
                border-width: 6px;
                margin-top: -6px;
        }
        .__bj-uservoice .fukidashi:before {
                border-color: rgba(221, 221, 221, 0);
                border-right-color: #ddd;
                border-width: 7px;
                margin-top: -7px;
        }

        /* 連載・レポート 追加パーツ(WP)
    ==================================================*/
        /*--- サマリ---*/
        .blog-content-block ul.summary,
        .block ul.summary {
                margin-left: 0;
                padding-left: 0;
        }

        /*h2代用*/
        .reports_h2 {
                background: #464646;
                color: #fff;
                padding: 5px 20px;
                font-size: 20px;
                font-size: 2rem;
                font-weight: bold;
                line-height: 1.8;
                border: none;
                margin: 0 0 15px;
        }
        /*--- Voice of attendees ---*/
        .blog-content-block div.__reports--voa.__reports--balloon {
                padding: 1.5em 1em 1em 2em;
        }
        .blog-content-block div.__reports--voa.__reports--balloon:before {
                left: 50.5%;
        }

        /* 資料ダウンロード（JP1163）
    ======================================================= */
        .doc__card {
                margin: 30px auto;
                max-width: 350px;
                width: 100%;
        }
} /* end スマホ設定 */
