body {
    background-repeat: repeat;
    font-family: 'Noto Serif TC', serif;
}

span {
    color: #f4f2ff;
    font-family: 'Noto Serif TC';
}

hr {
    color: #EACFAC;
}

h1 {
    color: #b4b178;
}

label {
    color: #b4b178;
}

@media (max-width: 767px) {

    .hide-in-mobile {
        display: none !important;
    }
    
    .about-text-about {
        padding-bottom:10px;
        font:normal normal normal 16px/2 Noto Serif TC;
    }
    
    .about-text-experience {
        padding-bottom:10px;
        font:normal normal normal 16px/2 Noto Serif TC;
    }
    
    .about-text-social-media {
        font:normal normal normal 16px Noto Serif TC;
    }
    
    .bank-account {
        font-size: 13px;
        margin-top:10px;
        text-align:right;
        margin-bottom:50px;
        color:#f4f2ff;
    }
    
    .banner {
        height: 190px;
        background-size: cover;
    }   
    
    .banner-text {
        font-size: 40px;
        z-index: 50;
        left: 30px;
    }
    
    .class-remaining {
        flex: 0 0 105px;
    }
    
    .class-detail-box {
        flex: 0 0 80%;
        padding-left: 15px;
        border-radius: 25px;
    }
    
    .class-detail-text {
        font: normal normal normal 12px/38px 'Noto Serif TC';
        padding-right: 3px;
    }
    
    .class-date-box {
        flex: 0 0 49px; 
    }
    
    .class-detail-location-icon {
        width: 8px;
        position: relative;
        margin-left: 5px; 
    }
    
    .class-remining-box {
        margin-bottom: 15px;
        margin-top: 15px;
        flex:0 0 350px;
    }
    
    .course-intro-text {
        padding-bottom:10px;
        font:normal normal normal 16px/2 Noto Serif TC;
    }
    
    .course-intro-address {
        padding-bottom:10px;
        font:normal normal normal 16px/2 Noto Serif TC;
    }
    
    .course-management:not(:first-child, :last-child) {
        border-bottom: 1px solid #F4F2FF;
    }

    .course-selection-cell{
        margin: 15px 0px 15px 0px;
    }
    
    .mobile-nav-order-type-tag {
        border: 1px solid #B4B178;
        padding-right: 5px;
        padding-left: 5px;
        padding-bottom: 2px;
        border-radius: 26px;
        color: #B4B178;
    }
    
    .registration-result-account-info {
        color:white;
        font-size:14px;
    }
    
    .registration-bank-account {
        border:1px solid #B4B178;
        width:300px;
        opacity:0.5;
    }
    
    .registration-confirmation-note {
        font-size: 13px;
    }
    
    .registration-confirmation-table-col-date {
        text-align:left;
        font-size: 11px;
        width: 120px;
    }
    
    .registration-confirmation-table-col-name {
        font-size: 11px;
        text-align: left;
        padding-left: 5px;
    }
    
    .registration-confirmation-table-col-location {
        font-size: 11px;
        width: 80px;
        text-align: left;
        padding-left: 5px;
    }
    
    .registration-confirmation-table-col-price {
        font-size: 11px;
        width: 50px;
        text-align: right;
    }
    
    .registration-summary-confirmation-table-col-name {
        width:100px;
        text-align:left;
        font-size: 13px;
        padding-top:7px;
        padding-bottom:7px;
    }
    
    .registration-summary-confirmation-table-col-number {
        width:50px;
        text-align:center;
        font-size: 13px;
    }
    
    .registration-summary-confirmation-table-col-subtotal {
        width:70px;
        font-size:13px;
        text-align:center;
    }

    .registration-summary-confirmation-table-col-grand-total {
        font-size:13px;
        text-align: right;
    }

    .registration-guide-text {
        font:normal normal normal 11px/2 Noto Serif TC;
        text-align:center;
        color:#F4F2FF;
        margin-bottom:0px;
    }
    
    .registration-intro-text {
        font:normal normal normal 11px/2 Noto Serif TC;
        text-align:center;
        color:#F4F2FF;
        margin-bottom:0px;
    }
    
    .registration-month-title {
        width:100%;
        margin-right:auto;
        margin-left:auto;
        margin-bottom:20px;
    }
    
    .registration-availability-text {
        font-size: 12px;
    }
    
    .registration-flexbox-remaining {
        flex: 0 0 140px;
        padding-left: 10px;
        padding-top: 3px;
    }
    
    .registration-summary-col-name {
        width:110px;
        text-align:left;
        font-size: 13px;
        padding-top: 7px;
        padding-bottom: 7px;
    }
    
    .registration-summary-col-number{
        width:40px;
        font-size: 13px;
        text-align: center;
    }
    
    .registration-summary-col-subtotal {
        font-size: 13px;
        text-align: left;
    }
    
    .registration-summary-col-grand-total {
        width:80px;
        font-size:13px;
        padding-left: 10px;
    }
    
    .registration-result-footer {
        font-size: 12px;
        color: white;
    }
    
    .baliyoho-form-area {
        margin-left: auto;
        margin-right: auto;
    }
    
    .description {
        margin-top: 10px;
        width: 95%;
        margin-left: auto;
        margin-right: auto;
    }
    
    .calendar-box-area {
        flex: 0 0 50%;
        padding: 15px;
    }
    
    #success-note-transfer {
        text-align:center;
    }

}

@media (min-width: 767px) {
    
    .hide-in-pc {
        display: none !important;
    }

    .middle-div {
        width: 960px;
        margin-right: auto;
        margin-left: auto;
        text-align: center;
    }
    
    .about-text-about {
        padding-bottom:10px;
        font:normal normal normal 18px Noto Serif TC;
    }
    
    .about-text-experience {
        line-height:2;
        font:normal normal normal 18px Noto Serif TC;
    }
    
    .about-text-social-media {
        font:normal normal normal 18px Noto Serif TC;
    }
    
    .banner {
        height: 350px;
        width: 960px;
        display: block;
        background-size: cover;
        margin-right: auto;
        margin-left: auto;
		box-shadow: 0 1px 20px rgba(var(--c-dark-rgb), 0.5);
    }

    .banner-text {
        font-size: 50px;
        top: 265px;
        left: 32%;
    }
    
    .bank-account {
        margin-top:10px;
        text-align:right;
        margin-bottom:100px;
        color:#f4f2ff;
    }

    .class-detail-box {
        flex: 0 0 450px;
        padding-left: 20px;
        border-radius: 26px;
    }
    
    .class-remaining {
        flex: 0 0 135px;
    }
    
    .class-detail-text {
        font: normal normal normal 16px/38px 'Noto Serif TC';
        padding-right: 10px;
    }
    
    .class-date-box {
        flex: 0 0 50px; 
		margin-left: -14px;
    }
    
    .class-detail-location-icon {
        width: 12px;
        top: -2px;
        position: relative;
        margin-left: 10px;
    }
    
    .class-remining-box {
        margin-top: 5px;
        margin-bottom: 15px;
        flex:0 0 530px;
        padding-left: 20px;
    }
    
    .course-intro-text {
        padding-bottom:10px;
        font:normal normal normal 18px Noto Serif TC;
    }
    
    .course-intro-address {
        font:normal normal normal 18px/2 Noto Serif TC;
    }

    .course-management:not(:first-child, :last-child) {
        border-bottom: 0.5px solid #B4B178;
    }
    
    .course-management-name {
        width:150px;
    }
    
    .course-management-time {
        width: 180px;
    }
    
    .course-management-location {
        width: 100px;
    }
    
    .course-management-status {
        width: 100px;
    }
    
    .course-management-status {
        width: 100px;
    }
    
    .course-selection-cell{
        margin: 15px 5px 15px 5px;
    }
    
    .registration-guide-text {
        font:normal normal normal 18px/2 Noto Serif TC;
        text-align:center;
        color:#F4F2FF;
    }
    
    .registration-intro-text {
        font:normal normal normal 18px/2 Noto Serif TC;
        text-align:center;
        color:#F4F2FF;
        margin-bottom:0px;
    }
    
    .registration-flexbox-remaining {
        flex: 0 0 150px;
        /*text-align: right;
        font: normal normal normal 15px/38px 'Noto Serif TC';
        letter-spacing: 0.45px;
        color: #EACFAC;
        text-shadow: 0px 1px 4px #00000099;
        opacity: 1;*/
    }
    
    .order-summary-col {
        color: #EACFAC;
        margin-top: 10px;
        margin-bottom: 10px;
    }
    
    .registration-guide-text {
        font:normal normal normal 18px/1.2 Noto Serif TC;
        text-align:center;
        color:#F4F2FF;
    }
    
    .registration-result-account-info {
        color:white;
    }
    
    .registration-month-title {
        width:500px;
        margin-right:auto;
        margin-left:auto;
        margin-bottom:20px;
    }

    .registration-summary-col-name {
        width:130px;
        text-align:left;
    }
    
    .registration-summary-col-number {
        width: 60px;
    }
    
    .registration-summary-col-subtotal {
        width:80px;
    }

    .registration-summary-col-grand-total {
        text-align:right;
        padding-right:5px;
    }
    
    .registration-bank-account {
        border:1px solid #B4B178;
        width:400px;
        opacity:0.5;
    }
    
    .registration-confirmation-table {
        width:600px;
        margin-left:auto;
        margin-right:auto;
    }
    
    .registration-confirmation-table-col-date {
        width:180px;
        text-align:left;
    }
    
   .registration-confirmation-table-col-name {
        width:200px;
        text-align:left;
    }
    
    .registration-confirmation-table-col-location {
        text-align: left;
    }
    
    .registration-confirmation-table-col-price {
        width:70px;
    }
    
    .registration-summary-confirmation-table-col-name {
        width:130px;
        text-align:left;
    }
    
    .registration-summary-confirmation-table-col-number {
        width: 60px;
    }
    
    .registration-summary-confirmation-table-col-subtotal {
        width:80px;
        text-align:left;
    }
    
    .registration-summary-confirmation-table-col-grand-total {
        text-align:right;
        padding-right:5px;
    }
    
    .registration-result-footer {
        color: white;
    }

    .summary-area {
        width:700px;
        margin-left:auto;
        margin-right:auto;
        padding-left:25px;
    }
    
    .baliyoho-form-area{
        margin-left: 25%;
        width: 60%;
    }
    
    .description {
        /*margin-top:30px;*/
    }
    
    .login-form {
        width:500px; 
        margin-left:auto; 
        margin-right:auto;
    }
    
    .calendar-box-area {
        flex: 0 0 250px;
        padding: 15px;
    }
    
    .sections {
        width: 960px;
        margin-right: auto;
        margin-left: auto;
    }

}

.header {
    position:fixed; 
    width:100%; 
    background-color:#6a5a7b; 
    opacity: 0.9;
    color:#3B5C52; 
    z-index: 10;
}

.banner {
    background-image: url(img/<?=$course->getSetting("banner")?>);
}  

.banner-text {
    font-family: 'Noto Serif Display', serif;
    position: relative;
    color: #B4B178;
    text-shadow: 0 0 10px #40666100;
}

.flexbox {
    display:flex; 
}

.flexbox-auto-row {
    margin-top: -6px;
    flex: 1 1 auto;
}

.uppder-section-area {
    text-align:center;
    flex:0 0 550px; 
}

.uppder-section-button {
    font-size: 16px;
    cursor: pointer;
    display: inline-block;
    padding: 4px 12px;
    margin: 0 4px;
    letter-spacing: .65px;
    border-radius: 23px;
    text-wrap: nowrap;
    background-color: #6a5a7b;
    color: #f4f2ff;
    border: 1px solid #b4b178;
    box-shadow: 4px 4px 6px rgba(0, 0, 0, 0.2), -1px -1px 2px rgba(255, 255, 255, .2);
}

.uppder-section-button.inactive {
    box-shadow: 3px 4px 7px #00000033;
    border: 2px solid #b4b178;
	cursor: pointer;
}

.uppder-section-button.inactive:hover {
    background-color: #b4b178;
	color:#6a5a7b;
	font-weight: 600;
}

.uppder-section-button.active {
	box-shadow: inset 2px 2px 2px rgba(0, 0, 0, 0.2), -3px -3px 3px rgba(0, 0, 0, 0.2), inset -1px -1px 3px rgba(0, 0, 0, 0.1), -1px 1px 1px rgba(255, 255, 255, .1), 1px 1px 2px rgba(255, 255, 255, .1), 1px 0px 1px rgba(255, 255, 255, .1), 1px 1px 2px rgba(0, 0, 0, 0.1);
    border: none;
	cursor: pointer;
}

.uppder-section-button.active:hover {
    background-color: #b4b178;
	color:#6a5a7b;
	font-weight: 600;	
}

.hamburger-options {
    margin-bottom: 1px;
    padding: 10px;
    background-color: #b4b178;
}

.hamburger-options.inactive{
    background-color: #b4b178;
}

.hamburger-options.active{
    background-color: #6a5a7b;
}

.date-range-label-box {
    flex:0 0 80px;
}

.date-range-date-box {
    flex:0 0 220px; 
    text-align:right; 
    padding-right:10px;
}

.class-date-box {
    font-size:10px;
    font-style:italic; 
    text-align:center;
}

.class-date-date {
    font-family: 'Noto Serif TC', serif;
    border-top: 0.5px solid #F4F2FF;
}

.class-date-day {
    font-family: 'Noto Serif TC', serif;
    /*border-bottom: 1px solid #EACFAC;; */
}

.class-detail-box {
    display: flex;
    background: #FFFFFF 0 0 no-repeat padding-box;
    box-shadow: 0 7px 10px #00000040, -3px -3px 6px #ffffff1f;
    opacity: 1;
    height: 27px;
    margin-top:5px;
}

.class-detail-text {
    letter-spacing: 0.6px;
    color: #6A5A7B;
    opacity: 1;
}

.class-detail-text.bordered {
    border-right: 1px solid lightgray;
}

.class-detail-add-box {
    background: #b4b178 0% 0% no-repeat padding-box;
    box-shadow: 0px 3px 6px #00000029;
    opacity: 1;
    border-radius: 50%;
    position: relative;
    margin-right: 2px;
    width: 35px;
    height: 35px;
    margin-top: 1px;
}

.class-detail-add-icon {
    font-size: 24px;
    font-weight: bold;
    color: #f4f2ff;
    margin-right: 10px;
    margin-left: 10px;
}

.class-detail-box.active {
    background: #3B5C52 0 0 no-repeat padding-box;
    background-repeat: repeat;
    box-shadow: 0 -7px 10px #00000040, 3px 3px 6px #FFFFFF1F;
    border-radius: 26px;
    opacity: 1;
}

.class-detail-text.active {
    color: white;
}

.class-detail-text.bordered.active {
    border-right: 1px solid white;
}

.class-detail-text.class-detail-time {
    font-family: 'Noto Serif TC', serif;
}

.class-detail-text.class-detail-length {
    font-family: 'Noto Serif TC', serif;
    font-style: italic;
}

.class-detail-location-icon.active {
    filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(288deg) brightness(102%) contrast(102%);
}

.class-detail-add-box.active {
    background: #3B5C52 0 0 no-repeat padding-box;
    background-repeat: repeat;
    box-shadow: 0 3px 6px #00000069
}

.class-detail-add-icon.active {
    color: #EACFAC;
    opacity:0.3;
}

.class-remaining {
    text-align: left;
    font: normal normal normal 15px/38px 'Noto Serif TC';
    letter-spacing: 0.45px;
    color: #EACFAC;
    text-shadow: 0px 1px 4px #00000099;
    opacity: 1;
}

.class-remaining-horizontal {
    margin-top: 16px;
    border: 0.5px solid #B4B178;
}

.class-remaining-horizontal2 {
    margin-top: 16px;
	box-shadow: 0px 1px 4px #00000099;
	border: 0.5px solid #F4F2FF;
}

.log-div {
    background-repeat: repeat;
    position: absolute;
    right: 5px;
    padding-left: 10px;
    width: 100px;
    text-align: right;
    font-size: 14px;
	cursor: pointer;
}

.steps {
    width:100%;
    flex-shrink: 0;
    padding-top: 30px;
    padding-bottom:100px;
}

.submit-button-area {
    text-align:center;
    margin-top: 30px;
    margin-bottom: 80px;
}

.submit-button-cell {
    text-align:center;
    padding-top: 30px !important; 
    padding-bottom: 80px !important;;
}

.submit-button {
    background: #6a5a7b;
    box-shadow: 4px 4px 7px #00000052;
	opacity: 1;
    text-align: left;
	cursor: pointer;
	display: inline-block;
    padding: 4px 12px;
    margin: 0 4px;
    font-size: 14px;
	letter-spacing: .65px;
	border-radius: 23px;
	color: white;
    border: 1px solid #b4b178;
}

.submit-button:hover{	
    background-color: #b4b178;
	color:#6a5a7b;	
	font-weight : 600;
}

.class-add-icons {
    width:26px;
    height:25px;
    margin-top:1px;
    margin-right:1px;
}

.class-added-icons {
    width:26px;
    height:25px;
    margin-top:1px;
    margin-right:1px;
}            

.confirmation-table {
    border-top: 1px solid #EACFAC;
    border-bottom: 1px solid #EACFAC;
    table-layout: fixed;
    margin-right: auto;
    margin-left: auto;
    color: white;
    margin-bottom: 30px;
    margin-top: 30px;
    width: 100%;
}

.course-selection:not(:last-child) {
    border-bottom: 0.5px solid #B4B178;
}

.course-management:first-child {
    border-bottom: 1.5px solid #B4B178;
}

.course-management:last-child {
    border-bottom: 1.5px solid #B4B178;
}

.course-management-title {
    font-size: 13px;
    color:#B4B178; font-weight:normal;
}

.course-management-cell{
    margin: 10px 0px 10px 0px;
    padding-right: 20px;
    padding-left: 10px;
}

.course-selection-cell.bordered{
    border-right: 1px solid #EACFAC;
}

.confirmation-location-icon {
    width: 15px;
    filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(302deg) brightness(106%) contrast(101%);
}

.baliyoho-form-area {
    border: none;
    margin-top: 30px;
}

.baliyoho-form-label {
    text-align: left;
    font: normal normal normal 18px/24px 'Noto Serif TC';
    letter-spacing: 0.45px;
    margin-top: 20px;
    margin-bottom: 5px;
    padding-left: 30px;
    width: 100%;
    color:white;
    font-size:14px;
}

.baliyoho-form-input {
    background-repeat: repeat;
    box-shadow: 0px 2px 4px #0000004D;
    border: 1px solid #B4B178;
    border-radius: 26px;
    width: 95%;
    padding-left: 15px;
    color: white;
    height: 40px; 
    opacity:0.5;
}

.baliyoho-form-input::placeholder {
    color: #f4f2ff;
    border-left: 1px solid gray;
    padding-left: 10px;
}

.success-title {
    color: #F4F2FF;
    text-align: center;
    font-size: 30px;
    text-shadow: 0px 1px 10px #00000099;
}

.message {
    text-align: center;
    color: #f4f2ff;
    margin-top: 30px;
}

.calendar-table {
    width: 100%;
    text-align: center;
}

.calendar-title-text {
    font-size: 16px;
    color: #EACFAC;
}

.calendar-time-text {
    color: white;
    margin: 7px;
}

.calendar-time-text.bordered {
    border-bottom: 1px solid gray;
}

.warning {
    text-align: center;
    color: #EACFAC;
    margin-bottom: 20px;
}

.member-course-table {
    margin-top:50px;
    width: 100%;
    color: white;
    text-align: center;
}

.member-course-table th, .member-course-table td {
    border: 1px solid #EACFAC !important;
    border-collapse: collapse;
    padding: 10px;
}

.social-media-icons {
    width: 20px;
}

.order-summary {
    width:700px; 
    margin-right:auto; 
    margin-left:auto;
}

.order-summary-col.bordered {
    border-right: 1px solid #B4B178;
}

.order-summary-text {
    color: #B4B178;
    margin-bottom: 0px;
	text-shadow: 0px 1px 10px #00000099;
}

.order-type-label {
    color:#EACFAC; 
    border:1px solid #EACFAC; 
    border-radius:15px; 
    padding-left:4px;
    padding-right:5px;
    font-size:10px;
    opacity:1;
	letter-spacing: 0.3px;
    text-align: left;
}

.course-plan {
    width: 100%;
    display: block;
    margin-right: auto;
    margin-left: auto;
}

.section-title {
    color: #b4b178;
    font-size: 20px;
    margin-right: 10px;
}

/*#step-container {
    position: relative;
    left:0;
    display: flex;
}*/

#hamburger {
    color:black;
    text-align: right;
    width:50px;
    padding: 10px;
    float: right;
}

#hamburger-menu {
    text-align: center;
    margin-top: 0px;
}

#hamburger-menu span {
    color: #f4f2ff;
    font-size: 20px;
    font-weight: bold;
}

:root {
    --c-primary-color: #6a5a7b;
    --c-secondary-color: #b4b178;
    --c-font-color: #f4f2ff;
    --c-decorative-color: #eacfac;
    --c-invalid-color: #fa8072;
    --c-primary-dark-color: #594A69;
    --c-secondary-dark-color: #8A8857;
    --c-primary-dark-rgb: 89, 74, 105;
    --c-secondary-dark-rgb: 138, 136, 87;
    --c-primary-rgb: 106, 90, 123;
    --c-secondary-rgb: 180, 177, 120;
    --c-dark-rgb: 0, 0, 0;
    --c-font-rgb: 244, 242, 255;
}
.form-switch .form-check-input:checked {	
	background-image: url(https://www.syrenayoga.com/img/icon_purple.svg)!important;
	background-color: #B4B178!important;
	cursor: pointer;
	border: 1px solid rgba(89, 74, 105, 1);
	box-shadow: inset 1px 0px 0px rgba(0, 0, 0, 0.2), -1px 0px 0px rgba(89, 74, 105, 0.2), -1px -1px 2px rgba(89, 74, 105, 0.2), -1px 0px 1px rgba(255, 255, 255, .1), 0px -1px 1px rgba(255, 255, 255, .1), 1px 1px 5px rgba(0, 0, 0, 0.3);	
}

.form-switch .form-check-input{	
    background-image: url(https://www.syrenayoga.com/img/icon_green.svg)!important;	
	background-color: #594A69!important;
	cursor: pointer;
	border: 1px solid rgba(89, 74, 105, 1);	
	box-shadow: inset 1px 0px 0px rgba(0, 0, 0, 0.2), -1px 0px 0px rgba(89, 74, 105, 0.2), -1px -1px 2px rgba(89, 74, 105, 0.2), -1px 0px 1px rgba(255, 255, 255, .1), 0px -1px 1px rgba(255, 255, 255, .1), 1px 1px 5px rgba(0, 0, 0, 0.3);
}