@charset "UTF-8";
@media screen and (min-width: 768px) and (max-width: 1279px) {
  .sp_only {
    display: none !important;
  }
  body {
    word-wrap: break-word;
    font-size: 1.6rem;
    line-height: 1.6;
  }
  p {
    margin-bottom: 1rem;
  }
  .mgb_ll_tb, section {
    margin-bottom: 120px !important;
  }
  .mgb_l_tb, #mv {
    margin-bottom: 80px !important;
  }
  .mgb_m_tb, .message .message_midashi, .review_l, .review_r, .img_r, .img_l, h4, h3, h2, header {
    margin-bottom: 60px !important;
  }
  .mgb_s_tb, .uketuke, h5 {
    margin-bottom: 40px !important;
  }
  .mgb_ss_tb, .intro_wrap .intro, footer ul, footer h1, .img_txt figure, .width_s_margin div {
    margin-bottom: 20px !important;
  }
  .mgb_none_tb {
    margin-bottom: 0px !important;
  }
  .mgt_m_tb {
    margin-top: 80px !important;
  }
  .width_margin, .course_d, .bukatu_d_link, .intro_wrap p, footer, .message .message_txt, .bk_b .trouble, .bukatu_link, .insta_list {
    width: 92%;
    margin: 0 auto;
  }
  .width_s_margin {
    width: 92%;
    margin: 0 auto;
    text-align: left;
  }
  .width_s_margin div li {
    list-style-type: disc;
    list-style-position: inside;
    margin-bottom: 5px;
  }
  .width_s_margin h4 {
    margin-bottom: 20px !important;
    font-weight: bold;
    color: var(--main-color);
  }
  .text_center {
    text-align: center;
  }
  .drawer {
    position: fixed;
    top: 0;
    right: -30%;
    width: 30%;
  }
  header {
    display: flex;
    justify-content: space-between;
  }
  header h1 {
    margin: 0 auto;
    padding: 3% 0 0 0;
  }
  header h1 img {
    width: 280px;
  }
  #mv figure.pc_only {
    background-image: url(../images/pcmv_b.png);
    background-repeat: repeat-x;
    background-size: auto 956px;
  }
  #mv figure.pc_only img {
    margin: 0 auto;
    display: block;
    width: 1000px;
  }
  .jp-midashi {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-weight: 700;
    font-size: 3rem;
    letter-spacing: -0.05rem;
  }
  h2 {
    font-weight: 200;
    text-align: center;
    font-size: 6rem;
  }
  h2 span {
    font-size: 1.6rem;
    display: block;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-weight: bold;
  }
  h3 {
    font-size: 2.2rem;
  }
  h4 {
    font-size: 2rem;
  }
  h5 {
    font-size: 1.6rem;
  }
  .insta_list {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    text-align: center;
    font-size: 1.4rem;
  }
  .insta_list div {
    width: calc(32% - 5px);
    margin-right: 10px;
    margin-bottom: 10px;
    border: 1px solid var(--border);
    padding: 20px 10px;
  }
  .insta_list div:nth-child(5) {
    margin-right: 0;
  }
  .insta_list div .insta_list_img {
    width: 60%;
    margin-bottom: 5px;
  }
  .insta_list div .insta_list_account {
    background-color: var(--text-color);
    color: white;
    font-weight: bold;
    border-radius: 8px;
    padding: 4px;
    margin: 0 auto 10px;
  }
  .insta_list div .insta_list_icon {
    width: 20px;
    height: auto;
  }
  .insta_list_name_e {
    background-color: #e8f2fa;
    padding: 5px;
    margin-bottom: 10px;
    font-weight: bold;
  }
  .insta_list_name_e p:last-child span {
    padding: 0px 8px;
  }
  .insta_list_name_l {
    background-color: #fdfaee;
    padding: 5px;
    margin-bottom: 10px;
    font-weight: bold;
  }
  .insta_list_name_m {
    background-color: #fae8f1;
    padding: 5px;
    margin-bottom: 10px;
    font-weight: bold;
  }
  .insta_list_name_d {
    background-color: #f9eefd;
    padding: 5px;
    margin-bottom: 10px;
    font-weight: bold;
  }
  .insta_list_name_en {
    background-color: #e8faf0;
    padding: 5px;
    margin-bottom: 10px;
    font-weight: bold;
  }
  .bk_r {
    background-color: var(--main-color);
    padding: 120px 0;
  }
  .bk_r h2 {
    color: white;
  }
  .outlink {
    background-color: var(--text-color);
    border-radius: 50px;
    padding: 20px;
    color: white;
    text-align: center;
    position: relative;
    width: 50%;
    display: block;
    margin: 20px auto 0;
    font-weight: bold;
  }
  .outlink::before {
    content: ""; /*何も入れない*/
    display: block;
    width: 20px;
    height: 20px;
    background-image: url(../images/outlink_w.svg);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    right: 52px;
    top: 22px;
  }
  .bukatu_link {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  .bukatu_link li {
    width: calc(50% - 10px);
    margin-right: 10px;
    border: 1px solid var(--text-color);
    border-radius: 14px;
    padding: 15px 0;
    margin-bottom: 10px;
    text-align: center;
    background-color: white;
    position: relative;
  }
  .bukatu_link li::before {
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    background-image: url(../images/arrow_r.svg);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    right: 30px;
    top: 55px;
  }
  .bukatu_link li span {
    color: var(--main-color);
    font-weight: bold;
    font-size: 1.6rem;
    font-family: "Zen Kaku Gothic New", sans-serif;
    display: block;
  }
  .bukatu_link li p {
    font-size: 3rem;
    font-weight: 200;
    line-height: 1.3;
  }
  .bukatu_link li p span {
    color: var(--text-color);
    font-size: 1.2rem;
  }
  .bk_b {
    background-color: var(--text-color);
    padding: 150px 0 80px;
    margin-bottom: 0 !important;
  }
  .bk_b h2 {
    color: white;
  }
  .bk_b .trouble ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  .bk_b .trouble ul li {
    width: calc(50% - 10px);
    margin-right: 10px;
    background-color: white;
    padding: 17px 17px 15px 48px;
    margin-bottom: 10px;
    position: relative;
    font-size: 1.8rem;
    font-weight: bold;
  }
  .bk_b .trouble ul li::before {
    content: ""; /*何も入れない*/
    display: block;
    width: 23px;
    height: 23px;
    background-image: url(../images/troble-icon.svg);
    background-size: contain;
    background-repeat: no-repeat;
    margin: 2px 0 0 0;
    position: absolute;
    left: 23px;
  }
  .trouble_bk {
    margin: 0px auto 80px;
    display: block;
  }
  .img_l {
    display: flex;
    position: relative;
  }
  .img_l figure {
    width: 60%;
  }
  .img_l figure img {
    width: 100%;
  }
  .img_l div {
    position: absolute;
    z-index: 5;
    background-color: white;
    padding: 20px 30px;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    width: 50%;
  }
  .img_l div p {
    margin-bottom: 0 !important;
    font-weight: bold;
    font-size: 2.2rem;
  }
  .img_r {
    display: flex;
    position: relative;
  }
  .img_r figure {
    width: 60%;
    margin-left: auto;
  }
  .img_r figure img {
    width: 100%;
  }
  .img_r div {
    position: absolute;
    z-index: 5;
    background-color: white;
    padding: 20px 30px;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    width: 50%;
  }
  .img_r div p {
    margin-bottom: 0 !important;
    font-weight: bold;
    font-size: 2.2rem;
    text-align: right;
  }
  .ba {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }
  .ba figure {
    width: 50%;
  }
  .review_l, .review_r {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }
  .review_l figure, .review_r figure {
    width: 20%;
  }
  .review_l figure img, .review_r figure img {
    width: 100%;
  }
  .review_l div, .review_r div {
    width: 60%;
    padding: 0 40px;
  }
  .review_l div h5, .review_r div h5 {
    font-weight: bold;
    font-size: 2.2rem;
    margin-bottom: 10px !important;
  }
  .review_l div h5 span, .review_r div h5 span {
    font-size: 1.4rem;
    font-weight: bold;
    display: block;
    margin-bottom: 10px;
  }
  .review_l div p, .review_r div p {
    margin-bottom: 0 !important;
  }
  .img_txt {
    margin: 60px auto 0px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  .img_txt figure {
    width: 30%;
  }
  .img_txt figure img {
    width: 100%;
  }
  .img_txt div {
    width: 70%;
    padding: 0 40px;
  }
  .img_txt h4 {
    font-weight: bold;
    margin-bottom: 20px !important;
    font-size: 3rem;
  }
  .img_txt h4 span {
    font-size: 2rem;
    margin-right: 5px;
  }
  .message .message_midashi {
    background-image: url(../images/message_bk.png);
    background-repeat: repeat-x;
    text-align: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  footer h1 img {
    width: 230px;
  }
  footer ul {
    display: flex;
  }
  footer ul li {
    margin-bottom: 5px;
    padding-bottom: 5px;
    font-size: 1.4rem;
  }
  small {
    text-align: center;
  }
  #mv_content h2 {
    text-align: center;
    line-height: 1.5;
    font-size: 5.5rem;
    font-weight: 200;
  }
  #mv_content h2 strong {
    color: var(--main-color);
    font-size: 2.4rem;
    font-weight: bold;
    display: block;
  }
  #mv_content h2 span {
    font-size: 2rem;
    font-weight: bold;
  }
  .intro_wrap figure {
    text-align: center;
  }
  .intro_wrap .intro {
    background-color: var(--main-color);
    color: white;
    padding: 40px 20px;
  }
  .intro_wrap .intro h3 {
    font-weight: bold;
    margin-bottom: 20px !important;
  }
  .intro_wrap .intro h3 span {
    display: block;
    background-color: #d30c0f;
    margin-bottom: 5px;
    padding: 10px 15px;
  }
  .intro_wrap .intro p {
    text-align: right;
    font-size: 1.4rem;
  }
  .intro_wrap p {
    width: 600px;
    margin: 0 auto;
  }
  .bukatu_d_link {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  .bukatu_d_link li {
    width: calc(50% - 10px);
    margin-right: 10px;
    border: 1px solid var(--text-color);
    border-radius: 14px;
    padding: 17px 0;
    margin-bottom: 10px;
    text-align: center;
    background-color: white;
    position: relative;
  }
  .bukatu_d_link li::before {
    content: "";
    display: block;
    width: 8px;
    height: 8px;
    background-image: url(../images/arrow_r_bottom.svg);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    right: 0;
    top: 95px;
    left: 0;
    margin: 0 auto;
  }
  .bukatu_d_link li span {
    color: var(--main-color);
    font-weight: bold;
    font-size: 1.2rem;
    font-family: "Zen Kaku Gothic New", sans-serif;
    display: block;
    margin-bottom: 5px;
  }
  .bukatu_d_link li p {
    font-size: 2.4rem;
    font-weight: bold;
    line-height: 1.3;
  }
  .bukatu_d_link li a {
    display: block;
    height: 100%;
    width: 100%;
  }
  .course_bk_c {
    background-color: var(--sub-color);
    padding: 120px 0;
    margin-bottom: 0 !important;
  }
  .course_none_c {
    padding: 120px 0;
    margin-bottom: 0 !important;
  }
  .course_d {
    font-weight: bold;
  }
  .course_d h3 {
    text-align: center;
    font-size: 3.3rem;
    margin-bottom: 40px !important;
  }
  .course_d h3 span {
    font-size: 2rem;
    color: var(--main-color);
    display: block;
  }
  .course_d dl dt {
    background-color: var(--main-color);
    color: white;
    text-align: center;
    padding: 2px 0px;
    margin-bottom: 5px;
    width: 80px;
  }
  .course_d dl dd {
    margin-bottom: 20px;
  }
  .uketuke {
    background-color: var(--main-color);
    color: white;
    padding: 5px 10px;
    text-align: center;
    font-weight: bold;
    width: 25%;
    margin: 0 auto;
  }
  .insta_link a {
    position: relative;
    border: 1px solid var(--text-color);
    border-radius: 8px;
    padding: 10px 15px 10px 30px;
    background-color: white;
    text-align: center;
    display: inline-block;
  }
  .insta_link a::before {
    content: ""; /*何も入れない*/
    display: block;
    width: 20px;
    height: 20px;
    background-image: url(../images/insta_c.png);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    left: 10px;
    top: 14px;
  }
  .course_img {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  .course_img li {
    width: 50%;
  }
  .course_img li img {
    width: 100%;
  }
  .review {
    margin-top: 120px;
  }
  .accordion-header_faq {
    padding: 20px 40px;
    font-weight: bold;
    margin: 0 auto;
    background-color: var(--main-color);
    color: white;
    transition: background 0.3s ease;
    cursor: pointer;
    position: relative;
    margin-bottom: 10px;
  }
  .accordion-header_faq::before, .accordion-header_faq::after {
    position: absolute;
    content: "";
    top: 1px;
    right: 20px;
    bottom: 0;
    width: 12px;
    height: 2px;
    margin: auto;
    background-color: white;
  }
  .accordion-header_faq::after {
    transform: rotate(-90deg);
    transition: transform 0.3s;
  }
  .accordion-header_faq span::before {
    position: absolute;
    content: "Q";
    top: 16px;
    left: 15px;
    font-size: 20px;
  }
  .accordion-header_faq.active::after {
    transform: rotate(0deg);
  }
  .accordion-content_faq {
    padding: 5px 40px 40px;
    display: none;
    width: 800px;
    margin: 0 auto;
  }
  .tokatu_link a {
    background-color: white;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    border: 1px solid var(--border);
    padding: 20px 15px;
    width: 500px;
    margin: 0 auto;
  }
  .tokatu_link a figure {
    width: 30%;
    margin-right: 10px;
  }
  .tokatu_link a figure img {
    width: 100%;
  }
  .tokatu_link a .insta_list_name_e {
    width: 66%;
    padding: 15px 20px;
    font-size: 1.8rem;
    font-weight: bold;
    margin-bottom: 0;
  }
}/*# sourceMappingURL=tb.css.map */