html {
    scroll-behavior: smooth;
}

body {
    font-size: 16.5px;
    line-height: 1.8;
    color: #fff;
    font-family: "微軟正黑體", "新細明體", Arial, Helvetica, sans-serif;
    background-color: #4d3b70;
}

a {
    color: #a77cff;
    transition: .3s ease;
}

a:hover {
    color: #b96eff;
    text-decoration: none;
}

h2 {
    text-align: center;
    /*color: #343a40;*/
    font-weight: 700;
    padding: 20px;
}

.title::after {
    content: "";
    width: 60px;
    height: 10px;
    display: block;
    border: 4px dotted #ffc95f;
    margin: 5px auto 0;

}

h3 {
    text-align: center;
}

h4 {
    text-align: center;
    margin-bottom: 1rem;
}

p {
    padding-bottom: 0.5em;
}


section {
    padding: 2em 0 3em;
}

section:nth-of-type(even) {
    background: #ffffff;
    color: #333;
}

.btn-primary {
    font-size: 1.4rem;
    padding: 10px 20px;
    min-width: 30%;
    margin: 2%;
    background-color: #f9ae18;
    text-shadow: none;
    outline: none;
    color: #fff;
    border: none;
}
.btn-primary:hover {
    background-color: #fff;
    color: #333;
}


/*錨點位置調整*/
:target:before {
content: "";
display: block;
height: 75px;
}



.navbar {
    background: rgb(106, 64, 190, 0.8);
}

.navbar-brand{
    text-align: center;
}

.navbar-brand img{
    max-width: 200px;
    padding: 8px;
}

.navbar-nav {
    width: 100%;
}

.nav-item {
    padding: 0px 10px;
}

.nav-link {
    padding: 0.8rem 1rem;
}

.navbar .navbar-nav>li>a:hover {
    -webkit-transform: translateY(-3px);
    -ms-transform: translateY(-3px);
    transform: translateY(-3px)
}

.navbar-dark .navbar-nav .nav-link {
    color: #ffffff;
}
.navbar-dark .navbar-nav .nav-link.special {
    border: 2px solid #f9ae18;
    padding: 10px 15px;
}
.navbar-dark .navbar-nav .nav-link.special:hover {
    background-color: #f9ae18;
    color: #6a41bd;
}

/* 中文按鈕 */
.nav-item.ch {
    margin-left: auto;
    padding: 0;
    font-weight: 500;
}
.navbar .navbar-nav .nav-item.ch a {
    padding: 0.5rem 1rem 0.4rem;
    border: 3px solid #ffc95f;
    transition: .3s;
}
.navbar .navbar-nav .nav-item.ch a:hover {
    -webkit-transform: translateY(0px);
    -ms-transform: translateY(0px);
    transform: translateY(0px);
    border: 3px solid #ffc95f;
    background-color: #ffc95f;
    color: #6a41bd;
}
@media(max-width:991px){
    .navbar {
        background-color: rgb(106, 64, 190);
    }
    .nav-item.ch {
        width: 100%;
    }
    .kv {
        margin-top: 74px;
    }
}

.carousel-control-prev, .carousel-control-next{
    width: 5%;
}

.kv {
    width: 100%;
}


.kv img {
    width: 100%;
}

.foreword {
    /* font-size: 1.3rem;*/
    line-height: 1.8;
    position: relative;
    padding-top: 1em;
    filter: drop-shadow(0px -2px 2px #261a3f);
}
/* .foreword::before {
    content:'';
    background: url('../img/head_foreword.svg') no-repeat center center /cover;
    width: 100%;
    height: 30px;
    position: absolute;
    top: -28px;
    left: 0;
    right: 0;
} */
.head_foreword {
    position: relative;
    width: 100%;
}
.head_foreword .img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 100%;
}


.color_bg {
    background-color: #6a41bd;

}

.color_bg:after {
    content: "";
    display: block;
    position: absolute;
    right: 50%;
    width: 0;
    height: 0;
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    border-top: 30px solid #4d3b70;
    transform: translateX(30px);
}

.bg_left {
    position: relative;
    height: 50px;
    background-image: url(../img/bg_left.svg);
    background-size: cover;
}

.bg_right {
    position: relative;
    height: 50px;
    background-image: url(../img/bg_right.svg);
    background-size: cover;
}

.focus{
    color: #6a41bd;
    text-align: center;
    font-size: 1.5em;
    padding: 20px 0;
    font-weight: 700;
    letter-spacing: 2px;
}

.focus span{
    color: #ffc95f;
    font-size: 1.6em;
}

.focus2{
    color: #6a41bd;
    text-align: center;
    font-size: 1.2em;   
    font-weight: 700;
    line-height: 1.5;
}

.focus2 span{
    color: #ffc95f;
    font-size: 1.4em;
}

.intro-box {
    padding: 15px 25px;
}
.intro-box .intro-mark {
    font-size: 1.8rem;
    padding: 6px;
    color: #fff;
}
.intro-box .intro-mark:hover {
    color: #ddd;
}

.intro-box ol{
    padding-left: 15px;
}

.intro-location .fas {
    font-size: 2.3rem;
    color: #fff;
    margin-top: .5rem;
    transition: .3s ease;
}
.intro-location .fas:hover {
    color: #ddd;
}

.custom-icon li
{
    background-image:url(../img/icon-01.png);
    background-position:left 7px;
    background-repeat:no-repeat;    
    list-style-type:none;
    padding-left: 1.5rem;
    padding-bottom: 0.3rem;
    border-bottom: 1px solid #efefef;
}

.forward-box{
    padding: 1.5em;   
    background-color:#F7EFF3;
    border-radius: 10px;
    box-shadow: 0px 0px 10px rgba(98,82,97,0.5);
}



.speaker-title {
    font-size: 1.4em;
    padding: 20px;
}



.line {   
    height: 1px;
    background-color:  #ffc95f;
    width: 2em;
    margin-top: 33px;
}

.speaker-box {
    text-align: center;
}

.speakers img {
    max-width: 180px;
    border: 2px solid #E8B6DE;
}

.speaker-txt {
    padding: 0 0 15px;
    color: #625261;
}

.speaker-name {
    padding: 5px;
    color: #6a41bd;
    font-weight: 700;
    font-size: 18px;
}



/* intro */
.sec-intro {
    /* background:#4d3b70; */
    /* background:#3b246a url(../img/bg-intro.jpg) no-repeat center top /cover; */
    /* margin-top: -3em;
    padding-top: 5em;
    margin-bottom: -5em;
    padding-bottom: 5em; */
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#4d3b70+9,8566c1+10,8566c1+10,392c54+25,463666+60,604a8c+69,423360+83 */
background: rgb(77,59,112); /* Old browsers */
background: -moz-linear-gradient(-45deg,  rgba(77,59,112,1) 9%, rgba(133,102,193,1) 10%, rgba(133,102,193,1) 10%, rgba(57,44,84,1) 25%, rgba(70,54,102,1) 60%, rgba(96,74,140,1) 69%, rgba(66,51,96,1) 83%); /* FF3.6-15 */
background: -webkit-linear-gradient(-45deg,  rgba(77,59,112,1) 9%,rgba(133,102,193,1) 10%,rgba(133,102,193,1) 10%,rgba(57,44,84,1) 25%,rgba(70,54,102,1) 60%,rgba(96,74,140,1) 69%,rgba(66,51,96,1) 83%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(135deg,  rgba(77,59,112,1) 9%,rgba(133,102,193,1) 10%,rgba(133,102,193,1) 10%,rgba(57,44,84,1) 25%,rgba(70,54,102,1) 60%,rgba(96,74,140,1) 69%,rgba(66,51,96,1) 83%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4d3b70', endColorstr='#423360',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */

}
.sec-intro .title {
    color: #ffbefd;
}





/*  */
.topic {
    padding: 5em 0 2em;
}
.topic-pre-titile {
    font-size: 2.1rem;
    line-height: 1.6;
    color: #4d3b70;
}






/* 演講共識 */
.focus-box{
    border: 8px double #ece3ff;
    border-radius: 15px;
    padding: 10px 30px;
}
.focus-box-title{
    color: #6a41bd;
    font-size: 2em;
    /*font-weight: 700;*/
    text-align: center;
    position: relative;
    top: -1.3em;
    margin-bottom: -1rem;
}
.focus-box-title span{
    background-color: #fff;
}

/* 投稿規範 */
.specification {
    /* padding: 0; */
}

/* 聽眾真心話 */
.expect {
    background: url('../img/bg-expect.jpg') no-repeat center bottom /cover;
    padding: 80px 20px 0;
}
.expect-box {
    background: #ffffffe0;
    /* border-radius: 30px;
    box-shadow: 0px 0px 20px 13px #fff; */
    padding: 20px;
    margin: 0 3% 3%;
}
.expect-box .title {
    width: 95%;
}








/*  */
.section-focus-slogan.attachment {
    background: url(../img/bg-speakers.jpg) no-repeat center center;
    background-size: cover;
    background-attachment: scroll;
    position: relative;
    padding: 20% 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
  }
  @media (min-width: 1201px) {
    .section-focus-slogan.attachment {
      height: 70vh;
      background: url(../img/bg-speakers.jpg) no-repeat center center;
      background-attachment: fixed;
    }
  }
  .section-focus-slogan .slogan-txt {
    color: #fff;
    text-shadow: none;
    text-shadow: 0px 0px 20px #38383873;
    /* text-shadow: 1px 1px 20px #fff, 5px 5px 0px #fff; */
    /* opacity: 0.8; */
  }
  @media (max-width: 1200px) {
    .section-focus-slogan .slogan-txt {
        /* text-shadow: 1px 1px 20px #fff, 3px 3px 0px #fff; */
        /* text-shadow: none; */
    }
  }

  .section-focus-slogan .slogan-title {
    line-height: 1.2;
    letter-spacing: 10px;
    font-weight: 700;
    font-size: 90px;
  }
  @media (max-width: 1200px) {
    .section-focus-slogan .slogan-title {
      line-height: 1.3;
      letter-spacing: 6px;
      font-size: 2.4rem;
    }
  }












/* Contact Information */
.sec-contact {}
.sec-contact a {
    color: #ffc95f;
    word-break: break-word;
    line-height: 1.8;
}
.sec-contact a:hover {
    color: #fff;
}



.history-block {
    text-align: center;
    padding: 10px;
}

.history-btn {
    font-size: 18px;
    padding: 15px 25px;
    border: 1px solid #6a41bd;
    color: #6a41bd;
    
    background-color: #fff;
}

.history-btn:hover {
    background-color: #6a41bd;
}


.footer-logo {
    text-align: center;
}


footer {
    color: #999999;
    background-color: #101010;
    font-size: 16px;
    padding: 2% 0;
    line-height: 1.4em;
}

#gotopBtn {
    display: none;
    /* Hidden by default */
    position: fixed;
    /* Fixed/sticky position */
    bottom: 20px;
    /* Place the button at the bottom of the page */
    right: 30px;
    /* Place the button 30px from the right */
    z-index: 99;
    /* Make sure it does not overlap */
    border: none;
    /* Remove borders */
    outline: none;
    /* Remove outline */
    background-color: #cbb1ff7e;
    color: #232323;
    cursor: pointer;
    /* Add a mouse pointer on hover */
    padding: 12px 20px;
    border-radius: 50%;
    font-size: 18px;
}

#gotopBtn:hover {
    background-color: #999;
}


