* {
    margin: 0;
    padding: 0;
}

*::before,
*::after {
    box-sizing: initial;
}


body {
    width: 100%;
    /* height: 14706px; */
    margin: initial;
}

main {
    width: auto;
}

header {
    height: 123px;
    margin-bottom: 2.6%;
    display: flex;
    /* Make sure the header is a flex container */
    align-items: center;
    /* Vertically align the items in the middle */
    /* margin-bottom: -170px; */
    /* margin-top: -130px; */
}

.header {
    position: fixed;
    /* ヘッダーを画面の上部に固定する */
    top: 0;
    /* 上端から0pxの位置に */
    left: 0;
    /* 左端から0pxの位置に */
    right: 0;
    /* 右端から0pxの位置に */
    z-index: 1000;
    /* 他の要素の上に表示する */
    background-color: #fff;
    /* 背景色は白（または任意の色） */
    /* ヘッダーの他のスタイリングもここに追加 */
    padding-bottom: 5%;
}

.head_logo {
    width: 30%;
    height: unset;
    padding-left: 5%;
    padding-top: 8%;
}

.head_logo img {
    width: 97.875px;
}


.burger-menu.active {
    display: block;
}

.burger-menu {
    position: fixed;
    /* 画面に固定 */
    top: 0;
    /* 画面の上端に配置 */
    right: -500px;
    /* 初期状態では画面外に隠れている */
    width: 60%;
    /* メニューの幅 */
    height: 100vh;
    /* 画面の高さいっぱい */
    /* 幅を画面全体に */
    background-color: #FBFCED;
    transition: right 0.3s ease-in-out;
    /* スライドインのアニメーション */
    /* 背景色を暗めに設定 */
    z-index: 1000;
    /* 他の要素より上に表示 */
    flex-direction: column;
    /* 要素を縦並びに */
    justify-content: center;
    /* 中央に配置 */
    align-items: center;
    /* アイテムを中央に揃える */
    text-align: center;
    /* テキストを中央揃えに */
    overflow-y: auto;
    /* 必要に応じてスクロールバーを表示 */
    overflow: visible;
    /* overflowをvisibleに設定 */
    display: initial;
}

.menu-item {
    display: block;
    height: 60px;
    font-size: 20px;
    color: #212529;
    font-weight: bold;
    text-decoration: none;
    transition: color 0.3s, background-color 0.3s;
    text-align: left;
    cursor: pointer;
    border-bottom: 1px solid #ccc;
    /* 下線を追加 */
    line-height: 60px;
    /* 縦方向の中央揃え */
}

.menu-item:hover {
    color: #3a3a3a;
    background-color: #FFFFFF;
    text-decoration: none;
}

.menu-item span {
    padding-left: 10px;
    /* 余白の大きさを設定 */
}

/* バーガーメニューの線のスタイル */
.burger-line {
    width: 30px;
    /* 幅を設定 */
    height: 3px;
    /* 高さを設定 */
    background-color: #333;
    /* 色を設定 */
    margin: 5px 0;
    /* 間隔を設定 */
    transition: all 0.3s;
    /* アニメーション効果 */
}

.menu-header {
    text-align: right;
    /* 閉じるボタンを右寄せに */
    padding: 20px;
    /* ヘッダーのパディング */
}

.close-button {
    font-size: 24px;
    /* ボタンのサイズ */
    cursor: pointer;
    /* クリック可能なカーソル表示 */
}

.menu {
    margin: 10% auto;
    margin-left: 12.1%;
    position: relative;
    left: 1px;
    top: 299px;
    display: block;
    background-color: #ffffff;
    /* ↓ハンバーガーメニュー隠す↓ */
    visibility: hidden;
}

.title li:first-child {
    margin-top: 10px;
}

.menu ul {
    display: block;
    list-style: none;
    margin: initial;
    padding: initial;
}

.menu ul li {
    display: block;
    padding: 20px 0;
    text-align: center;
}

.icons li {
    padding-top: 0 !important;
}

.menu a {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 19px;
    font-weight: bold;
    text-decoration: none;
    color: #000000;
    letter-spacing: 0.1em;
}

.burger {
    position: fixed;
    right: 15px;
    top: 55px;
    z-index: 1000;
}

.burger div {
    width: 42px;
    height: 5px;
    background-color: #000000;
    border-radius: 10px;
    margin: 10px;
}

.line3 {
    margin-bottom: 0 !important;
}

.top_image img {
    width: 100%;
}

.top_image {
    display: flex;
    flex-direction: column;
    align-items: center;
    /* Center the content horizontally */
    background: #F0FBFF;
    /* margin-bottom: 5%; */
}

#photo1 {
    background-image: url("../images/SP_TOP背景.svg");
    background-size: 100% auto;
    margin-top: 123px;
}

.top_image,
.news {
    background: #F0FBFF;
    width: 100%;
}

.news {
    padding-top: 50px;
    padding-bottom: 50px;
    text-align: center;
}

.news_big {
    line-height: 1.2;
    margin: initial;
}

.news_big_c {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    color: #005AAA;
    font-size: 50px;
}

.news_sub {
    margin: initial;
    line-height: 1.7;
    margin-bottom: 30px;
}

.news_sub_c {
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
    color: #000000;
    font-size: 14px;
    font-weight: bold;
}

.article_title {
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
    color: #000000;
    font-size: 16px;
    font-weight: bold;
    margin-top: 10px;
}

.article_title a {
    text-decoration: none;
    color: #000000;
}

.plot {
    background-color: #FBFCED;
    padding-top: 30px;
}

.about_plot {
    margin: 0 7.0%;
    background-color: #FBFCED;
    padding-bottom: 7%;
    padding: 0 0 10%;
    /* padding-right: 1%; */
}

.number {
    margin: 0;
    position: relative;
    /* left: 15px; */
    padding-right: 1%;
}

.logo_sub_wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}


.plot_logo {
    width: 46.6%;
    height: 4.8%;
    /* margin-left: 41.3%; */
    padding-top: 7.3%;
}

.sub {
    /* margin-left: 46.3%; */
    font-family: "Zen Maru Gothic", YuGothic, "游ゴシック";
    font-size: 29px;
    font-weight: bold;
}

.main_content {
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
    font-size: 16px;
    font-weight: bold;
    line-height: 2.0;
    margin-left: 8%;
    margin-top: 10%;
    padding-right: initial;
}

.plot_content_images {
    flex-direction: column;
}

.plot_images {
    width: 100%;
    margin-bottom: -120px;
    text-align: center;
    margin-top: 10%;
}

.plot_content {
    width: 91.8%;
}

.plot_images img {
    position: inherit;
    /* z-index: 3; */
}

.asset1 {
    margin-left: -61%;
    width: 19.2%;
    margin-top: -10%;
}

.asset2 {
    width: 27%;
    margin-left: 48%;
    z-index: 4;
    margin-top: 7%;
    margin-bottom: -3%;
    /* margin-top: 200.78px; */
}

.photo_center {
    position: relative;
    top: -50px;
}

.photo_center .photo2 {
    width: 80%;
}

.photo2_2 {
    /* margin-left: 10% !important; */
    top: -35px;
}

.photo2_2+.asset2 {
    top: -130px;
    left: 40px;

}

.photo1 {
    width: 78.6%;
    margin-top: 1%;
    z-index: 1;
    border-radius: 30px;
    margin-top: -18%;
    margin-left: initial;
}

.photo2 {
    width: 65%;
    z-index: 2;
    border-radius: 30px;
    /* margin-top: initial; */
    /* margin-left: 5%; */
    display: block;
    margin: auto;
    /* margin-top: 200.78px; */
}

.detail_button {
    /* box-sizing: border-box; */
    margin: 0 auto;
    /* background-color: #015DDB; */
    /* border-radius: 40px; */
    width: 65.6% !important;
    /* text-align: center; */
    margin-top: 5%;
    margin-bottom: 7%;
    display: flex !important;
    /* height: 68px;
    border: 4px solid transparent; */
    z-index: 1;
}



.detail_letter {
    color: #FFFFFF;
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 18px;
    font-weight: bold;
    line-height: 60px;
    text-decoration: none;
}

.plot_strength {
    text-align: center;
    margin-top: 25%;
}

.strength_title {
    color: #EA6884;
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 22px;
    font-weight: bold;
    letter-spacing: 0.1em;
}

.strength_sub {
    margin-top: 2.3%;
    margin: 2.3% 3%;
}

.strength_sub_span {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 16px;
    line-height: 1.7;
}

.plot_strengths {
    display: flex;
    flex-direction: column;
    margin-top: 3%;
    gap: 10px;
}

.strength {
    width: auto;
    border: 5px solid #97C3EA;
    border-radius: 60px;
    background-color: #FFFFFF;
    padding: initial;
}

.strength-title {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: initial;
    padding: 5% 3% 0 7%;
}

.strength-title h3 {
    font-size: 18px;
    text-align: left;
}

.strength .strength_p {
    font-size: 14px;
}

.plot_strengths .strength {
    height: 214px;
    width: 100%;
    border-radius: 40px;
    margin: 0;
}

/* h1 {
    color: #005AAA;
    font-family: "Tilt Warp", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
    font-size: 45px;
    line-height: 1.2;
    font-weight: normal;
    margin: initial;
    letter-spacing: 0.1em;
    flex-basis: 10%;
    margin-left: 8%;
    margin-right: 3%;
} */


h3 {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 20px;
    /* font-weight: bold; */
    color: #EA6884;
    line-height: 1.3;
    margin: 0;
    /* flex-basis: 90%; */

}

.strength p {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 45px;
    line-height: 1.7;
    /* padding-top: 1%; */
    text-align: justify;
}



.lectures {
    background-color: #F0FBFF;
    text-align: center;
    padding: 10% 0;
}

.lectures h2 {
    color: #005AAA;
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 20px;
    line-height: 1.4;
    font-weight: bold;
    margin: initial;
    letter-spacing: 0.1em;
    padding-bottom: 4%;
}

hr {
    width: 84%;
    height: 5px;
    background-color: #005AAA;
    border: none;
    /* margin: 0 7.8%; */
}

.programming_classes {
    width: 90%;
    margin: 2% auto;
    padding: initial;
}

.programming_classes p {
    display: flex;
    justify-content: center;
    align-items: center;
}

.circle {
    width: 12%;
}

.title_1 {
    color: #E95513;
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0.1em;
    margin-left: 3%;
}

.programmig_both {
    margin: 1% 7.8%;
    flex-direction: column;
    padding: 0;
}

.programming_photo {
    width: 100%;
}

.dummy_3 {
    width: 86%;
    border-radius: 30px;
    margin: 0 auto 5% auto;
}

.programming_text {
    width: 100%;
    position: relative;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.programming_school {
    color: #E95513;
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 22px;
    font-weight: bold;
    margin-left: initial;
    /* margin-top: 5%; */
}

.plot_characteristic {
    color: #000000;
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 16px;
    font-weight: bold;
    margin: 1% 0;
}

.characteristic_1,
.characteristic_2 {
    box-sizing: border-box;
    border: none;
    background-color: #E95513;
    border-radius: 15px;
    color: #FFFFFF;
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 15px;
    font-weight: bold;
    /* padding: 1.5% 13%; */
    margin: 1% 0;
    line-height: 1.7;
    text-align: center;
    width: 90%;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.cheracterisctics_detail {
    margin: initial;
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 14px;
    padding: 4% 3%;
    text-align: justify;

}


.programming_course {
    margin: 5% 7.8%;
    padding: 0
}

.programming_course+.class_button {
    margin: 8% 7.8% 5%;
}

.classes {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 18px;
    color: #E95513;
    font-weight: bold;
    text-align: left;
    margin-left: 0.5%;
    margin-top: 2%;
    margin-bottom: 1.5%;
}

.class_category {
    /* margin: 3% 8% 0 8%; */
    display: flex;
    flex-direction: column;
    gap: 10px;
    /* Need some space between the items */
}

.courses_wrapper {
    /* display: flex; */
    gap: 5px;
    margin-bottom: 10px;
    /* Need some space between the items */
}

.courses_wrapper div {
    margin-bottom: 10px;
}

.courses {
    flex: 1;
    /* Each item takes equal width to fill the container */
    border: none;
    border-radius: 15px;
}

.courses p {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    text-align: left;
    font-size: 14px;
    /* margin-bottom: 15%; */
}

.period {
    display: block;
    width: 85px;
    margin: 10px 0 5px;
}

.period+p {
    padding: 0 5%;
    position: absolute;
    margin-left: 100px;
    margin-top: -30px;
}


.courses_1 {
    background-color: #FEFFE6;
    padding: 3% 8%;

}

.courses_2 {
    background-color: #FFDAB5;
    padding: 3% 8%
}

.courses h2 {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 14px;
    color: #000000;
    font-weight: bold;
    margin-bottom: 10%;
    text-align: left;
}

.all_classes {
    border: none;
    border-radius: 15px;
    padding: 5%;
    width: auto;
    background-color: #FFDAB5;
    margin-top: 1.5%;
    line-height: 2.0;
}

.point {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 14px;
    color: #000000;
    font-weight: bold;
    margin-right: 2%;
}

.text+p {
    font-size: 75%;
}

.text {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 14px;
    color: #000000;
    text-align: left;
}

.cb_detail_letter {
    color: #FFFFFF;
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 15px;
    font-weight: bold;
    background-color: #E95513;
    text-decoration: none;
    line-height: 2.6;
    padding: 3.7% 0;
    border: none;
    border-radius: 58px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 65%;
    margin-left: initial;
    flex-grow: initial;
    margin: 5% 0;
}


.class_button {
    margin: 10% 7.8%;
    display: block;
    align-items: center;
    text-align: center;
    justify-content: center;
    height: initial;
}

.class_button {
    width: auto;
}

.asset6 {
    width: 16%;
    flex-shrink: 0;
    margin-top: 4%;
}

.spacer {
    flex-grow: 1;
}

.design .class_button_2 {
    margin: 10% auto;
}

.dummy_4 {
    width: 95%;
    border-radius: 30px;
    margin: 0;
}

.programming_sub_photo {
    text-align: left;

}

.programming_sub {
    margin: 5% 0%;
    flex-direction: column;
    padding: 10% 7.8%;
}

.test_area {
    display: initial;
}


.programming_sub_photo {
    width: auto;
    height: 130%;
    /* padding-bottom: 9%; */
    text-align: center;
    padding: 0 5%;
    margin-bottom: 3%;
    margin-left: 0;
}

.programming_sub_text {
    padding: 0 4%;
}

.all_classes_d {
    font-size: 13px;
    padding-bottom: 3%;
    text-align: left;
}

.period1 {
    position: relative;
    left: 3px;
    top: -8px;
    margin-top: -25px;
}


.all_classes_d p {
    margin-left: 5%;
}

.all_classes_d p span {
    display: initial;
    text-align: center;
}

.design_courses .d_courses_1 {
    padding: 6.4% 3%;
    width: 300px;
    text-align: left;
}

.design_detail_text .design_detail_photo {
    padding-bottom: 5%;
    margin-top: 300px;
}


.programming_exp {
    width: 100%;
    position: relative;
    text-align: left;
    margin-left: initial;
}

.programming_test {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 18px;
    font-weight: bold;
    color: #E95513;
    line-height: 1.33;
    margin-top: 2%;
}

.programming_test_detail {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 15px;
    font-weight: bold;
    color: #000000;
    line-height: 1.8;
    width: 100%;
    margin: 3% 0 5% 0;
    text-align: justify;
}

.test_button {
    width: 100%;
    position: relative;
    text-align: center;
    margin-left: initial;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.test_button_letter {
    font-size: 14px;
}

.test_button_letter::after {
    top: 0px;
}

.asset7 {
    width: 80%;
    transform: scale(-1, 1);
    position: relative;
    top: -10px;
    right: -10%;
}

.place_asset7 {
    margin: 0% 7.8%;
    text-align: right;
    margin-top: -15%;
}

.design {
    margin: 5% 7.8%;
    padding: 0;
}

.design_top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-align: left;
}

.design_top .design_text {
    font-size: 18px;
}

.asset8 {
    width: 40%;
    transform: scale(-1, 1);
}

.asset9 {
    width: 12.4%;
    margin: 0 3%;
}

.design_text {
    display: flex;
    align-items: center;
}

.design_top_p1 {
    display: flex;
    align-items: center;
    margin: 10% auto;
}

.design_text,
.en_text,
.ex_text,
.ad_text {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 18px;
    font-weight: bold;
    color: #005AAA;
    line-height: 1.4;
    letter-spacing: 0.1em;
    text-align: left;
    flex-grow: 1;
}

.en_text {
    flex-grow: initial;
}

.design_detail,
.english_detail,
.exercise_detail,
.adult_detail {
    /* margin: initial; */
    flex-direction: column;
}


.design_detail_text,
.english_detail_text,
.exercise_detail_text,
.adult_detail_text {
    width: 100%;
    margin-top: 0;
}


.design_detail_photo,
.english_detail_photo,
.exercise_detail_photo,
.adult_detail_photo {
    width: 100%;
    position: relative;
    /* text-align: left; */
}

.design_detail_photo+div {
    margin-top: 5%;
}

.dummy_3_2 {
    margin-left: initial;
    width: 100%;
    border-radius: 30px;
    top: -300px;
}

.circle_small,
.circle_small_2,
.circle_small_3 {
    color: #005AAA;
    display: inline-block;
    width: 20px;
    text-align: center;
    margin: 0 3%
}

.design_text_detail,
.english_text_detail,
.exercise_text_detail {
    display: flex;
    align-items: flex-start;
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 15px;
    font-weight: bold;
    color: #000000;
    line-height: 1.8;
    text-align: left;
    margin-bottom: 5%;
}

.design_text_detail:last-of-type {
    padding-bottom: 5%;
}

.design_text_detail p,
.english_text_detail p,
.exercise_text_detail p {
    margin-left: 30px;
    /* Should be same as the width of .circle_small */
    flex-grow: 1;
    /* This makes the text take up remaining space */
}

.design_courses,
.english_courses,
.exercise_courses {
    /* margin: 3% 8% 0 8%; */
    display: flex;
    justify-content: space-between;
    /* margin: initial; */
    /* margin-top: 300px; */
}

.design_courses_box,
.english_courses_box,
.exercise_courses_box {
    width: calc((100% - 40px) / 2);
    /* minus total gap divided by number of items */
    border: none;
    border-radius: 15px;
    padding: 6.4% 1.5%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.english_courses {
    margin-top: 320px;
    justify-content: center;
}

.d_courses_1 {
    background-color: #DFF3FA;
}

.d_courses_2 {
    background-color: #BBDFEB;
}

.design_courses_box h2,
.english_courses_box h2,
.exercise_courses_box h2 {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 14px;
    color: #000000;
    font-weight: bold;
    margin-bottom: 10%;
    line-height: 1.5;
}

.small_cp {
    font-size: 11px
}

.design_courses_box p,
.english_courses_box p,
.design_courses_box p {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 13px;
    color: #000000;
    line-height: 1.9;
}

.class_button_2 {
    display: flex;
    align-items: center;
    text-align: left;
    justify-content: center;
    margin-top: 3%;
    margin-bottom: 2%;
    width: 100%;
}

.input-group+.class_button_2 {
    margin-top: 10%;
}

.cb_detail_letter_2,
.cb_detail_letter_3,
.cb_detail_letter_4,
.cb_detail_letter_5,
.cb_detail_letter_6,
.cb_detail_letter_7,
.cb_detail_letter_8 {
    color: #FFFFFF;
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 15px;
    font-weight: bold;
    background-color: #005AAA;
    text-decoration: none;
    line-height: 2.6;
    padding: 3.7% 0;
    border: none;
    border-radius: 58px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 65%;
}

.digital_education {
    margin: 10% 7.8%;
    padding: 0;
}

.dg_photos {
    display: flex;
    justify-content: space-between;
    align-items: center;
    /* Add this to vertically align the images */
    margin-top: -8%;
}

.asset14 {
    text-align: right;
    width: 50%;
    margin-left: 50%;
    margin-top: 5%;
    /* Add this to push the image to the right */
}


.asset13 {
    text-align: left;
    width: 12%;
}


.dg_top {
    display: flex;
    align-items: center;
    /* justify-content: center; */
    margin-left: initial;
}

.asset10 {
    width: 12.9%;
    margin: 0 3% 0 0;
}

.digi_classes {
    width: 100%;
    margin: 15% auto;
}

.classes_ju {
    width: 100%;
    margin-top: 0;
}

.classes_ele {
    width: 100%;
    margin-bottom: 15%;
}

.dg_text {
    color: #00913A;
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0.1em;
    line-height: 1;
    margin: 10% 0;
}

.dg_subtitle {
    color: #000000;
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.7;
    margin: 5% 0;
    text-align: center;
}

.dg_contents {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.dg_content {
    flex-basis: calc(48%);
    /* Each item takes 50% width with a gap of 10px between them */
    flex-shrink: 0;
}

.dummy_4_2 {
    width: 90%;
    /* border-radius: 30px; */
    /* margin-left: 10%; */
}

.dg_content h2 {
    color: #000000;
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.3;
    letter-spacing: 0.1em;
}

.dg_content p {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 14px;
    color: #000000;
    line-height: 1.7;
    letter-spacing: 0.1em;
    padding: initial;
}

.class_button_3 {
    display: flex;
    align-items: center;
    text-align: left;
    justify-content: center;
    margin-top: 3%;
    margin-bottom: 2%;
    margin: 15% 0 5% 0;
}

.cb_detail_letter_3 {
    background-color: #00913A;
}

.english_education,
.exercise_education,
.adult_education {
    margin: 5% 7.8%;
}

.english_education {
    margin: 5% 7.8%;
    padding: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.english_education .class_button_2 {
    margin: 10% auto;
}

.english_detail_photo .dummy_3_3 {
    width: 100%;
    position: relative;
    top: 0;
}


.en_photos,
.ex_photos,
.ad_photos,
.dv_photo {
    display: flex;
    justify-content: space-between;
}

.ex_photos {
    align-items: center;
}

.asset15 {
    width: 50.7%;
    text-align: left;
    margin-top: -5%;
}

.asset16 {
    width: 23.8%;
    text-align: right;
    margin-top: -27%;
}

.en_top {
    display: flex;
    align-items: center;
    margin-top: 3%;
    margin-left: initial;
    justify-content: center;
}


.asset11 {
    width: 12.9%;
    margin: 0 5%;
}

.en_text {
    color: #E62B2B;
}

.english_detail,
.exercise_detail,
.adult_detail {
    display: flex;
    justify-content: space-between;
    margin-top: 8%;
}


.dummy_3_3 {
    margin-left: initial;
    width: 95%;
    border-radius: 30px;
}

.circle_small_2 {
    color: #E62B2B;
}


.e_courses_1 {
    background-color: #F8CACA;
}

.e_courses_2 {
    background-color: #F5B8B8;
    padding: auto 3% !important;
}

.cb_detail_letter_4 {
    background-color: #E62B2B;
}

.cb_detail_letter_5 {
    background-color: #8B0091;
}

.circle_small_3 {
    color: #8B0091;
}

.ex_courses_1 {
    background-color: #E2CFE3;
}

.ex_courses_2 {
    background-color: #D1A4D3;
}

.asset18 {
    width: 70.6%;
    text-align: left;
    margin-top: -2%;
    transform: scale(-1, 1);
}

.asset19 {
    width: 15.2%;
    text-align: right;
    margin-top: -10%;
}

.text_small {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 14px;
    color: #EA6884;
    letter-spacing: 0.1em;
}


.cb_detail_letter_6 {
    background-color: #EA6884;
}

.asset12 {
    width: 14.0%;
    margin: 0 5%;
}

.ex_top {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: initial;
    margin-top: initial;
}

.ex_top p {
    display: flex;
    justify-content: center;
    align-items: center;
}

.exercise_courses_box p {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 14px;
    color: #000000;
    line-height: 1.3;
}

.ex_text {
    color: #8B0091;
}

.ad_text {
    color: #EA6884;
}

.asset20 {
    width: 23.7%;
    margin-top: -10%;
}

.asset21 {
    width: 61%;
    transform: rotate(-14deg);
    margin-top: initial;
    text-align: right;
    margin-left: auto;
    margin-right: -10%;
}

.ad_top {
    display: flex;
    align-items: center;
    /* justify-content: center; */
    margin-left: initial;
    margin-top: 5%;
}

.asset17 {
    width: 12%;
    margin: initial;
    margin-right: 2%;
}

.adult_text_detail {
    display: flex;
    align-items: flex-start;
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 18px;
    font-weight: bold;
    color: #000000;
    line-height: 1.8;
    text-align: left;
    margin-bottom: 5%;
    margin-right: initial;
    margin-left: initial;
}

.adult_text_detail_2 {
    display: flex;
    align-items: flex-start;
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 14px;
    color: #000000;
    line-height: 1.55;
    text-align: left;
    margin-bottom: 5%;
    margin-left: initial;
}

.adult_courses {
    width: 97%;
    border: none;
    border-radius: 15px;
    padding: 6.0% 1.3%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background-color: #FDEBEB;
}

.adult_courses h2 {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 14px;
    color: #000000;
    line-height: 1.5;
    font-weight: bold;
    margin: 0 0 3% 0;
}

.adult_courses p {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 14px;
    color: #000000;
    line-height: 1.5;
}

.et_top {
    display: flex;
    align-items: center;
    /* justify-content: center; */
    margin-left: initial;
    /* margin-top: 20%; */
}

.asset17_2 {
    width: 12.2%;
    /* margin: 0 0 0 8%; */
}

.education_total {
    margin: 5% 7.8%;
    padding: 0;
}

.fee_simulation,
.inquiry_zone {
    margin: 5% 7.8%;
    padding: 0;
}


.et_text {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 18px;
    font-weight: bold;
    color: #EA6884;
    line-height: 1.4;
    letter-spacing: 0.1em;
    /* text-align: left; */
    /* flex-grow: 1; */
    margin-top: 0;
}

.et_contents {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 25px;
    margin-top: 5%;
}

.et_content {
    width: 100%;
    border: none;
    margin-top: 10%;
    padding: 3.8% 3%;
}

.et_content h2 {
    color: #000000;
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.5;
    /* letter-spacing: 0.1em; */
}

.et_content p {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 16px;
    color: #000000;
    line-height: 1.7;
    /* letter-spacing: 0.1em; */
    padding: initial;
    display: flex;
    justify-content: center;
    align-items: flex-start;
}



.asset22 {
    width: 46%;
}

.asset23 {
    width: 55%;
}

.asset24 {
    width: 49%;
}

.asset25 {
    width: 47%;
}

.circle_small_4 {
    color: #005AAA;
    display: inline-block;
    width: 22px;
    text-align: center;
    margin-right: initial;
    vertical-align: top;
}

.education_total_text_detail_1,
.education_total_text_detail_2 {
    margin-bottom: 10%;
}

.education_total_text_detail_1,
.education_total_text_detail {
    margin-top: 12%;
}

.education_total_text_detail_1+.education_total_text_detail {
    margin-top: 0;
}

.education_total_text_detail_2 {
    margin-top: 8%;
}

.education_total_text_detail_2+.education_total_text_detail {
    padding-top: 0;
    margin-top: 0;
}

.education_total_text_detail_3 {
    margin-top: 7%;
    margin-bottom: 10%;
}

.education_total_text_detail_3+.education_total_text_detail {
    margin-top: 0;
}

.education_total_text_detail_4 {
    margin-top: 5%;
    margin-bottom: 10%;
}

.education_total_text_detail_4+.education_total_text_detail {
    margin-top: 43px;
    padding-top: 0;
}

.education_total_text_detail {
    /* margin-top: 5%; */
}


.fee_photo {
    padding: 5px;
    width: 100%;
    height: 440px;
    background-image: url(../images/fee.png);
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: bottom;
}

.fee_top {
    display: flex;
    align-items: center;
    /* justify-content: center; */
    margin-left: initial;
    margin-top: 20%;
    margin-bottom: 0;
}

.fee_text {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 18px;
    font-weight: bold;
    color: #015DDB;
    line-height: 1.4;
    letter-spacing: 0.1em;
    text-align: left;
    /* flex-grow: 1; */
}

.asset26 {
    width: 12.2%;
    /* margin: 0 3% 0 25%; */
}

.fee_subtitle {
    color: #000000;
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.7;
    margin: 5% 0;
    text-align: center;
}

.fee_subtitle p {
    text-align: justify;
    padding: 0 5%;
}

.circle_2 {
    width: 11.5%;
    margin: 0 3%;
}

.inquiry_top {
    display: flex;
    align-items: center;
    /* justify-content: center; */
    /* margin-left: 24%;. */
    margin-top: 7%;
}

.inquiry_text {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 18px;
    font-weight: bold;
    color: #E95513;
    line-height: 1.4;
    letter-spacing: 0.1em;
    text-align: left;
    /* flex-grow: 1; */
}

.inquiry_field label {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 14px;
    color: #000000;
    line-height: 3.9;
    letter-spacing: 0.05em;
    text-align: left;
    flex-grow: 1;
}

.inquiry_zone {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 5%;
    /* margin-left: 18%; */
}

.inquiry_field input {
    width: 57.5%;
}

.inquiry_field {
    display: flex;
    flex-direction: column;
    width: 95%;
    margin-top: 8%;
    /* margin-left: 12%; */
}

.inquiry_field form {
    width: 100%;
}

.inquiry_field label {
    text-align: left;
    width: 30%;
    max-width: 209px;
    line-height: 1.0;
    letter-spacing: 0.3em;
}

.inquiry_field input {
    width: 100%;
    max-width: 630px;
    height: 35px;
}

.inquiry_field {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
    /* 各フィールドの下のマージンを指定 */
}

.input-group {
    display: flex;
    flex-direction: column;
    margin-bottom: 20px;
    align-items: normal !important;
}

.input-group select {
    appearance: none;
    -webkit-appearance: none;
}

.input-group label {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 14px;
    /* font-weight: bold; */
    color: #000000;
    margin-bottom: 3%;
    width: 100%;
}

.input-group input,
.input-group textarea,
.input-group select {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 14px;
    color: #000000;
    padding: initial;
    border: 1px solid #707070;
    /* border-radius: none; */
    width: 100%;
    margin-bottom: initial;
}

input {
    border-width: 1px;
}

select#subject {
    width: 100%;
    max-width: 630px;
    height: 37px;
    background-color: #E8E8E8;
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 12px;
    color: #000000;
    line-height: 1.9;
    padding-left: 0;
    text-align: left;
}

button {
    color: #000000;
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 18px;
    background-color: #FFFFFF;
    text-decoration: none;
    line-height: 1.8;
    padding: 1.3% 10.8%;
    border: solid 2px #707070;
    border-radius: 34px;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 59%;
}

.inquiry_field textarea {
    width: 100%;
    max-width: 630px;
    height: 325px;
    box-sizing: border-box;
    padding: 8px;
}

label[for="message"] {
    margin-top: 0%;
}

.development {
    /* background-image: url("../images/dev_back_sp.svg"); */
    /* background-repeat: no-repeat; */
    /* background-size: cover; */
    /* margin-top: 25%; */
    height: 100%;
}

#development {
    background-image: url(../images/dev_back_sp.svg);
    height: 1175px;
    margin-top: 35%;
    border-radius: 50px 50px 0 0;
}

/* #development .development {
    margin-top: 35%;
} */

/* .background {
    width: 1366px;
} */

.development_field {
    margin: 0 6.6%;
    padding-top: 5%;
    height: 100%;
}

.asset27 {
    width: 68%;
    /* text-align: right; */
    /* margin-top: -27%; */
    margin-left: 35%;
    margin-top: -23%;
    transform: scale(-1, 1);
}

.dv_top {
    /* margin-left: -5%; */
    margin-top: 10%;
}

#dv1::after {
    content: "\a";
    white-space: pre;
}

#dv1 {
    display: block;
    text-align: center;
}

.dv_text {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 20px;
    font-weight: bold;
    color: #005AAA;
    line-height: 1.4;
    letter-spacing: 0.1em;
    margin: 0 3%;
}

.asset28 {
    width: 5%;
}

.asset29 {
    width: 9%;
    margin-left: 0.5%;
}

.img-wrapper {
    display: flex;
    /* justify-content: center; */
    margin-left: 4%;
}

.flex-wrapper {
    display: flex;
    align-items: center;
}

.asset29_2 {
    transform: scale(-1, 1);
    margin-right: 0.5%;
    width: 9%;
}

.development_content {
    width: 100%;
}

.development_content_images {
    display: flex;
    justify-content: space-between;
    margin-top: 5%;
    flex-direction: column;
}

.development_main_content {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 15px;
    font-weight: bold;
    line-height: 1.9;
    margin-left: 3%;
    margin-top: 4.2%;
}

.development_images {
    width: 100%;
    position: relative;
    /* 子要素の基準点となる */
}

.development_images img {
    position: relative;
}


.photo1_1 {
    width: 71.6%;
    margin-left: 19%;
    margin-top: 1%;
    z-index: 1;
    border-radius: 30px;
    margin-top: initial;
    /* margin-top: 200.78px; */
}

.photo2_1 {
    width: 51%;
    z-index: 2;
    border-radius: 30px;
    margin-top: 42%;
    margin-left: 5%;
    /* margin-top: 200.78px; */
}

.development_sample1 {
    display: flex;
    justify-content: space-between;
    /* margin-top: 5%; */
    border: solid 3px #000000;
    background-color: #FFFFFF;
    margin-top: 5%;
    padding: 5% 8.9%;
    flex-direction: column;
    height: 380px;
}

.sample_num {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.9;
}

.sample_title {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.8;
    margin: 3% 0;
}

.sample_content {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 14px;
    line-height: 2.2;
}

.development_sample_content {
    width: 100%;
}

.development_sample_image {
    width: 100%;
    position: relative;
}

.development_sample_image img {
    position: relative;
}

.photo1_2 {
    width: 100%;
    margin-left: initial;
    margin-top: 1%;
    z-index: 1;
    border-radius: 0;
    /* margin-top: -3%; */
    /* margin-top: 200.78px; */
}

.photo1_2:first-child {
    position: absolute;
    left: 115px;
    top: -115px;
    box-shadow: 0 14px 18px 0 rgba(0, 0, 0, .5);
    width: 40%;
}


.photo1_2:last-child {
    position: absolute;
    left: 30px;
    top: -134px;
    box-shadow: 0 14px 18px 0 rgba(0, 0, 0, .5);
    width: 41%;
}

.cb_detail_letter_8 {
    padding: 1.6% 15.4%;
    font-size: 15px;
    line-height: 2.5;
    width: 90%;
    background-color: #FFE100;
}

.class_button_3 {
    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center;
    margin-bottom: 2%;
    justify-content: center;
    padding: 0 9%;
}

.footer {
    margin-top: 0;
    background-image: url("../images/white.png");
    background-repeat: no-repeat;
    background-size: 106px 101px;
    background-position: center 80px;
    height: 330px;
    /* position: relative; */
    /* top: -50px; */
    /* margin-bottom: -50px; */
    margin-top: -250px;
}

.container_custom {
    height: auto;
}

.footer-image {
    display: flex;
    position: relative;
    top: 210px;
    justify-content: center;
}

.line {
    width: 30px;
    height: 29px;
    background-image: url(../images/LINE_Brand_icon.png);
    /* background-size: 30px 29px; */
    /* background-position: 150px 220px; */
    background-repeat: no-repeat;
    /* text-align: right; */
    background-position: 80% center;
}

.note {
    width: 110px;
    height: 42px;
    background-image: url(../images/note.png);
    background-size: 110px 42px;
    /* background-position: center 220px; */
    background-repeat: no-repeat;
    background-position: 10px center;
}

.sp_Hdn {
    display: none !important;
}

.pc_Hdn {
    display: block !important;
    width: 100%;
}

.notice {
    width: 80%;
}

.classroom_info {
    margin: 0 7.8%;
    padding: 3% 0;
}

.asset10_s {
    width: 12.2%;
    margin: 0 3% 0 0;
}

.school_top {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 5% 0;
}

.school_title {
    color: #00913A;
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0.1em;
    line-height: 1.5;
}

.school_info {
    display: inline-block;
    margin: 0 auto;
    padding: initial;
    ;
    max-width: 1366px;
}

.school_info_f,
.map_container {
    width: 90%;
    margin: 5% auto;
}

.location_photo {
    width: 100%;
}

.school_letter {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 16px;
    margin-bottom: 10px;
}

.faq {
    background-color: #FBFCED;
}

.faq_info {
    margin: 0 7.8%;
    padding: 3% 0;
}

.asset11_s {
    width: 12.2%;
    margin: 0 3% 0 0;
}

.faq_top {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 5% 0;
}

.faq_title {
    color: #E62B2B;
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0.1em;
    line-height: 1.5;
}

.faq_question {
    cursor: pointer;
    font-weight: bold;
    color: #222;
    /* 質問の色 */
    padding: 10px;
    border-radius: 5px;
    font-size: 15px;
    background-color: #f0f3f8;
    /* 背景色 */
    position: relative;
    padding-left: 15px;
    /* Qマークのための余白 */
    padding-right: 30px;
    /* プラス/マイナスアイコンのための余白 */
}


/* 回答のスタイル */
.faq_answer {
    color: #222;
    /* 回答の色 */
    margin-bottom: 15px;
    padding: 0 20px 10px 20px;
    background-color: #f0f3f8;
    /* 背景色 */
    border-radius: 5px;
    font-size: 14px;
}

.faq_main {
    margin: 0 auto;
    padding: initial;
}

.faq_prefix {
    left: 0;
    top: 0;
    font-weight: bold;
    color: #E62B2B;
    font-size: 20px;
    margin-right: 2%;
}

.faq_toggle {
    position: absolute;
    right: 20px;
    top: 10px;
    cursor: pointer;
    font-size: 20px;
    color: #E62B2B;
}

.faq_item {
    margin-bottom: 15px;
}

iframe {
    width: 100%;
    /* 画面幅いっぱいに広げる */
    height: 200px;
    /* 小さい画面用の高さを設定 */
}

.location_caution {
    font-family: “游ゴシック体“, YuGothic, “游ゴシック“, “Yu Gothic”, sans-serif;
    font-size: 12px;
}

.notice_message {
    font-size: 13px;
}

.notice {
    border: 2px solid #ff0000;
    /* 赤い枠線を追加 */
    background-color: #fff4f4;
    /* 薄い赤の背景色を追加 */
    padding: 15px;
    /* 内側の余白を追加 */
    border-radius: 5px;
    /* 角を丸くする */
}

.notice_message {
    color: #d8000c;
    /* テキストの色を濃い赤にする */
    font-weight: bold;
    /* テキストを太字にする */
    text-align: center;
    /* テキストを中央揃えにする */
}

html {
    scroll-behavior: smooth;
}

.top_image {
    position: relative;
    /* 親要素に相対位置を設定 */
}


.slide-in-section {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.8s ease, transform 0.8s ease;
}

.visible {
    opacity: 1;
    transform: translateY(0);
}
