@charset "UTF-8";
/********************************
DEFAULT
*********************************/
@font-face {
    font-family: "ZenMaruGothic";
    src: url("../font/ZenMaruGothic-Black.woff2") format("woff2");
    font-weight: 900;
}
@font-face {
    font-family: "ZenMaruGothic";
    src: url("../font/ZenMaruGothic-Bold.woff2") format("woff2");
    font-weight: 700;
}
@font-face {
    font-family: "ZenMaruGothic";
    src: url("../font/ZenMaruGothic-Medium.woff2") format("woff2");
    font-weight: 500;
}
@font-face {
    font-family: "ZenMaruGothic";
    src: url("../font/ZenMaruGothic-Regular.woff2") format("woff2");
    font-weight: 400;
}
@font-face {
    font-family: "ZenMaruGothic";
    src: url("../font/ZenMaruGothic-Light.woff2") format("woff2");
    font-weight: 300;
}
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video {
    margin: 0;
    padding: 0;
    outline: 0;
}
article,aside,details,figcaption,figure,footer,header,main,menu,nav,section {
    display: block;
}
h1,h2,h3,h4,h5,h6,caption,address,th {
    font-weight: normal;
    margin: 0;
    padding: 0;
    font-size: 100%;
}
ul,ol,li,dl,dt,dd {
    list-style: none;
}
img,iframe {
    vertical-align: middle;
    border: 0;
}
img {
    line-height: 0;
    font-size: 0;
    -webkit-backface-visibility: hidden;
}
table {
    border-collapse: collapse;
}
th {
    font-weight: normal;
    text-align: left;
}
button,fieldset,form,input,label,legend,select,textarea {
    font-style: inherit;
    font-weight: inherit;
    font-size: 100%;
    margin: 0;
    padding: 0;
    vertical-align: baseline;
}
select {
    padding: 2px;
}
select::-ms-expand {
    display: none;
}
input,select {
    font-size: 100%;
    vertical-align: middle;
}
input[type="text"],input[type="password"],textarea,select {
    outline: none;
}
textarea {
    font-size: 100%;
}
input {
    vertical-align: middle;
}
input[type="text"] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    padding: 0;
    border: 0;
    border-radius: 0;
    outline: none;
    background: none;
    box-sizing: border-box;
    width: 100%;
    background: #fff;
}
::-webkit-input-placeholder {
    color: #B3B3B4;
}
::-webkit-input-placeholder {
    color: #B3B3B4;
}
:placeholder-shown {
    color: #B3B3B4;
}
::-webkit-input-placeholder {
    color: #B3B3B4;
}
:-moz-placeholder {
    color: #B3B3B4; opacity: 1;
}
::-moz-placeholder {
    color: #B3B3B4; opacity: 1;
}
:-ms-input-placeholder {
    color: #B3B3B4;
}
label {
    padding: 0 0 0 2px;
}
hr {
    display: none;
}
a {
    transition: opacity 0.05s ease-in-out , all 0.05s ease-in-out;
}
a,a:link {
    color: #000;
    text-decoration: none;
    word-break: break-all;
}
a:visited {
    color: #000;
}
@media (min-width: 896px) {
    a:hover,a:active {
        color: #fff;
        text-decoration: underline;
    }
}
*:focus {
    outline: none;
}
.m_b0 {
    margin-bottom: 0 !important;
}
.m_b1 {
    margin-bottom: 1px !important;
}
.m_b2 {
    margin-bottom: 2px !important;
}
.m_b3 {
    margin-bottom: 2px !important;
}
.m_b5 {
    margin-bottom: 5px !important;
}
.m_b7 {
    margin-bottom: 7px !important;
}
.m_b8 {
    margin-bottom: 8px !important;
}
.m_b10 {
    margin-bottom: 10px !important;
}
.m_b11 {
    margin-bottom: 11px !important;
}
.m_b12 {
    margin-bottom: 12px !important;
}
.m_b13 {
    margin-bottom: 13px !important;
}
.m_b15 {
    margin-bottom: 15px !important;
}
.m_b20 {
    margin-bottom: 20px !important;
}
.m_b25 {
    margin-bottom: 25px !important;
}
.m_b30 {
    margin-bottom: 30px !important;
}
.m_b35 {
    margin-bottom: 35px!important;
}
.m_b40 {
    margin-bottom: 40px !important;
}
.m_b45 {
    margin-bottom: 45px !important;
}
.m_b50 {
    margin-bottom: 50px !important;
}
.m_b55 {
    margin-bottom: 55px !important;
}
.a_center {
    text-align: center;
}
.a_left {
    text-align: left;
}
.a_right {
    text-align: right;
}
.f_bold {
    font-weight: bold;
}
.f_line {
    background-image: linear-gradient(#ffee00, #ffee00);
    background-position: 0 100%;
    background-size: 100% 8px;
    background-repeat: repeat-x;
    text-decoration: none;
}
.f_yugo {
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
}
.f_yumin {
    font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "Noto Serif JP", serif;
}
.f_cg {
    font-family: Century Gothic, CenturyGothic, AppleGothic, serif;
}
.f_arial {
    font-family: Arial, Helvetica Neue, Helvetica, serif;
}
.c_fix:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    font-size: .01em;
    height: 0;
    overflow: hidden;
}
.c_fix {
    min-height: 1px;
}
html {
    height: 100%;
}
body {
    font-family: "ZenMaruGothic", sans-serif;
    line-height: 1.8;
    color: #414141;
    font-size: 16px;
    font-weight: 400;
    text-align: left;
    min-width: 896px;
    min-height: 100%;
    height: auto !important;
    position: relative;
    -webkit-text-size-adjust: none;
    -webkit-font-smoothing: antialiased;
    background: #FFF8EA;
    box-sizing: border-box;
}
/********************************
MV
*********************************/
.mv_wrap {
    position: relative;
    width: 100%;
    overflow-x: clip;
}
.mv_wrap::before {
    position: absolute;
    content: '';
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
}
.mvLogo_wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #fff;
}
.mvTitle_wrap {
    position: relative;
}
.mvTitle-box {
    position: absolute;
    left: 50%;
}
.mv_ttl {
    text-align: center;
    font-weight: 700;
    line-height: 0.895;
    letter-spacing: 0.05em;
}
.mv_ttl .is-uline {
    position: relative;
}
.mv_ttl .is-uline .is-strong::after {
    position: absolute;
    content: '';
    z-index: 9;
}
.mv_ttl .is-strong {
    position: relative;
}
.mv_ttl .is-strong::before {
    content: '';
    position: absolute;
    top: 0;
    background-color: #f77935;
    border-radius: 50%;
}
.mv_ttl .is-ver2 {
    display: block;
}
.mv_ttl .is-ver2 span {
    letter-spacing: 0.02em;
}
.mvTitle_wrap p {
    font-weight: 700;
    letter-spacing: 0.02em;
}
.search-btn {
    background-color: #f77935;
}
.search-btn.ver2 {
    background-color: #018788;
}
.search-btn a {
    display: flex;
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    position: relative;
    text-align: center;
}
.search-btn span {
    font-weight: 700;
    color: #FFFFFF;
}
.search-btn a::before {
    position: absolute;
    content: '';
    background: url(../svg/mv_arw.svg) no-repeat;
    background-size: 100% auto;
    top: 50%;
    transform: translateY(-50%);
    z-index: 9;
}
/********************************
recomend
*********************************/
.recomend_wrap {
    position: relative;
}
.recomend_wrap::before {
    position: absolute;
    content: '';
    background: url(../svg/rec_wave-top.svg);
    background-size: cover;
    background-position: top;
    width: 100%;
    z-index: -1;
}
.recomend_in {
    position: relative;
    background: #fff;
    z-index: -1;
    width: 100%;
}
.recomendList_wrap {
    position: relative;
}
.recomendList_wrap::before {
    position: absolute;
    content: '';
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 9;
}
.recomendBox {
    position: relative;
}
.recomendBox::before {
    position: absolute;
    content: '';
    background: url(../svg/reclist_bg.svg) no-repeat;
    background-size: 100% auto;
    z-index: -1;
}
.recomendBox img {
    position: absolute;
    z-index: 9;
}
.recomendList_in p {
    color: #000000;
}
.recomend-ttl {
    text-align: center;
}
.recomend-ttl span {
    font-weight: 700;
    position: relative;
}
.recomend-ttl span::before {
    position: absolute;
    content: '';
    z-index: 9;
}
.recomend-ttl .is-uline::before {
    background: url(../svg/rec_line01.svg) no-repeat;
    background-size: 100% auto;
}
.recomend-ttl .is-clr::before {
    background: url(../svg/rec_line02.svg) no-repeat;
    background-size: 100% auto;
}
.recomend-ttl .is-clr::before {
    left: 50%;
    transform: translateX(-50%);
}
.recomend-ttl .is-clr {
    display: block;
    color: #F77935;
}
.recdl_box {
    position: relative;
    display: flex;
    justify-content: center;
}
.recdl_box::before {
    position: absolute;
    content: '';
    z-index: 9;
}
.recdl_box::after {
    position: absolute;
    content: '';
    z-index: 9;
}
.recdl-img {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}
.recdl_list .is-underline {
    text-underline-offset: 2px;
    text-decoration: underline;
    text-decoration-color: #CFCFCF;
}
.recdl_box.is-ver1 .recdl_list::before {
    position: absolute;
    content: '';
    z-index: 9;
}
.recdl_box.is-ver1 .recdl_list::after {
    position: absolute;
    content: '';
    z-index: 9;
}
.recdl_box.is-ver3 .recdl_list::before {
    position: absolute;
    content: '';
    z-index: 9;
}
.recdl_list dt {
    font-weight: 700;
}
/********************************
cv
*********************************/
.cv_wrap {
    position: relative;
    display: flex;
    justify-content: center;
}
.cv_wrap.is_top::before {
    position: absolute;
    content: '';
    background: url(../svg/cv_wave-top.svg);
    background-size: cover;
    background-position: top;
    width: 100%;
    top: 0;
    left: 0;
    z-index: -2;
}
.cv_wrap.is_top::after {
    position: absolute;
    content: '';
    background: url(../svg/cv_wave-btm.svg);
    background-size: cover;
    background-position: top;
    width: 100%;
    bottom: 0;
    left: 0;
    z-index: -1;
}
.cv_in {
    position: relative;
    background: linear-gradient(260.16deg, #9BF6FF 0%, #CAFFBF 96.21%);
    display: flex;
    flex-direction: column;
    align-items: center;
}
.cv_in::before {
    position: absolute;
    content: '';
    background: url(../svg/cv_bg01.svg) no-repeat;
    background-size: 100% auto;
    z-index: 9;
}
.cv_in::after {
    position: absolute;
    content: '';
    background: url(../svg/book.svg) no-repeat;
    background-size: 100% auto;
    z-index: 9;
}
.cv-ttl {
    text-align: center;
}
.cv-ttl span {
    position: relative;
    font-weight: 700;
}
.cv-ttl span::before {
    position: absolute;
    content: '';
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 9;
}
.cv-ttl .is-uline::before {
    background: url(../svg/cv_line01.svg) no-repeat;
    background-size: 100% auto;
}
.cv-ttl .is-uline.is-ver2::before {
    background: url(../svg/cv_line02.svg) no-repeat;
    background-size: 100% auto;
}
.cv-ttl .is-uline.is-ver2 {
    display: block;
}
.cv-ttl .is-clr {
    color: #F77935;
}
.cv-search_wrap {
    border-radius: 16px;
    background: #fff;
}
.cv-search-ttl {
    font-weight: 700;
    text-align: center;
}
.cv-search-box {
    display: flex;
    align-items: center;
}
.cv-search-box div {
    position: relative;
}
.cv-search-box div::before {
    position: absolute;
    content: '';
    background: url(../svg/cv_arw.svg) no-repeat;
    background-size: 100% auto;
    top: 50%;
    transform: translateY(-50%);
    z-index: 9;
}
.cv-search-box select {
    appearance: none;
    background: #F2F2F2;
    border: none;
    color: #878787;
    font-weight: 500;
    line-height: 1.438;
}
.cv-searchbtn {
    background: #F77935;
    border: none;
    width: 180px;
    text-align: center;
    align-items: center;
}
.cv-searchbtn span {
    position: relative;
    font-weight: 500;
    line-height: 1.438;
    color: #FFFFFF;
}
.cv-searchbtn span::before {
    position: absolute;
    content: '';
    background: url(../svg/cv_search.svg) no-repeat;
    background-size: 100% auto;
    width: 14px;
    height: 14px;
    top: 50%;
    z-index: 9;
}
.cv-contactbtn {
    background: #018788;
    text-align: center;
}
.cv-contactbtn a {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.cv-contactbtn span {
    font-weight: 500;
    color: #FFFFFF;
}
/********************************
voice
*********************************/
.is-bgclr {
    position: relative;
}
.is-bgclr::before {
    position: absolute;
    content: '';
    background-color: #fff;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: -2;
}
.voice_wrap {
    position: relative;
    display: flex;
    justify-content: center;
    text-align: center;
}
.voice-ttl {
    position: relative;
    display: inline-block;
    font-weight: 700;
    text-align: center;
    letter-spacing: 0.02em;
}
.voice-box {
    display: flex;
    justify-content: center;
    text-align: center;
    border-radius: 16px;
    position: relative;
}
.voice-box.is-child {
    background-color: #A5F8F1;
}
.voice-box::before {
    position: absolute;
    content: '';
    left: 50%;
    transform: translateX(-50%);
    z-index: 9;
    border-radius: 50%;
}
.voice-box.is-child::before {
    background: #fff url(../svg/voice_child.svg) no-repeat;
    background-size: 100% auto;
}
.voice-box.is-parent::before {
    background: #fff url(../svg/voice_parent.svg) no-repeat;
    background-size: 100% auto;
}
.voice-box.is-child::after {
    background: url(../svg/voice_shape01.svg) no-repeat;
    background-size: 100% auto;
}
.voice-box.is-parent::after {
    background: url(../svg/voice_shape03.svg) no-repeat;
    background-size: 100% auto;
}
.voice-box::after {
    position: absolute;
    content: '';
    z-index: -1;
}
.voice-box.is-parent {
    background-color: #DBF8D8;
}
.voice-box dl {
    position: relative;
}
.voiceList_wrap dt {
    font-weight: 700;
}
.voiceList_wrap dd {
    text-align: left;
}
.is-wgt {
    font-weight: 700;
}
.voice_wrap p {
    font-size: 14px;
    line-height: 1.429;
    text-align: right;
}
/********************************
skill
*********************************/
.skill_wrap {
    overflow: hidden;
}
.skill_in {
    width: 100%;
    background: #A6F8F0;
}
.skillTtl_wrap {
    display: flex;
    justify-content: center;
}
.skillTtl_in {
    position: relative;
}
.skill-ttl {
    font-weight: 700;
    line-height: 2;
    text-align: center;
}
.skill-ttl .skill-txt {
    display: flex;
    align-items: center;
    font-weight: 700;
}
.skill-txt .is-clr {
    color: #F77935;
}
.skill-txt .is-wgt {
    font-weight: 900;
    letter-spacing: -0.03em;
}
.splide__track--nav>.splide__list>.splide__slide.is-active {
    border: none;
}
.splide__track--nav>.splide__list>.splide__slide {
    border: none;
}
.slide-num {
    position: absolute;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    background: #F77935;
    font-weight: 900;
    text-align: center;
    color: #FFFFFF;
    z-index: 10;
}
.slide_wrap {
    position: relative;
    background: #fff;
    border-radius: 16px;
    box-shadow: 8px 8px 0px 0px #82D2D3;
}
.slide-ttl {
    font-weight: 700;
    line-height: 1.458;
    text-align: center;
    color: #01564e;
}
.slide_txt {
    font-weight: 500;
}
.splide__pagination {
    display: flex;
    justify-content: center;
    width: 100%;
    position: relative;
    z-index: 20;
}
.splide__pagination__page {
    background-color: #fff;
    border-radius: 50%;
    border: none;
    padding: 0;
    appearance: none;
    outline: none;
    transform: none;
    opacity: 1;
}
.splide__pagination__page.is-active {
    background-color: #82D2D3;
    transform: none;
}
.intro_wrap {
    display: flex;
    justify-content: center;
}
.intro_in {
    background-color: #fff;
    border: 5px solid #82D2D3;
    border-radius: 16px;
    box-sizing: border-box;
}
.intro_in a {
    display: flex;
    color: #414141;
}
.intro_box h4 {
    font-weight: 700;
}
.intro_box .is-wgt { 
    font-weight: 700;
    font-size: 16px;
    line-height: 1.438;
}
.intro_box .is-txt {
    font-weight: 400;
    line-height: 1;
}
.intro_box .is-txt.is-ver2 {
    margin-top: 7px;
}
.intro-btn {
    display: flex;
    justify-content: flex-end;
}
.intro-btn span {
    position: relative;
    color: #fff;
    font-weight: 700;
    font-size: 16px;
    line-height: 1;
    background: #F77935;
    border-radius: 30px;
}
.intro-btn span::before {
    position: absolute;
    content: '';
    background: url(../svg/skill_arw.svg) no-repeat;
    background-size: 100% auto;
    width: 10px;
    height: 8px;
    top: 50%;
    right: 13px;
    transform: translateY(-50%);
    z-index: 9;
}
/********************************
course
*********************************/
.course_box.is-ver1 dl::before {
    position: absolute;
    content: '';
    z-index: 9;
}
.course_box.is-ver2 dl::after {
    position: absolute;
    content: '';
    background: url(../svg/course_img02.svg) no-repeat;
    background-size: 100% auto;
    z-index: 9;
}
.course_box dl {
    background-color: #E5F9F9;
    border-radius: 16px;
    box-shadow: 8px 8px 0 0 #82D2D3;
    box-sizing: border-box;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}
.course-ttl {
    position: absolute;
    background-color: #008275;
    border-radius: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    left: 50%;
    transform: translateX(-50%);
    z-index: 9;
}
.course-ttl span {
    font-weight: 700;
    color: #FFFFFF
}
.course-ttl .is-clr {
    background: #fff;
    padding: 5px 11px;
    border-radius: 30px;
    line-height: 1;
    text-align: center;
    letter-spacing: 0.17em;
    color: #008275;
    box-sizing: border-box;
}
.course-price {
    font-weight: 700;
    color: #008275;
}
.course-tax {
    font-weight: 500;
    font-size: 24px;
    line-height: 1.458;
}
/********************************
footer
*********************************/
.footer_wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #008275;
    text-align: center;
    height: 200px;
}
.footer-list {
    line-height: 1;
}
.footer_wrap span {
    font-weight: 700;
    font-size: 14px;
    line-height: 1.429;
    color: #FFFFFF;
}
.copyright {
    margin-top: 29px;
    color: #FFFFFF;
    line-height: 1;
}
.cp0-bnr_wrap {
    padding: 40px 0 70px;
    box-sizing: border-box;
    text-align: center;
    background: #fff;
}
.cp0-bnr_wrap img {
    max-width: 800px;
    width: 100%;
    height: auto;
}
.floating-banner {
    position: fixed;
    bottom: 40px;
    left: 40px;
    z-index: 9999;
    width: 220px;
    height: 220px;
    display: none;
}
.floating-banner .close-btn {
    position: absolute;
    top: 8px;
    right: 8px;
    background: rgba(0, 0, 0, 0.5);
    color: #fff;
    border: none;
    font-size: 18px;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    cursor: pointer;
    line-height: 1;
    text-align: center;
    z-index: 9;
    display: flex;
    justify-content: center;
    align-items: center;
}
.floating-banner img {
    width: 100%;
    height: auto;
    display: block;
}
/********************************
C系CSS
*********************************/
.c-pc {
    display: block;
}
.c-pc-in {
    display: inline;
}
.c-sp {
    display: none;
}
.c-sp-in {
    display: none;
}
.c-sp-sp {
    display: none;
}
.c-wrap {
    width: 1200px;
    margin: 0 auto;
}
@media only screen and (min-width: 896px) {
    main {
        padding-bottom: 70px;
    }
    /********************************
    MV
    *********************************/
    .mv_wrap {
        height: 704px;
    }
    .mv_wrap::before {
        background: url(../images/mv_bg.png) no-repeat center top / cover;
        width: 1633px;
        height: 800px;
        top: -103px;
    }
    .mv_wrap img {
        position: relative;
        top: -25px;
    }
    .mvLogo_wrap {
        padding: 31px 47px 31px 37px;
        width: 238px;
        border-radius: 0 0 16px 0;
    }
    .mvLogo_wrap a:hover {
        opacity: 0.8;
    }
    .mvLogo-right {
        margin-left: 22px;
    }
    .mvTitle_wrap {
        display: flex;
        justify-content: center;
    }
    .mvTitle-box {
        top: 90px;
        transform: translateX(calc(-50% + 56px));
    }
    .mv_ttl {
        font-size: 76px;
    }
    .mv_ttl .is-uline .is-strong::after {
        background: url(../svg/PC_mv_line01.svg) no-repeat;
        width: 286px;
        height: 6px;
        left: 9px;
        bottom: -6px;
    }
    .mv_ttl .is-uline.is-ver2 .is-strong::after {
        background: url(../svg/PC_mv_line02.svg) no-repeat;
        background-size: 100% auto;
        width: 573px;
        bottom: -2px;
        left: -3px;
    }
    .mv_ttl .is-strong::before {
        left: 34px;
        width: 12px;
        height: 12px;
        box-shadow: 76px 0 #f77935;
    }
    .mv_ttl .is-ver2 .is-strong::before {
        left: 32px;
        box-shadow:
            73px 0 #f77935,
            149px 0 #f77935,
            225px 0 #f77935,
            305px 0 #f77935,
            385px 0 #f77935;
    }
    .mv_ttl .is-ver2 {
        margin-top: 71px;
        text-align: left;
    }
    .mvTitle_wrap p {
        font-size: 32px;
        line-height: 1;
        padding-left: 63px;
        margin-top: 51px;
    }
    .search-btn {
        width: 372px;
        height: 73px;
        border-radius: 16px;
        margin: 60px 0 0 95px;
        cursor: pointer;
        transition: opacity 0.05s ease-in-out;
    }
    .search-btn.ver2 {
        margin: 25px 0 0 95px;
    }
    .search-btn:hover {
        opacity: 0.7;
    }
    .search-btn span {
        font-size: 21px;
        line-height: 1.2;
        padding-right: 3px;
    }
    .search-btn a::before {
        width: 36px;
        height: 36px;
        right: 30px;
    }
    .cv_in {
        box-sizing: border-box;
        width: 100%;
        max-width: 1340px;
    }
    /********************************
    recomend
    *********************************/
    .recomend_wrap {
        padding-top: 40px;
    }
    .recomend_wrap::before {
        height: 283px;
        top: -92px;
    }
    .recomend_in {
        padding-bottom: 68px;
    }
    .recomendList_wrap {
        display: flex;
        align-items: center;
        text-align: center;
        justify-content: space-between;
        width: 1111px;
        margin: 0 auto;
        padding-bottom: 118px;
    }
    .recomendList_wrap::before {
        background: url(../svg/PC_trianglebtm.svg) no-repeat;
        background-size: 100% auto;
        width: 641px;
        height: 120px;
    }
    .recomendList_in {
        width: 315px;
        height: 330px;
        justify-content: center;
        display: flex;
    }
    .recomendBox::before {
        width: 315px;
        height: 280px;
        left: 50%;
        transform: translateX(-50%);
        top: 0;
    }
    .recomendBox img {
        left: 50%;
        transform: translateX(-50%);
    }
    .recomendBox.is-ver1 img {
        top: 44px;
    }
    .recomendBox.is-ver2 img {
        top: 33px;
    }
    .recomendBox.is-ver3 img {
        top: 70px;
    }
    .recomendList_in p {
        font-weight: 500;
        font-size: 20px;
        line-height: 1.7;
        text-align: center;
        padding-top: 231px;
    }
    .recomend-ttl {
        margin: 16px 0 55px;
        text-align: center;
    }
    .recomend-ttl span {
        font-size: 48px;
        line-height: 1.458;
    }
    .recomend-ttl span::before {
        height: 5px;
        bottom: -5px;
    }
    .recomend-ttl .is-uline::before {
        width: 571px;
        left: 7px;
    }
    .recomend-ttl .is-clr::before {
        width: 232px;
    }
    .recomend-ttl .is-clr {
        font-size: 60px;
        line-height: 1.415;
    }
    .recdl_in {
        display: flex;
        justify-content: space-between;
        width: 1184px;
        margin: 0 auto;
    }
    .recdl_box {
        width: 364px;
        height: 416px;
    }
    .recdl_box::before {
        background: url(../svg/PC_quote-top.svg) no-repeat;
        background-size: 100% auto;
        width: 57px;
        height: 99px;
        top: -6px;
        left: -6px;
    }
    .recdl_box::after {
        background: url(../svg/PC_quote-btm.svg) no-repeat;
        background-size: 100% auto;
        width: 57px;
        height: 99px;
        bottom: -6px;
        right: -6px;
    }
    .recdl_box.is-ver1 .recdl-img {
        top: 36px;
    }
    .recdl_box.is-ver2 .recdl-img {
        top: 16px;
    }
    .recdl_box.is-ver3 .recdl-img {
        top: 35px;
    }
    .recdl_list {
        padding-top: 203px;
        width: 300px;
        position: relative;
    }
    .recdl_box.is-ver1 .recdl_list::before {
        background: url(../svg/rec_shape01.svg) no-repeat;
        background-size: 100% auto;
        width: 301px;
        height: 213px;
        top: -177px;
        left: -226px;
    }
    .recdl_box.is-ver1 .recdl_list::after {
        background: url(../svg/rec_shape02.svg) no-repeat;
        background-size: 100% auto;
        width: 170px;
        height: 180px;
        bottom: -122px;
        right: -168px;
    }
    .recdl_box.is-ver3 .recdl_list::before {
        background: url(../svg/rec_shape03.svg) no-repeat;
        background-size: 100% auto;
        width: 201px;
        height: 150px;
        top: -130px;
        right: -38px;
    }
    .recdl_list dt {
        font-size: 20px;
        line-height: 1.4;
        margin-bottom: 6px;
    }
    .recdl_list dd {
        line-height: 1.75;
    }
    /********************************
    cv
    *********************************/
    .cv_wrap {
        padding-top: 67px;
    }
    .cv_wrap.is_top {
        padding: 162px 0 146px;
    }
    .cv_wrap.is_top::before {
        height: 6.111vw;
    }
    .cv_wrap.is_top::after {
        height: 7.153vw;
    }
    .cv_in {
        padding: 49px 278px 71px;
        border-radius: 800px;
    }
    .cv_in::before {
        width: 236px;
        height: 147px;
        top: -6px;
        left: 139px;
    }
    .cv_in::after {
        width: 229px;
        height: 158px;
        bottom: 78px;
        right: 139px;
    }
    .cv-ttl {
        margin-bottom: 30px;
    }
    .cv-ttl span {
        font-size: 32px;
        line-height: 1.75;
    }
    .cv-ttl span::before {
        height: 3px;
    }
    .cv-ttl .is-uline::before {
        width: 310px;
    }
    .cv-ttl .is-uline.is-ver2::before {
        width: 419px;
    }
    .cv-search_wrap {
        width: 784px;
        height: 219px;
        box-shadow: 8px 8px 0px 0px #82D2D3;
        display: flex;
        justify-content: center;
    }
    .cv-search_in {
        padding: 42px 0 57px;
    }
    .cv-search-ttl {
        font-size: 24px;
        line-height: 1.458;
        margin-bottom: 33px;
    }
    .cv-search-box div::before {
        width: 16px;
        height: 9px;
        pointer-events: none;
    }
    .cv-prefecture {
        margin-right: 7px;
    }
    .cv-city {
        margin-right: 13px;
    }
    .cv-search-box .cv-prefecture::before {
        right: 16px;
    }
    .cv-search-box .cv-city::before {
        right: 17px;
    }
    .cv-search-box select {
        cursor: pointer;
    }
    .cv-prefecture select {
        padding: 15px 99px 14px 19px;
    }
    .cv-city select {
        padding: 15px 92px 14px 26px;
    }
    .cv-searchbtn {
        height: 52px;
        cursor: pointer;
        transition: opacity 0.05s ease-in-out;
    }
    .cv-searchbtn:hover {
        opacity: 0.7;
    }
    .cv-searchbtn span::before {
        right: -25px;
        transform: translateY(calc(-50% - 1px));
    }
    .cv-contactbtn {
        width: 330px;
        height: 80px;
        border-radius: 50px;
        margin-top: 39px;
        transition: opacity 0.05s ease-in-out;
    }
    .cv-contactbtn:hover {
        background: #13A0A2;
    }
    .cv-contactbtn a {
        text-decoration: none;
    }
    .cv-contactbtn span {
        font-size: 20px;
        line-height: 1.2;
    }
    /********************************
    voice
    *********************************/
    .voice_wrap {
        padding: 42px 0 142px;
        overflow: hidden;
    }
    .voice-ttl {
        font-size: 27px;
        line-height: 1.63;
    }
    .voiceList_wrap {
        padding-top: 95px;
        display: flex;
        justify-content: space-between;
        width: 1200px;
    }
    .voice-box::before {
        width: 140px;
        height: 140px;
        top: -69px;
    }
    .voice-box.is-child::before {
        border: #A5F8F1 8px solid;
    }
    .voice-box.is-parent::before {
        border: #DBF8D8 8px solid;
    }
    .voice-box.is-child::after {
        width: 176px;
        height: 162px;
        top: -106px;
        left: -72px;
    }
    .voice-box.is-parent::after {
        width: 250px;
        height: 250px;
        bottom: -73px;
        right: -102px;
    }
    .voice-box.is-child dl {
        padding: 96px 63px 39px 62px;
    }
    .voice-box.is-parent dl {
        padding: 96px 63px 75px 63px;
    }
    .voiceList_wrap dt {
        font-size: 32px;
        line-height: 1.438;
        margin-bottom: 12px;
    }
    .voiceList_wrap dd {
        width: 455px;
        font-size: 20px;
    }
    .voice_wrap p {
        margin-top: 14px;
    }
    /********************************
    skill
    *********************************/
    .skill_in {
        padding: 82px 0 65px;
        border-radius: 48px;
    }
    .skillTtl_wrap {
        margin-bottom: 47px;
    }
    .skillTtl_in {
        position: relative;
        top: -11px;
    }
    .skill-ttl {
        font-size: 36px;
    }
    .skill-ttl .skill-txt {
        line-height: 0.563;
    }
    .skill-txt .is-clr {
        font-size: 128px;
        margin-top: -15px;
    }
    .skill-txt .is-wgt {
        font-size: 64px;
    }
    .carousel-col {
        padding: 26px 0 8px;
    }
    .slide-num {
        width: 80px;
        height: 80px;
        font-size: 36px;
        line-height: 1.444;
        top: -26px;
        left: -26px;
    }
    .slide_wrap {
        width: 580px;
        height: 320px;
    }
    .slide-ttl {
        padding-top: 35px;
        padding-bottom: 14px;
        font-size: 26px;
    }
    .slide_in {
        padding: 0px 31px 0px 38px;
    }
    .splide__slide.is-ver4 .slide-ttl {
        padding-top: 49px;
    }
    .splide__slide.is-ver1 .slide_in {
        padding: 0px 69px 0px 84px;
    }
    .slide_box {
        position: relative;
    }
    .slide_txt {
        font-size: 18px;
        line-height: 1.444;
        padding-top: 12px;
    }
    .splide__slide img {
        position: absolute;
        right: 0;
        top: 0;
        z-index: 1;
    }
    .splide__slide .slide_txt {
        position: relative;
        z-index: 9;
    }
    .splide__slide.is-ver2 .slide_txt {
        width: 295px;
    }
    .splide__slide.is-ver2 img {
        top: 12px;
    }
    .splide__slide.is-ver1 .slide_txt {
        padding-top: 38px;
    }
    .splide__slide.is-ver4 .slide_txt {
        width: 362px;
    }
    .splide__slide.is-ver5 .slide_txt {
        padding-top: 26px;
    }
    .splide__pagination {
        margin-top: 27px;
        gap: 8px;
    }
    .splide__pagination__page {
        width: 14px;
        height: 14px;
        cursor: pointer;
        transition: all 0.05s ease-in-out;
    }
    .splide__pagination__page:hover {
        background-color: #82D2D3;
        transform: none;
    }
    .intro_wrap {
        margin-top: 44px;
    }
    .intro_in a {
        text-decoration: none;
        padding: 33px 64px 26px 58px;
    }
    .intro_in {
        transition: all 0.05s ease-in-out;
    }
    .intro_in:hover {
        border: 5px solid #f77935;
    }
    .intro_box {
        padding-left: 46px;
    }
    .intro_box h4 {
        font-size: 20px;
        line-height: 1.45;
        margin-bottom: 13px;
        padding-left: 8px;
    }
    .intro_box .is-wgt {
        margin-bottom: 8px;
    }
    .intro_box .is-txt {
        font-size: 16px;
        padding-left: 8px;
    }
    .intro-btn {
        margin-top: 20px;
        margin-right: -7px;
    }
    .intro-btn span {
        padding: 11px 37px 12px 34px;
    }
    /********************************
    course
    *********************************/
    .course_wrap {
        padding: 119px 0 121px;
    }
    .course_in {
        display: flex;
        justify-content: center;
    }
    .course_box.is-ver1 dl::before {
        background: url(../svg/PC_course_img01.svg) no-repeat;
        background-size: 100% auto;
        width: 177px;
        height: 198px;
        bottom: -40px;
        left: -114px;
    }
    .course_box.is-ver2 dl::after {
        width: 160px;
        height: 166px;
        bottom: -46px;
        right: -94px;
    }
    .course_box dl {
        border: 6px solid #008275;
        width: 477px;
        height: 213px;
    }
    .course-ttl {
        top: -29px;
    }
    .course_box.is-ver1 .course-ttl {
        width: 340px;
        height: 62px;
    }
    .course_box.is-ver2 .course-ttl {
        width: 388px;
        height: 62px;
    }
    .course-ttl span {
        font-size: 28px;
        line-height: 1.464;
    }
    .course-ttl .is-clr {
        font-size: 20px;
    }
    .course_box.is-ver1 .course-ttl .is-clr {
        margin-left: 18px;
    }
    .course_box.is-ver2 .course-ttl .is-clr {
        margin-left: 16px;
    }
    .course-price {
        font-size: 64px;
        line-height: 1.453;
        padding-top: 2px;
    }
    .course_box.is-ver1 {
        margin-right: 40px;
    }
    /********************************
    footer
    *********************************/
    .footer-list {
        display: flex;
    }
    .footer-list li {
        margin-right: 34px;
    }
    .footer-list li:last-child {
        margin-right: 0;
    }
}
@media only screen and (max-width: 896px) {
    body {
        line-height: 1.7;
        min-width: 320px;
        width: 100%;
    }
    main {
        padding-bottom: 36px;
    } 
    /********************************
    MV
    *********************************/
    .mv_wrap {
        margin: 0 auto;
        max-width: 512px;
        height: 450px;
    }
    .mv_wrap::before {
        background: url(../images/sp/mv_bg.png) no-repeat center top / cover;
        width: 100%;
        height: 485px;
        top: -23px;
    }
    .mvLogo_wrap {
        width: 190px;
        height: 50px;
        border-radius: 0 0 8px 0;
    }
    .mvLogo-left {
        line-height: 1;
    }
    .mvLogo-right {
        margin-left: 10px;
        line-height: 1;
    }
    .mvTitle_in img {
        display: none;
    }
    .mvTitle-box {
        width: 100%;
        top: 55px;
        transform: translateX(-50%);
    }
    .mv_ttl {
        font-size: 42px;
        padding-left: 49px;
    }
    .mv_ttl .is-uline .is-strong::after {
        background: url(../svg/SP_mv_line01.svg) no-repeat;
        width: 154px;
        height: 4px;
        bottom: -4px;
        left: 2px;
    }
    .mv_ttl .is-ver2 .is-strong {
        position: relative;
    }
    .mv_ttl .is-ver2 .is-strong::after {
        background: url(../svg/SP_mv_line02.svg) no-repeat;
        background-size: 100% auto;
        width: 306px;
        bottom: -4px;
        left: 0;
    }
    .mv_ttl .is-strong::before {
        left: 19px;
        width: 7px;
        height: 7px;
        box-shadow:
            42px 0 #f77935;
    }
    .mv_ttl .is-ver2 .is-strong::before {
        left: 18px;
        box-shadow:
            40px 0 #f77935,
            82px 0 #f77935,
            124px 0 #f77935,
            167px 0 #f77935,
            211px 0 #f77935;
    }
    .mv_ttl .is-ver2 {
        margin-top: 40px;
        white-space: nowrap;
    }
    .mvTitle_wrap p {
        text-align: center;
        font-size: 18px;
        line-height: 1.111;
        margin-top: 30px;
        padding-left: 8px;
    }
    .search-btn {
        width: 230px;
        height: 50px;
        border-radius: 8px;
        margin: 22px auto 0;
    }
    .search-btn.ver2 {
        margin: 12px auto 0;
    }
    .search-btn span {
        font-size: 15px;
        line-height: 1.2;
        padding-left: 1px;
    }
    .search-btn a::before {
        width: 24px;
        height: 24px;
        right: 14px;
    }
    /********************************
    recomend
    *********************************/
    .recomend_wrap::before {
        height: 37px;
        top: -25px;
    }
    .recomend_in {
        padding-bottom: 46px;
        padding-top: 29px;
    }
    .recomendList_wrap {
        padding-bottom: 90px;
    }
    .recomendList_wrap::before {
        background: url(../svg/SP_trianglebtm.svg) no-repeat;
        background-size: 100% auto;
        width: 263px;
        height: 66px;
    }
    .recomendList_in {
        height: 147px;
        max-width: 339px;
        margin: 0 auto;
        margin-bottom: 20px;
        width: calc(100% - 20px);
    }
    .recomendList_wrap li:last-child {
        margin-bottom: 0;
    }
    .recomendBox::before {
        width: 166px;
        height: 147px;
        left: 0;
    }
    .recomendBox.is-ver1 img {
        left: 34px;
        top: 29px;
    }
    .recomendBox.is-ver2 img {
        left: 24px;
        top: 19px;
    }
    .recomendBox.is-ver3 img {
        left: 37px;
        top: 34px;
    }
    .recomendBox {
        display: flex;
        align-items: center;
        height: 100%;
        padding-left: 143px;
    }
    .recomendList_in p {
        font-weight: 700;
        font-size: 16px;
        line-height: 1.625;
    }
    .recomendBox.is-ver1 p {
        padding-bottom: 5px;
    }
    .recomendBox.is-ver2 p {
        padding-top: 0.5px;
    }
    .recomendBox.is-ver3 {
        justify-content: flex-end;
    }
    .recomendBox.is-ver3 p {
        padding-bottom: 0.5px;
    }
    .recomend-ttl {
        margin: 36px 0 43px;
        text-align: center;
    }
    .recomend-ttl span {
        font-size: 25.34px;
        line-height: 1.46;
    }
    .recomend-ttl span::before {
        height: 3px;
        bottom: -3px;
    }
    .recomend-ttl .is-uline::before {
        width: 301px;
        left: 7px;
    }
    .recomend-ttl .is-clr::before {
        width: 122px;
    }
    .recomend-ttl .is-clr {
        font-size: 31.68px;
        line-height: 1.452;
    }
    .recdl_box {
        max-width: 315px;
        margin: 0 auto;
        width: calc(100% - 30px);
    }
    .recdl_box:nth-child(1) {
        margin-bottom: 27px;
        padding: 113px 0 28px;
    }
    .recdl_box:nth-child(2) {
        margin-bottom: 35px;
        padding: 113px 0 38px;
    }
    .recdl_box:last-child {
        margin-bottom: 0;
        padding: 113px 0 41px;
    }
    .recdl_box::before {
        background: url(../svg/SP_quote-top.svg) no-repeat;
        background-size: 100% auto;
        width: 44px;
        height: 81px;
        top: -3px;
        left: -3px;
    }
    .recdl_box::after {
        background: url(../svg/SP_quote-btm.svg) no-repeat;
        background-size: 100% auto;
        width: 44px;
        height: 81px;
        bottom: -3px;
        right: -3px;
    }
    .recdl_box.is-ver1 .recdl-img {
        top: 15px;
    }
    .recdl_box.is-ver2 .recdl-img {
        top: 17px;
    }
    .recdl_box.is-ver3 .recdl-img {
        top: 11px;
    }
    .recdl_list {
        max-width: 268px;
    }
    .recdl_box.is-ver1 .recdl_list::before {
        display: none;
    }
    .recdl_box.is-ver1 .recdl_list::after {
        display: none;
    }
    .recdl_box.is-ver3 .recdl_list::before {
        display: none;
    }
    .recdl_list dt {
        font-size: 18px;
        line-height: 1.556;
        text-align: center;
        margin-bottom: 10px;
    }
    .recdl_list dd {
        line-height: 1.5;
    }
    /********************************
    cv
    *********************************/
    .cv_wrap {
        overflow: hidden;
        padding: 61px 15px 34px;
        box-sizing: border-box;
    }
    .cv_wrap.is_top {
        padding: 77px 15px 70px;
    }
    .cv_wrap.is_top::before {
        height: 24px;
    }        
    .cv_wrap.is_top::after {
        height: 24px;
    }
    .cv_in {
        padding: 45px 19px 65px 15px;
        border-radius: 60px;
        background: linear-gradient(360deg, #9BF6FF 0%, #CAFFBF 96.21%);
        box-sizing: border-box;
        width: 100%;
        max-width: 360px;
    }
    .cv_in::before {
        width: 122px;
        height: 76px;
        top: -32px;
        left: 4px;
    }
    .cv_in::after {
        width: 120px;
        height: 83px;
        bottom: -28px;
        right: 0;
    }
    .cv-ttl {
        margin-bottom: 28px;
    }
    .cv-ttl span {
        font-size: 22px;
        line-height: 1.829;
    }
    .cv-ttl span::before {
        height: 2.15px;
    }
    .cv-ttl .is-uline::before {
        width: 223px;
    }
    .cv-ttl .is-uline.is-ver2::before {
        width: 301px;
    }
    .cv-search_wrap {
        max-width: 300px;
        width: 100%;
        height: 275px;
        box-shadow: 4px 4px 0px 0px #82D2D3;
    }
    .cv-search_in {
        padding: 24px 0 39px;
    }
    .cv-search-ttl {
        font-size: 18px;
        line-height: 1.444;
        margin-bottom: 18px;
    }
    .cv-search-box {
        flex-direction: column;
    }
    .cv-search-box div {
        max-width: 240px;
        width: calc(100% - 20px);
    }
    .cv-search-box div::before {
        width: 13px;
        height: 7px;
        right: 23px;
    }
    .cv-prefecture {
        margin-bottom: 7px;
    }
    .cv-city {
        margin-bottom: 17px;
    } 
    .cv-search-box select {
        padding: 15px 0 14px 19px;
        box-sizing: border-box;
        width: 100%;
    }
    .cv-searchbtn {
        height: 40px;
    }
    .cv-searchbtn span {
        padding-right: 20px;
    }
    .cv-searchbtn span::before {
        right: 0;
        transform: translateY(-50%);
    }
    .cv-contactbtn {
        width: 268px;
        height: 70px;
        border-radius: 41px;
        margin-top: 25px;
    }
    .cv-contactbtn span {
        font-size: 16.24px;
        line-height: 1.478;
    }
    /********************************
    voice
    *********************************/
    .voice_wrap {
        padding: 28px 15px 35px;
        overflow-x: clip;
        box-sizing: border-box;
    }
    .voice-ttl {
        font-size: 18px;
        line-height: 1.556;
    }
    .voice-ttl::before {
        position: absolute;
        content: '';
        background: url(../svg/voice_shape02.svg) no-repeat;
        background-size: 100% auto;
        width: 45px;
        height: 45px;
        top: 27px;
        right: -73px;
        z-index: 9;
    }
    .voiceList_wrap {
        padding-top: 60px;
    }
    .voice-box {
        margin: 0 auto;
    }
    .voice-box::before {
        width: 100px;
        height: 100px;
        top: -48px;
    }
    .voice-box.is-child {
        margin-bottom: 64px;
    }
    .voice-box.is-child::before {
        border: #A5F8F1 6px solid;
    }
    .voice-box.is-parent::before {
        border: #DBF8D8 6px solid;
    }
    .voice-box.is-child::after {
        width: 141px;
        height: 130px;
        top: -78px;
        left: -60px;
    }
    .voice-box.is-parent::after {
        width: 170px;
        height: 170px;
        bottom: -78px;
        right: -63px;
    }
    .voice-box dl {
        padding: 73px 30px 34px 30px;
        box-sizing: border-box;
        width: 100%;
    }
    .voice-box.is-parent dl {
        padding: 73px 30px 41px 30px;
    }
    .voiceList_wrap dt {
        font-size: 20px;
        line-height: 1.45;
        margin-bottom: 11px;
    }
    .voiceList_wrap dd {
        max-width: 300px;
        font-size: 16px;
        line-height: 1.5;
        width: 100%;
    }
    .voice_wrap p {
        margin-top: 11px;
        margin-right: -5px;
    }
    /********************************
    skill
    *********************************/
    .skill_in {
        padding: 49px 0 32px;
        border-radius: 32px;
    }
    .skillTtl_wrap {
        margin-bottom: 30px;
        height: 69px;
    }
    .skillTtl_in {
        top: -8px;
    }
    .skill-ttl {
        font-size: 17.2px;
    }
    .skill-ttl .skill-txt {
        line-height: 1;
    }
    .skill-txt .is-clr {
        font-size: 61.16px;
        margin-top: -23px;
    }
    .skill-txt .is-wgt {
        font-size: 30.58px;
        padding-bottom: 9px;
    }
    .carousel-col {
        padding: 21px 0 8px;
    }
    .slide-num {
        width: 50px;
        height: 50px;
        font-size: 24px;
        line-height: 1.458;
        top: -21px;
        left: -15px;
    }
    .slide_wrap {
        width: 270px;
        height: 397px;
    }
    .splide__slide.is-ver4 .slide_wrap {
        height: 397px;
    }
    .slide-ttl {
        padding-top: 24px;
        padding-bottom: 12px;
        font-size: 20px;
    }
    .splide__slide.is-ver1 .slide-ttl {
        padding-top: 32px;
        padding-bottom: 19px;
    }
    .slide_box {
        margin: 0 29px;
        text-align: center;
    }
    .slide_txt {
        font-size: 14px;
        text-align: left;
        padding-bottom: 12px;
    }
    .splide__slide.is-ver1 .slide_txt {
        display: flex;
        justify-content: center;
        padding-bottom: 35px;
    }
    .splide__slide.is-ver5 .slide_txt {
        padding-bottom: 35px;
    }
    .splide__pagination {
        margin-top: 20px;
        gap: 3px; 
    }
    .splide__pagination__page {
        width: 9px;
        height: 9px;
    }
    .intro_wrap {
        margin-top: 25px;
        padding: 0 14px;
        box-sizing: border-box;
    }
    .intro_in a {
        padding: 22px 32px 15px 32px;
    }
    .intro_in img {
        padding-top: 5px;
    }
    .intro_box {
        padding-left: 14px;
    }
    .intro_box h4 {
        font-size: 18px;
        line-height: 1.333;
        margin-bottom: 9px;
        padding-left: 9px;
    }
    .intro_box .is-wgt {
        margin-bottom: 9px;
        margin-right: -9px;
    }
    .intro_box .is-txt {
        font-size: 14px;
        padding-left: 9px;
    }
    .intro-btn {
        margin-top: 19px;
        margin-right: -2px;
    }
    .intro-btn span {
        padding: 5px 37px 8px 34px;
    }
    /********************************
    course
    *********************************/
    .course_wrap {
        padding: 69px 0 39px;
    }
    .course_box.is-ver1 dl::before {
        background: url(../svg/SP_course_img01.svg) no-repeat;
        background-size: 100% auto;
        width: 58px;
        height: 79px;
        top: -29px;
        left: -24px;
    }
    .course_box.is-ver1 dl::after {
        position: absolute;
        content: '';
        background: url(../svg/SP_course_img02.svg);
        background-size: 100% auto;
        width: 46px;
        height: 84px;
        bottom: -17px;
        right: -20px;
        z-index: 9;
    }
    .course_box.is-ver2 dl::after {
        width: 93px;
        height: 97px;
        bottom: -40px;
        right: -26px;
    }
    .course_box dl {
        border: 4px solid #008275;
        max-width: 330px;
        width: calc(100% - 60px);
        height: 160px;
        margin: 0 auto;
    }
    .course-ttl {
        top: -19px;
    }
    .course_box.is-ver1 .course-ttl {
        width: 240px;
        height: 36px;
    }
    .course_box.is-ver2 .course-ttl {
        width: 294px;
        height: 36px;
    }
    .course-ttl span {
        font-size: 20px;
        line-height: 1.45;
    }
    .course-ttl .is-clr {
        font-size: 16px;
    }
    .course_box.is-ver1 .course-ttl .is-clr {
        margin-left: 8px;
    }
    .course_box.is-ver2 .course-ttl .is-clr {
        margin-left: 13px;
    }
    .course-price {
        font-size: 48px;
        line-height: 1.458;
    }
    .course-price .is-fz {
        font-size: 32px;
    }
    .course_box.is-ver1 {
        margin-bottom: 31px;
    }
    .course_box.is-ver1 .course-price {
        padding-bottom: 4px;
        padding-right: 7px;
    }
    .course_box.is-ver2 .course-price {
        padding-top: 2px;
        padding-right: 7px;
    }
    .cp0-bnr_wrap {
        padding: 40px 0 20px;
    }
    .cp0-bnr_wrap img {
        max-width: 320px;
        width: calc(100% - 20px);
    }
    .floating-banner {
        bottom: 100px;
        left: 10px;
        width: 110px;
        height: 110px;
    }
    .floating-banner .close-btn {
        top: 4px;
        right: 4px;
        width: 20px;
        height: 20px;
        font-size: 12px;
    }
    /********************************
    footer
    *********************************/
    .footer-list li {
        margin-bottom: 10px;
    }
    .footer-list li:last-child {
        margin-bottom: 0;
    }
    /********************************
    C系CSS
    *********************************/
    .c-pc {
        display: none;
    }
    .c-pc-in {
        display: none;
    }
    .c-sp {
        display: block;
    }
    .c-sp-in {
        display: inline;
    }
    .c-wrap {
        width: 100%;
    }
}/*@media*/
@media only screen and (max-width: 374px) {
    .mv_ttl {
        padding-left: 0;
    }
    .recomendList_in p {
        font-size: 14px;
    }
    .cv-ttl span {
        font-size: 19px;
    }
    .cv-ttl .is-uline.is-ver2::before,
    .cv-ttl .is-uline::before {
        width: 110%;
    }
    .cv-search-ttl {
        font-size: 16px;
    }
    .intro_in a {
        padding: 22px 15px 15px;
        box-sizing: border-box;
    }
    .intro_box {
        padding-left: 10px;
    }
    .course-price {
        font-size: 40px;
    }
    .course-tax {
        font-size: 17px;
    }
    .course_box.is-ver1 .course-ttl {
        width: calc(100% - 45px);
    }
    .course-ttl span {
        font-size: 16px;
    }
    .course-ttl .is-clr {
        font-size: 14px;
    }
    .course_box.is-ver2 .course-ttl {
        width: calc(100% - 20px);
    }
    .mv_ttl {
        font-size: 10.769vw;
        padding-left: 12.564vw;
    }
    .mv_ttl .is-strong::before {
        left: 4.872vw;
        width: 1.795vw;
        height: 1.795vw;
        box-shadow: 10.769vw 0 #f77935;
    }
    .mv_ttl .is-uline .is-strong::after {
        width: 41.067vw;
        height: 1.067vw;
        bottom: -1.026vw;
        left: 0.513vw;
        background-size: auto 100%;
    }
    .mv_ttl .is-ver2 {
        margin-top: 10.256vw;
    }
    .mv_ttl .is-ver2 .is-strong::before {
        left: 4.615vw;
        box-shadow: 10.256vw 0 #f77935, 21.026vw 0 #f77935, 31.795vw 0 #f77935, 42.821vw 0 #f77935, 54.103vw 0 #f77935;
    }
    .mv_ttl .is-ver2 .is-strong::after {
        width: 78.462vw;
        bottom: -1.026vw;
    }
    .mvTitle_wrap p {
        font-size: 4.615vw;
        margin-top: 7.692vw;
        padding-left: 2.051vw;
    }
    .search-btn {
        width: 61.333vw;
        height: 13.333vw;
        border-radius: 2.133vw;
        margin: 5.867vw auto 0;
    }
    .search-btn.ver2 {
        margin: 3.2vw auto 0;
    }
    .search-btn span {
        font-size: 4vw;
        padding-left: 0.267vw;
    }
    .search-btn a::before {
        width: 6.154vw;
        height: 6.154vw;
        right: 8.3.733vw;
    }
    .mv_wrap::before {
        height: 124.359vw;
        top: -5.897vw;
    }
    .mv_wrap {
        height: 115.385vw;
    }
    .mvTitle-box {
        top: 12.8vw;
    }
}
/*@media*/
@media (max-width: 1340px) and (min-width: 896px) {
    body {
        font-size: 1.111vw;
    }
    main {
        padding-bottom: 4.861vw;
    }
    /********************************
    MV
    *********************************/
    .mv_wrap {
        height: 48.889vw;
    }
    .mv_wrap::before {
        width: 113.403vw;
        height: 55.556vw;
        top: -7.153vw;
    }
    .mv_wrap img {
        top: -1.736vw;
    }
    .mvLogo_wrap {
        padding: 2.153vw 3.264vw 2.153vw 2.569vw;
        width: 16.528vw;
        border-radius: 0 0 1.111vw 0;
    }
    .mvLogo-right {
        margin-left: 1.528vw;
    }
    .mvLogo-right img {
        width: 4.514vw;
        height: 2.361vw;
    }
    .mvLogo-left img {
        width: 10.556vw;
        height: 2.222vw;
    }
    .mvTitle_in img {
        width: 88.889vw;
        height: 45.208vw;
    }
    .mvTitle-box {
        top: 6.806vw;
        transform: translateX(calc(-50% + 3.889vw));
    }
    .mv_ttl {
        font-size: 5.278vw;
    }
    .mv_ttl .is-uline .is-strong::after {
        width: 20.089vw;
        height: 0.517vw;
        left: 0.625vw;
        bottom: -0.417vw;
    }
    .mv_ttl .is-uline.is-ver2 .is-strong::after {
        width: 39.792vw;
        bottom: -0.139vw;
        left: -0.208vw;
    }
    .mv_ttl .is-strong::before {
        left: 2.361vw;
        width: 0.833vw;
        height: 0.833vw;
        box-shadow:
            5.278vw 0 #f77935;
    }
    .mv_ttl .is-ver2 .is-strong::before {
        left: 2.222vw;
        box-shadow:
            5.069vw 0 #f77935,
            10.347vw 0 #f77935,
            15.625vw 0 #f77935,
            21.181vw 0 #f77935,
            26.736vw 0 #f77935;
    }
    .mv_ttl .is-ver2 {
        margin-top: 4.931vw;
    }
    .mvTitle_wrap p {
        font-size: 2.222vw;
        padding-left: 4.292vw;
        margin-top: 3.542vw;
    }
    .search-btn {
        width: 25.833vw;
        height: 5.069vw;
        border-radius: 1.111vw;
        margin: 4.167vw 0 0 6.508vw;
    }
    .search-btn.ver2 {
        margin: 1.736vw 0 0 6.508vw;
    }
    .search-btn span {
        font-size: 1.458vw;
        padding-right: 0.208vw;
    }
    .search-btn a::before {
        width: 2.500vw;
        height: 2.500vw;
        right: 2.083vw;
    }
    /********************************
    recomend
    *********************************/
    .recomend_wrap {
        padding-top: 2.778vw;
    }
    .recomend_wrap::before {
        height: 19.653vw;
        top: -5.833vw;
    }
    .recomend_in {
        padding-bottom: 4.722vw;
    }
    .recomendList_wrap {
        width: 77.153vw;
        padding-bottom: 8.194vw;
    }
    .recomendList_wrap::before {
        width: 44.514vw;
        height: 8.333vw;
    }
    .recomendList_in {
        width: 21.875vw;
        height: 22.917vw;
    }
    .recomendBox::before {
        width: 21.875vw;
        height: 19.444vw;
    }
    .recomendBox.is-ver1 img {
        top: 3.056vw;
        width: 13.194vw;
        height: 11.389vw;
    }
    .recomendBox.is-ver2 img {
        top: 2.292vw;
        width: 13.125vw;
        height: 12.708vw;
    }
    .recomendBox.is-ver3 img {
        top: 4.861vw;
        width: 9.722vw;
        height: 9.722vw;
    }
    .recomendList_in p {
        font-size: 1.389vw;
        padding-top: 16.042vw;
    }
    .recomend-ttl {
        margin: 1.111vw 0 3.819vw;
    }
    .recomend-ttl span {
        font-size: 3.333vw;
    }
    .recomend-ttl span::before {
        height: 0.347vw;
        bottom: -0.347vw;
    }
    .recomend-ttl .is-uline::before {
        width: 39.653vw;
        left: 0.486vw;
    }
    .recomend-ttl .is-clr::before {
        width: 16.111vw;
    }
    .recomend-ttl .is-clr {
        font-size: 4.167vw;
        line-height: 1.415;
    }
    .recdl_in {
        width: 82.222vw;
    }
    .recdl_box {
        width: 25.278vw;
        height: 28.889vw;
    }
    .recdl_box::before {
        width: 3.958vw;
        height: 6.875vw;
        top: -0.417vw;
        left: -0.417vw;
    }
    .recdl_box::after {
        width: 3.958vw;
        height: 6.875vw;
        bottom: -0.417vw;
        right: -0.417vw;
    }
    .recdl_box.is-ver1 .recdl-img {
        top: 2.500vw;
    }
    .recdl_box.is-ver2 .recdl-img {
        top: 1.111vw;
    }
    .recdl_box.is-ver3 .recdl-img {
        top: 2.431vw;
    }
    .recdl_box.is-ver1 .recdl-img img {
        width: 11.597vw;
        height: 11.250vw;
    }
    .recdl_box.is-ver2 .recdl-img img {
        width: 15.069vw;
        height: 11.597vw;
    }
    .recdl_box.is-ver3 .recdl-img img {
        width: 12.708vw;
        height: 9.167vw;
    }
    .recdl_list {
        padding-top: 14.097vw;
        width: 20.833vw;
    }
    .recdl_box.is-ver1 .recdl_list::before {
        width: 20.903vw;
        height: 14.792vw;
        top: -12.292vw;
        left: -15.694vw;
    }
    .recdl_box.is-ver1 .recdl_list::after {
        width: 11.806vw;
        height: 12.500vw;
        bottom: -8.472vw;
        right: -11.667vw;
    }
    .recdl_box.is-ver3 .recdl_list::before {
        width: 13.958vw;
        height: 10.417vw;
        top: -9.028vw;
        right: -2.639vw;
    }
    .recdl_list dt {
        font-size: 1.389vw;
        margin-bottom: 0.417vw;
    }
    /********************************
    cv
    *********************************/
    .cv_wrap {
        padding-top: 4.653vw;
    }
    .cv_wrap.is_top::before {
        padding: 11.250vw 0 10.139vw;
    }
    .cv_wrap.is_top::after {
        position: absolute;
        content: '';
        background: url(../svg/cv_wave-btm.svg);
        background-size: cover;
        background-position: top;
        width: 100%;
        bottom: 0;
        left: 0;
        z-index: -1;
    }
    .cv_in {
        padding: 3.403vw 19.306vw 4.931vw;
        border-radius: 55.556vw;
    }
    .cv_in::before {
        width: 16.389vw;
        height: 10.208vw;
        top: -0.417vw;
        left: 9.653vw;
    }
    .cv_in::after {
        width: 15.903vw;
        height: 10.972vw;
        bottom: 5.417vw;
        right: 9.653vw;
    }
    .cv-ttl {
        margin-bottom: 2.083vw;
    }
    .cv-ttl span {
        font-size: 2.222vw;
        line-height: 1.75;
    }
    .cv-ttl span::before {
        height: 0.208vw;
    }
    .cv-ttl .is-uline::before {
        width: 21.528vw;
    }
    .cv-ttl .is-uline.is-ver2::before {
        width: 29.097vw;
    }
    .cv-search_wrap {
        border-radius: 1.111vw;
        width: 54.444vw;
        height: 15.208vw;
        box-shadow: 0.556vw 0.556vw 0.000vw 0.000vw #82D2D3;
    }
    .cv-search_in {
        padding: 2.917vw 0 3.958vw;
    }
    .cv-search-ttl {
        font-size: 1.667vw;
        margin-bottom: 2.292vw;
    }
    .cv-search-box div::before {
        width: 1.111vw;
        height: 0.625vw;
    }
    .cv-prefecture {
        margin-right: 0.486vw;
    }
    .cv-city {
        margin-right: 0.903vw;
    }
    .cv-search-box .cv-prefecture::before {
        right: 1.111vw;
    }
    .cv-search-box .cv-city::before {
        right: 1.181vw;
    }
    .cv-prefecture select {
        padding: 1.042vw 6.875vw 0.972vw 1.319vw;
    }
    .cv-city select {
        padding: 1.042vw 6.389vw 0.972vw 1.806vw;
    }
    .cv-searchbtn {
        height: 3.611vw;
        width: 12.500vw;
    }
    .cv-searchbtn span::before {
        right: -1.736vw;
        transform: translateY(calc(-50% - 0.069vw));
        width: 0.972vw;
        height: 0.972vw;
    }
    .cv-contactbtn {
        width: 22.917vw;
        height: 5.556vw;
        border-radius: 3.472vw;
        margin-top: 2.708vw;
    }
    .cv-contactbtn span {
        font-size: 1.389vw;
    }
    /********************************
    voice
    *********************************/
    .voice_wrap {
        padding: 2.917vw 0 9.861vw;
    }
    .voice-ttl {
        font-size: 1.875vw;
    }
    .voiceList_wrap {
        padding-top: 6.597vw;
        width: 83.333vw;
    }
    .voice-box {
        border-radius: 1.111vw;
    }
    .voice-box::before {
        width: 9.722vw;
        height: 9.722vw;
        top: -4.861vw;
    }
    .voice-box.is-child::before {
        border: #A5F8F1 0.556vw solid;
    }
    .voice-box.is-parent::before {
        border: #DBF8D8 0.556vw solid;
    }
    .voice-box.is-child::after {
        width: 12.222vw;
        height: 11.250vw;
        top: -7.361vw;
        left: -5.000vw;
    }
    .voice-box.is-parent::after {
        width: 17.361vw;
        height: 17.361vw;
        bottom: -5.069vw;
        right: -7.083vw;
    }
    .voice-box dl {
        padding-top: 6.667vw;
    }
    .voice-box.is-child dl {
        padding: 6.667vw 4.375vw 2.708vw 4.306vw;
    }
    .voice-box.is-parent dl {
        padding: 6.667vw 4.375vw 5.208vw 4.375vw;
    }
    .voiceList_wrap dt {
        font-size: 2.222vw;
        line-height: 1.438;
        margin-bottom: 0.833vw;
    }
    .voiceList_wrap dd {
        width: 31.597vw;
        font-size: 1.389vw;
    }
    .voice_wrap p {
        font-size: 0.972vw;
        margin-top: 0.972vw;
    }
    /********************************
    skill
    *********************************/
    .skill_in {
        padding: 5.694vw 0 4.514vw;
        border-radius: 3.333vw;
    }
    .skillTtl_wrap {
        margin-bottom: 3.264vw;
    }
    .skill-ttl {
        font-size: 2.500vw;
    }
    .skill-txt .is-clr {
        font-size: 8.889vw;
        margin-top: -1.042vw;
    }
    .skill-txt .is-wgt {
        font-size: 4.444vw;
    }
    .skillTtl_wrap img {
        width: 9.167vw;
        height: 9.861vw;
    }
    .skillTtl_wrap .is-ver2 img {
        width: 9.028vw;
        height: 10.069vw;
    }
    .carousel-col {
        padding: 1.806vw 0 0.556vw;
    }
    .slide-num {
        width: 5.556vw;
        height: 5.556vw;
        font-size: 2.500vw;
        top: -1.806vw;
        left: -1.806vw;
    }
    .slide_wrap {
        width: 40.278vw;
        height: 22.222vw;
        border-radius: 1.111vw;
        box-shadow: 0.556vw 0.556vw 0.000vw 0.000vw #82D2D3;
    }
    .slide-ttl {
        padding-top: 2.431vw;
        padding-bottom: 0.972vw;
        font-size: 1.667vw;
    }
    .slide_in {
        padding: 0.000vw 2.153vw 0.000vw 2.639vw;
    }
    .splide__slide.is-ver1 .slide_box img {
        width: 9.583vw;
        height: 11.736vw;
    }
    .splide__slide.is-ver2 .slide_box img {
        width: 12.153vw;
        height: 8.403vw;
    }
    .splide__slide.is-ver3 .slide_box img {
        width: 12.292vw;
        height: 10.000vw;
    }
    .splide__slide.is-ver4 .slide_box img {
        width: 10.764vw;
        height: 8.681vw;
    }
    .splide__slide.is-ver5 .slide_box img {
        width: 11.944vw;
        height: 9.236vw;
    }
    .splide__slide.is-ver4 .slide-ttl {
        padding-top: 3.403vw;
    }
    .splide__slide.is-ver1 .slide_in {
        padding: 0.000vw 4.792vw 0.000vw 5.833vw;
    }
    .slide_txt {
        font-size: 1.250vw;
        padding-top: 0.833vw;
    }
    .splide__slide.is-ver2 .slide_txt {
        width: 20.486vw;
    }
    .splide__slide.is-ver2 img {
        top: 0.833vw;
    }
    .splide__slide.is-ver1 .slide_txt {
        padding-top: 2.639vw;
    }
    .splide__slide.is-ver4 .slide_txt {
        width: 25.139vw;
    }
    .splide__slide.is-ver5 .slide_txt {
        padding-top: 1.806vw;
    }
    .splide__pagination {
        margin-top: 1.875vw;
        gap: 0.556vw;
    }
    .splide__pagination__page {
        width: 0.972vw;
        height: 0.972vw;
    }
    .intro_wrap {
        margin-top: 3.056vw;
    }
    .intro_in {
        border: 0.347vw solid #82D2D3;
        border-radius: 1.111vw;
    }
    .intro_in a {
        padding: 2.292vw 4.444vw 1.806vw 4.028vw;
    }
    .intro_in img {
        width: 7.917vw;
        height: 11.250vw;
    }
    .intro_box {
        padding-left: 3.194vw;
    }
    .intro_box h4 {
        font-size: 1.389vw;
        margin-bottom: 0.903vw;
        padding-left: 0.556vw;
    }
    .intro_box .is-wgt { 
        font-size: 1.111vw;
        margin-bottom: 0.556vw;
    }
    .intro_box .is-txt {
        font-size: 1.111vw;
        padding-left: 0.556vw;
    }
    .intro_box .is-txt.is-ver2 {
        margin-top: 0.486vw;
    }
    .intro-btn {
        margin-top: 1.389vw;
        margin-right: -0.486vw;
    }
    .intro-btn span {
        padding: 0.764vw 2.569vw 0.833vw 2.361vw;
        font-size: 1.111vw;
        border-radius: 2.083vw;
    }
    .intro-btn span::before {
        width: 0.694vw;
        height: 0.556vw;
        right: 0.903vw;
    }
    /********************************
    course
    *********************************/
    .course_wrap {
        padding: 8.264vw 0 8.403vw;
    }
    .course_box.is-ver1 dl::before {
        width: 12.292vw;
        height: 13.750vw;
        bottom: -2.778vw;
        left: -7.917vw;
    }
    .course_box.is-ver2 dl::after {
        width: 11.111vw;
        height: 11.528vw;
        bottom: -3.194vw;
        right: -6.528vw;
    }
    .course_box dl {
        border-radius: 1.111vw;
        box-shadow: 0.556vw 0.556vw 0 0 #82D2D3;
        border: 0.417vw solid #008275;
        width: 33.125vw;
        height: 14.792vw;
    }
    .course-ttl {
        border-radius: 3.472vw;
        top: -2.014vw;
    }
    .course_box.is-ver1 .course-ttl {
        width: 23.611vw;
        height: 4.306vw;
    }
    .course_box.is-ver2 .course-ttl {
        width: 26.944vw;
        height: 4.306vw;
    }
    .course-ttl span {
        font-size: 1.944vw;
    }
    .course-ttl .is-clr {
        padding: 0.347vw 0.764vw;
        border-radius: 2.083vw;
        font-size: 1.389vw;
    }
    .course_box.is-ver1 .course-ttl .is-clr {
        margin-left: 1.250vw;
    }
    .course_box.is-ver2 .course-ttl .is-clr {
        margin-left: 1.111vw;
    }
    .course-price {
        font-size: 4.444vw;
        padding-top: 0.139vw;
    }
    .course_box.is-ver1 {
        margin-right: 2.778vw;
    }
    .course-tax {
        font-size: 1.667vw;
    }
    /********************************
    footer
    *********************************/
    .footer_wrap {
        height: 13.889vw;
    }
    .footer-list li {
        margin-right: 2.361vw;
    }
    .footer_wrap span {
        font-size: 0.972vw;
    }
    .copyright {
        margin-top: 2.014vw;
    }
    .cp0-bnr_wrap {
        padding: 2.667vw 0 4.667vw;
    }
    .cp0-bnr_wrap img {
        max-width: 53.333vw;
    }
}
