@charset "utf-8";

/* CSS Document */


/*WEB-------------フォント-------------*/

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP&display=swap');
* {
    font-family: 'Noto Sans JP', sans-serif, "Font Awesome 5 Free";
}

body {
    font-family: 'Noto Sans JP', sans-serif, "Font Awesome 5 Free";
    font-size: 15px;
    color: #333;
    background-color: #fff;
    overflow-x: hidden;
    line-height: 2;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
td,
li {
    font-family: 'Noto Sans JP', sans-serif, "Font Awesome 5 Free";
}


/*------カラー---------------------------
メイン
#935795
サブ1
#B34040
サブ2
#676CB8
TCROSS
#AEC75B
---------------------------------*/


/*-------------アンカー・ボタン アウトラインなし-------------*/

a.active.focus,
a.active:focus,
a.focus,
a:active.focus,
a:active:focus,
a:focus,
button.active.focus,
button.active:focus,
button.focus,
button:active.focus,
button:active:focus,
button:focus,
.btn.active.focus,
.btn.active:focus,
.btn.focus,
.btn:active.focus,
.btn:active:focus,
.btn:focus {
    outline: 0;
    outline-color: transparent;
    outline-width: 0;
    outline-style: none;
    box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
}


/*-------------フルスクリーン　余白なし-------------*/

.no-gutters {
    margin: 0;
    padding: 0;
}

.container {
    background-color: transparent;
}

.container-fluid {
    padding: 0;
    background-color: transparent;
}

.border_blue_top {
    border-top: 2px solid rgb(147, 87, 149);
}

.top_margin {
    margin-top: 660px;
}

@media only screen and (max-width: 1200px) {
    .top_margin {
        margin-top: 550px;
    }
}

@media only screen and (max-width: 992px) {
    .top_margin {
        margin-top: 450px;
    }
}

@media only screen and (max-width: 576px) {
    .top_margin {
        margin-top: 350px;
    }
}

@media only screen and (max-width: 767px) {
    .top_margin {
        margin-top: 350px;
    }
}


/*--------- タブレット以下は改行---------------- */

@media screen and (min-width: 560px) {
    .pc {
        display: block;
    }
    .sp {
        display: none;
    }
}

@media screen and (max-width: 560px) {
    .pc {
        display: none;
    }
    .sp {
        display: block;
    }
}


/*----------header不透明----------------------*/

.nav_back {
    background-color: rgba(255, 255, 255, 0.9);
}

.top_back {
    background-color: rgba(255, 255, 255, 0.9);
    z-index: 100;
}

.top_back_light {
    background-color: rgba(255, 255, 255, 0.3);
    z-index: 100;
}

.contents_back {
    background-color: rgba(255, 255, 255, 0.7);
}


/*-------------navbar--------------------------*/


/*----dropdown　hoverで開く----*/

.dropdown:hover .dropdown-menu {
    display: block;
}

.navbar {
    padding: 0.2rem 0;
}

.nav-link {
    margin-right: 2rem;
    margin-left: 1rem;
    color: #333333;
}

@media (min-width: 992px) {
    .navbar-expand-lg .navbar-nav .nav-link {
        padding-right: 0;
        padding-left: 0.5rem;
    }
}

.dropdown-menu {
    top: 102%;
    padding: 0;
    margin: 0;
    border-radius: 0;
    background-color: transparent;
    border: 0;
}

.dropdown-item {
    /*font-size: 16px;*/
    padding: 1rem 1.5rem;
    background-color: rgba(255, 255, 255, 0.9);
    border-bottom: 2px solid transparent;
    margin: 2px;
    position: relative;
}

.dropdown-item::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 10px 0 0;
    border-color: rgb(147, 87, 149) transparent transparent transparent;
}


/*-----ハンバーガメニューの色変更-------------------------*/

.navbar-toggler .navbar-toggler-icon {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(12,81,137,1)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E");
}


/*-----トグルボタンの非表示-------------------------*/

.dropdown-toggle::after {
    display: none;
}


/*-----nav文字色-----------------------------------------------------*/

.navbar .navbar-brand {
    color: #666666;
}

.navbar .navbar-brand:hover,
.navbar .navbar-brand:focus {
    color: rgb(147, 87, 149);
}

.navbar .navbar-text {
    color: #666666;
}

.navbar .navbar-text a {
    color: rgb(147, 87, 149);
}

.navbar .navbar-text a:hover,
.navbar .navbar-text a:focus {
    color: rgb(147, 87, 149);
}

.navbar .navbar-nav .nav-link {
    color: #666666;
}

.navbar .navbar-nav .nav-link:not(.disabled):hover,
.navbar .navbar-nav .nav-link:not(.disabled):focus {
    color: rgb(147, 87, 149);
}

.navbar .navbar-nav .dropdown-menu .dropdown-item {
    color: #666666;
}

.navbar .navbar-nav .dropdown-menu .dropdown-item:hover,
.navbar .navbar-nav .dropdown-menu .dropdown-item:focus,
.navbar .navbar-nav .dropdown-menu .dropdown-item.active {
    color: #935795;
}

.navbar .navbar-nav .nav-item.active .nav-link,
.navbar .navbar-nav .nav-item.active .nav-link:hover,
.navbar .navbar-nav .nav-item.active .nav-link:focus,
.navbar .navbar-nav .nav-item.show .nav-link,
.navbar .navbar-nav .nav-item.show .nav-link:hover,
.navbar .navbar-nav .nav-item.show .nav-link:focus {
    color: rgb(147, 87, 149);
}

.navbar .navbar-toggle .navbar-toggler-icon {
    color: #666666;
}

.navbar .navbar-collapse,
.navbar .navbar-form {
    border-color: #666666;
}

.navbar .navbar-link {
    color: #666666;
}

.navbar .navbar-link:hover {
    color: #935795;
}

@media (max-width: 575px) {
    .navbar-expand-sm .navbar-nav .show .dropdown-menu .dropdown-item {
        color: #666666;
    }
    .navbar-expand-sm .navbar-nav .show .dropdown-menu .dropdown-item:hover,
    .navbar-expand-sm .navbar-nav .show .dropdown-menu .dropdown-item:focus {
        color: rgb(147, 87, 149);
    }
    .navbar-expand-sm .navbar-nav .show .dropdown-menu .dropdown-item.active {
        color: rgb(147, 87, 149);
    }
}

@media (max-width: 767px) {
    .navbar-expand-md .navbar-nav .show .dropdown-menu .dropdown-item {
        color: #666666;
    }
    .navbar-expand-md .navbar-nav .show .dropdown-menu .dropdown-item:hover,
    .navbar-expand-md .navbar-nav .show .dropdown-menu .dropdown-item:focus {
        color: rgb(147, 87, 149);
    }
    .navbar-expand-md .navbar-nav .show .dropdown-menu .dropdown-item.active {
        color: rgb(147, 87, 149);
    }
}

@media (max-width: 991px) {
    .navbar-expand-lg .navbar-nav .show .dropdown-menu .dropdown-item {
        color: #666666;
    }
    .navbar-expand-lg .navbar-nav .show .dropdown-menu .dropdown-item:hover,
    .navbar-expand-lg .navbar-nav .show .dropdown-menu .dropdown-item:focus {
        color: #935795;
    }
    .navbar-expand-lg .navbar-nav .show .dropdown-menu .dropdown-item.active {
        color: #935795;
    }
}

@media (max-width: 1199px) {
    .navbar-expand-xl .navbar-nav .show .dropdown-menu .dropdown-item {
        color: #666666;
    }
    .navbar-expand-xl .navbar-nav .show .dropdown-menu .dropdown-item:hover,
    .navbar-expand-xl .navbar-nav .show .dropdown-menu .dropdown-item:focus {
        color: rgb(147, 87, 149);
    }
    .navbar-expand-xl .navbar-nav .show .dropdown-menu .dropdown-item.active {
        color: rgb(147, 87, 149);
    }
}

.navbar-expand .navbar-nav .show .dropdown-menu .dropdown-item {
    color: #666666;
}

.navbar-expand .navbar-nav .show .dropdown-menu .dropdown-item:hover,
.navbar-expand .navbar-nav .show .dropdown-menu .dropdown-item:focus {
    color: rgb(147, 87, 149);
}

.navbar-expand .navbar-nav .show .dropdown-menu .dropdown-item.active {
    color: rgb(147, 87, 149);
}


/*-----------------------------------------------------------------------------*/


/*----トグル閉じるボタン----*/

button[aria-expanded="true"]>span {
    position: relative;
    display: none;
}

button[aria-expanded="true"]::after {
    position: absolute;
    top: 10px;
    right: 20px;
    font-size: 28px;
    color: rgb(147, 87, 149);
    content: "×";
}


/*----ハンバーガーのボーダーと色----*/

.navbar-light .navbar-toggler {
    border-color: rgba(0, 0, 0, 0);
}

.news_block {
    margin: -198px auto 0;
    background: rgba(255, 255, 255, 0.9);
}

@media screen and (max-width: 768px) {
    .news_block {
        margin: 50px auto 0;
        padding: 0;
        background: rgba(255, 255, 255, 0.9);
    }
}


/*--各ぺ―ジメニュー------------------------*/

menu {
    text-align: left;
}

menu ul {
    margin: 0;
    padding: 0;
}

menu ul li {
    list-style: none;
    display: inline-block;
    padding: 0 15px;
    margin-bottom: 10px;
    border-right: 1px solid rgb(147, 87, 149);
    line-height: 1;
    font-weight: bold;
    font-size: 18px;
}

menu ul li:first-child {
    padding-left: 0;
}

menu ul li:last-child {
    border-right: none;
}

menu ul li a {
    text-decoration: none;
    color: #935795;
}

menu ul li a:hover {
    color: rgb(147, 87, 149);
}

.fm a {
    text-decoration: none;
    color: #935795;
    font-weight: bold;
    font-size: 18px;
}

.fm a:hover {
    color: rgb(147, 87, 149);
    text-decoration: underline;
}

@media screen and (max-width: 576px) {
    menu {
        text-align: left;
        padding-left: 0;
    }
    menu ul li {
        list-style: none;
        display: block;
        padding: 0 0 10px;
        border-right: none;
    }
}


/*---------テキストのリンクの色---------*/

.text_link a {
    color: rgb(147, 87, 149);
    text-decoration: none;
    font-weight: bold;
}

.text_link a:hover {
    color: #36607d;
    text-decoration: underline;
}


/*---------テキストカラー---------*/

.text_gry {
    color: #d3d3d3;
}


/*サブ1----*/

.text_red {
    color: #B34040;
}

.text_pink {
    color: #FF6A88;
}


/*サブ2----*/

.text_pp {
    color: #676CB8;
}

.text_green {
    color: #579593;
}


/*メイン----*/

.text_main {
    color: rgb(147, 87, 149);
}


/*---------fontsize---------*/

.f14 {
    font-size: 14px;
}

.f16 {
    font-size: 16px;
}

.f17 {
    font-size: 17px;
}

.f18 {
    font-size: 18px;
}

.f20 {
    font-size: 20px;
}

.f22 {
    font-size: 22px;
}

.f24 {
    font-size: 24px;
}

.f26 {
    font-size: 26px;
}

.weight_100 {
    font-weight: 100;
}

.weight_700 {
    font-weight: 700;
}

.line_height_2 {
    line-height: 2;
}

.line_height_s {
    line-height: 1.5;
}

.border_dot {
    border-bottom: 1px dotted rgb(147, 87, 149);
    margin-left: 1rem;
    margin-right: 1rem;
}

.btn-tcross {
    color: #fff;
    border-color: #91AA61;
    background-color: #91AA61;
}

.btn-tcross:hover {
    color: #fff;
    border-color: #91AA61;
    background-color: #91AA61;
}


/*---TOPカード部分のボーダー-------------------*/

.card {
    border-radius: 0;
    background-color: transparent;
}

.card-body {
    padding: 1rem;
    border-left: 5px solid rgb(147, 87, 149);
}

.border_dot_right {
    border-right: 2px dotted #dcdcdc;
}

.card a {
    text-decoration: none;
    color: #666;
}

.card a:hover {
    text-decoration: none;
    background-color: rgba(147, 87, 149, 0.1);
    cursor: pointer;
    cursor: hand;
}

.btn-register {
    color: #fff;
    background-color: #935795;
    border-color: #935795;
}

.btn-register:hover {
    color: rgb(147, 87, 149);
    background-color: rgba(147, 87, 149, 0.2);
    border-color: rgb(147, 87, 149);
}

.btn-register-disabled {
    color: #fff;
    background-color: #935795;
    border-color: #935795;
}

.btn-register-disabled:hover {
    color: #fff;
    background-color: #935795;
    border-color: #935795;
}

.btn-register-online {
    color: #fff;
    background-color: #935795;
    border-color: #935795;
}

.btn-register-online:hover {
    color: #935795;
    background-color: rgba(73, 116, 165, 0.2);
    border-color: #935795;
}

.btn-block {
    text-align: left;
    margin-bottom: 1.5rem;
    border-radius: 0;
}

.btn-block {
    position: relative;
}

.btn-block span {
    position: absolute;
    right: 10px;
    text-align: right;
}

.text_dblue {
    color: #935795;
}


/*---タイトルのリストマーク---------------------*/

.circle {
    position: relative;
    padding-left: 1em;
    font-size: 20px;
    font-weight: bold;
}

.circle::after {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    content: '';
    width: 18px;
    height: 18px;
    border: solid 4px rgb(147, 87, 149);
    border-radius: 100%;
}


/*---NEWS部分---------------------------*/

.news_date,
.news_detail {
    font-size: 16px;
    padding-bottom: 6px;
}


/*---開催概要---------------------------*/

.th_col {
    background-color: rgba(147, 87, 149, 0.8);
    color: #fff;
    border-bottom: 1px solid #fff;
}

.th_col:last-child {
    border-bottom: 0;
}

.td_col {
    border-bottom: 1px solid #dee2e6;
}

.td_col:last-child {
    border-bottom: 0;
}

.th_col_b {
    background-color: rgba(216.53, 190.6, 217.4, 0.8);
    color: #935795;
    font-weight: bold;
    border-bottom: 1px solid #fff;
}

.th_col_b:last-child {
    border-bottom: 0;
}

.td_col_b {
    border-bottom: 1px solid #dee2e6;
}

.td_col_b:last-child {
    border-bottom: 0;
}


/*----conference_page-----------------------------*/

.conference_page_back {
    background-image: url("../img/JBC2021_top_conference_image.png");
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-position: top center;
    background-size: 90% auto;
}

.bg_main_color {
    background-color: rgba(73, 116, 165, 0.5);
}

.JBC_title_img {
    width: 75%;
}

.JBC_title_live_img {
    width: 80%;
}

.memo {
    list-style: none;
    padding: 0 0 0 1rem;
    margin: 0;
    line-height: 1.75;
}

.memo_list:before {
    content: "※";
    margin-left: -1rem;
}

.list_circle {
    list-style-type: circle;
}


/*----live_page-----------------------------*/

.live_page_back {
    background-image: url("../img/JBC2021_top_live_image.png");
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-position: top center;
    background-size: 90% auto;
}


/*----conference_page　live_page　共通-----------------------------*/

.about {
    background-color: rgba(255, 255, 255, 0.8);
    padding: 20px;
    border-right: 3px solid #f5f5f5;
    border-bottom: 3px solid #f5f5f5;
}

.border_b_dot {
    border-bottom: 3px dotted #f1f1f1;
}

.border_b_dot_ppl {
    border-bottom: 3px dotted rgba(147, 87, 149, 0.5);
}


/*----footer----------------------------*/

.jbc_footer {
    background-color: rgba(147, 87, 149, 0.5);
    color: #ffffff;
    padding: 2px 0;
}

.badge-secondary {
    font-weight: normal;
    border-radius: 0;
}

.btn-goto-register {
    color: #fff;
    background-color: #935795;
    border-color: #935795;
}

.btn-goto-register:hover {
    color: #935795;
    background-color: rgba(73, 116, 165, 0.1);
    border-color: #935795;
}

.btn-goto-register2 {
    color: #fff;
    background-color: #935795;
    border-color: #935795;
}

.btn-goto-register2:hover {
    color: #935795;
    background-color: #93579533;
    border-color: #935795;
}


/*-----------TOPへ戻るボタン---------------------*/

#page_top {
    width: 90px;
    height: 90px;
    position: fixed;
    right: 0;
    bottom: 50px;
    opacity: 0.6;
}

#page_top a {
    position: relative;
    display: block;
    width: 90px;
    height: 90px;
    text-decoration: none;
}

#page_top a::before {
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    content: '\f102';
    font-size: 25px;
    color: #935795;
    position: absolute;
    width: 25px;
    height: 25px;
    top: -40px;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    text-align: center;
}

#page_top a::after {
    content: 'PAGE TOP';
    font-size: 13px;
    color: #fff;
    position: absolute;
    top: 45px;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    text-align: center;
    color: #935795;
}