@charset "UTF-8";

/* --------------------------------------------------
 Block
-------------------------------------------------- */
/* Common Block --------------- */
.commBlc,
.upCommBlc {
    max-width: 1000px;
    padding: 0 4%;
    margin: 0 auto;
    position: relative;
}

.upCommBlc {
    max-width: 1200px;
}

.boxComm {
    padding-top: 7%;
    padding-bottom: 7%;
}

.minBoxComm {
    padding-top: 4%;
    padding-bottom: 4%;
}

.tinyBoxComm {
    padding-top: 2%;
    padding-bottom: 2%;
}

/* bannerStyle01 ------------------*/
.bannerStyle01 {
    background-color: #0857a8;
    border: 14px solid #0857a8;
    display: flex;
    position: relative;
}

.bannerStyle01 .leftBlc {
    background-color: #fff;
    width: 40%;
    position: relative;
}

.bannerStyle01 .leftBlc:before {
    content: "";
    background: #0857a8;
    width: 60px;
    height: calc(100% + 28px);
    border-top-left-radius: 100px;
    border-bottom-left-radius: 100px;
    position: absolute;
    top: -14px;
    right: -4%;
}

.bannerStyle01 .leftBlc:after {
    content: "";
    background: url(../img/common/img_deco_left01.png) no-repeat left top;
    background-size: 100% auto;
    width: 71px;
    height: 43px;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    right: calc(-4% + 60px);
}

.bannerStyle01 .leftBlc .mascot {
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 10%;
    z-index: 4;
}

.bannerStyle01 .leftBlc .mascot img {
    width: 52%;
}

.bannerStyle01 .rightBlc {
    background-color: #0857a8;
    width: 60%;
    text-align: center;
    padding: 20px;
    box-sizing: border-box;
}

.bannerStyle01 .rightBlc .txt01 {
    color: #fff;
    font-size: 120%;
}

.bannerStyle01 .rightBlc .txt02 {
    background-color: #11497f;
    color: #fff;
    font-size: 200%;
    font-weight: bold;
    line-height: 1.5;
    padding: 4px 15px;
    display: inline-block;
    margin-top: 10px;
}

.bannerStyle01 .rightBlc .btn {
    margin-top: 10px;
}

@media screen and (max-width: 767px) {
    .bannerStyle01 .rightBlc .txt01 {
        font-size: 100%;
    }

    .bannerStyle01 .rightBlc .txt02 {
        font-size: 160%;
    }
}

@media screen and (max-width: 640px) {
    .bannerStyle01 {
        display: block;
    }

    .bannerStyle01 .leftBlc {
        display: none;
    }

    .bannerStyle01 .rightBlc {
        width: 100%;
        padding: 10px 0;
    }
}

/* bannerStyle02 ------------------*/
.bannerStyle02 {
    background-color: #fff;
    border: 14px solid #0857a8;
    display: flex;
    position: relative;
}

.bannerStyle02 .leftBlc {
    width: 40%;
    position: relative;
    order: 1;
}

.bannerStyle02 .leftBlc:before {
    content: "";
    background: #0857a8;
    width: 60px;
    height: calc(100% + 28px);
    border-top-right-radius: 100px;
    border-bottom-right-radius: 100px;
    position: absolute;
    top: -14px;
    left: -4%;
}

.bannerStyle02 .leftBlc:after {
    content: "";
    background: url(../img/common/img_deco_right01.png) no-repeat left top;
    background-size: 100% auto;
    width: 71px;
    height: 43px;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: calc(-4% + 60px);
}

.bannerStyle02 .leftBlc .mascot {
    width: 100%;
    text-align: right;
    position: absolute;
    bottom: 0;
    right: 10%;
    z-index: 4;
}

.bannerStyle02 .leftBlc .mascot img {
    width: 52%;
}

.bannerStyle02 .rightBlc {
    background-color: #0857a8;
    width: 60%;
    text-align: center;
    padding: 20px;
    box-sizing: border-box;
    order: 0;
}

.bannerStyle02 .rightBlc .txt01 {
    color: #fff;
    font-size: 120%;
}

.bannerStyle02 .rightBlc .txt02 {
    background-color: #11497f;
    color: #fff;
    font-size: 200%;
    font-weight: bold;
    line-height: 1.5;
    padding: 4px 15px;
    display: inline-block;
    margin-top: 10px;
}

.bannerStyle02 .rightBlc .btn {
    margin-top: 10px;
}

@media screen and (max-width: 767px) {
    .bannerStyle02 .rightBlc .txt01 {
        font-size: 100%;
    }

    .bannerStyle02 .rightBlc .txt02 {
        font-size: 160%;
    }
}

@media screen and (max-width: 640px) {
    .bannerStyle02 {
        display: block;
    }

    .bannerStyle02 .leftBlc {
        display: none;
    }

    .bannerStyle02 .rightBlc {
        width: 100%;
        padding: 10px 0;
    }
}

/* bannerStyle04 ------------------*/
.bannerStyle04 {
    background-color: #ffa500;
    border: 14px solid #ffa500;
    display: flex;
    position: relative;
}

.bannerStyle04 .leftBlc {
    background-color: #fff;
    width: 40%;
    position: relative;
}

.bannerStyle04 .leftBlc:before {
    content: "";
    background: #ffa500;
    width: 60px;
    height: calc(100% + 28px);
    border-top-left-radius: 100px;
    border-bottom-left-radius: 100px;
    position: absolute;
    top: -14px;
    right: -4%;
}

.bannerStyle04 .leftBlc:after {
    content: "";
    background: url(../img/common/img_deco_left02.png) no-repeat left top;
    background-size: 100% auto;
    width: 71px;
    height: 43px;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    right: calc(-4% + 60px);
}

.bannerStyle04 .leftBlc .mascot {
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 10%;
    z-index: 4;
}

.bannerStyle04 .leftBlc .mascot img {
    width: 52%;
}

.bannerStyle04 .rightBlc {
    background-color: #ffa500;
    width: 60%;
    text-align: center;
    padding: 20px;
    box-sizing: border-box;
}

.bannerStyle04 .rightBlc .txt01 {
    color: #fff;
    font-size: 120%;
}

.bannerStyle04 .rightBlc .txt02 {
    background-color: #ff8c00;
    color: #fff;
    font-size: 200%;
    font-weight: bold;
    line-height: 1.5;
    padding: 4px 15px;
    display: inline-block;
    margin-top: 10px;
}

.bannerStyle04 .rightBlc .btn {
    margin-top: 10px;
}

@media screen and (max-width: 767px) {
    .bannerStyle04 .rightBlc .txt01 {
        font-size: 100%;
    }

    .bannerStyle04 .rightBlc .txt02 {
        font-size: 160%;
    }
}

@media screen and (max-width: 640px) {
    .bannerStyle04 {
        display: block;
    }

    .bannerStyle04 .leftBlc {
        display: none;
    }

    .bannerStyle04 .rightBlc {
        width: 100%;
        padding: 10px 0;
    }
}



/* 2023-4-26 井口追記　ここから ------------------*/
/* bannerStyle05 ------------------*/
.bannerStyle05 {
    background-color: #0099ff;
    border: 14px solid #0099ff;
    display: flex;
    position: relative;
    margin-bottom: 7%;
}

.bannerStyle05 .leftBlc {
    background-color: #fff;
    width: 40%;
    position: relative;
}

.bannerStyle05 .leftBlc:before {
    content: "";
    background: #0099ff;
    width: 60px;
    height: calc(100% + 27px);
    border-top-left-radius: 100px;
    border-bottom-left-radius: 100px;
    position: absolute;
    top: -13px;
    right: -3.5%;
}

.bannerStyle05 .leftBlc:after {
    content: "";
    background: url(../img/common/img_deco_left03.png) no-repeat left top;
    background-size: 100% auto;
    width: 71px;
    height: 43px;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    right: calc(-4% + 60px);
}

.bannerStyle05 .leftBlc .mascot {
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 10%;
    z-index: 4;
}

.bannerStyle05 .leftBlc .mascot img {
    width: 52%;
}

.bannerStyle05 .rightBlc {
    background-color: #0099ff;
    width: 60%;
    text-align: center;
    padding: 20px;
    box-sizing: border-box;
}

.bannerStyle05 .rightBlc .txt01 {
    color: #fff;
    font-size: 120%;
}

.bannerStyle05 .rightBlc .txt02 {
    background-color: #0828d8;
    color: #fff;
    font-size: 200%;
    font-weight: bold;
    line-height: 1.5;
    padding: 4px 15px;
    display: inline-block;
    margin-top: 10px;
}

.bannerStyle05 .rightBlc .btn {
    margin-top: 10px;
}

@media screen and (max-width: 767px) {
    .bannerStyle05 .rightBlc .txt01 {
        font-size: 100%;
    }

    .bannerStyle05 .rightBlc .txt02 {
        font-size: 160%;
    }
}

@media screen and (max-width: 640px) {
    .bannerStyle05 {
        display: block;
    }

    .bannerStyle05 .leftBlc {
        display: none;
    }

    .bannerStyle05 .rightBlc {
        width: 100%;
        padding: 10px 0;
    }
}

/* 2023-4-26 井口追記　ここまで ------------------*/





/* areaListBlc ------------------*/
.areaListBlc {
    text-align: left;
    max-width: 320px;
    padding: 0 4%;
    margin: 40px auto;
    position: relative;
}

.areaListBlc .subj {
    background-color: #f4965a;
    text-align: center;
    padding: 7px 15px;
}

.areaListBlc.colorBlue .subj {
    background-color: #63c7dc;
}

.areaListBlc .subj a {
    color: #fff;
    text-decoration: none;
}

.areaListBlc .inner {
    background-color: #fff;
    border: 4px solid #f4965a;
    border-top: none;
    padding: 15px;
}

.areaListBlc.colorBlue .inner {
    border-color: #63c7dc;
}

.areaListBlc .list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.areaListBlc .list li {
    width: 48%;
    margin-bottom: 10px;
}

.areaListBlc .list li a {
    background: url(../img/common/arrow_right01.png) no-repeat left center;
    background-size: 4px auto;
    text-decoration: none;
    padding-left: 10px;
    display: block;
}


/* --------------------------------------------------
 Title
-------------------------------------------------- */
/* pageTtl ------------------*/
.pageTtl {
    position: relative;
}

.pageTtl:after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: url(../img/common/pattern02.png) repeat left top rgba(236, 249, 255, 0.5);
}

.pageTtl .bgArea {
    background: url(../img/common/page_ttl_bg.jpg) no-repeat 50% 50%;
    background-size: cover;
    padding-top: 285px;
}

.pageTtl .txtBlc {
    width: 100%;
    position: absolute;
    top: 37%;
    left: 0;
    z-index: 1;
}

.pageTtl .txtBlc .txt01 {
    font-size: 240%;
    text-align: center;
    text-shadow:
        1px 1px 5px rgba(255, 255, 255, 1),
        1px 1px 5px rgba(255, 255, 255, 1),
        1px 1px 5px rgba(255, 255, 255, 1);
    transition: all 800ms ease-in-out;
    opacity: 0;
    animation-duration: 800ms;
    animation-fill-mode: both;
}

.pageTtl .txtBlc .txt01 img {
    height: 60px;
    margin: -1% 2% 0 -5%;
}

.loadComplete .pageTtl .txtBlc .txt01 {
    opacity: 1;
    animation-name: slideInUp;
    font-weight:bold;
}

@media screen and (max-width: 767px) {
    .pageTtl .bgArea {
        padding-top: 200px;
    }

    .pageTtl .txtBlc .txt01 {
        font-size: 180%;
        text-align: center;
    }

    .pageTtl .txtBlc .txt01 img {
        height: 45px;
    }
}

@media screen and (max-width: 480px) {
    .pageTtl .bgArea {
        padding-top: 140px;
    }

    .pageTtl .txtBlc {
        top: 16%;
    }

    .pageTtl .txtBlc .txt01 {
        line-height: 1.3;
        font-size: 150%;
    }

    .pageTtl .txtBlc .txt01 img {
        display: block;
        width: 40px;
        height: auto;
        margin: 0 auto 3%;
    }
}

/* ttlStyle01 ------------------*/
.ttlStyle01 {
    text-align: center;
    margin-bottom: 2%;
}

.ttlStyle01 .icn {
    display: block;
}

.ttlStyle01 .txt01 {
    color: #010101;
    font-size: 240%;
    display: block;
}

.ttlStyle01 .txt02 {
    color: #71c9da;
    font-size: 120%;
    display: block;
}

@media screen and (max-width: 767px) {
    .ttlStyle01 .txt01 {
        font-size: 180%;
    }

    .ttlStyle01 .txt02 {
        font-size: 110%;
    }
}

@media screen and (max-width: 480px) {
    .ttlStyle01 .txt01 {
        font-size: 160%;
    }

    .ttlStyle01 .txt02 {
        font-size: 100%;
    }
}


/* --------------------------------------------------
 Table
-------------------------------------------------- */
/* Common Table --------------- */
.tblComm {
    width: 100%;
}

.tblComm th,
.tblComm td {
    width: 25%;
    text-align: center;
    vertical-align: middle;
    padding: 10px 15px;
    border: 1px solid #d1d1d1;
    box-sizing: border-box;
}

.tblComm th[align="center"],
.tblComm td[align="center"] {
    text-align: center;
}

.tblComm th[align="right"],
.tblComm td[align="right"] {
    text-align: right;
}

.tblComm th {
    background-color: #f2f2f2;
}

.tblComm th.subTtl {
    background-color: #f7f7f7;
}

.tblComm td {
    background-color: #fff;
}

.tblRespon {
    overflow-x: auto;
}

.tblRespon .tblComm {
    min-width: 600px;
}

.noteTbl {
    color: red;
    text-align: center;
    margin: 2% 0;
    display: none;
}

@media screen and (max-width: 767px) {

    .tblComm th,
    .tblComm td {
        font-size: 90%;
    }

    .tblComm.singleRow th {
        display: block;
        font-weight: bold;
        padding-bottom: 0;
    }

    .tblComm.singleRow td {
        display: block;
    }

    .noteTbl {
        display: block;
    }
}

/* Form Table --------------- */
.tblForm th {
    width: 25%;
    padding: 2%;
    text-align: left;
}

.tblForm td {
    padding: 2%;
    text-align: left;
}

.tblForm th,
.tblForm td {
    border-bottom: 1px solid #e2e2e2;
}

@media screen and (max-width: 767px) {
    .tblForm th {
        width: auto;
    }

    .tblForm.singleRow th {
        display: block;
        font-weight: bold;
        padding-bottom: 0;
    }

    .tblForm.singleRow td {
        display: block;
    }
}

/* tblRespon --------------- */
.tblRespon {
    overflow-x: auto;
}

.noteTblRespon {
    font-size: 80%;
    color: red;
    margin: 2% 0;
    text-align: center;
    display: none;
}

@media screen and (max-width: 767px) {
    .noteTblRespon {
        display: none;
    }
}

@media screen and (max-width: 650px) {
    .noteTblRespon {
        display: block;
    }
}

/* tblStyle01 --------------- */
.tblStyle01 {
    width: 100%;
}

.tblStyle01 th,
.tblStyle01 td {
    background-color: #fff;
    padding: 15px;
    border-top: 1px solid #c8c8c8;
    border-bottom: 1px solid #c8c8c8;
    box-sizing: border-box;
    word-break: break-all;
}

.tblStyle01 th {
    font-weight: 400;
    width: 25%;
}

.tblStyle01 a {
    text-decoration: none;
}

@media screen and (max-width: 640px) {

    .tblStyle01 th,
    .tblStyle01 td {
        padding: 10px;
        display: block;
    }

    .tblStyle01 th {
        width: 100%;
        border-bottom: 0;
        padding-bottom: 0;
    }

    .tblStyle01 td {
        border-top: 0;
        margin-bottom: -1px;
    }
}


/* --------------------------------------------------
 List
-------------------------------------------------- */
/* Common List --------------- */
.listComm li {
    width: 48%;
    float: left;
}

.listComm li:nth-of-type(2n) {
    float: right;
}

/* listStyle01 --------------- */
.listStyle01 dt {
    width: 130px;
    text-align: right;
    padding-top: 10px;
    float: right;
}

.listStyle01 dd {
    font-weight: 400;
    border-bottom: 1px solid #c8c8c8;
    padding: 15px 140px 15px 0;
}

.listStyle01 dd:after {
    content: "";
    display: block;
    clear: both;
}

@media screen and (max-width: 767px) {
    .listStyle01 dt {
        width: 80px;
    }

    .listStyle01 dd {
        padding-right: 90px;
        padding-top: 10px;
        padding-bottom: 10px;
    }
}

/* accordionStyle01 --------------- */
.accordionStyle01 {
    margin-bottom: 10px;
}

.accordionStyle01 .accordTtl {
    background-color: #fff;
    border: 1px solid #243770;
    cursor: pointer;
    padding: 12px 90px 12px 30px;
    position: relative;
    z-index: 19;
}

.accordionStyle01 .accordTtl.ttlOnly {
    cursor: auto;
}

.accordionStyle01 .accordTtl .txt {
    font-size: 140%;
}

.accordionStyle01 .accordTtl .txt .step {
    width: 120px;
    float: left;
    display: block;
}

.accordionStyle01 .accordTtl .txt .num {
    font-size: 160%;
    line-height: 1;
}

.accordionStyle01 .accordTtl .txt .subj {
    display: block;
}

.accordionStyle01 .accordTtl .more {
    background-color: #243770;
    bottom: 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 62px;
}

.accordionStyle01 .accordTtl .more:before {
    content: "";
    background-color: #fff;
    width: 14px;
    height: 2px;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    transition: all 200ms ease-in-out;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
}

.accordionStyle01 .accordTtl.onclick .more:before {
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
}

.accordionStyle01 .accordTtl .more:after {
    content: "";
    background-color: #fff;
    width: 14px;
    height: 2px;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.accordionStyle01 .accordContent {
    border: 1px solid #243770;
    padding: 40px 30px 60px;
    margin-bottom: 60px;
    position: relative;
}

.accordionStyle01.noStep .accordContent .inner {
    padding: 0 40px;
}

.accordionStyle01 .accordContent .btnClose {
    background-color: #243770;
    color: #fff;
    border: 1px solid #243770;
    bottom: -22px;
    box-sizing: border-box;
    cursor: pointer;
    display: block;
    padding: 4px 60px;
    position: absolute;
    right: 10px;
    text-decoration: none;
    z-index: 2;
}

@media screen and (max-width: 1000px) {
    .accordionStyle01 .accordContent {
        padding: 4% 4% 7%;
    }
}

@media screen and (max-width: 767px) {
    .accordionStyle01 .accordTtl {
        padding: 2% 60px 2% 4%;
    }

    .accordionStyle01 .accordTtl .txt {
        font-size: 120%;
    }

    .accordionStyle01 .accordTtl .txt .step {
        width: 80px;
    }

    .accordionStyle01 .accordTtl .more {
        width: 55px;
    }
}

@media screen and (max-width: 480px) {
    .accordionStyle01 .accordTtl {
        padding: 4% 60px 4% 4%;
    }
}


/* --------------------------------------------------
 Button
-------------------------------------------------- */
/* btnStyle01 --------------- */
.btnStyle01 {
    text-align: center;
}

.btnStyle01 a {
    background-color: #2665a4;
    color: #fff;
    width: 100%;
    max-width: 240px;
    text-decoration: none;
    padding: 7px 15px;
    display: inline-block;
    box-sizing: border-box;
    transition: all 200ms ease-in-out;
}

.btnStyle01 a:hover {
    background-color: #71c9da;
}

.btnStyle01 a .arrow {
    background: url(../img/common/arrow_right02.png) no-repeat right center;
    padding-right: 20px;
    display: inline-block;
}

/* btnStyle02 --------------- */
.btnStyle02 {
    text-align: center;
}

.btnStyle02 a {
    background-color: #fff;
    color: #243770;
    width: 100%;
    max-width: 320px;
    border: 1px solid #243770;
    text-decoration: none;
    padding: 7px 15px;
    display: inline-block;
    box-sizing: border-box;
    transition: all 200ms ease-in-out;
}

.btnStyle02 a .arrow {
    background: url(../img/common/arrow_right01.png) no-repeat right 5px center;
    padding-right: 30px;
    display: inline-block;
    transition: all 200ms ease-in-out;
}

.btnStyle02 a:hover .arrow {
    background-position: right center;
}

/* btnStyle03 --------------- */
.btnStyle03 a {
    background-color: #fedf6d;
    color: #2b5ea5;
    font-size: 120%;
    font-weight: 400;
    text-decoration: none;
    padding: 7px 20px;
    border-radius: 3px;
    display: inline-block;
    position: relative;
    -webkit-transition: none;
    transition: none;
    box-shadow: 0 3px 0 3px #ae9848;
}

.btnStyle03 a:hover {
    top: -2px;
    box-shadow: 0 5px 0 3px #ae9848;
}

.btnStyle03 a:active {
    top: 3px;
    box-shadow: none;
}

@media screen and (max-width: 767px) {
    .btnStyle03 a {
        padding: 14px 10px;
    }
}


/* btnStyle04 --------------- */
.btnStyle04 a {
    background-color: #fedf6d;
    color: #8b4513;
    font-size: 120%;
    font-weight: 400;
    text-decoration: none;
    padding: 7px 20px;
    border-radius: 3px;
    display: inline-block;
    position: relative;
    -webkit-transition: none;
    transition: none;
    box-shadow: 0 3px 0 3px #ae9848;
}

.btnStyle04 a:hover {
    top: -2px;
    box-shadow: 0 5px 0 3px #ae9848;
}

.btnStyle04 a:active {
    top: 3px;
    box-shadow: none;
}

@media screen and (max-width: 767px) {
    .btnStyle04 a {
        padding: 14px 10px;
    }
}



/* --------------------------------------------------
 Text
-------------------------------------------------- */
.txtMincho {
    font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "メイリオ", Meiryo, serif;
    /* Mincho */
}

.txtCenter {
    text-align: center;
}

.txtUnderline {
    text-decoration: underline;
}

.txtBig {
    font-size: 115%;
}

.txtSmall {
    font-size: 85%;
}

.txtWeight {
    font-weight: bold;
}

.txtInlineBlc {
    text-align: left;
    display: inline-block;
}

.txtBlack {
    color: #000;
}

.txtRed {
    color: #e60000;
}

@media screen and (max-width: 767px) {
    .txtForSp {
        text-align: left !important;
    }

    .txtForSp br {
        display: none !important;
    }

    span.txtForSp {
        display: inline-block;
    }
}

@media screen and (min-width: 650px) {
    .br-pc {
        display: block;
    }

    .br-sp {
        display: none;
    }
}

@media screen and (max-width: 650px) {
    .br-pc {
        display: none;
    }

    .br-sp {
        display: block;
    }
}

@media screen and (max-width: 480px) {}


/* --------------------------------------------------
 Other Classes
-------------------------------------------------- */
/* Clear fix --------------- */
.clearFix:after {
    content: "";
    clear: both;
    display: block;
}

/* Clear --------------- */
.clear {
    clear: both;
}

/* Hide --------------- */
.hidden {
    opacity: 0;
}

.visible {
    opacity: 1;
}

.disnon {
    display: none;
}

/* imgDeco --------------- */
.imgDeco {
    border: 1px solid #cdcdcd;
    padding: 1px;
    box-sizing: border-box;
}

/* imgCircle --------------- */
.imgCircle {
    border-radius: 100%;
}

/* imgZoomEffect --------------- */
.imgZoom {
    overflow: hidden;
}

.imgZoom img,
.imgZoom .img {
    -ms-transform: translateZ(0px);
    -webkit-transform: translateZ(0px);
    transform: translateZ(0px);
    transition: all 200ms ease-in-out 0s;
}

.imgZoom img:hover,
.imgZoom .img:hover {
    -ms-transform: scale(1.05);
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
}

/* PDF icon --------------- */
.icnPdf {
    vertical-align: bottom;
    margin: 0px 3%;
}

/* Form required --------------- */
.required,
.nRequired {
    background-color: #f02323;
    color: #fff;
    display: inline-block;
    font-size: 12px;
    margin: 0 5px;
    padding: 0;
    text-align: center;
    line-height: 22px;
    width: 34px;
}

.nRequired {
    background-color: #999;
}

@media screen and (max-width: 767px) {

    /* Popup --------------- */
    .popup {
        display: block;
        position: relative;
    }
}

/* hide --------------- */
.hide {
    opacity: 0;
}

@media screen and (max-width: 1200px) {
    .hide {
        opacity: 1;
    }
}