@charset "UTF-8";

/*
Theme Name: 山王学院 | 新学期入塾キャンペーン！
Template: blankslate
Author: 山王学院 | 新学期入塾キャンペーン！
Version: 1.0
Updated: 2025-1-15
*/


html {
    width: 100%;
    height: 100%;
    scroll-behavior: smooth;
}

:root {
    --red_1: #D30000;
    --red_2: #B21A19;
    --blue_1: #082E5F;
    --blue_2: #0B3873;
    --blue_3: #0A50B2;
    --blue_4: #005178;
    --black: #000;
    --yellow_1: #FFEE00;
    --yellow_2: #CCA339;
    --small: 66%;
    --size_basic: 18px;
    --size_xlg: 24px;
    --size_xxlg: 32px;
    --size_xxxlg: 48px;
}
a{color: var(--blue_3); }
a:hover{text-decoration: underline;}
.red_1 { color: var(--red_1); } .red_2 { color: var(--red_2); } 
.blue_1 { color: var(--blue_1); } .blue_2 { color: var(--blue_2); } 
.black { color: var(--black); } 
.yellow_1 { color: var(--yellow_1); } .yellow_2 { color: var(--yellow_2); }

.mid{ font-size: 75%; letter-spacing: 0; }

.kv .pc, br.brpc { display: block; }
.kv .sp, br.brsp { display: none; }

.dot { background-image: radial-gradient(circle at center, var(--red_1) 21%, transparent 25%); background-repeat: repeat-x; background-size: 1em 0.3em; padding-top: 0.3em; }
.dot_yellow{ background-image: radial-gradient(circle at center, var(--yellow_1) 21%, transparent 25%); background-position: top right; background-repeat: repeat-x; background-size: 1em 0.3em; padding-top: .3em; }

.bg_yellow {background: var(--yellow_1);display: inline;padding: 0 0.25em;font-weight: 700;}
.yellow_under {background: linear-gradient(transparent 60%, #ff6 60%);font-weight: 700;}
.bluebase{background: linear-gradient(180deg, var(--blue_1) 25%, rgba(255, 255, 255, 1) 25%);}
.bluesheet{ background: var(--blue_3); background-image: linear-gradient(0deg, transparent calc(100% - 1px), #0e4a9f calc(100% - 1px)), linear-gradient(90deg, transparent calc(100% - 1px), #0e4a9f calc(100% - 1px)); background-size: 13px 13px; background-repeat: repeat; background-position: center center; }
.redsheet{ background: var(--red_1); background-image: linear-gradient(0deg, transparent calc(100% - 1px),#bb0000 calc(100% - 1px)), linear-gradient(90deg, transparent calc(100% - 1px), #bb0000 calc(100% - 1px)); background-size: 13px 13px; background-repeat: repeat; background-position: center center; }

.sideliner{display: flex;justify-content: center;align-items: center;}
.sideliner::before {content: "";height: 2px;transform: rotate(0deg);box-sizing: border-box;background-color: #333333;margin-right: 3%;}
.sideliner::after {content: "";height: 2px;transform: rotate(0deg);box-sizing: border-box;background-color: #333333;margin-left: 3%;}

.baloon {
    background: var(--red_1);
    max-width: 568px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: auto;
    border-radius: 88px;
    text-align: center;
    color: #FFF;
    line-height: 2.25;
    font-size: clamp(21px, 3.75vw, 35px);
    }
.baloon::after{content: "";position: absolute;right: 0;bottom: -14px;left: 0;width: 0px;height: 0px;margin: auto;border-style: solid;border-color: var(--red_1) transparent transparent transparent;border-width: 15px 15px 0 15px;}
.baloon_box{display: flex;line-height: 1;align-items: center;margin: 0 0.066em;justify-content: center;}

.sq { background: #FFF; border-radius: 3px; color: var(--red_1); padding: 5px; padding: 5px 6px 6px 5px; line-height: 1.05; font-weight: 700; letter-spacing: -0.005em; margin: 0 0.05em; }
.sq_yellow{background:var(--yellow_1); border-radius: 3px; color: var(--blue_1); padding: 9px 6px 6px 9px;line-height: 1; font-weight: 800;margin: 0 0.05em;}


.button__ad {background: #FFF;max-width: 400px;margin: 0 auto -2.5em;padding: 0.15em 0;border: 2px solid  var(--red_1);border-radius: 88px;position: relative;z-index: 8;font-weight: 700;font-size: clamp(16px, 2.35vw, 21px);}
.button {margin: 3vh auto 0.5em;max-width: 800px;width: 90%;background-color: var(--red_1);display: block;color: #FFF;padding: 1.25em 0em 1em;font-size: clamp(23px, 3.25vw, 32px);font-weight: 600;box-shadow: 0px 2px 18px -7px #000;position: relative;text-decoration: none;display: flex;justify-content: center;align-items: center;}
.button:after{content: url(./images/button_icon.svg);display: block;position: absolute;right: 1em;line-height: 1;}
.button:hover { background-color: var(--red_2); transition: 0.3s; text-decoration: none; } 
.button img { border-radius: 8px; }

.fadein-top1, .fadein-top2, .fadein-top3, .fadein-top5, .fadein, .fadein_dly { opacity: 0; }


body { font: 400 var(--size_basic) "Noto Sans JP", sans-serif; position: relative; }

/*　メイン　*/
main, header, footer {width: 100%;margin: 0 auto;}
section {margin: 3em auto;/* overflow-x: hidden; */}
.contents {margin: auto;max-width: 1200px;width: 95%;}
.contents_m {margin: auto;max-width: 1000px;width: 90%;}


/* メインビジュアル　*/
header {width: 100%;margin: 0 auto;padding: 0.5em 1%;display: flex;/* position: fixed; */top: 0;right: 0;z-index: 555;}

header .header_box{display: flex;justify-content: flex-start;align-items: center;}
header .header_box img{width: 205px;}
header  .header_box_txt{margin: 0 0.75em;font-weight: 500;font-size: clamp(12px, 1.75vw, 16px);}

.kv{margin: auto;}
.kv .pc { display: flex;}
.kvpc__box {max-width: 1520px;margin: auto;position: relative;z-index: 1;}
.kvpc__blue{position: absolute;top: 0;right: 0;width: 41%;height: 3.5%;background: var(--blue_1);transition: 0.25s;}


.apply {text-align: center;margin: 3.5em auto 0;padding: 0 0 1.75em;background: linear-gradient(0deg, var(--blue_1) 51%, rgba(255, 255, 255, 0) 51%);}
.apply__course{background: linear-gradient(0deg, var(--blue_2) 51%, rgb(243 239 229) 51%);margin: 0 auto;}

.apply__head {text-align: center;font-weight: 600;font-size: clamp(23px, 3.75vw, 25px);margin: 0 0 1.25em;}

.apply__head{display: flex;justify-content: center;position: relative;align-items: center;margin: 0 0 0.75em;}
.apply__head_box {text-align: center;font-weight: 600;font-size: clamp(23px, 3.75vw, 25px);}

.apply__head::before {content: "";width: 45px;height: 2px;transform: rotate(60deg);box-sizing: border-box;background-color: #333333;}
.apply__head::after {content: "";width: 45px;height: 2px;transform: rotate(120deg);box-sizing: border-box;background-color: #333333;}


.archive { background: url(./images/archive_bg.jpg) no-repeat; background-size: cover; margin: 0em auto; padding: 4em 0; }
.archive__area::before {content: "";width: 60px;height: 2px;transform: rotate(-45deg);box-sizing: border-box;background-color: #333333;position: absolute;left: -2%;top: 6%;}
.archive__area::after {content: "";width: 60px;height: 2px;transform: rotate(-45deg);box-sizing: border-box;background-color: #333333;position: absolute;right: -2%;bottom: 5%;}
.archive__area {background: #FFF;width: 90%;max-width: 800px;margin: auto;padding: 0 0 1.25em;position: relative;}

.archive__area_box { width: 100%; }
.archive__head {background-color: var(--red_1);color: #FFF;text-align: center;padding: 0.5em;font-size: clamp(23px, 3.75vw, 35px);font-weight: 500;}
.archive__cont { display: flex; justify-content: center; align-items: baseline; line-height: 1.25; font-size: clamp(24px, 3.75vw, 35px); font-weight: 700; }
.archive__bdr { color: var(--red_1); border: 1px solid var(--red_1); border-radius: 8px; position: relative; top: -0.25em; font-size: clamp(23px, 3.25vw, 32px); line-height: 1.25; padding: 0.15em 0.35em; }
.archive__num {color: var(--red_1);font-size: clamp(47px, 5.25vw, 83px);letter-spacing: -0.005em;margin: 0 0.1em 0 0.25em;position: relative;bottom: -3px;}
.archive__line {background-color: var(--red_1);height: 2px;width: 90%;margin: 0.75em auto;position: relative;line-height: 0;}
.archive__line:before,.archive__line:after{content: "●";display: block;position: absolute;color: var(--red_1);top: 0;}
.archive__line:before{left: -3px;}
.archive__line:after{right: -3px;}
.archive p{text-align: center;font-size: clamp(23px, 3.75vw, 32px);font-weight: 700;}


.problem {background: #F7F7F7;margin: auto;padding: 3em 0 5em;}
.problem__head{display: flex;justify-content: center;position: relative;align-items: center;margin: 0 0 1.75em;}
.problem__head_box {text-align: center;font-weight: 700;font-size: clamp(20px, 3.25vw, 32px);}

.problem__head::before {content: "";width: 90px;height: 2px;transform: rotate(60deg);box-sizing: border-box;background-color: #333333;}
.problem__head::after {content: "";width: 90px;height: 2px;transform: rotate(120deg);box-sizing: border-box;background-color: #333333;}

.problem__cont {background: #FFF;}
.problem__cont_box{display: flex;padding: 3% 0;width: 78%;min-width: 668px;margin: auto;justify-content: center;align-items: flex-end;}
.problem__list {width: calc(100% - 200px);margin-right: 5%;}

.problem__list ul li{ padding: 0.7em 0; border-bottom: 2px solid #000; font-size: clamp(16px, 1.5vw, 20px); line-height: 1.5; font-weight: 700; display: flex; align-items: center; }
.problem__list ul li:before{ display: block; content:url(./images/checker.svg); margin-right: 0.75em; width: 34px; height: 31px; }


.about {margin: 0 auto 3em;}
.about__head {position: relative;top: -1.5em;}
.about .contents{ background: #FFF; padding: 2.5% 3%; }

.about__intro{text-align: center;line-height: 1.66;font-size: clamp(18px, 2.15vw, 23px);}

.about__photo {margin: 2em auto;}
.about__detail {display: flex;margin: 0 0 3em;align-items: center;}
.about__detail_hagaki {background: #DAEAF7;width: 32%;padding: 2%;}
.about__detail_text {width: 68%;padding: 4%;line-height: 2;font-size: clamp(16px, 1.5vw, 18px);}
.about__box {border: 1px solid #000;margin: 0 0 1.0em;}
.about__box_head {background: var(--blue_1);color: #FFF;padding: 1em;text-align: center;font-size: clamp(16px, 2.35vw, 20.5px);}
.about__box_cell_area {display: flex;justify-content: space-evenly;width: 100%;margin: auto;}
.about__box_cell {width: 25%;margin: 2em 0;text-align: center;display: flex;flex-direction: column;align-items: center;font-weight: 700;font-size: clamp(15px, 1.25vw, 18px);border-right: 1px solid #000;}
.about__box_cell:last-child{border: 0;}
.about__box_cell_num {background: var(--red_1);color: #FFF;text-align: center;padding: 0.25em;border-radius: 88px;max-width: 200px;width: 95%;margin: 0 0 0.5em;font-size: clamp(17px, 2.75vw, 20px);
    font-family: "Poppins", serif;font-weight: 700;font-style: normal;}
.about__box_cell_text-before {margin: 0 0 2em;width: 100%; position: relative;}
.about__box_cell_text-before::after{content: "";position: absolute;right: 0;bottom: -25px;left: 0;width: 0px;height: 0px;margin: auto;border-style: solid;border-color: var(--red_1) transparent transparent transparent;border-width: 15px 15px 0 15px;}
.about__box_cell_text-after {margin: 0 0 2em;background: url(./images/painter.svg) no-repeat;background-position: center;width: 100%;}
.about__box_cell_image {width: 125px;text-align: center;}
.about__box_foot {margin: 0 0 3em;font-size: clamp(13px, 1.75vw, 15px);}
.about__summary {position: relative;background-image: linear-gradient(0deg, transparent calc(100% - 1px), var(--gray_1) calc(100% - 1px)), linear-gradient(90deg, transparent calc(100% - 1px), var(--gray_1) calc(100% - 1px));background-size: 11px 11px;margin: auto;max-width: 1200px;width: 90%;}
.about__summary_photo{position: absolute;max-width: 225px;top: 7%;left: -3%;width: 24%;}
.about__summary_txt{text-align: center;padding: 3%;color: #FFF;line-height: 1.66;font-size: clamp(16px, 1.75vw, 24px);}


.history {margin: 10em auto 0;}
.history .contents{background: #FFF;padding: 3% 3% 0.5%;margin-top: -2em;}
.history__head {max-width: 785px;position: relative;top: -2.5em;}
.history__head_supple{position: relative;top: -3em;text-align: center;font-size: clamp(18px, 2.65vw, 32px);display: flex;justify-content: center;align-items: center;font-weight: 700;}
.history__head_supple::before {content: "";width: 30px;height: 2px;transform: rotate(60deg);box-sizing: border-box;background-color: #333333;}
.history__head_supple::after {content: "";width: 30px;height: 2px;transform: rotate(120deg);box-sizing: border-box;background-color: #333333;}
.history p{margin:0 0 1em;font-size: clamp(16px, 1.5vw, 18px);line-height: 1.9;}
.history__intro {text-align: center;}
.history__intro p{line-height: 1.66;font-size: clamp(17px, 2.35vw, 24px);font-weight: 700;}
.history__photo { margin: 2em auto; }
.history__point {display: flex;max-width: 800px;width: 90%;margin: 2em auto;border: 1px solid #444;align-items: center;justify-content: flex-start;}


.history__point_photo {width: 238px;}
.history__point_list{width: calc(100% - 240px);display: flex;justify-content: center;line-height: 1.66em;}
.history__point_list ul{list-style-type: disc;padding-left: 1em;font-weight: 600;font-size: clamp(16px, 1.88vw, 20px);}
.history__point_list li{margin: 0.33em 0;}
.history__prize {text-align: center;padding: 2.5%;color: #FFF;line-height: 2;font-size: clamp(16px, 2.75vw, 18px);margin: 0 auto 1.0em;max-width: 1200px;width: 90%;}
.history__prize img{width: 194px;}
.history__prize_box{margin: 0 0 1.0em;line-height: 1.5;font-size: clamp(18px, 2.25vw, 24px);}
.history__prize_img {margin: 1em auto 0;gap: 8px;display:flex; justify-content: center; align-items: center;}
.history__prize_img_red {margin: 1em auto 0;gap: 8px;display: grid;grid-template-columns: 1fr 1fr 1fr 1fr; font-size-adjust: none;max-width: 808px;}

.course {background: #F3EFE5;margin: auto;padding: 0 0 3em;}
.course__intro{text-align: center;margin: 0 0 2.5em;padding: 3.5em 0 0;position: relative;}
.course__intro .sideliner::before,.course__intro .sideliner::after{width: 5%;}

.course__intro h2{font-size: clamp(24px, 2.75vw, 40px);font-weight: 700;line-height: 1.5;}
.course__intro p{font-size: clamp(16px, 2.0vw,18px);margin: 1em 0 2em;}
.course__box {background: #FFF;margin: 3.3em auto 0;position: relative;padding: 0 0 0.5em;font-size: clamp(16px, 1.9vw, 20px);}
.course__box_num {text-align: center;margin-top: -2.35em;display: block;}
.course__box_num img { width: 60px; }


.course__box_head {background: var(--blue_1);padding: 1.15em 0 0.65em;text-align: center;color: #FFF;font-size: clamp(22px, 2.9vw, 32px);font-weight: 600;margin: 0 0 1em;}
.course__box_cont {display: flex;margin: 2.5em auto 1.5em;align-items: center;justify-content: center;width: 93.5%;}
.course__box_cont.upper{justify-content: flex-start;align-items: flex-start;}
.course__box_cont_photo {width: 33%;max-width: 290px;}
.course__box_cont_text {padding: 0 3%;line-height: 1.75;width: 76%;font-size: clamp(16px, 2.1vw, 19.5px);}
.course__box_cont_text .red_1{font-weight: 600;}
.course__box p{width: 93.5%;margin: 0 auto 0.5em;text-align: left;line-height: 1.66;font-weight: 500;}
.course__box_supple{font-size: clamp(16px, 1.5vw, 18px);}

.course__box_roadmap {display: grid;grid-template-columns: 3.0fr 3.0fr 3.0fr 3.0fr 3.0fr 3.0fr 0.5fr;grid-template-rows: 50px 1fr;gap: 11px;width: 93.5%;margin: auto;}
.course__box_roadmap_cell{padding: 5px 10px}

.course__box_roadmap .cell_1 {grid-column-start: 1;grid-row-start: 1;background: var(--blue_1);}
.course__box_roadmap .cell_2 {grid-column-start: 1;grid-row-start: 2;background: #E9ECF1;}
.course__box_roadmap .cell_3 {grid-column-start: 2;grid-row-start: 1;background: var(--blue_1);}
.course__box_roadmap .cell_4 { grid-column-start: 2; grid-row-start: 2; background: #E9ECF1;}
.course__box_roadmap .cell_5 { grid-column: span 2 / span 2; grid-column-start: 3; grid-row-start: 1; background: var(--blue_2); }
.course__box_roadmap .cell_6 {grid-column-start: 3;grid-row-start: 2;background: #DDEAF0;}
.course__box_roadmap .cell_7 {grid-column-start: 4;grid-row-start: 2;background: #DDEAF0;}
.course__box_roadmap .cell_8 { grid-column: span 2 / span 2; grid-column-start: 5; grid-row-start: 1; background: #CCA339; }
.course__box_roadmap .cell_9 { grid-column-start: 5; grid-row-start: 2; background: #F6F0DE; }
.course__box_roadmap .cell_10 { grid-column-start: 6; grid-row-start: 2; background: #F6F0DE;}
.course__box_roadmap .cell_11 {grid-row: span 2 / span 2;grid-column-start: 7;grid-row-start: 1;background: var(--red_1);color: #FFF;writing-mode: tb;display: flex;align-items: center;justify-content: center;font-size: 25px;letter-spacing: 0.1em;font-weight: 600;padding: 5px;}
.course__box_roadmap .cell_11 img{margin: 0.25em 0.25em 0.5em;max-width: 32px;}

.cell_head{color: #FFF;text-align: center;position: relative;display: flex;justify-content: center;align-items: center;line-height: 1.25;font-size: clamp(15px, 1.25vw, 17px);}
.cell_head:after{ content: ""; position: absolute; top: 50%; left: 100%; margin-top: -8px; border: 8px solid transparent; border-left: 8px solid #082e5f; }
.cell_head.cell_5:after{    border-left: 8px solid #082e5f;}
.cell_head.cell_8:after{    border-left: 8px solid #CCA339;}

.course__box_roadmap_head {font-weight: 700;border-bottom: 1px solid #8a919b;text-align: center;margin: 0.25em 0 0.5em;padding: 0.25em 0 0.5em;line-height: 1.25;letter-spacing: 0.05em;font-size: clamp(16px, 1.45vw, 19px);}
.course__box_roadmap_cont {font-weight: 600;border-bottom: 1px solid #8a919b;font-size: clamp(13px, 1.25vw, 15px);text-align: center;letter-spacing: 0.05em;margin: 0 0 0.5em;padding: 0 0 0.5em;}
.course__box_roadmap_cell p{font-size: clamp(12.5px, 1.1vw, 14px);}

.course__box_title{width: 93.5%;margin: auto;}
.course__box h4{font-size: clamp(18px, 2.15vw, 24px);font-weight: 700;margin: 1em auto;display: flex;justify-content: center;/* align-items: center; */}

.course__box .sideliner::before,.course__box .sideliner::after{width: 33%;}

.course__box_curriculum {display: flex;width: 68%;padding: 2.0% 2.5%;max-width: 768px;min-width: 615px;margin: 5% auto;border: 1px solid #000;align-items: center;justify-content: start;position: relative;}
.course__box_curriculum_text h4 {font-weight: 700;margin: 0 0 1em;font-size: clamp(16px, 2.25vw, 21px);justify-content: flex-start;}
.course__box_curriculum_text ul {list-style-type: disc;padding-left: 1.5em;}
.course__box_curriculum_text li {line-height: 2;font-size: clamp(16px, 1.5vw, 18px);}

.course__box_curriculum_photo {position: absolute;right: -16%;top: -2%;}
.course__box_comment {width: 93.5%;margin: 2em auto;}
.course__box_comment h4{background: var(--red_1);color: #FFF;border-radius: 88px;padding: 0.38em;margin: 0 0 1.75em;}
.course__box_comment_area {display: flex;justify-content: space-around;}
.course__box_comment_block {width: 33%;text-align: center;border-right: 1px solid #000;}
.course__box_comment_block .red_1{font-weight: 600;}
.course__box_comment_block:last-child{border-right: 0;}
.course__box_comment_block img{max-width: 98px;}
.course__box_comment_area p{width: 72%;margin: 1em auto;font-size: clamp(15px, 1.75vw, 18px);}

.course__box_contents {width: 93.5%;margin: 3em auto 0;padding: 1.5%;display: flex;justify-content: center;position: relative;z-index: 5;}
.course__box_contents li{color: #FFF;list-style-type: disc;line-height: 2;font-weight: 600;}
.course__box_contents_detail-1 {max-width: 648px;width: 75%;margin: 2em auto;text-align: center;padding: 0 3%;border-left: 1px solid #000;border-right: 1px solid #000;font-size: clamp(18px, 2.75vw, 24px);font-weight: 600;}
.course__box_contents_detail-2 {width: 90%;margin: auto;display: flex;justify-content: center;font-size: clamp(18px, 2.75vw, 24px);font-weight: 600;}
.course__box_contents_detail-2::before {content: "";width: 30px;height: 1px;transform: rotate(60deg);box-sizing: border-box;background-color: #333333;position: relative;top: 15px;}
.course__box_contents_detail-2::after {content: "";width: 30px;height: 1px;transform: rotate(120deg);box-sizing: border-box;background-color: #333333;position: relative;top: 15px;}

.course__box_contents.bluesheet:before{ content: "content";display: block;background: var(--blue_1);position: absolute;top: -25px;left: 0;color: #FFF;border-radius: 5px 5px 0 0;padding: 0px 25px 0px; height: 25px; text-transform: uppercase; line-height: 1.66; font-size: clamp(14px, 1.25vw, 16px); font-family: "Poppins", serif; font-weight: 600; }

.course__box_techers {display: flex;width: 92.5%;max-width: 1200px;margin: 2em auto 1.5em;gap: 8px;justify-content: center;}




.enquete {background-image: linear-gradient(0deg, transparent calc(100% - 1px), #f0f0f0 calc(100% - 1px)), linear-gradient(90deg, transparent calc(100% - 1px), #f0f0f0 calc(100% - 1px));background-size: 15px 15px;background-repeat: repeat;background-position: center center;margin: auto;padding: 3em 0;}

.enquete__intro_title{display: flex;align-items: center;justify-content: center;padding: 0 0 1em;margin: 0 0 2em;border-bottom: 2px solid #000;}
.enquete__intro_title img{width: 45px;margin-right: 1em;}
.enquete__intro p{ font-size: clamp(16px, 1.8vw, 20px); line-height: 1.66; }

.enquete h2{font-size: clamp(25px, 3.725vw, 39px);font-weight: 800;}
.enquete__graph {display: grid;grid-template-columns: 1fr 1fr;gap: 18px;margin: 3em auto;}
.enquete__graph_cell {background: #FFF;border: 1px solid #000;text-align: center;padding: 4% 6%;position: relative;}
.enquete__graph_cell h3{font-size: clamp(19px, 2.25vw, 24px);margin: 0;padding: 0 0 0.05em;font-weight: 700;border-bottom: 2px solid #333;text-align: left;display: flex;justify-content: flex-start;line-height: 1.66;}
.enquete__graph_cell h3:before{content: url(./images/Q_enquete.svg);display:block;margin-right: 0.66em;}
.enquete__graph_cell_arrow{width: 0px;height: 0px;margin: 0 auto 1.25em;border-style: solid;border-color: #000 transparent transparent transparent;border-width: 15px 15px 0 15px;line-height: 0;}
.enquete__graph_cell img{max-width: 225px;}
.enquete__graph_cell_ext{position: absolute;width: 97px;left: 50%;margin-left: -173px;margin-top: -10px;}
.enquete__graph_cell_ext:after{border-bottom: 1px solid #000;width: 60px;content: "";display: block;position: absolute;top: 25px;left: 100px;}
.enquete__graph_cell_supple {margin: 1em;color: #888;font-weight: 400;display: flex;justify-content: center;font-size: clamp(11px, 1.15vw, 14px);width: 93.5%;}

.enquete__graph_cell_supple span::before{ display: block; content: "■"; padding-left: 0.75em; float: left; margin-right: 0.15em; text-align: left; }
.enquete__graph_cell_supple span::after{ clear: both; }

.enquete__graph_cell_supple span:nth-child(1):before{color: #4269C0;}
.enquete__graph_cell_supple span:nth-child(2):before{color: #EE7C31;}
.enquete__graph_cell_supple span:nth-child(3):before{color: #A4A4A4;}
.enquete__graph_cell_supple span:nth-child(4):before{color: #FFBF00;}



.different {margin: auto;}
.different .sideliner{max-width: 980px;padding: 2em 0 0;width: 90%;margin: auto;}
.different .sideliner::before, .different .sideliner::after {width: 31%;background-color: #ffffff;margin-top: 1.5em;}

.different h2{text-align: center;margin: 0px auto 0.5em;padding: 1em 0 0;color: #FFF;font-size: clamp(25px, 3.85vw, 38px);font-weight: 600;}
.different__compare {display: grid;grid-template-columns: repeat(3, 1fr);grid-template-rows: repeat(1, 1fr);gap: 5px 0px;padding: 3%;background: #FFF;}
.different__compare_box_cell {display: flex;justify-content: left;align-items: center;font-size: clamp(14px, 2.0vw, 16px);line-height: 1.66;}

.different__compare_box_cell.title{background: var(--red_1);color: #FFF;width: 50%;padding: 5%;align-items: center;position: relative;font-size: clamp(16px, 1.8vw, 18px);}
.different__compare_box_cell.title:after{content: "";position: absolute;top: 50%;left: 100%;margin-top: -8px;border: 8px solid transparent;border-left: 8px solid var(--red_1);}
.different__compare_box_cell.cont{border-top: 2px dotted var(--red_1);border-right: 2px dotted var(--red_1);border-bottom: 2px dotted var(--red_1);width: 148%;margin-left: -50%;padding: 6% 7%;font-weight: 600;}

.different__compare_box_cell.normal{ border: 2px dotted #727272; padding: 5%; align-items: center; }
.different__compare_box_cell ul{ padding-left: 1.5em; }
.different__compare_box_cell li{ list-style-type: disc; }

.different__compare .cell_1 {grid-column: span 2 / span 2;background: var(--red_1);color: #FFF;border-radius: 8px 8px 0 0;align-items: center;padding: 2.5% 5%;justify-content: center;margin: 0 1% 0 0;font-size: clamp(21px, 3.15vw, 23px);}
.different__compare .cell_2 {grid-column-start: 1;grid-row-start: 2;}
.different__compare .cell_3 {grid-column-start: 2;grid-row-start: 2;justify-content: space-between;}
.different__compare .cell_4 {grid-column-start: 1;grid-row-start: 3;}
.different__compare .cell_5 { grid-column-start: 2; grid-row-start: 3; }
.different__compare .cell_6 {grid-column-start: 1;grid-row-start: 4;}
.different__compare .cell_7 { grid-column-start: 2; grid-row-start: 4; }
.different__compare .cell_8 {grid-column-start: 1;grid-row-start: 5;}
.different__compare .cell_9 { grid-column-start: 2; grid-row-start: 5; }
.different__compare .cell_10 {grid-column-start: 1;grid-row-start: 6;}
.different__compare .cell_11 { grid-column-start: 2; grid-row-start: 6; }
.different__compare .cell_12 {grid-column-start: 1;grid-row-start: 7;}
.different__compare .cell_13 { grid-column-start: 2; grid-row-start: 7; }

.different__compare .cell_14 {grid-column-start: 3;grid-row-start: 1;background: #727272;color: #FFF;border-radius: 8px 8px 0 0;font-size: clamp(21px, 3.15vw, 23px);justify-content: center;}
.different__compare .cell_15 { grid-column-start: 3; grid-row-start: 2; }
.different__compare .cell_16 { grid-column-start: 3; grid-row-start: 3; }
.different__compare .cell_17 { grid-column-start: 3; grid-row-start: 4; }
.different__compare .cell_18 { grid-column-start: 3; grid-row-start: 5; }
.different__compare .cell_19 { grid-column-start: 3; grid-row-start: 6; }
.different__compare .cell_20 { grid-column-start: 3; grid-row-start: 7; }
.different__compare_books{width: 88px;margin: 0 0 0 5%;}

.different__check {display: flex;padding: 2% 3% 4%;align-items: center;}
.different__check_text{ width: 70%; }
.different__check_text h3{font-size: clamp(19px, 3.15vw, 25px);font-weight: 700;border-bottom: 2px solid #000;padding: 0 0 0.5em;margin: 0 0 0.5em;background: url(./images/checker.svg) no-repeat;padding-left: 2em;line-height: 1.15;}
.different__check_text p{line-height: 1.75;font-size: clamp(15px, 1.65vw, 18px);}
.different__check_img{ width: 25%; margin: 0 2.5%; }
.different__check_text .red_1{font-weight: 600;}

.different__summary {display: flex;padding: 3.25% 5%;color: #FFF;align-items: center;position: relative;}
.different__summary_text{width: 80%;font-size: clamp(18px, 2.15vw, 24px);line-height: 1.66;font-weight: 600;}
.different__summary_photo{width: 16%;position: absolute;right: 3%;/* top: 5%; */}

.q-a .sideliner{max-width: 980px;margin: auto;width: 90%;}
.q-a .sideliner::before, .q-a .sideliner::after {width: 77%;margin-top: 2.0em;}

.q-a, .review {margin: 1.5em auto;line-height: 1.75;background: var(--gray_1);}
.q-a h2, .review h2 {padding: 2px;width: 100%;max-width: 265px;line-height: 1.85;text-align: center;font-size: clamp(21px, 3.75vw, 40px);margin: 1em auto 0.5em;font-weight: 600;}
.q-a__box, .review__box { margin: 8px auto; border-radius: 4px; max-width: 1000px; padding: 5px 0; width: calc(100% - 40px); }
.q-a__box { text-align: left; }
.q-a__box .toggle { display: none; }
.q-a__box .option { position: relative; margin-bottom: 1em; margin: 0.5em auto; background: #FFF; border: 1px solid var(--gray_2); border-radius: 8px; }

.q-a__title, .q-a__content { -webkit-backface-visibility: hidden; backface-visibility: hidden; transform: translateZ(0); transition: all 0.25s; }
.q-a__title { padding: 1.25em 1.5em; display: block; padding-left: 3%; background: var(--blue_1); color: #FFF; border-radius: 13px; }
.q-a__title:hover{background: var(--blue_3);transition: 0.3s;}
.q-a__title span {display: block;line-height: 2;font-size: clamp(16px, 2.15vw, 22px);position: relative;padding: 0 0 0 2.5em;}
.q-a__title img {width: 38px;margin-right: 3%;position: absolute;left: 0em;}
.q-a__title:before {content: url(./images/q_icon.svg);right: 0.5em;transform: scale(0.75, 0.75);width: 15px;top: 38%;position: absolute;right: 2.25em;transition: all 0.15s;}
.q-a__title:after { transform: rotate(90deg); }
.q-a__content { max-height: 0; overflow: hidden; width: 100%; padding-left: 3%; padding-right: 3%; }
.q-a__content p { margin: 0 0 1.5em; padding: 2% 0 0 0; }
.q-a__content p:empty{display: none;}
.q-a__content ul { margin: 1em 0 1em 5%; width: 100%; }
.q-a__content ul li { list-style-type: disc; }

.toggle:checked+.q-a__title+.q-a__content { max-height: 400px; transition: all .8s; background: #f7f7f7; border-radius: 0 0 8px 8px; }
.toggle:checked+.q-a__title:before {filter: hue-rotate(25deg);top: 27%;transform: scale(0.75, -0.75);}



.support__explain {display: flex;align-items: stretch;}

.support__explain_text {display: flex;flex-direction: column;justify-content: center;padding: 3% 0;width: calc(100% - 223px);}
.support__explain_text p{width: 90%;margin: auto;color: #FFF;font-size: clamp(16px, 1.75vw, 24px);line-height: 1.88;}
.support__explain_text_exmple {margin: auto;width: 90%;}
.support__explain_text_exmple_tag {background: var(--blue_1);color: #FFF;width: 16%;min-width: 152px;position: relative;top: 13px;font-size: smaller;padding: 3px 8px;text-align: center;} 
.support__explain_text_exmple_tag:after {content: "";position: absolute;top: 50%;left: 100%;margin-top: -12px;border: 13px solid transparent;border-left: 13px solid var(--blue_1);} 
.support__explain_text_exmple_text {background: #FFF;padding: 3.5% 2.0% 2.0% 2.0%;border: 2px solid var(--blue_1);font-size: clamp(15px, 1.75vw, 17px);}

.support .sideliner::before, .support .sideliner::after { width: 31%; margin-top: 4em; }
.support__title{padding: 2px;width: 100%;max-width: 525px;line-height: 1.65;text-align: center;font-size: clamp(20px, 2.35vw, 24px);margin: 2.5em auto 0.5em;font-weight: 600;}

.support__block{display: grid;gap: 18px;margin: 1em auto 2em;width: 100%;max-width: 1280px;grid-template-columns: 1fr 1fr 1fr;}
.support__block_cell{ max-width: 320px; }
.support__block_cell_name{ font-weight: 600; margin: 0 0 0.25em; font-size: clamp(16px, 1.75vw, 18px); }
.support__block_cell_cource{ font-size: clamp(14px, 1.75vw, 15px); display: inline-block;line-height: 1; }
.support__block_cell a{display: block;}
.support__block_cell a:hover{opacity: 0.8; transition: 0.25s;}

.campaign { background-image: linear-gradient(0deg, transparent calc(100% - 1px), #f0f0f0 calc(100% - 1px)), linear-gradient(90deg, transparent calc(100% - 1px), #f0f0f0 calc(100% - 1px)); background-size: 15px 15px; background-repeat: repeat; background-position: center center; margin: auto; }
.campaign__head { background: var(--blue_1); padding: 2em; text-align: center; color: #FFF; }

.campaign__head h3{font-size: clamp(23px, 3.15vw, 32px);margin: 0 0 0.05em;}
.campaign__head_ad{display: flex;justify-content: center;align-items: center;}
.campaign__head_ad::before {content: "";width: 30px;height: 2px;transform: rotate(60deg);box-sizing: border-box;background-color: #ffffff;}
.campaign__head_ad::after {content: "";width: 30px;height: 2px;transform: rotate(120deg);box-sizing: border-box;background-color: #ffffff;}

.campaign__head h2{font-size: clamp(33px, 4.5vw, 55px);font-weight: 700;letter-spacing: 0.085em;display: inline-flex;margin: 0.25em auto 0.33em;}
.campaign__head_tx{letter-spacing: -0.05em;margin-left: 0.15em;}

.campaign__solve {display: flex;max-width: 1125px;width: 95%;margin: -3em auto 2em;justify-content: center;align-items: center;}
.campaign__chance {display: flex;max-width: 615px;margin: -0.5em auto 0;justify-content: center;text-align: center;align-items: center;padding: 0 3%;font-weight: 600;border-left: 1px solid #000;border-right: 1px solid #000;font-size: clamp(20px, 3.0vw, 27px);}
.campaign__try {display: flex;max-width: 750px;margin: 1.5em auto 0;justify-content: center;padding: 0 0 1em;align-items: center;font-size: clamp(18px, 3vw, 27px);font-weight: 600;gap: 13px;}

.campaign .apply{margin: 1em auto 0;}

/*　フッター　*/
footer {padding: 1em;text-align: center;color: #FFF;background: var(--blue_2);}
footer:before{/* content: ""; */display: block;width: 100%;height: 8vh;margin-top: -8vh;background: var(--blue_1);}
.copyright {font-size: 13px;text-align: center;}


.show { opacity: 0; animation-name: fadein-anime; animation-duration: 1.5s; animation-fill-mode: forwards; }

@keyframes fadein-anime {
 0% { opacity: 0 }
 100% { opacity: 1; }
}

.show_dly { opacity: 0; animation-name: fadein-anime_dly; animation-duration: 1.0s; animation-delay: 0.5s; animation-fill-mode: forwards; }

@keyframes fadein-anime_dly {
    0% { opacity: 0 }
    100% { opacity: 1; }
}

.show_first { animation-name: fadein-anime_first; animation-duration: 1.0s; animation-fill-mode: forwards; }

@keyframes fadein-anime_first {
    0% { opacity: 0; margin-top: -3.5vh; }
    100% { opacity: 1; margin-top: 0; }
}

@media screen and (max-width: 700px) {
    .show_dly { animation-duration: 1.5s; animation-delay: 0.0s; }

    @keyframes fadein-anime_first {
        0% { opacity: 0; margin-top: -3vh; }
        100% { opacity: 1; margin-top: 0vh; }
    }
}

@media screen and (min-width: 1600px) {
}

@media screen and (max-width: 1599px) {
}

@media screen and (min-width: 1393px) {
}

@media screen and (max-width: 1392px) {
}

@media screen and (max-width: 1200px) {
    .kvpc__blue {width: 32%; height: 2.5%; }
}

@media screen and (max-width: 1100px) {
    .course__box_curriculum_photo{top: unset;bottom: -13%;width: 33%;}
    .course__box_curriculum_text .brsp{ display: block; }
    .history__head_supple {    top: -4em;}
}
@media screen and (max-width: 990px) {
.brsp_header_box{display: block!important;}
.about__detail_text { padding: 0% 4%; line-height: 1.66; }
.about__summary_photo{max-width: 188px;top: 7%;left: -3%;width: 20%;}
.history__prize img{max-width: 166px; width: 100%;}
.history__prize_img_red {    max-width: 688px;}
}

@media screen and (max-width: 900px) {


.contents_m{width: 92.5%;}
.course__box_roadmap {grid-template-columns: repeat(2, 1fr);grid-template-rows: 1fr 0.75fr 1fr;gap: 11px 11px;}

.cell_head{width: 75%;}
.cell_cont{width: 125%; margin-left: -25%;}

.course__box_roadmap .cell_1 { grid-column-start: 1; grid-row-start: 1; }
.course__box_roadmap .cell_2 { grid-column-start: 2; grid-row-start: 1; }
.course__box_roadmap .cell_3 { grid-column-start: 1; grid-row-start: 2; }
.course__box_roadmap .cell_4 { grid-column-start: 2; grid-row-start: 2; }
.course__box_roadmap .cell_5 {grid-column: span 1 / span 1;grid-column-start: 1;grid-row: span 2 / span 2;}
.course__box_roadmap .cell_6 {grid-column-start: 2;grid-row-start: 3;}
.course__box_roadmap .cell_7 { grid-column-start: 2; grid-row-start: 4; width: 125%; margin-left: -25%;}
.course__box_roadmap .cell_8 {grid-column: span 1 / span 1;grid-column-start: 1;grid-row: span 2 / span 2;}
.course__box_roadmap .cell_9 { grid-column-start: 2; grid-row-start: 5; }
.course__box_roadmap .cell_10 {grid-column-start: 2;grid-row-start: 6;}
.course__box_roadmap .cell_11 {grid-row-start: 7;grid-column: span 2 / span 2;writing-mode: unset;align-items: center;letter-spacing: 0.075em;}     

.course__intro .sideliner::before, .course__intro .sideliner::after { width: 4%; }

.cell_head{color: #FFF;text-align: center;position: relative; display: flex;justify-content: center;align-items: center;}
.cell_head:after{top: calc(100% + 8px);left: calc(50% - 8px);border: 8px solid transparent;border-left: 8px solid #082e5f;transform: rotate(90deg);}
.cell_head.cell_5:after{    border-left: 8px solid #082e5f;}
.cell_head.cell_8:after{    border-left: 8px solid #CCA339;}

.different__compare .title{display: none;} 
.different__compare .cont{margin-left: 0;border: 1px dotted var(--red_1);width: 100%;padding: 5%;margin-top: -5px;flex-direction: column;padding: 2.5% 3% 3%;}
.different__compare .cont:before{display: block;position: relative;margin-bottom: 0.5em;background: #f9eded;color: var(--red_1);padding: 0.5% 2%;font-size: 15px;font-weight: 600;}

.different__compare .normal{width: 100%;/* padding: 3%; */flex-direction: column;border: 1px dotted #727272;padding: 2.5% 3% 3%;}
.different__compare .normal:before{display: block;position: relative;margin-bottom: 0.5em;background: #e0e0e0;padding: 0.5% 2%;font-size: 15px;font-weight: 600;}

.different__compare .cell_1 {grid-row-start: 1;grid-column: span 3 / span 2;margin: 0;}  
.different__compare .cell_2 {grid-row-start: 2; grid-column: span 3 / span 2; }
.different__compare .cell_3 {grid-row-start: 3; grid-column: span 3 / span 2; }
.different__compare .cell_4 {grid-row-start: 4; grid-column: span 3 / span 2; }
.different__compare .cell_5 {grid-row-start: 5; grid-column: span 3 / span 2; }
.different__compare .cell_6 {grid-row-start: 6; grid-column: span 3 / span 2; }
.different__compare .cell_7 {grid-row-start: 7; grid-column: span 3 / span 2; }
.different__compare .cell_8 {grid-row-start: 8; grid-column: span 3 / span 2; }
.different__compare .cell_9 {grid-row-start: 9; grid-column: span 3 / span 2; }
.different__compare .cell_10 {grid-row-start: 10; grid-column: span 3 / span 2; }
.different__compare .cell_11 {grid-row-start: 11; grid-column: span 3 / span 2; }
.different__compare .cell_12 { grid-row-start: 12;  grid-column: span 3 / span 2; }
.different__compare .cell_13 { grid-row-start: 13;  grid-column: span 3 / span 2; }
.different__compare .cell_14 {grid-row-start: 14;grid-column: span 3 / span 2;margin-top: 2em;}
.different__compare .cell_15 {grid-row-start: 15;grid-column: span 3 / span 2;}

.different__compare .cell_16 {grid-row-start: 16; grid-column: span 3 / span 2; }
.different__compare .cell_17 { grid-row-start: 17;  grid-column: span 3 / span 2; }
.different__compare .cell_18 { grid-row-start: 18;  grid-column: span 3 / span 2; }
.different__compare .cell_19 { grid-row-start: 19;  grid-column: span 3 / span 2; }
.different__compare .cell_20 { grid-row-start: 20;  grid-column: span 3 / span 2; }

.different__compare .cell_3:before,
.different__compare .cell_15:before{content: "使用教材"; }
.different__compare .cell_5:before,
.different__compare .cell_16:before{content: "適性検査への学力養成アプローチ"; }
.different__compare .cell_7:before,
.different__compare .cell_17:before{content: "模試の実施"; }
.different__compare .cell_9:before,
.different__compare .cell_18:before{content: "面接対策"; }
.different__compare .cell_11:before,
.different__compare .cell_19:before{content: "学び方のスタイル"; }
.different__compare .cell_13:before,
.different__compare .cell_20:before{content: "講師の質"; }
}


@media screen and (max-width: 821px) {

    .kv .pc, br.brpc { display: none; }
    .kv .sp, br.brsp { display: block; }



header {width: 100%;margin: 0 auto;padding: 0.5em 1%;display: flex;/* position: fixed; */top: 0;right: 0;z-index: 555;}

header .header_box{display: flex;justify-content: flex-start;align-items: center;}
header .header_box_img{ width: 45%; }
header .header_box img{width: 100%;}
    
article { margin-top: 0; }
section { margin: 0em auto; }

.kv { position: relative; margin: 0; padding: 0; background: url(./images/lines.svg)#D0F0FF; }
.kvpc__box { width: 55%; text-align: center; color: var(--black); display: flex; flex-direction: column; justify-content: center; }

.kv .pc { display: none; }
.kv .sp .button { position: relative; top: 0; left: 0; bottom: 0; margin: auto; padding: 1em 0; width: 90%; }

.contents {max-width: 730px;width: 97.5%;}

.sideliner{ width: 92.5%; margin: auto; }

.baloon {line-height: 1.66;padding: 0.25em 0 0.75em;width: 90%;display: block;}


.sq,.sq_yellow {font-size: 150%;min-width: 48px;line-height: 1.25;padding: 0px 4px 2px 4px;}
.history .sq{min-width: 35px;}

.button__ad {width: 83%;max-width: 320px;}
.button {padding: 1.25em 1em 1em;}
.button:after{transform: scale(0.6);right: 0.5em;}
.button img { border-radius: 8px; }

.apply {padding: 0 0 0.75em;background: linear-gradient(0deg, var(--blue_1) 35%, rgba(255, 255, 255, 0) 35%);margin: 2.25em auto 0;}
.apply__course{background: linear-gradient(0deg, var(--blue_2) 51%, #F3EFE5 51%);margin: 0 auto;}

.apply__head {font-weight: 600;margin: 0 0 0.75em;}
.apply__head_box {text-align: center;font-weight: 600;font-size: clamp(23px, 3.75vw, 25px);}
.apply__head::before {width: 38px;height: 1px;}
.apply__head::after {width: 38px;height: 1px;}

.archive__area::before { left: -4%; }
.archive__area::after { right: -4%; }
.archive__cont { margin: 0.2em 0 0; }

.problem {padding: 1.75em 0 4em;}

.problem__head{/* flex-direction: unset; */align-items: flex-end;margin: 0 0 1em;}


.problem__head::before { margin-bottom: 1.66em; }
.problem__head::after {margin-bottom: 1.66em;}


.problem__cont_box{padding: 4% 0 0.5%;width: 100%;margin: auto;flex-direction: column;min-width: unset;}
.problem__list {width: 90%;margin: auto;}

.problem__list ul li:after{/* content: ""; */display: block;height: 0.5em;}
.problem__photo { display: none; }


.about {margin: 0 auto 2em;}
.about__head {font-weight: 700;}
.about__head .toha{margin-left: 0.66%;}

.about__intro{text-align: left;}

.about__photo {margin: 1.5em auto;}
.about__detail {flex-direction: column-reverse;}
.about__detail_hagaki {width: 100%;padding: 5% 20%;margin: auto;}
.about__detail_text {width: 100%;padding: 0 0 7%;line-height: 1.66;}

.about__box_head {padding: 0.75em;text-align: left;}
.about__box_cell_area { flex-wrap: wrap; padding: 5% 0 1.5%; }
.about__box_cell {width: 47.5%;border-right: 0;margin: 0.5em 0 1.5em;}
.about__box_cell:last-child{border: 0;}
.about__box_cell_num {padding: 0.15em;border-radius: 88px;width: 92.5%;margin: 0 0 0.5em;}
.about__box_cell_text-before {margin: 0 0 2em;}
.about__box_cell_text-before::after{bottom: -18px;border-width: 11px 11px 0 11px;}
.about__box_cell_text-after {margin: 0 0 1em;width: 100%;min-height: 3em;}
.about__box_cell_image {width: 125px;text-align: center;}
.about__box_foot {margin: 0 0 1em;}
.about__summary {background-size: 11px 11px;margin: auto;max-width: 1200px;width: 90%;}
.about__summary_photo{width: 75px;bottom: -10%;left: -3%;top: unset;display: none;}
.about__summary_txt{text-align: left;padding: 5%;}


.history {margin: 6.5em auto 0;}
.history__head {top: -2.5em;padding: 0.25em 1em 0.75em;}
.history__head_supple{top: -3.95em;}


.history__intro {text-align: left;}
.history__photo {margin: 1.5em auto;line-height: 1.66;}
.history__point {flex-direction: column;width: 100%;}


.history__point_photo {width: 100%;}
.history__point_photo img{height: 150px;object-fit: cover;object-position: 0 12.5%;}
.history__point_list{display: flex;justify-content: center;width: 95%;}
.history__point_list ul{padding: 1em 1em 1em 2em;line-height: 1.5;font-weight: 600;}
.history__prize {padding: 3% 5%;margin: 0 auto 0.5em;width: 92.5%;}

.history__prize img{max-width: 133px;width: 100%;}

.history__prize_img_red {/* grid-template-columns: 1fr 1fr; */justify-items: center;width: 80%;max-width: 458px;min-width: 425px;}
.history__prize_img_red div{width: 100%;}

.course__intro{margin: 0 0 1.5em;padding: 1.25em 0 0;}
.course__intro .sideliner::before, .course__intro .sideliner::after {width: 23%;}

.course__intro h2{line-height: 1.75;padding: 0.0em 0 0.5em;/* width: 75%; */}
.course__intro h2 .red_1{line-height: 1.35; display: block; margin-top: 0.25em; font-size: 110%;}
.course__intro p{margin: 0 auto 2em;width: 92.5%;}
.course__box {margin: 3.5em auto 0;}

.course__box_num img {width: 48px;}



.course__box_head {padding: 1em 0.5em 0.5em;margin: 0 0 1em;}
.course__box_cont {width: unset;flex-direction: column;margin: 0em auto 0.5em;}

.course__box_cont_photo {width: 92.5%;max-width: unset;margin: 0% auto 1em;}
.course__box_cont_photo img{height: 348px; object-fit: cover; object-position: 50% 15.5%;}
.course__box_cont_text {padding: 0;line-height: 1.66;width: 92.5%; margin: auto;}

.course__box_roadmap_head {font-weight: 600;border-bottom: 1px solid #8a919b;text-align: center;margin: 0.25em 0 0.5em;padding: 0.25em 0 0.5em;line-height: 1.25;letter-spacing: 0.05em;font-size: clamp(15px, 1.75vw, 16px);}
.course__box_roadmap_cont { font-weight: 600; border-bottom: 1px solid #8a919b; font-size: clamp(13px, 1.75vw, 15px); text-align: center; letter-spacing: 0.05em; margin: 0 0 0.5em; padding: 0 0 0.5em; }
.course__box_roadmap_cell p{font-size: 12px;}
.course__box_roadmap .cell_11 img{margin: 0.25em;}

.course__box h4{text-align: center;font-size: clamp(21px, 2.75vw, 22px);font-weight: 700;margin: 1em auto;display: flex;justify-content: center;align-items: center;}

.course__box .sideliner::before,.course__box .sideliner::after{width: 25%;}

.course__box_curriculum {width: 92.5%;padding: 2.5% 3%;min-width: unset;}
.course__box_curriculum_text h4 {font-weight: 700;margin: 0 0 1em;font-size: clamp(16px, 2.25vw, 21px);}
.course__box_curriculum_text ul {padding-left: 1.5em;font-size: clamp(14px, 1.75vw, 18px);}
.course__box_curriculum_text li { line-height: 1.66; margin: 0 0 0.33em; }

.course__box_curriculum_photo{right: -6%;width: 25%;top: unset;bottom: -9%;}
.course__box_comment {width: 92.5%;margin: 2em auto 0.5em;}
.course__box_comment h4{padding: 0.5em 1em;margin: 0 0 1.25em;}
.course__box_comment_area {flex-direction: column;}
.course__box_comment_block {width: 100%;border-right: 0;}
.course__box_comment_block:last-child{border-right: 0;}

.course__box_comment_area p{width: 67%;margin: 0.5em auto 1.5em;}

.course__box_contents {width: 92.5%;margin: 3em auto 0;padding: 1em 1em 1em 2em;}
.course__box_contents li{line-height: 1.66;font-size: clamp(15px, 2.75vw, 25px);margin: 0 0 0.5em;}
.course__box_contents_detail-1 {max-width: 545px;width: 85%;margin: 2em auto;text-align: left;padding: 0 3%;font-weight: 600;}
.course__box_contents_detail-2 {width: 90%;margin: auto;display: flex;justify-content: center;font-size: clamp(17px, 2.75vw, 20px);}
.course__box_contents_detail-2::before {content: "";width: 30px;height: 1px;transform: rotate(60deg);box-sizing: border-box;background-color: #333333;position: relative;top: 15px;}
.course__box_contents_detail-2::after {content: "";width: 30px;height: 1px;transform: rotate(120deg);box-sizing: border-box;background-color: #333333;position: relative;top: 15px;}
.course__box_contents.bluesheet:before{top: -25px;padding: 2px 25px;line-height: 1.5;}
.course__box_techers {display: flex;width: 92.5%;margin: 2em auto 0.33em;gap: 2px;}

.enquete {padding: 1.5em 0;}
.enquete__intro_title{padding: 0 0 1em;margin: 0 0 2em;flex-direction: column;}
.enquete__intro_title img{width: 45px;margin-right: 0;margin-bottom: 0.25em;}
.enquete h2{ text-align: center; }
.enquete__graph_cell h3{margin: 0.5em 0 0;align-items: center;line-height: 1.0;padding: 0 0 0.5em;}
.enquete__graph_cell img{width: 75%;max-width: 150px;}
.enquete__graph_cell_supple {margin: 0.5em 0;width: 98.5%;flex-direction: column;text-align: left;}

.enquete__graph_cell_supple span::before{ display: block; content: "■"; padding-left: 0.75em; float: left; margin-right: 0.5em; text-align: left; margin-bottom: 0.15em; }
.enquete__graph_cell_supple span::after{ clear: both; }

.enquete__graph_cell_ext{width: 101px;margin-left: -160px;}
.enquete__graph_cell_ext:after{top: 21px;left: 93px;width: 58px;}

.enquete__graph_cell_supple span:nth-child(1):before{ }
.enquete__graph_cell_supple span:nth-child(2):before{color: #EE7C31;}
.enquete__graph_cell_supple span:nth-child(3):before{color: #A4A4A4;}
.enquete__graph_cell_supple span:nth-child(4):before{color: #FFBF00;}

.support__explain {flex-direction: column-reverse;}
.support__explain_photo {width: 92.5%;margin: auto;}
.support__explain_text {display: flex;flex-direction: column;justify-content: center;padding: 3.5% 4%;max-width: 800px;width: 92.5%;margin: auto;}
.support__explain_text p{width: 95%;}
.support__explain_text_exmple{width: 100%;}
.support__explain_text_exmple_text {padding: 5.5% 3.0% 2.5% 3.0%;}
.support__explain_exmple {width: 90%;margin: auto;}
.support__explain_exmple_tag { background: var(--blue_1); color: #FFF; width: 20%; min-width: 135px; position: relative; top: 13px; font-size: smaller; padding: 3px 8px; text-align: center; }
.support__explain_exmple_text { background: #FFF; padding: 4% 3.5% 2.5% 3.5%; border: 2px solid var(--blue_1); }

.support__title{ text-align: left; max-width: unset; margin: 2.25em auto 0.05em; }
.support .sideliner::before, .support .sideliner::after {width: 5%;margin-top: 2em;}

.support__block{grid-template-columns: 1fr 1fr;width: 90%;}
.support__block_cel{line-height: 1;}
.support__block_cell_cource{display: block;}

.different .sideliner::before, .different .sideliner::after {width: 16%;}

.different h2{ margin: 0px 0.5em 0.5em; }
.different__compare_box_cell {display: flex;justify-content: left;align-items: center;}

.different__compare_box_cell ul{ padding-left: 1.5em; }
.different__compare_box_cell li{ list-style-type: disc; }
.different__compare_books{margin: 1em 0 0 ;}
.different__check {flex-direction: column;margin: 1em auto;}
.different__check_text{width: 100%;}
.different__check_text h3{padding: 0 0 0.85em;padding-left: 2.4em;line-height: 1.665;}
.different__check_text p{ margin: 0 0 0.5em; }
.different__check_img{width: 66%;margin: 0 2.5%;}
.different__summary {flex-direction: column;padding: 3.5% 4%;max-width: 800px;width: 92.5%;margin: auto;}
.different__summary_text{width: 95%;}
.different__summary_photo{ display: none; }

.q-a .sideliner::before, .q-a .sideliner::after {width: 45%;margin-top: 1em;}
    .q-a, .review {margin: 1em auto;}
    .q-a h2, .review h2 {max-width: 400px;}
    .q-a__box, .review__box {margin: 0 auto 8px;border-radius: 4px;max-width: 760px;padding: 0 0 5px;width: 90%;}
    .toggle { display: none; }
    .option { position: relative; margin-bottom: 1em; margin: 0.25em auto; background: #FFF; }

.q-a__title {background-position-y: 18px;background-position-x: 4%;padding: 0.75em;border-radius: 7px;}
.q-a__title span {color: var(--dark-green);padding: 0 12% 0 2em;line-height: 1.66;}
.q-a__title span img{ width: 21px; margin: 1% 0.75em 0.15em 0; }
.q-a__title:before {width: 5px;transform: scale(0.75);top: 30%;}

    .q-a__title:after { transform: rotate(90deg); }
    .q-a__content { max-height: 0; overflow: hidden; }

    .q-a__content p { margin: 0 auto 1em; padding: 1em 0 0; width: 90%; overflow-wrap: anywhere; }
    .q-a__content p:before { left: 3.65vw; }

 .toggle:checked+.q-a__title+.q-a__content { max-height: 400px; transition: all .8s; width: 100%; }
 .toggle:checked+.q-a__title:before { top: unset; }  

    .campaign__head {padding: 2em 2em 6em;}
    
    .campaign__head h3{margin: 0 0 0.05em;}
    .campaign__head_ad::before {content: "";width: 30px;height: 2px;transform: rotate(60deg);box-sizing: border-box;background-color: #ffffff;}
    .campaign__head_ad::after {content: "";width: 30px;height: 2px;transform: rotate(120deg);box-sizing: border-box;background-color: #ffffff;}
    
    .campaign__head h2{position: relative;width: 100%;justify-content: center;}    
    .campaign__head_tx{text-align: center;position: absolute;bottom: -55px;width: 100%;}
    
    .campaign__solve {max-width: 640px;width: 95%;}
    .campaign__chance {max-width: 515px;width: 92.5%;}
    .campaign__try {max-width: 475px;width: 80%;flex-direction: column-reverse;}
    
    .copyright {font-size: 13px;text-align: center;margin: 5px 0 5px;}
}


.gototop { opacity: 0; position: fixed; z-index: 8; bottom: 0; right: 0; background: var(--blue_3); }
.gototop a { display: block; margin-top: 5px; width: 100%; height: 100%; padding: 16px 20px; }
.gototop span { transform: rotate(-45deg); width: 0.75em; height: 0.75em; border-right: 1px solid #FFF; border-top: 1px solid #FFF; content: ""; display: block; }
.gototop.btn { background: none; }
.gototop.btn a { padding: 0; }
.gototop.btn a:hover { filter: brightness(0.88); transition: 0.3s; }
.gototop.btn img { width: auto; text-align: center; display: block; margin-left: auto; margin-right: 0; }



@media screen and (max-width: 767px) {
    .gototop.btn { left: 0; }
    .gototop.btn a { background: var(--red_1); width: 100%; display: block; }
    .gototop.btn img { width: 65%; max-width: 250px; margin: auto; }
    .history__prize_box{text-align: left;}
    .history__prize img{max-width: 104px;width: 100%;}

}

@media screen and (max-width: 720px) {
    .course__box_curriculum_photo {display: none;}
}

.txt_center{text-align: center!important;}
@media screen and (min-width:680px) and (max-width:900px){
.txt_center_left{text-align: center!important;}
}




@media screen and (max-width: 575px) {
    .support__block {grid-template-columns: 1fr;justify-items: center;}
    .course__intro .sideliner::before, .course__intro .sideliner::after {width: 8%;}
    .course__box .sideliner::before, .course__box .sideliner::after { width: 11%; }
    .course__box_cont_photo img{height: 232px; object-fit: cover; object-position: 50% 50%;}
    .enquete__graph { grid-template-columns: 1fr;   margin: 2em auto 0;}
    .history__point_list ul{ width: 100%;}
    .history__head{ top: -2.75em;}
    .history__head_supple{  top: -3.95em;}    
    .history__prize_img_red {grid-template-columns: 1fr 1fr;min-width: unset;}
    .history__prize img{max-width: 98px;width: 100%;}
}

@media screen and (max-width: 350px) {
.campaign__head{padding: 2em 0.5em 6em;}
.course__box_curriculum_photo{display: none;}
.button:after{display: none;}
.course__intro h2 { font-size: clamp(24px, 2.75vw, 40px);}
.different h2{font-size: clamp(22px, 3.85vw, 38px);}
}