@font-face {
    font-family: "HgMaruGoThicPro";
    src: url("../fonts/HG-MaruGothic-Pro.woff") format("truetype");
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: "HgMaruGoThicPro", sans-serif;
}

body {
    font-family: "HgMaruGoThicPro", sans-serif;
    font-size: 14px;
    font-weight: 400;
}

.cl-primary {
    color: #8ec31e;
}

.Form-group {
    margin-bottom: 20px;
    text-align: left;
    position: relative;
}
.Form-group > label {
    margin-bottom: 5px;
    width: 100%;
    font-size: 16px;
}
.Form-group > label > .required {
    display: inline-block;
    margin-left: 15px;
    padding: 3px 8px;
    font-size: 11px;
    background: #000;
}
.Form-group > input,
.Form-group > textarea,
.Form-group > select {
    padding-left: 5px;
    width: 100%;
    font-size: 14px;
    border: none;
    outline: none;
    border-radius: 0;
}
::placeholder {
    /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: #bbb;
    opacity: 1; /* Firefox */
}
:-ms-input-placeholder {
    /* Internet Explorer 10-11 */
    color: #bbb;
}
::-ms-input-placeholder {
    /* Microsoft Edge */
    color: #bbb;
}
.Form-group > input,
.Form-group > select {
    height: 35px;
}
.Form-group > select {
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url(../icons/triangle.svg);
    background-repeat: no-repeat;
    background-size: 12px 12px;
    background-position: calc(100% - 7.5px) center;
}

.Form-checkbox {
    display: block;
    position: relative;
    padding-left: 30px;
    cursor: pointer;
    font-size: 16px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
/* Hide the browser's default checkbox */
.Form-checkbox input[type="checkbox"] {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}
/* Create a custom checkbox */
.checkmark {
    position: absolute;
    top: 50%;
    left: 0;
    height: 20px;
    width: 20px;
    background: #fff;
    transform: translateY(-50%);
}
/* When the checkbox is checked, add a blue background */
.Form-checkbox input:checked ~ .checkmark {
    background: #fff;
}
/* Create the checkmark/indicator (hidden when not checked) */
.Form-checkbox:after {
    content: "";
    position: absolute;
    display: none;
}
/* Show the checkmark when checked */
.Form-checkbox input:checked ~ .checkmark:after {
    content: "";
    display: inline-block;
}
/* Style the checkmark/indicator */
.Form-checkbox .checkmark:after {
    width: 7px;
    height: 14px;
    border: solid #8ec31e;
    border-width: 0 3px 3px 0;
    -webkit-transform: translateY(-3px) rotate(45deg);
    -ms-transform: translateY(-3px) rotate(45deg);
    transform: translateY(-3px) rotate(45deg);
}
.Form-groupRadio {
    display: flex;
}
.Form-groupRadio > label {
    margin-right: 20px;
    font-size: 16px;
    display: inline-flex;
    align-items: center;
}
.Form-groupRadio input[type="radio"] {
    margin-right: 5px;
    width: 19px;
    height: 19px;
}

/**
 * MODAL
**/
.BasicModal-container .modal-dialog {
    margin: 150px auto;
}
.BasicModal-container .modal-content {
    border: none;
}
.BasicModal-header {
    min-height: 130px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 4px 4px 0 0;
}
.BasicModal-header.info {
    background: #8ec31e;
}
.BasicModal-header.success {
    background: #8ec31e;
}
.BasicModal-header.error {
    background: #e2747e;
}
.BasicModal-header > i {
    color: #fff;
    font-size: 70px;
}
.BasicModal-content {
    text-align: center;
}
.BasicModal-content .text {
    margin-bottom: 0;
}
.BasicModal-footer {
    text-align: center;
}
.BasicModal-footer > button {
    margin: 0 5px;
    padding: 7px 25px;
    color: #fff !important;
    font-size: 14px;
    font-weight: bold;
    border: none;
    border-radius: 20px;
    transition: all 0.2s ease-in-out;
}
.BasicModal-footer > button > i {
    margin-right: 3px;
}
.BasicModal-footer > button.info {
    background: #8ec31e;
}
.BasicModal-footer > button.info:hover {
    background: #8ec31e;
}
.BasicModal-footer > button.success {
    background: #8ec31e;
}
.BasicModal-footer > button.success:hover {
    background: #00b6f3;
}
.BasicModal-footer > button.error {
    background: #e2747e;
}
.BasicModal-footer > button.error:hover {
    background: #d7424e;
}

/**
* MESSAGES
*/
.Msg-error {
    padding: 3px 14px;
    display: inline-block;
    color: #a94442;
    font-size: 13px;
    background: #f2dede;
    border: 1px solid #ebccd1;
    border-radius: 15px;
}

/**
* BUTTONS
*/
.button {
    display: inline-block;
    padding: 10px 15px;
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    background: #8ec31e;
    text-decoration: none;
    text-align: center;
    border: 1px solid #8ec31e;
    outline: none;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
}
.button:hover {
    color: #8ec31e;
    background: #fff;
    border: 1px solid #8ec31e;
}
.button.disabled {
    color: #fff;
    background: #999;
    border: 1px solid #999;
    cursor: default;
}
.button-default {
    background: #999;
    border: 1px solid #999;
}
.button-default:hover {
    color: #999;
    background: #fff;
    border: 1px solid #999;
}
.pointer-event-none {
    pointer-events: none;
}

/**
* COLORS
*/
.bg-green {
    background: #85b200;
}
.bg-default {
    background: #666;
}
.bg-orange {
    background: #ff8c1a;
}

@media screen and (max-width: 992px) {
    .container {
        max-width: 100%;
    }
}

@media screen and (max-width: 640px) {
    .container {
        max-width: 100%;
    }
}

@media screen and (max-width: 575px) {
    .BasicModal-container .modal-dialog {
        max-width: calc(100% - 20px);
    }
    .BasicModal-header {
        min-height: 120px;
    }
    .BasicModal-header > i {
        font-size: 64px;
    }
}

#loading-overlay {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 10001;
    background: rgba(255,255,255,0.8) url("/frontend/img/loading.gif") center no-repeat;
}

p.text.mess-confirm {
    font-size: 16px;
    font-weight: 700;
}

#modal-close .modal-dialog {
    max-width: 820px;
    top: 10%;
}

#modal-close .modal-content {
    box-shadow: 0px 3px 6px #00000029;
    border-radius: 15px;
    opacity: 0.95;
}

#modal-close .modal-body {
    padding: 40px 10px 40px 60px;
}

.modal-close-header {
    display: flex;
    justify-content: space-between;
    color: #719D15;
    font-weight: 600;
}

.modal-close-img {
    width: 247px;
    height: 186px;
}

.modal-close-img img {
    width: 100%;
}

.modal-close-header-text {
    border-top: 2px solid #719D15;
    border-bottom: 2px solid #719D15;
    padding: 8px 0;
    min-width: 485px;
}

.modal-close-header-text-wrap {
    border-top: 2px solid #719D15;
    border-bottom: 2px solid #719D15;
    padding: 0 20px;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.modal-close-header-text-first {
    font-size: 16px;
}

.agaru-text {
    font-size: 32px;
}

.modal-close-header-text-second {
    font-size: 36px;
}

.modal-close-body {
    font-size: 17px;
    color: #333333;
    margin: 30px 0;
    font-weight: 600;
}

.red {
    color: #FF0000;
    border-bottom: 2px solid #FF0000;
    padding-bottom: 2px;
}
.break-sp-only {
    display: none;
}

.modal-backdrop
{
    opacity: 0.1 !important;
}

@media screen and (max-width: 900px) {
    #modal-close .modal-dialog {
        max-width: 353px;
        top: 10%;
        margin: 0 auto;
        z-index: 9999;
    }
    #modal-close .modal-body {
        padding: 25px 12px;
    }
    .modal-close-img {
        width: 141px;
        height: 106px;
        position: absolute;
        right: -30px;
        top: 15px;
    }
    .modal-close-header {
        position: relative;
    }
    .modal-close-header-text {
        min-width: unset;
        width: 100%;
    }
    .modal-close-header-text-first {
        display: flex;
        font-size: 14px;
        max-width: 250px;
    }
    .agaru-text {
        font-size: 22px;
    }
    .modal-close-header-text-second {
        font-size: 20px;
    }
    .modal-close-header-text-wrap {
        padding: 20px 5px;
    }
    .modal-close-body {
        font-size: 14px;
        margin: 15px 0;
    }
    .break-sp-only {
        display: inline;
    }
}

