  /*-------------------- カルーセル --------------------*/
@media screen and (min-width: 768px), print {
#bxslider-outer {
    position: relative;
    max-width: 100%;
    margin: 0 auto 40px;
}
#bxslider-outer_sp {
    display: none;
}
.bx-controls {
    position: relative;
    top: -50px;
}
.bx-wrapper {
    margin: 0 !important;
    /*-moz-box-shadow: none !important;
-webkit-box-shadow: none !important;*/
    box-shadow: none !important;
    border: none !important;
    background: none !important;
}
.next-btn {
    width: 50px;
    height: 50px;
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -25px;
}
.prev-btn {
    width: 50px;
    height: 50px;
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -25px;
}
.bx-prev,
.bx-next {
    width: 100%;
    display: block;
    height: 100%;
    position: absolute;
    top: 0;
    z-index: 100;
    /*background-color: #f90;*/
}
.bnr {
    text-align: center;
    margin-top: 50px !important;
}
.scslider img {
    /*width:auto;*/
    width: 100%;
    height: 300px;
    border-left: 5px solid #fff;
    border-right: 5px solid #fff;
    object-fit: cover; /* 他のブラウザ用(＝通常の指定) */
    object-position: 50% 50%; /* 他のブラウザ用(＝通常の指定) */
    font-family: "object-fit: cover; object-position: 50% 50%;"; /* IE・Edge対応 */
}
}
@media screen and (max-width: 767px) {
#bxslider-outer {
    display: none;
}
#bxslider-outer_sp {
    width: 100% !important;
    position: relative;
    max-width: 100%;
    margin: 0 auto 0px;
    height: auto;
}
.bx-controls {
    display: none;
}
.bx-wrapper {
    margin: 0 !important;
    /*-moz-box-shadow: none !important;
-webkit-box-shadow: none !important;*/
    box-shadow: none !important;
    border: none !important;
    background: none !important;
}
.next-btn {
    width: 40px;
    height: 40px;
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -20px;
}
.next-btn img {
    width: 40px;
}
.prev-btn img {
    width: 40px;
}
.prev-btn {
    width: 40px;
    height: 40px;
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -20px;
}
.bx-prev,
.bx-next {
    width: 50%;
    display: block;
    height: 50%;
    position: absolute;
    top: 0;
    z-index: 100;
    /*background-color: #f90;*/
}
.bnr {
    text-align: center;
    margin-top: 50px !important;
}
.bxslider img {
    /*width:auto;*/
    width: 100%;
    height:calc( 100vw * 0.65 );
    /* height: 200px;  オリジナル設定。システム導入後戻す*/
    /*border-left:5px solid #fff;
border-right:5px solid #fff;*/
    object-fit: cover; /* 他のブラウザ用(＝通常の指定) */
    object-position: 50% 50%; /* 他のブラウザ用(＝通常の指定) */
    font-family: "object-fit: cover; object-position: 50% 50%;"; /* IE・Edge対応 */
}
}
  /* カルーセルここまで------------------------------- */


.content_lightblue {
    margin: 0px auto;
    width: 100%;
    display: table;
    background-color: #D4E9F9;
}
.content_orange {
    margin: 0px auto;
    width: 100%;
    display: table;
    background: #fff0cc;
    box-shadow: 0px rgba(0, 0, 0, 0);
}

ul li {
    list-style-type: none;
}

/* フェードインアニメーション
-------------------------------------------*/
.fadeIn_item.offs,
.offs .fadeIn_item{
    opacity: 0;
/*     transform: translateY(150px); */
    transform: translate(-50%, 150px); /* センタリングのためx軸も動かしてます */
}
.fadeIn_item.ons,
.ons .fadeIn_item{
/*     transition: all 1s cubic-bezier(0, 0, 0.13, 0.79); */
    transition: all 0.5s cubic-bezier(.45,-0.01,.14,1.1);
    opacity: 1;
/*     transform: translateY(0); */
    transform: translate(-50%, 0); /* センタリングのためx軸も動かしてます */
}
/* ここまで ------------------------------*/

h3.newopen {
    position: relative;
    margin-top: 80px;
    margin-bottom: 20px;
    padding: 20px 0 20px;
    background: transparent;
    text-align: center;
    color: #004da0;
    font-size: 32px;
    font-weight: 700;
    box-shadow: 0px 0px 0px rgba(0, 0, 0, 0);
    line-height: 180%;
}
h3.newopen::before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: 0;
    border: transparent;
    border-top: transparent;
}

@media screen and (max-width: 767px) {
h3.newopen {
    margin-top: 20px;
    font-size:20px;
}

section.gutter {
    width:95%;
}
}
h3 {
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 700;
  font-style: normal;
}
h3 span {
    font-size:65%;
}
/* about_us
----------------------------------------------------------------------- */
.about_us_box {
    position: relative;
    display:flex;
    padding:1em;
    flex-direction: column;
    margin-top:30px;
    margin-bottom:80px;
    border-radius:20px;
    background-color: #F9D4D4;
}
.about_us_box h4 {
    position: absolute;
    width:85%;
    top:-20px;
    left: 50%;
    transform: translateX(-50%);
    color:#BC1724;
    background-color: #FFF;
    font-size:25px;
    text-align: center;
    border:3px solid #BC1724;
    border-radius: 50px;
    padding:1em;
}
.about_us_box .pic {
    width:100%;
}
.about_us_box .pic img {
    width:100%;
}
.about_us_box .txt {
    width:100%;
    padding:20px;
    text-align: center;
}
#higashinakano .contact_box {
    display: flex;
    justify-content: center;
    margin:50px 0;
}
#higashinakano .contact_box .btn {
    text-align: center;
}
#higashinakano .contact_box .btn a {
    display: inline-block;
    text-align: center;
    margin: 0 auto;
    border: 0;
    background: #ED8D03;
    background-image: none;
    padding: 15px 50px;
    font-size: 18px;
    text-decoration: none;
    color: #FFFFFF;
    border-radius: 100px;
}
#higashinakano .contact_box .btn a::before {
    font-family: 'Font Awesome 6 Free';
    content: '\f0e0';
    margin-right:10px;
    font-weight:600;
    font-size:1.2em;
}
#higashinakano .contact_box .phone a {
    display: inline-block;
    text-align: center;
    margin: 0 auto;
    border: 0;
    padding: 15px 40px;
    font-size: 18px;
    text-decoration: none;
    color: #ED8D03;
    font-weight:700;
    font-size:30px;
}
#higashinakano .contact_box .phone a::before {
    font-family: 'Font Awesome 6 Free';
    content: '\f2a0';
    margin-right:8px;
    font-weight:600;
    font-size:1em;
}

@media screen and (max-width: 767px) {
.about_us_box h4 {
    position: absolute;
    width:90%;
    top:-20px;
/*     left: 50%;
    transform: translateX(-50%); */
    color:#BC1724;
    background-color: #FFF;
    text-align: center;
    border:3px solid #BC1724;
    border-radius: 50px;
    padding:1em;
    font-size:16px;
}
.about_us_box .pic,
.about_us_box .txt {
    width:100%;
}
.about_us_box .txt {
    text-align: left;
}

#higashinakano .contact_box {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap:1em;
    margin:50px 0;
}
#higashinakano .contact_box .btn {
    width:100%;
}
}

/* lesson_info
----------------------------------------------------------------------- */
#lesson_info h3.newopen {
    position: relative;
}
#lesson_info h3.newopen::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    width: 950px;
    height: 90px;
    background-image: url('./lesson_info_1.png');
    background-size: contain;
    background-repeat: no-repeat;
}
.lesson_info_box {
    display:grid;
    grid-template-columns: repeat(2, 1fr);
    gap:50px 30px;
    margin-bottom:50px;
}
.lesson_info_box li {
    background-color: #FFF;
}
.lesson_info_box .lesson_pic {
    position: relative;
}
.lesson_info_box .lesson_pic h4 {
    position: absolute;
    bottom:-10px;
    width:94%;
    margin:0 3%;
    padding:0.8em;
    background-color:#FFEAB9;
    border-radius: 100vh;
    box-shadow: 0px 5px #ED8D03;
    text-align: center;
    font-size:20px;
    letter-spacing: 0.05em;
}
.lesson_info_box .lesson_pic img {
    width:100%;
    height:auto;
    object-fit: cover;
}
.lesson_info_box .lesson_description {
    padding:25px 1.5em 1.5em;

}
.lesson_info_box .lesson_fee {
    margin-top:15px;
    padding:10px;
    border-top:1px dotted #323232;
}
.lesson_info_box .lesson_fee dt::before {
    font-family: 'Font Awesome 6 Free';
    content: '\f51e';
    margin-right:8px;
    font-weight:600;
    font-size:1.2em;
    color:#004da0;
}
.lesson_info_box .lesson_fee .grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap:5px;
}

.business_info_box {
    display:flex;
    align-items: stretch;
    margin-bottom:50px;
    background-color: #ffffff;
}
.business_info_box .biz_pic {
    width:30%;
    min-height:0;
    line-height:0;
}
.business_info_box .biz_pic img {
    width:100%;
    height:100%;
    object-fit: cover;
}
.business_info_box .biz_txt {
    padding:10px;
    flex:1;
}
.business_info_box .biz_txt h4 {
    width:100%;
    padding:0.5em;
    margin-bottom:10px;
    text-align: center;
    font-size:20px;
    letter-spacing: 0.02em;
    color:#004da0;
    border-top:#004da0 solid 1px;
    border-bottom:#004da0 solid 1px;
}
.business_info_box .biz_txt dl {
    display:grid;
    grid-template-columns: 35% 1fr;
    gap:0.5em;
}
.business_info_box .biz_txt dt {
    padding:10px;
    background-color: #D4E9F9;
    text-align: center;
    font-weight: 700;
    color:#004da0;
    border-radius: 5px;
}
.business_info_box .biz_txt dd {
    padding:10px 0;
}
.business_info_box .biz_btn {
    margin-top:10px;
}
.business_info_box .biz_btn a {
    display:flex;
    align-items: center;
    justify-content: end;
    gap:0.5em;
    width:100%;
    background-color: #ED8D03;
    color:#ffffff;
    padding:5px 1em;
    text-decoration: none;
}
.business_info_box .biz_btn a img {
    display:block;
    height:2em;
}

@media screen and (max-width: 767px) {
#lesson_info h3.newopen::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    transform: none;
    width:100%;
    background-image: url('./lesson_info_2.png');
    background-size: contain;
    background-repeat: no-repeat;
}

.lesson_info_box {
    display:grid;
    grid-template-columns: repeat(1, 1fr);
    gap:30px;
    margin-bottom:50px;
}

.business_info_box {
    display:flex;
    align-items: stretch;
    margin-bottom:50px;
    background-color: #ffffff;
}
.business_info_box .biz_pic {
    display:none;
}
.business_info_box .biz_pic img {
    max-height:0;
}
.business_info_box .biz_txt dl {
    display:grid;
    grid-template-columns: 1fr;
    gap:0.5em;
}
.business_info_box .biz_txt dd {
    padding:0 10px 1em 10px;
}
.business_info_box .biz_btn a {
    display:flex;
    flex-direction: column;
    justify-content: end;
    gap:0;
    width:100%;
    padding:5px 1em;
    text-decoration: none;
}
.business_info_box .biz_btn a img {
    display:block;
    height:2em;
}
.business_info_box .biz_txt h4 {
    font-size:18px;
}

}

/* lesson_style
----------------------------------------------------------------------- */
.lesson_style_box {
    display:grid;
    grid-template-columns: repeat(3, 1fr);
    padding:1em;
    margin-bottom:50px;
}
.lesson_style_box h4 {
    color:#004da0;
}
.lesson_style_box li {
    text-align: center;
    padding:3em;
    border-right:1px dotted #323232;
}
.lesson_style_box li:last-child {
    border-right:none;
}
.lesson_style_box li img {
    width:90%;
    height:auto;
}
.lesson_style_box .txt {
    text-align: left;
}

@media screen and (max-width: 767px) {
.lesson_style_box {
    display:grid;
    grid-template-columns: 1fr;
    padding:1em;
    margin-bottom:50px;
}
.lesson_style_box li {
    text-align: center;
    padding:1em;
    border-right:none;
    border-bottom:1px dotted #323232;
}
.lesson_style_box li:last-child {
    border-bottom:none;
}
}

/* why_us
----------------------------------------------------------------------- */
.why_us_box {
    margin-bottom:50px;
    display:grid;
    grid-template-columns: repeat(2, 1fr);
    gap:40px 30px;
}
.why_us_box h4 {
    color:#004da0;
}
.why_us_box li {
    background-color: #FFF;
    display:flex;
    padding:1em;
    border-radius: 10px 0 0 10px;
}
.why_us_box .whyus_icon {
    width:200px;
}
.why_us_box .whyus_icon img {
    width:100%;
    border-radius: 50%;
}
.why_us_box .whyus_description {
    padding-left:1em;
}
.why_us_btn {
    display:block;
    margin:30px auto;
    width:50%;
    text-align: center;
}
.why_us_btn a {
    display:block;
    margin:0 auto;
    padding:1.5em;
    background-color: #fff;
    border-radius: 100px;
    text-decoration: none;
    font-weight:500;
    font-size:110%;

}

@media screen and (max-width: 767px) {
.why_us_box {
    margin-bottom:50px;
    display:grid;
    grid-template-columns: repeat(1, 1fr);
    gap:30px;
}
.why_us_btn {
    display:block;
    margin:1em auto;
    width:100%;
    text-align: center;
}
.why_us_btn a {
    padding:1em;
    font-size:100%;
}
}

/* lesson_fee
----------------------------------------------------------------------- */
.lesson_fee_box {
    margin-bottom:50px;
}
.lesson_fee_list {
    display:grid;
    grid-template-columns: 2fr 2fr 1fr;
    margin-bottom:50px;
}
.lesson_fee_list dt,
.lesson_fee_list dd {
    padding:1em;
    border-collapse: collapse;
    border-top:1px solid #cccccc;
    border-bottom:1px solid #cccccc;
    margin-bottom:-1px;
}

.lesson_fee_list .ar {
    background-color:#eeeeee;
}

@media screen and (max-width: 767px) {
.lesson_fee_list {
    display:grid;
    grid-template-columns: 1fr 1fr 1fr;
    margin-bottom:50px;
}
}

/* mailform
----------------------------------------------------------------------- */
#mailform h3 {
    margin-bottom:0;
    padding-bottom:10px;
}
#higashinakano .contact_box2 {
    display: flex;
    justify-content: center;
    margin:0;
}
#higashinakano .contact_box2 .phone a {
    display: inline-block;
    text-align: center;
    margin: 0 auto;
    border: 0;
    background: #ED8D03;
    background-image: none;
    padding: 15px 50px;
    font-size: 23px;
    font-weight:700;
    text-decoration: none;
    color: #FFFFFF;
    border-radius: 10px;
}
#higashinakano .contact_box2 .phone a::before {
    font-family: 'Font Awesome 6 Free';
    content: '\f2a0';
    margin-right:8px;
    font-weight:600;
    font-size:1em;
}
#higashinakano .contact_box2 .phone a span {
    font-size:14px;
    font-weight:normal;
}
.mailform_box {
    margin:50px 0;
    background-color:#ffffff;
    padding:1em;
}
.mailform_box > div {
    display:grid;
    grid-template-columns: 1fr 3fr;
}
.mailform_box h4,
.mailform_box div > div {
    padding:1em;
    border-collapse: collapse;
    border-top:1px dotted #cccccc;
    border-bottom:1px dotted #cccccc;
    margin-bottom:-1px;
}
.mailform_box h4::before {
    padding:5px;
    border-radius: 5px;
    color:#FFF;
    font-size:12px;
    font-weight:normal;
    letter-spacing: 0.2em;
    margin-right:0.3em;
}
.mailform_box h4.req::before {
    content:"必須";
    background-color: #ED8D03;
}
.mailform_box h4.opt::before {
    content:"任意";
    background-color: #AAA;
}

input,
select,
textarea {
    padding: 10px;
    border-radius: 5px;
    border: 1px solid #606060;
    min-width:200px;
    margin:5px;
}
textarea {
    line-height: 1.8;
}
input[type=checkbox] {
    transform: scale(2);
    margin:10px;
}
label, input[type='checkbox'] {
    cursor: pointer;
}
div.submitBTN_container {
    margin:30px 0;
    border-top:none;
    border-bottom:none;
    grid-template-columns: 1fr;
    justify-items: center;
}
.submitBTN {
    display:inline-block;
    width:400px;
    text-align: center;
    background-color:#ED8D03;
    border:none;
    border-radius: 100vh;
    padding:15px;
    color:#fff;
    font-size:20px;
    text-decoration: none;
}
.submitBTN:hover {
    cursor:pointer;
    opacity: 0.7;
}

@media screen and (max-width: 767px) {
.mailform_box > div {
    display:grid;
    grid-template-columns: 1fr;
}
.mailform_box h4,
.mailform_box div > div {
    padding:1em;
    border-collapse: collapse;
    border-top:1px dotted #cccccc;
    border-bottom:none;
    margin-bottom:-1px;
}
.mailform_box div > div {
    padding:1em;
    border-collapse: collapse;
    border-top:none;
    border-bottom:1px dotted #cccccc;
    margin-bottom:-1px;
}
.submitBTN {
    display:inline-block;
    width:80%;
    text-align: center;
    background-color:#ED8D03;
    border:none;
    border-radius: 100vh;
    padding:15px;
    color:#fff;
    font-size:20px;
    text-decoration: none;
}
}

  /*-------------------- スクール情報 --------------------*/
.school_access .route {
    padding:1em;
    margin:1em 0;
    background-color: #EEE;
}
.school_access .route h5 {
    margin-bottom:5px;
}
.school_access .route ol {
    padding-left:20px;
    margin-bottom:20px;
    border-bottom: 1px solid #d2d0d0;
}
.school_access .route ol:last-child {
    margin-bottom:0;
    border-bottom:none;
}
.school_access .route ol li {
    list-style-type: decimal;
    list-style-position: outside;
    border-bottom:none;
    padding:0;
    margin-bottom:3%;
}

