@charset "utf-8";

/* outline
------------------------------*/
.l-page * {
    font-family: 'Noto Sans JP', sans-serif;
    color: #333333;
}

#esbody {
    overflow-x: hidden;
}

#contents {
    width: 100%;
    padding-bottom: 0;
}


#backtop {
    display: block;
    margin-right: 1015px!important;
    bottom: 30px;
    margin-right: 950px;
    outline: 0 none;
    position: fixed;
    z-index: 10000;
}


/*---------------------------------------------------------
スクロールで下からコンテンツが下から浮き上がってくる
---------------------------------------------------------*/
.js-fadein {
    transition: 1.0s ease;
    transform: translate3d(0,100px,0);
    opacity: 0;
}
.js-fadein.active {
    transform: translate3d(0,0,0);
    opacity: 1;
}

/*---左から-----*/
.js-fadein_left {
    transition-duration: 1.0s;
    transform: translate3d(-300px,0,0);
    opacity: 0;
}
.js-fadein_left.active {
    transform: translate3d(0,0,0);
    opacity: 1;
    transition-delay: 0.3s;
}

/*---右から-----*/
.js-fadein_right {
    transition-duration: 1.0s;
    transform: translate3d(300px,0,0);
    opacity: 0;
}
.js-fadein_right.active {
    transform: translate3d(0,0,0);
    opacity: 1;
    transition-delay: 0.3s;
}

/*------------------------------
main-visual
------------------------------*/
.main-visual {
    height: 107.3333333333vw;
    background: linear-gradient(to bottom, transparent 53.875079%, #F9E641 53.875079%);
}
.swiper-wrapper {
    width: 100%;
    height: 107.3333333333vw;
    margin-bottom: 20px;
}
.swiper-slide img {
    width: 96%;
    height: 107.3333333333vw;
}
.swiper-wrapper .swiper-slide {
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    overflow: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
/*------------------------------
madori-cloud
------------------------------*/
#madori-cloud {
    position: relative;
}
.mc-ttl img {
    display: inline-block;
    width: 73.3333333333vw;
    height: 15.4666666667vw;
    margin: 9.6vw 0 80.1333333333vw 4.6666666667vw;
}
.mc-txt {
    font-size: 3.2vw;
    font-weight: 500;
    line-height: 1.6666666667;
    margin: 0 0 6.4vw 5.4666666667vw;
}
.mc-figure {
    position: absolute;
    top: 31.8666666667vw;
    left: 10.9333333333vw;
}
.fluffy {
    display: inline-block;
    box-shadow: 0 0 3px 0 rgba(0,0,0,.12), 0 2px 3px 0 rgba(0,0,0,.22);
    transition: .3s;
}
.fluffy:hover {
    box-shadow: 0 15px 30px -5px rgba(0,0,0,.15), 0 0 5px rgba(0,0,0,.1);
    transform: translateY(-4px);
}

.mc-img {
    width: 78.2666666667vw;
    height: 67.3333333333vw;
    box-shadow: 0 0.8vw 3.2vw rgba(0, 0, 0, .16);
}
.mc-more-btn {
    display: block;
    width: 73.2vw;
    height: 9.4666666667vw;
    background-color: #1BA1E6;
    color: #FFFFFF;
    font-size: 3.2vw;
    font-weight: 500;
    line-height: 9.4666666667vw;
    text-align: center;
    border-radius: 4.7333333334vw;
    position: relative;
    margin: 0 auto 6.4vw;
}
.mc-more-btn::after {
    content: '';
    width: 1.792vw;
    height: 2.2133333333vw;
    background: url(../images/btn-arrow.png) center/cover;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 4vw;
}
.mc-btn-list {
    margin-top: 1.6333333333vw;
    text-align: center;
    flex-shrink:0;
}
.mc-btn {
    display: inline-block;
    width: 84.1333333333vw;
    height: 19.0666666667vw;
    margin: 0 auto;
}
.mc-btn img {
    width: 84.1333333333vw;
    height: 19.0666666667vw;
    box-shadow: 0 .4vw .8vw rgba(0, 0, 0, .16);
    border-radius: 1.3333333333vw;
}
/*------------------------------
hinagata-bank
------------------------------*/
#hinagata-bank {
    position: relative;
    margin: 5.3333333333vw 0 13.8666666667vw;
}
.hb-figure {
    position: absolute;
    top: 21.8666666667vw;
    left: 10.9333333333vw;
}
.hb-ttl {
    margin: 14.9333333333vw 0 80.1333333333vw 4.6666666667vw;
}
.hb-ttl img {
    width: 73.2vw;
    height: 15.0666666667vw;
}
/*------------------------------
plan-fee
------------------------------*/
.plan-fee-container {
    margin: 0 0 10.6666666667vw;
}
.paln-ttl-wrap {
    position: relative;
}
.plan-ttl {
    display: block;
    margin-bottom: 7.2vw;
    font-size: 6.4vw;
    font-weight: 700;
    text-align: center;
    line-height: 1.6279069767;
}
.fee-tax {
    position: absolute;
    display: inline-block;
    font-size: 3.2vw;
    font-weight: 400;
    text-align: center;
    bottom: 1vw;
    right: 16vw;
}
.plan-container {
    margin-left: 2.6666666667vw;
    overflow-y: hidden;
    overflow-x: scroll;
}
.plan-table-mcimg {
    width: 17.2vw;
    height: 3.3333333333vw;
}
.plan-table-hbimg {
    width: 25.3333333333vw;
    height: 3.3333333333vw;
}
.plan-table {
    border-collapse: collapse;
    width: 129.7786666667vw;
    margin-right: 2.6666666667vw;
}
.plan-table th {
    font-size: 3.2vw;
    vertical-align: baseline;
    font-weight: 500;
    text-align: left;
    width: 20.8vw;
    padding: 3.3vw 0 3.3vw 3vw;
    vertical-align: middle;
}
.plan-table tbody th {
    border: none;
    border-top: #C4C4C4 solid 0.2666666667vw;
    border-bottom: #C4C4C4 solid 0.2666666667vw;
}

.plan-table tbody td {
    font-size: 3.2vw;
    text-align: center;
}
.plan-table tbody td:not(.font-adjust-01) {
    /* display: inline-block; */
    font-size: 3.2vw;
    text-align: center;
    /* border: none; */
    border-top: #C4C4C4 solid 0.2666666667vw;
    border-bottom: #C4C4C4 solid 0.2666666667vw;
    padding: 3.3333333333vw 0;
}
.plan-table-ttl-01 {
    background-color: #1BA1E6;
    font-size: 3.2vw;
    color: #FFFFFF;
    font-weight: 500;
    text-align: center;
    padding: 4.8vw 0 4vw;
    border-top-left-radius: 1.3333333333vw;
}
.plan-table-ttl-02 {
    width: 40vw;
    background-color: #1B7AE6;
    font-size: 3.2vw;
    color: #FFFFFF;
    font-weight: 500;
    text-align: center;
    padding: 4.8vw 0 4vw;
    border-top-right-radius: 1.3333333333vw;
}
.plan-table .cel-adjust-01 {
    text-align: center;
    width: 34.4vw;
    background-color: #F6FCFF;
}
.plan-table .cel-adjust-02 {
    width: 34vw;
    text-align: center;
    background-color: #EBF4FF;
    border-left: #2177E1 solid 0.6666666667vw;
    border-right: #2177E1 solid 0.6666666667vw;
}
.font-adjust-01 {
    font-size: 3.2vw;
    text-align: center;
    border: none;
    border-bottom: #C4C4C4 solid 0.2666666667vw;
    padding: 3.3333333333vw 0;
    color: #2177E1;
    font-weight: 700;
    border-top: #2177E1 solid 0.6666666667vw;
    position: relative;
}
.font-adjust-01::before {
    content: '';
    position: absolute;
    top: -.5vw;
    left: -.5vw;
    width: 11.4666666667vw;
    height: 8.6666666667vw;
    background: url(../images/font-adjust-label01.png) center/cover;
}
.plan-table tbody tr:last-child td:nth-child(3n):not(.plan-table-ttl-01, .plan-table-ttl-02, .plan-img-data-01, .plan-img-data-02){
    border-bottom: #2177E1 solid 0.6666666667vw;
}
.plan-table td:nth-child(3n+1):not(.plan-table-ttl-01, .plan-table-ttl-02, .plan-img-data-01, .plan-img-data-02){
    width: 40.6666666667vw;
}
.plan-img-data-01 {
    padding: 4.5333333333vw 0 4.4666666667vw;
}
.plan-img-data-02 {
    padding: 4vw 0 4.2666666667vw;
}
.table-details {
    margin: 3.4666666667vw 0 0 2vw;
}
.details-ttl , .details-data-01 {
    position: relative;
    top: .5vw;
    font-size: 2.6666666667vw;
    display: inline-block;
}
.details-data-01 {
    left: 1vw;
}
.details-data-03 {
    position: relative;
    left: 1vw;
    font-size: 2.6666666667vw;
    display: inline-block;
}
.details-data-04 {
    position: relative;
    top: .4vw;
    font-size: 2.6666666667vw;
    display: inline-block;
}
/*------------------------------
hrd
------------------------------*/
.hrd-ttl {
    margin: 0 0 53.333vw 5.46vw;
    font-size: 6.4vw;
    font-weight: 700;
    color: #004DA0;
    line-height: 1.6;
}
    .hrd-ttl span {
        font-size: 16px;
        font-weight: 500;
        display: block;
    }

.hrd-txt {
    font-size: 3.2vw;
    font-weight: 500;
    line-height: 1.6;
    margin: 0 0 6.4vw 5.46vw;
}
.hrd-text br {
    display: none;
}
.hrd-wrapper .hrd-img {
    position: absolute;
    top: 21.867vw;
    margin: 0 10.667vw 2.667vw;
    box-shadow: 0 0.8vw 3.2vw rgba(0, 0, 0, .16);
}
    .hrd-img img {
        width: 100%;
    }
.cont-text--contents {
    margin: 5.333vw 2.667vw 0;
    padding: 5.333vw 2.667vw;
    background: #F6FCFF;
    border-radius: 10px;
    box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
}
    .cont-text--ttl {
        color: #1BA1E6;
        font-size: 4vw;
        font-weight: 500;
        text-align: center;
    }
    .cont-text--desc {
        font-size: 3.2vw;
        margin-top: 2.667vw;
        line-height: 1.6;
    }
.cont-text--contents:nth-child(2) {
    background: #EBF4FF;
}
    .cont-text--contents:nth-child(2) .cont-text--ttl {
        color: #1B7AE6;
    }
/**/
.cont-list--wrapper {
    margin-top: 8vw;
}
    .cont-list--contents {
        margin: 5.333vw 2.667vw 0;
        padding: 6.667vw 2.667vw;
        border: solid 3px #1BA1E6;
        border-radius: 15px;
        position: relative;
    }
    .cont-list--ttl {
        width: 8vw;
        height: 8vw;
        padding: 2.133vw;
        color: #fff;
        font-size: 4vw;
        background-color: #1BA1E6;
        border-radius: 100vw;
        display: flex;
        justify-content: center;
        align-items: center;
        position: absolute;
        top: -4.667vw;
        left: -2.667vw;
    }
    .cont-list--desc {
        margin-top: 1.067vw;
        padding-left: 2.933vw;
        font-size: 3.2vw;
        position: relative;
    }
        .cont-list--desc:before {
            content: "";
            position: absolute;
            top: .35em;
            left: 0.8vw;
            -webkit-transform: rotate(50deg);
            -ms-transform: rotate(50deg);
            transform: rotate(50deg);
            width: 0.4vw;
            height: 0.933vw;
            border-right: 2px solid #1BA1E6;
            border-bottom: 2px solid #1BA1E6;
        }
        .cont-list--desc:after {
            content: "";
            position: absolute;
            top: .2em;
            left: 0;
            width: 2vw;
            height: 2vw;
            border: 1px solid #1BA1E6;
            border-radius: 2px;
        }
    .cont-list--contents:nth-child(2) {
        border-color: #1B7AE6;
    }
        .cont-list--contents:nth-child(2) .cont-list--ttl {
            background-color: #1B7AE6;
        }
        .cont-list--contents:nth-child(2) .cont-list--desc:before {
            border-right: 2px solid #1B7AE6;
            border-bottom: 2px solid #1B7AE6;
        }
        .cont-list--contents:nth-child(2) .cont-list--desc:after {
            border: 1px solid #1B7AE6;
        }
/**/
.program-contents {
    margin: 8vw 2.667vw 0;
    padding: 2.667vw 2.667vw 4vw;
    border-radius: 10px;
    box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
    font-size: 3.2vw;
}
    .program-contents--ttl {
        margin: 2.667vw 0 1.6vw;
        padding: 1.333vw 2.667vw;
        color: #fff;
        background: #1ba1e6;
        border-radius: 100vw;
    }
    .program-contents--txt {
        margin: 1.6vw 0 0;
    }
        .program-contents--txt span {
            font-weight: bold;
            display: inline-block;
        }
        .program-contents--txt .text-note {
            font-weight: normal;
        }
/**/
.hrd-table-container {
    margin-top: 8vw;
    margin-left: 2.6666666667vw;
    overflow-y: hidden;
    overflow-x: scroll;
}
    .hrd-container .course-table tbody th:not(.point-cel) {
        width: 70px;
    }
    .hrd-container .course-table tbody td {
        padding: 16px 10px;
    }
    .hrd-card__wrap {
        margin: 2.667vw;
        padding: 2.667vw;
        font-size: 3.2vw;
        border: solid 1px #C4C4C4;
    }
        .hrd-card-ttl {
            margin: 0 0 2vw;
            font-size: 4vw;
            font-weight: 500;
            text-align: center;
        }
/*------------------------------
campaign-info
------------------------------*/
#campaign-info {
    margin-bottom: 11.3333333333vw;
}
.campaign-ttl {
    font-size: 6.4vw;
    font-weight: bold;
    text-align: center;
    margin-bottom: 3.4666666667vw;
}
.campaign-figure-01 {
    text-align: center;
    flex-shrink:0;
}
.campaign-figure-01 img {
    width: 87.6vw;
    height: 39.6vw;
    margin: 0 auto;
}
.campaign-figure-02 {
    text-align: center;
    flex-shrink:0;
}
.campaign-figure-02 img {
    width: 87.6vw;
    height: 39.0666666667vw;
    margin: 1.0666666667vw auto 0;
}
/*------------------------------
contact-info
------------------------------*/
.contact-info {
    width: 100vw;
    height: 122.1333333334vw;
    background: url(../images/contact-bg.png) no-repeat center/cover;
}
.contact-info-02 {
    height: 133.4666666667vw;
    background: url(../images/contact-bg-02.png) no-repeat center/cover;
}
.contact-ttl {
    font-size: 6.4vw;
    font-weight: 700;
    letter-spacing: .01em;
    text-align: center;
    margin-bottom: 7.4666666667vw;
    padding-top: 11.3333333333vw;
}
.consult-ttl {
    margin-bottom: 1.3333333333vw;
}
.contact-txt {
    font-size: 3.2vw;
    font-weight: 700;
    text-align: center;
    line-height: 1.4583333333;
    letter-spacing: .01em;
    margin-bottom: 6.6666666667vw;
}
.contact-list {
    width: 91.2vw;
    background-color: #FFFFFF;
    border-radius: 2vw;
    box-shadow: 0 .4vw .8vw rgba(0, 0, 0, .16);
    margin: 0 auto 3.7333333333vw;
    text-align: center;
}
.contact-list-01 {
    padding: 3.7333333333vw 0 4.8vw;
}
.contact-list-02 {
    padding: 6.6666666667vw 0 7.2vw;
}
.contact-list-01 .contact-card-ttl {
    font-size: 4vw;
    font-weight: 500;
    margin-bottom: 3.0666666667vw;
}
.contact-list-02 .contact-card-ttl {
    font-size: 4vw;
    font-weight: 500;
    margin-bottom: 2vw;
}
.tel-contact-btn, .web-contact-btn {
    display: block;
    height: 16vw;
    border-radius: 1.3333333333vw;
    color: #FFFFFF;
    font-size: 4.2666666667vw;
    letter-spacing: .01em;
    font-weight: 700;
    line-height: 15.5vw;
    text-align: left;
    margin: 0 auto;
    box-shadow: 0 .4vw .8vw rgba(0, 0, 0, .16);
    background-color: #1BA1E6;
}
.web-contact-btn {
    font-size: 3.4666666667vw;
    /* background: url(../images/web-contact-img.png) center/cover; */
    width: 76.6666666667vw;
    /* padding-left: 28.5333333333vw; */
    /* text-align: center; */
    outline: 1px solid;
  outline-color: #1BA1E6;
  outline-offset: 0px;
  display: inline-block;
  transition: .3s;
}
.web-contact-btn:hover {
    animation: light 1s infinite;
}
@keyframes light {
    100% { 
      outline-color: transparent;
      outline-offset: 20px;
    }
  }
.web-contact-btn::before {
    content: '';
    display: inline-block;
    width: 3.9146666667vw;
    height: 3.1906666667vw;
    background: url(../images/web-icon.png) center/cover;
    margin: 0 3.6vw 0 21.3333333333vw;
}
.web-contact-btn::after {
    content: '';
    display: inline-block;
    width: 2.0506666667vw;
    height: 2.6093333333vw;
    background: url(../images/btn-arrow.png) center/cover;
    margin-left: 21.6vw;
}
.font-adjust-02 {
    color: #FFFFFF;
}
.tel-contact-btn {
    /* background: url(../images/tel-contact-img.png) center/cover; */
    width: 76.6666666667vw;
}
.tel-contact-btn::before {
    content: '';
    display: inline-block;
    width: 3.1vw;
    height: 2.9586666667vw;
    background: url(../images/btn-phone-icon.png) center/cover;
    margin: 0 1.6vw 0 21.3333333333vw;
}
.tel-contact-btn::after {
    content: '';
    display: inline-block;
    width: 2.0506666667vw;
    height: 2.6093333333vw;
    background: url(../images/btn-arrow.png) center/cover;
    margin-left: 15.6vw;
}
.reception-hours {
    font-size: 2.6666666667vw;
    padding-top: .8vw;
}
/*------------------------------
f-map
------------------------------*/
#f-map {
    position: relative;
    padding-bottom: 10.6666666667vw;
    background: linear-gradient( to bottom, #ECF9FF 0%, #FFFFFF 88.76482903%);
}
.fmap-ttl {
    margin: 0vw 0 74.9333333333vw 4.6666666667vw;
    padding-top: 4.9333333333vw;
}
.fmap-ttl img {
    width: 73.2vw;
    height: 18.6666666667vw;
}
.fmap-btn-list {
    margin-top: 1.6333333333vw;
    text-align: center;
    flex-shrink:0;
}
.fmap-figure {
    position: absolute;
    top: 25.4666666667vw;
    left: 10.9333333333vw;
    flex-shrink:0;
}
/*------------------------------
course-fee
------------------------------*/
.fmap-fee-tax {
    right: 8vw;
}
.course-container {
    margin-left: 2.6666666667vw;
    overflow-y: hidden;
    overflow-x: scroll;
}
.course-table {
    border-collapse: collapse;
    width: 148.1333333333vw;
    margin-right: 2.6666666667vw;
}
.course-table tbody td {
    font-size: 3.2vw;
    text-align: center;
    width: 32vw;
    padding:  4.2666666667vw 0;
    border-top: #C4C4C4 solid  0.2666666667vw;
    border-bottom: #C4C4C4 solid  0.2666666667vw;
}
.course-table tbody th:not(.point-cel) {
    font-size: 2.9333333333vw;
    font-weight: 500;
    width: 20.7333333333vw;
    border-top: #C4C4C4 solid  0.2666666667vw;
    border-bottom: #C4C4C4 solid  0.2666666667vw;
    text-align: left;
    padding:  1.9333333333vw 0 3.2vw 1.8666666667vw;
}
.point-cel {
    font-size: 2.9333333333vw;
    font-weight: 500;
    width: 20.7333333333vw;
    border-top: #C4C4C4 solid  0.2666666667vw;
    border-bottom: #C4C4C4 solid  0.2666666667vw;
    text-align: left;
    padding:  1.9333333333vw 0 3.2vw 1.8666666667vw;
}
.font-adjust-03 {
    font-size: 2.6666666667vw;
}
.course-table thead td {
    color: #FFFFFF;
    font-size: 3.2vw;
    font-weight: 500;
    text-align: center;
    width: 32vw;
    padding:  4.2666666667vw 1.333vw;
}
.course-table thead td:nth-child(5n+2) {
    border-top-left-radius: 1.3333333333vw;
}
.course-table thead td:nth-child(6n) {
    border-top-right-radius: 1.3333333333vw;
}
.course-table thead td:nth-child(2n) {
    background-color: #1BA1E6;
}
.course-table thead td:nth-child(2n+1) {
    background-color: #1B7AE6;
}
.course-table tbody td:nth-child(2n):not(:first-child) {
    background-color: #F6FCFF;
}
.course-table tbody td:nth-child(2n+1):not(:first-child) {
    background-color: #EBF4FF;
}

.course-details {
    font-size: 2.6666666667vw;
    margin: 2vw 7.8666666667vw 11.4666666667vw 2vw;
}
.course-subtable {
    border-collapse: collapse;
    margin: 0 2vw 0 2.6666666667vw;
    border-bottom: #C4C4C4 solid  0.2666666667vw;
}
.course-subtable thead td {
    width: 74.6666666667vw;
    color: #FFFFFF;
    font-size: 3.2vw;
    font-weight: 500;
    text-align: center;
    padding: 3.2vw 0;
    border-top-left-radius: 1.3333333333vw;
    border-top-right-radius: 1.3333333333vw;
    background-color: #1BA1E6;
}
.course-subtable tbody th {
    width: 20.8vw;
    font-size: 3.2vw;
    font-weight: 500;
    text-align: left;
    padding: 3.2vw 0 3.2vw 1.8666666667vw;
}
.course-subtable tbody td {
    width: 74.6666666667vw;
    font-size: 3.2vw;
    font-weight: 500;
    text-align: center;
    padding: 3.2vw 0;
    background-color: #F6FCFF;
}
/*------------------------------
company-info
------------------------------*/
#company-info {
    margin: 5.8vw 0 11.1333333333vw;
}
#company-info .plan-ttl {
    margin-bottom: 4.2vw;
}
.company-container {
    margin: 0 2.6666666667vw;
}
.company-list {
    font-size: 3.2vw;
    padding: 3vw 0 3.1333333333vw 0;
    border-bottom: #C4C4C4 solid  0.2666666667vw;
    display: flex;
    justify-content: flex-start;
}
.company-ttl {
    width: 21.3333333333vw;
    padding-left: 1.8666666667vw;
}
.pc-backtop {
    display: none;
}
    .smp_backtop img {
        width: 13vw;
    }
    .smp_backtop {
        position: fixed;
        bottom: 5vw;                                   
        left: 2vw;
        z-index: 100;
    }

@media (min-width: 768px) {

    .l-container {
        max-width: 1126px;
        margin: 0 auto;
        padding: 0 30px;
        box-sizing: border-box;
    }
.bank21 {
    max-width: 1137px;

}
    /*------------------------------
    main-visual
    ------------------------------*/
    .main-visual {
        margin-top: 47px;    
        max-width: 100%;
        height: 585px;
        background: linear-gradient(to bottom, transparent 54.875079%, #F9E641 54.875079%);
    }
    .swiper-container {
        max-width: 1454px;
        max-height: 634px;
        /* padding-top: 57px; */
        margin: 0 auto;
        padding: 57px 30px 0;
    }
    .swiper-wrapper {
        max-width: 100%;
        height: auto;
    }
    .swiper-slide img {
    margin-left: 62px;
    height: auto;
    }
    /*------------------------------
    madori-cloud
    ------------------------------*/
    #madori-cloud {
        padding: 140px 0 0;
        position: static;
    }
    .mc-wrapper {
        margin-bottom: 80px;
        display: flex;
        justify-content: space-between;
    }
    #hinagata-bank .mc-txt{
        margin: 0 0 0 9px;
        padding-top: 2px;
    }
    #hinagata-bank .mc-more-btn{
        margin: 36px 0 0 9px;
    }
    #hinagata-bank .hb-figure{
        margin-left: 9px;
    }
    .mc-ttl {
        max-width: 463px;
        height: 123px;
        margin: 15px 0 45px 0;
    }
    .mc-ttl img {
        max-width: 100%;
        height: auto;
        margin: 0;
    }
    .mc-txt {
        font-size: 20px;
        line-height: 1.8;
        margin: 0 0 37px 3px;
    }
    .mc-figure {
        position: static;
        max-width: 558px;
        height: 480px;
        padding-left: 30px;
    }
    .mc-img {
        max-width: 100%;
        width: auto;
        height: auto;
        box-shadow: 0 6px 24px rgba(0, 0, 0, .16);
    }
    .mc-more-btn {
        display: block;
        width: 329px;
        height: 62px;
        font-size: 20px;
        line-height: 58px;
        border-radius: 31px;
        position: relative;
        margin: 7px 7px 0px 2px;

    }
    .mc-more-btn:hover {
        text-decoration: none;
        color: #fff;
    }
    .mc-more-btn::before,
    .mc-more-btn::after {
      content: '';
      width: 7.94px;
      height: 12.16px;
      background: url(../images/btn-arrow.png) center/cover;
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
      right: 19.7px;
    }
    .mc-more-btn::after {
      opacity: 0;
      right: 1em;
    }
    .mc-more-btn:hover::before {
      animation: arrowbefore .5s;
    }
    .mc-more-btn:hover::after {
      animation: arrowafter .5s;
    }
    @keyframes arrowbefore {
      100% {
        right: -.1em;
        opacity: 0;
      }
    }
    @keyframes arrowafter {
      99% {
        right: 1em;
        opacity: 1;
      }
      100% {
        opacity: 0;
      }
    }

    .mc-btn-lists {
        width: 1063px;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
    }
    .mc-btn-list {
        margin-top: 0;
        text-align: center;
        max-width: 341px;
        height: 120px;
        display: block;
        transition: 0.5s;
    }
    .mc-btn-list:hover {
        transform: scale(0.95, 0.95);
    }
    .mc-btn {
        display: block;
        width: 100%;
        height: auto;
        margin: 0;
    }
    .mc-btn img {
        max-width: 100%;
        width: auto;
        height: auto;
        box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
        border-radius: 10px;
        display: block;
        transition: 0.5s;
    }
    .mc-btn img:hover {
        transform: scale(1, 1);
    }
    .mc-modal-img {
        width: 100%;
        height: auto;
    }
    .remodal-wrapper {
        background-color: rgba(0, 0, 0, .5);
    }
    .top-remodal {
        max-width: 850px;
        background: none;
    }
    .top-remodal-close {
        color: #FFFFFF;
    }
    .top-remodal-close::before {
        font-size: 50px;
        font-weight: 400;
    }
    /*------------------------------
    hinagata-bank
    ------------------------------*/
    #hinagata-bank {
        position: static;
        padding: 158px 0 80px;
        margin: 0;
    }
    #hinagata-bank .mc-wrapper {
        flex-direction: row-reverse;
    }
    .hb-ttl {
        max-width: 468px;
        height: 112px;
        margin: 13px 0 56px 0;
    }
    .hb-ttl img {
        max-width: 100%;
        height: auto;
        margin: 2px;
    }
    .hb-figure {
        position: static;
        max-width: 558px;
        height: 480px;
    }
    .mc-btn-wrapper {
        width: 1072px;
        margin: 0 auto;
    }
    
    /*------------------------------
    plan-fee
    ------------------------------*/
    #plan-fee {
        padding-top: 79px;
    }
    .plan-fee-container {
        max-width: 100%;
        padding: 0;
        margin: 0 auto 108px;
    }
    .paln-ttl-wrap {
        position: relative;
        margin-bottom: 61px;
        text-align: center;
    }
    .plan-ttl {
        display: inline-block;
        margin-bottom: 0;
        font-size: 30px;
        line-height: 1.4666666667;
        padding-left: 76px;
    }
    .fee-tax {
        position: static;
        display: inline-block;
        text-align: center;
        font-size: 16px;
        margin-left: 10px;
    }
    .plan-container {
        height: 920px;
        margin-left: 0px;
        overflow-y: hidden;
        overflow-x: hidden;
        position: relative;
    }
    .plan-container__wrap {
        width: 1063px;
        margin: 0 auto;
    }
    .plan-table-mcimg {
        max-width: 129px;
        height: 25px;
    }
    .plan-table-hbimg {
        max-width: 190px;
        height: 25px;
    }
    .plan-table {
        width: 1063px;
        margin-right: 0;
        position: relative;
    }
    .plan-table::after {
        content: "";
        width: 200px;
        height: 984px;
        position: absolute;
        top: 0;
        right: -200px;
    }
    .plan-table th {
        font-size: 18px;
        width: 177px;
        padding: 24px 0;
    }
    .plan-table tbody th.pd40-01 {
        padding: 35px 0 24px 40px;
    }
    .plan-table tbody th.pd40-02 {
        padding: 37px 0 52px 36px;
    }
    .plan-table tbody th {
        border-top: #C4C4C4 solid 1px;
        border-bottom: #C4C4C4 solid 1px;
        padding-left: 36px;
    }
    .plan-table tbody td {
        font-size: 16px;
        text-align: center;
    }
    .plan-table tbody td:not(.font-adjust-01) {
        font-size: 16px;
        border-top: #C4C4C4 solid 1px;
        border-bottom: #C4C4C4 solid 1px;
        padding: 24px 0;
    }
    .plan-table-ttl-01 {
        font-size: 20px;
        padding: 37px 0 37px 9px;
        border-top-left-radius: 10px;
    }
    .plan-table-ttl-02 {
        max-width: 324px;
        font-size: 20px;
        padding: 36px 0;
        border-top-right-radius: 10px;
    }
    .plan-table .cel-adjust-01 {
        max-width: 260px;
    }
    .plan-table .cel-adjust-02 {
        max-width: 250px;
        border-left: #2177E1 solid 5px;
        border-right: #2177E1 solid 5px;
    }
.plan-table tbody tr:nth-of-type(3) th{
    padding: 31px 0 36px 36px;
}
.plan-table tbody tr:nth-of-type(4) th{
    padding: 32px 0 36px 36px;
}
.plan-table tbody tr:nth-of-type(5) th{
    padding: 35px 0 32px 36px;
}
.plan-table tbody tr:nth-of-type(6) th{
    padding: 35px 0 32px 36px;
}
.plan-table tbody tr:nth-of-type(8) th{
    padding: 22px 0 24px 36px;
}
.plan-table tbody tr:nth-of-type(9) th{
    padding: 22px 0 24px 36px;
}

    .font-adjust-01 {
        font-size: 18px;
        border-bottom: #C4C4C4 solid 1px;
        padding: 25px 0;
        border-top: #2177E1 solid 5px;
    }
    .font-adjust-01::before {
        content: '';
        position: absolute;
        top: -1px;
        left: -3px;
        width: 81px;
        height: 60px;
        background: url(../images/font-adjust-label01.png) center/cover;
    }
    .plan-table tbody tr:last-child td:nth-child(3n):not(.plan-table-ttl-01, .plan-table-ttl-02, .plan-img-data-01, .plan-img-data-02){
        border-bottom: #2177E1 solid 5px;
    }
    .plan-table td:nth-child(3n+1):not(.plan-table-ttl-01, .plan-table-ttl-02, .plan-img-data-01, .plan-img-data-02){
        max-width: 320px;
    }
    .plan-img-data-01 {
        padding: 35px 0 39px;
    }
    .plan-img-data-02 {
        padding: 35px 0 39px;
    }
    .table-details {
        width: 1046px;
        display: flex;
        justify-content: flex-start;
        margin: 24px auto 0;
    }
    .table-details *{
        font-size: 16px;
        display: inline-block;
    }
    .details-ttl {
        width: 160px;
    }
    .details-ttl , .details-data-01 {
        position: relative;
        top: 0;
        font-size: 16px;
    }
    .details-data-01 {
        left: 0;
    }
    .details-data-02 {
        position: relative;
        left: 19px;
        font-size: 16px;
    }
    .details-data-03 {
        position: relative;
        top: 2px;
        left: 1px;
        font-size: 16px;
    }
    .details-data-04 {
        position: relative;
        top: 2px;
        left: 19px;
        font-size: 16px;
    }
.plan-table tbody .plan-tabl-top {
    padding: 38px 0 35px 35px;
}
    .plan-tabl-top th {
        padding-left: 0;
    }
    /*------------------------------
    hrd
    ------------------------------*/
    .hrd-container {
        width: 1063px;
        margin: 0 auto;
    }
    .hrd-wrapper {
        margin-bottom: 80px;
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        gap: 55px;
    }
    .hrd-wrapper .hrd-img {
        width: 550px;
        position: inherit;
        margin: 0;
        box-shadow: 0 0 3px 0 rgba(0,0,0,.12), 0 2px 3px 0 rgba(0,0,0,.22);
    }
    .hrd-ttl {
        margin: 13px 0 56px 0;
        font-size: 55px;
    }
    .hrd-txt {
        font-size: 20px;
        line-height: 1.8;
        margin: 0;
    }
    .hrd-text br {
        display: block;
    }
    .cont-text--contents {
        margin: 30px 0 0;
        padding: 30px 30px 40px;
    }
        .cont-text--ttl {
            font-size: 24px;
            font-weight: 500;
        }
        .cont-text--desc {
            font-size: 16px;
            margin-top: 20px;
        }
    /**/
    .cont-list--wrapper {
        margin-top: 40px;
        display: flex;
        justify-content: space-between;
        gap: 30px;
    }
        .cont-list--contents {
            margin: 0;
            padding: 40px 20px 30px;
            border-radius: 15px;
        }
        .cont-list--ttl {
            width: 40px;
            height: 40px;
            padding: 16px;
            font-size: 20px;
            top: -30px;
            left: -20px;
        }
        .cont-list--desc {
            margin-top: 8px;
            padding-left: 22px;
            font-size: 16px;
        }
            .cont-list--desc:before {
                left: 6px;
                width: 3px;
                height: 7px;
            }
            .cont-list--desc:after {
                width: 15px;
                height: 15px;
            }
    /**/
    .program-contents {
        margin: 80px 0 0;
        padding: 15px 40px 60px;
        border-radius: 15px;
        font-size: 16px;
    }
        .program-contents--ttl {
            margin: 25px 0 12px;
            padding: 10px 20px;
            font-size: 18px;
        }
        .program-contents--txt {
            margin: 6px 0 0 20px;
        }
            .program-contents--txt span {
                margin-top: 5px;
            }
            .program-contents--txt .text-note {
                font-size: 12px;
            }
    .hrd-table-container {
        margin-top: 50px;
        margin-left: 0;
        overflow-y: hidden;
        overflow-x: hidden;
        position: relative;
    }
    .hrd-container th {
        padding: 25px 25px 25px 38px!important;
    }
    .hrd-card__wrap {
        margin: 20px 0;
        padding: 20px;
        font-size: 16px;
    }
        .hrd-card-ttl {
            font-size: 20px;
            text-align: left;
            margin: 0 0 10px;
        }
    /*------------------------------
    campaign-info
    ------------------------------*/
    #campaign-info {
        margin-bottom: 89px;
    }
    .campaign-container {
        max-width: 1104px;
        padding: 0 30px;
        margin: 0 auto;
    }
    .campaign-contents {
        display: flex;
        justify-content: space-between;
        max-width: 950px;
        margin: auto;
    }
    .campaign-ttl {
        font-size: 30px;
        margin-bottom: 45px;
    }
    .campaign-figure-01 {
        max-width: 460px;
        padding-right: 42px;
        height: 320px;
    }
    .campaign-figure-01 img {
        max-width: 100%;
        height: auto;
        margin: 0;
    }
    .campaign-figure-02 {
        max-width: 452px;
        height: 317px;
    }
    .campaign-figure-02 img {
        max-width: 100%;
        height: auto;
        margin: 0;
    }
    /*------------------------------
    contact-info
    ------------------------------*/
    .contact-info {
        width: 100vw;
        height: 730px;
        background: url(../images/contact-bg-pc.png) no-repeat center/cover;
    }
    .contact-container {
        max-width: 1200px;
        margin: 0 auto;
        padding: 0 30px;
    }
    .contact-ttl {
        font-size: 30px;
        font-weight: 700;
        letter-spacing: .01em;
        text-align: center;
        margin-bottom: 71px;
        padding-top: 130px;
    }
    .contact-lists {
        display: flex;
        justify-content: space-between;
    }
    .contact-list {
        max-width: 590px;
        background-color: #FFFFFF;
        border-radius: 15px;
        box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
        margin: 0;
        text-align: center;
    }
    .contact-list-01 {
        padding: 68px 22px 99px;
        margin-right: 20px;
    }
    .contact-list-02 {
        padding: 68px 20px 71px;
    }
    .contact-list-01 .contact-card-ttl {
        font-size: 24px;
        margin-bottom: 62px;
    }
    .contact-list-02 .contact-card-ttl {
        font-size: 24px;
        margin-bottom: 34px;
    }
    .tel-contact-btn, .web-contact-btn {
        display: block;
        height: auto;
        border-radius: 10px;
        font-size: 26px;
        line-height: 120px;
        margin: 0 auto;
        box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
    }
    a.tel-contact-btn:hover {
        color: #fff;
        text-decoration: none;
    }
    .contact-btn-wrapper {
        max-width: 466px;
        height: 120px;
        margin: 0 auto;
        position: relative;
    }
    a.web-contact-btn:hover {
        text-decoration: none;
    } 
    .web-contact-btn {
        max-width: 100%;
        width: auto;
        height: auto;
        padding: 0;
        text-align: center;
    }
    .web-contact-btn::before {
        content: '';
        display: inline-block;
        width: 24.11px;
        height: 20.18px;
        background: url(../images/web-icon.png) center/cover;
        margin: 0 0 0 110.8px;
        margin: 0;
    }
    .web-contact-btn::after {
        content: '';
        display: inline-block;
        width: 7.88px;
        height: 12.07px;
        background: url(../images/btn-arrow.png) center/cover;
        /* margin-left: 105px; */
        position: absolute;
        margin: 0;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        right: 31px;
    }
    .font-adjust-02 {
        color: #FFFFFF;
        padding: 0 41px 0 22px;
        display: inline-block;
        text-decoration: none;
    }
    .reception-hours {
        font-size: 20px;
        padding-top: 4px;
    }
    .tel-num, .phone-num {
        font-size: 43px;
        color: #1BA1E6;
        font-weight: 500;
    }
    .tel-num::before {
        display: inline-block;
        content: '';
        width: 19.56px;
        height: 25.51px;
        background: url(../images/tel-icon.png) center/cover;
        margin-right: 8.5px;
        position: relative;
        bottom: 2px;
    }
    .phone-num {
        margin-top: -7px;
    }
    .phone-num::before {
        display: inline-block;
        content: '';
        width: 23.25px;
        height: 22.19px;
        background: url(../images/phone-icon.png) center/cover;
        margin-right: 8.5px;
        position: relative;
        bottom: 2px;
    }
    .phone-num-ttl {
        font-size: 20px;
    }
    /*------------------------------
    f-map
    ------------------------------*/
    #f-map {
        position: static;
        padding: 168px 0 160px;
        background: linear-gradient( to bottom, #ECF9FF 0%, #FFFFFF 64.1076769691% );
    }
    #f-map .l-container {
        max-width: 1126px;
        margin: 0 auto;
        padding: 0 23px 0 30px;
    }
    #f-map .mc-wrapper {
        flex-direction: row-reverse;
        position: relative;
        left: -35px;
    }
    .fmap-ttl {
        padding-top: 0;
        max-width: 463px;
        height: 131px;
        margin: 0 0 51px 0;
    }
    .fmap-ttl img {
        max-width: 100%;
        width: auto;
        height: auto;
        margin: 14px 0 0 0;
    }
    .fmap-figure {
        position: static;
        max-width: 558px;
        height: 480px;
        padding-right: 30px;
    }
    .fmap-btn-lists {
        display: flex;
        justify-content: space-between;
        max-width: 1072px;
        margin: 0 auto;
    }
    .fmap-btn-list {
        margin-top: 0;
        text-align: center;
        max-width: 502px;
        height: 120px;
        display: block;
        transition: 0.5s;
    }
    .fmap-btn-list:hover {
        transform: scale(0.95, 0.95);
    }
    /*------------------------------
    course-fee
    ------------------------------*/
    .fmap-fee-tax {
        right: 0;
    }
    .course-container {
        height: 691px;
        margin-left: 0;
        overflow-y: hidden;
        overflow-x: hidden;
        position: relative;
    }
    .course-container__wrap {
        width: 1063px;
        /* overflow-x: scroll; */
        margin: 0 auto;
    }
    .course-table {
        width: 1063px;
        margin: auto;
        position: relative;
    }
    .course-table::after {
        content: "";
        width: 200px;
        height: 691px;
        position: absolute;
        top: 0;
        right: -200px;
    }
    .course-table tbody td {
        font-size: 16px;
        max-width: 245px;
        padding: 16px 0;
        border-top: #C4C4C4 solid 1px;
        border-bottom: #C4C4C4 solid 1px;
    }
    .course-table tbody th:not(.point-cel) {
        font-size: 18px;
        width: 216px;
        border-top: #C4C4C4 solid 1px;
        border-bottom: #C4C4C4 solid 1px;
        padding: 15px 0 15px 35px;
    }
    .point-cel {
        font-size: 18px;
        width: 216px;
        border-top: #C4C4C4 solid 1px;
        border-bottom: #C4C4C4 solid 1px;
        padding: 25px 0 43px 35px;
    }
    .font-adjust-03 {
        font-size: 16px;
    }
    .block-adjust-01::before {
        white-space: pre;
        content: '料金/\A期間';
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 60px;
        background-color: #FFFFFF;
        padding: 72.5px 0px 63px 21px;
        z-index: 2;
        border-right: #C4C4C4 solid 1px;
    }
    .block-adjust-01 {
        position: relative;
    }
    .font-adjust-04 {
        display: block;
        position: relative;
        left: 70px;
        max-width: 124px;
    }
    .course-table thead td {
        font-size: 20px;
        width: 210px;
        padding: 36px 10px;
    }
    .course-table thead td:nth-child(5n+2) {
        border-top-left-radius: 10px;
    }
    .course-table thead td:nth-child(6n) {
        border-top-right-radius: 10px;
    }
    .course-table tr:nth-of-type(2) th{
        padding: 25px 0 23px 36px;
    }
    .course-table tr:nth-of-type(3) th{
        padding-bottom: 38px;
    }
    .course-table tr:nth-of-type(4) th{
        padding: 22px 0 21px 23px;
    }
    .course-table tr:nth-of-type(5) th{
        padding: 34px 0 33px 23px;
    }
    .course-table tr:nth-of-type(6) th{
        padding: 26px 0 24px 36px;
    }
    .course-details {
        width: 1060px;
        font-size: 16px;
        margin: 0 auto 69px;
    }
    .course-subtable {
        margin: 0 auto 149px;
        border-bottom: #C4C4C4 solid  1px;
    }
    .course-subtable thead td {
        width: 847px;
        font-size: 20px;
        padding: 23px 0 31px;
        border-top-left-radius: 10px;
        border-top-right-radius: 10px;
        background-color: #1BA1E6;
    }
    .course-subtable tbody th {
        width: 216px;
        font-size: 18px;
        text-align: center;
        padding: 24.5px 0 27.5px;
    }
    .course-subtable tbody td {
        width: 847px;
        font-size: 18px;
        padding: 24.5px 0 27.5px;
    }
    /*------------------------------
    company-info
    ------------------------------*/
    #company-info {
        margin: 0 0 154.6px;
        padding-top: 160px;
    }
    #company-info .plan-ttl {
        margin-bottom: 44px;
        margin-top: 14px;
        text-align: center;
        display: block;
        padding-left: 0;
    }
    .company-container {
        max-width: 1063px;
        margin: 0 auto;
        padding: 0 30px;
    }
    .company-list {
        font-size: 18px;
        padding: 22px 0 20px;
        border-bottom: #C4C4C4 solid  1px;
        line-height: 1.2222222222;
    }
    .company-list li:not(:first-child) {
        margin-top: -3px;
    }
    .company-ttl {
        font-size: 20px;
        font-weight: 500;
        width: 238px;
        padding-left: 37px;
    }
.smp_backtop {
    display: none;
}
.pc-backtop {
    display: block;
}
}
   /*-- cookie.php用---*/
.cookieBox {
	width:96%;
	margin:2em auto !important;
	padding:0;
	box-sizing: border-box;
}
.cookieBox h1, .cookieBox h2, .cookieBox h3, .cookieBox h4{
	font-weight:bold;
	margin:1.5em auto 1.2em auto !important;
	display:block;
	padding:0 0 0.3em 0;
	width:96%;
	box-sizing: border-box;
}
.cookieBox h1{
	font-size:150%;
	border-bottom:2px solid #4798b6 !important;
	box-sizing: border-box;
}
.cookieBox h2{
	font-size:135%;
	border-bottom:2px solid #666;
	box-sizing: border-box;
}
.cookieBox h3{
	font-size:120%;
}
.cookieBox h4{
	font-size:115%;
}
.cookieBox p{
	font-size:110% !important;
	display:block;
	width:96%;
	margin:0.8em auto;
	padding:0;
	line-height:150%;
}
.cookie_left{
	margin:2em auto !important;
}
.cookie_contact{
	display:block;
	width:95%;
	margin:0.8em auto;
	padding:1em;
	background:#eee;
	box-sizing: border-box;
}
@media (min-width: 910px) {
.cookieBox {
	width:900px;
}
.cookieBox h1, .cookieBox h2, .cookieBox h3, .cookieBox h4{
	width:880px;
}
.cookieBox p{
	width:880px;
}
.cookie_contact{
	width:880px;
}
}
@media (min-width: 481px) {
.smbr {
	display:none;
}
}
