@charset "UTF-8";

/*---------------------------------------------------------
オンラインヘッダー
---------------------------------------------------------*/
.header{
 /*background: rgba(0,116,64,1); */
	width:100%;
	margin:0 auto;
	padding:0;
    position: relative;
}
.head-area{
	width:100%;
	max-width:1200px;
	margin:0 auto;
	padding:0;
}
.header-container{
	display: flex;
    align-items: center;
    flex-wrap: nowrap;
    flex-direction: row;
        position: relative;
}
.header-ttl-name{
    font-size: 4rem;
    color: #fff;
    margin-left: 1rem;
    font-weight: 700;
}
.logo{
 background: rgba(0,116,64,1); 
 width:100%; 
 max-width:200px; 
padding: 15px 40px;
 display: inline-block; 
}
.head-btn-area{
    position: absolute;
    right: 20%;
}
.header-tel{
    margin: 0 2vw;
    width: 100%;
    max-width: 300px;
}
.head-btn-areaBox{
display: flex;
    position: absolute;
    right: 0;
}
.header-btn-siryo,.header-btn-tel{
    color: #fff;
    text-align: center;
    padding: 0.5em 1em;
    text-decoration: none;
    font-weight: 700;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 300px;
    max-width: 400px;
    border-radius: 4px;
        line-height: 1.1;
        display: flex;
        align-items: center;
        height: 40px;
    position: relative;
    font-size: clamp(2rem, 5vw, 2.5rem);
}
.header-btn-siryo{
    background: linear-gradient(0deg, #e00303 0%, #ff0000 100%);
    border:2px solid #ff0000;
    padding: 0.3em 0em 0.3em 2.5em;
}
.header-btn-siryo:hover{
background: #fff;
    color: #ff0000;
}
.header-btn-tel{
    background: linear-gradient(0deg, #079945 0%, #27ae60 100%);
    border:2px solid #27ae60;
}
.header-btn-tel:hover{
background: #fff;
    color: #27ae60;
}

.highlight {
    position: absolute;
    border-radius: 100px;
    width: 100%;
    height: 30%;
    top: 0px;
    left: 0;
    background: linear-gradient(to bottom, rgba(250, 250, 255, 0.9) 10%, rgba(250, 250, 255, 0.3) 100%);
}
.header-btn-shiryo{
    position: relative;
}
.header-btn-shiryo img{
position: absolute;
    left: 5px;
    bottom: 1px;
    max-height: 75px;
}
@media screen and (max-width: 912px) {
/* 912pxまでの幅の場合に適応される */
.head-btn-area {
    right: 10px;
}
.header-tel {
    max-width: 220px;
}
.header-btn-shiryo img {
    left: -10px;
    bottom: 1px;
    max-height: 60px;
}
.header-btn-siryo{
width: 160px;
}
}

@media screen and (max-width: 640px) {
/* 640pxまでの幅の場合に適応される */
.logo{
 max-width:90px; 
padding: 1rem 1rem;
}
.header-ttl-name{
    font-size: 2rem;
}
.header-btn-siryo,.header-btn-tel{
        font-size: 1.2rem;
        height: 25px;
        margin: 0 5px;
}
.header-btn-siryo{
        max-width: 110px;
        padding: 0.3em 0em 0.3em 2.5em;
        font-size: 1.5rem;
    line-height: 1;
}
.header-btn-tel{
        max-width: 80px;
        padding: 0.3em 0em;
}
.header-btn-shiryo img {
    left: 8px;
    bottom: 1px;
    max-height: 40px;
}
}
@media screen and (max-width: 360px) {
/* 360pxまでの幅の場合に適応される */
} 

/*---------------------------------------------------------
メインビュー
---------------------------------------------------------*/
#TopMain img{
    width: 100%;
    max-width: 1920px;  
    display: block;
    margin-left: auto;
    margin-right: auto;
}
@media screen and (min-width:768px) and ( max-width:1024px) {
/*　画面サイズが768pxから820pxまではここを読み込む　*/
/*#TopMain{
    margin: 50px 0 0;
}*/
#gNavi > .inner > .inner > ul > li > a,
#gNavi > .inner > .inner > ul > li > span {
font-size: 1.35vw !important;
    line-height: 1.2 !important;
}
}
@media screen and (max-width: 640px) {
/* 640pxまでの幅の場合に適応される */

}

/*---------------------------------------------------------
合格速報
---------------------------------------------------------*/
.examination-ttl{
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: nowrap;
}
.examination-main-ttl,.examination-main-subttl{
font-family: 'Noto Serif JP',serif;
color: #cd0917;
font-weight: 700;
    letter-spacing: .5vw;
}
.examination-main-ttl{
    font-size: clamp(5rem, 6vw, 10rem);
    line-height: 1.05;
}
   [class*="examination-main-ttl"] {
  --x: 0 0 var(--text-outline--width, 4px) var(--text-outline--color, #fff);
  --y: var(--x), var(--x), var(--x), var(--x), var(--x), var(--x) /* 6 */;
  text-shadow: var(--y), var(--y), var(--y), var(--y), var(--y), var(--y) /* 6 * 6 = 36 */;
}
.examination-main-ttl span{
    font-size: clamp(1.6rem, 2vw, 3rem);
}
   [class*="examination-main-subttl"] {
  --x: 0 0 var(--text-outline--width, 3px) var(--text-outline--color, #fff);
  --y: var(--x), var(--x), var(--x), var(--x), var(--x), var(--x) /* 6 */;
  text-shadow: var(--y), var(--y), var(--y), var(--y), var(--y), var(--y) /* 6 * 6 = 36 */;
}
.examination-main-pct{
width:90%;
max-width:600px;
display: block;
margin-left: auto;
margin-right: auto;
}
.examination-Box{margin: 2vh 0 0;background: #fff;position: relative;}
.examination-Box h3{background: #007440;padding: 1vh 1vw;color: #fff;text-align: center;font-size: clamp(1.6rem, 4vw, 2.25rem);font-weight: 700;}
.examination-InnnerBox{padding: 1.5vh 1.5vw;}
.examination-InnnerBox p{
    font-weight: 700;
    font-size: clamp(1.6rem, 2vw, 2rem);
}

.icon-jisseki{
    position: absolute;
    max-width: 120px;
    width: 40%;
    right: 2%;
    bottom: 0;
    opacity: 0.18;
    transform: rotate( 15deg );
}
@media screen and (max-width: 640px) {
/* 640pxまでの幅の場合に適応される */
#examination-Area{
    background: url(../img/goukakusokuho-sp.png) no-repeat top 3% center, -webkit-linear-gradient(left, #d6f0fe 0%, #d6f0fe 100%);
}
.icon-jisseki{
    max-width: 90px;
    width: 40%;
}
}

#examination-Area-Voice h2{
    padding: 1.25vh 1vw 1vh;
    background: #a08200;
    outline: 1px solid rgb(255, 255, 255);
    outline-offset: -8px;
    border-radius: 0.5vw;
    margin: 0 auto;
    position: relative;
}
#examination-Area-Voice h2 span{
    font-size: clamp(2.25rem, 3.5vw, 3.5rem);
    color: #fff;
    font-family: 'Noto Serif JP',serif;
    margin: 0 0 2vh;
    position: relative;
}

.voice-medal {
    position: absolute;
    width: 80px;
    height: auto;
    right: 0;
    top: -10px;
}
#examination-Area-Voice h3{
    color: #cd0917;
    font-size: clamp(3rem, 2.5vw, 5rem);
    font-weight: 700;
    text-align: center;
    margin: 3vh 0 2vh;
    position: relative;
}
.voice-ttl-big{
    font-size: clamp(4.5rem, 7vw, 7rem);
    line-height: 1.1;
}
.ff-poppin{
    font-family: 'Poppins';
}
.voice-name{
    background: #007440;
    padding: 1vh 1vw;
    color: #fff;
    text-align: center;
    width: 70%;
    margin: 0 auto;
    max-width: 210px;
}
.university-pass-box{
    background: #fedfdf;
    padding: 1vw 1vh;
    font-weight: 700;
}
.university-pass-list{
    margin: 0 0 1vh;
    font-size: clamp(1.4rem, 2vw, 2rem);
}
.f-box-none-voice{
display: flex;
}
.imgw-c {
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.pct-box-voice{
    width: 30%;
}
.text-box-voice{
    width: 70%;
    background: #fedfdf;
}
.pct-box-voice img{
    width: 80%;
}
/* スコア */
.score-area{
display: flex;
    align-items: center;
    margin: 2vh 0 1vh;
    justify-content: space-evenly;
}
.score-arrow{
    width: 3% !important;
    display: flex;
}
.score-box{
    width: 43% !important;
}
.score-ttl-before{
    border: 1px solid #666666;
}
.score-ttl-before,.score-ttl-after{
    text-align: center;
    font-size: clamp(2rem, 2.5vw, 3rem);
    font-weight: 700;
    line-height: 1.3;
    padding: 0.25vh 0.25vw;
}
.score-ttl-before span,.score-ttl-after span{
display: block;
    font-size: clamp(1.5rem, 2.5vw, 3rem);
}

.fc-score-before {
    color: #666666;
}
.score-ttl-after{
    border: 1px solid #cd0917;
}
.fc-score-after{
        color: #cd0917;
}
.score-number{
    border: transparent;
    padding: 1vw;
    font-size: clamp(2rem, 2.5vw, 3rem);
    text-align: center;
}
.score-number span{
    font-size: clamp(4rem, 7vw, 8rem);
    font-family: 'Poppins';
    line-height: 1;
}
.score-arrow i{
    font-size: clamp(1.8rem, 5vw, 5rem);
    color: #007440;
}
.experiences-voice-mainttl{
    line-height: 1.5 !important;
    font-size: clamp(2rem, 3vw, 3.5rem) !important;
    text-align: center !important;
    margin: 1vh 0 3vh !important;
}
@media screen and (max-width: 640px) {
/* 640pxまでの幅の場合に適応される */
#examination-Area-Voice{
padding: 0 0 1vh;
}
#examination-Area-Voice h3{
    text-align: left;
    letter-spacing: -.1rem;
    position: relative;
    margin-left: 2.25vw;
}
}
/*==================================================
アコーディオンのためのcss
===================================*/
.cp_actab-voice {
	position: relative;
	overflow: hidden;
	width: 100%;
    margin: 2vh auto 0;
	color: #ffffff;
}
.cp_actab-voice input {
	position: absolute;
	z-index: -1;
	opacity: 0;
}
.cp_actab-voice label {
font-weight: 700;
    line-height: 2;
    position: relative;
    display: block;
    padding: 0 0 0 1vh;
    cursor: pointer;
    margin: 0 0 1px 0;
    background: #fff;
    font-size: clamp(1.6rem, 3vw, 3rem);
    color: #a08200;
    text-align: center;
    border: 2px solid #a08200;
    border-radius: 1vw;
}
.cp_actab-voice .cp_actab-voice-content {
	overflow: hidden;
	max-height: 0;
	-webkit-transition: max-height 0.35s;
	transition: max-height 0.35s;
	color: #333333;
	background: #fff;
}
.experiences-voice-ttl {
    font-size: clamp(1.6rem, 2.25vw, 2.25rem);
    margin: 2vh 0 1vh;
    background: #EDF8F4;
    padding: 1.5vh 1.5vw;
    color: #007440;
    font-weight: 700;
    margin: 2vh 0 0;
}

.cp_actab-voice .cp_actab-voice-content p {
    margin: 1vw;
    text-align: left;
    font-weight: 500;
        font-size: clamp(1.5rem, 1.8vw, 1.8rem);
}
/* :checked */
.cp_actab-voice input:checked ~ .cp_actab-voice-content {
	max-height: 300rem;
}
/* Icon */
.cp_actab-voice label::after {
	line-height: 2;
	position: absolute;
	top: 0;
	right: 0;
	display: block;
	width: 2em;
	-webkit-transition: all 0.35s;
	transition: all 0.35s;
	text-align: center;
}
.cp_actab-voice input[type=checkbox] + label::after {
	content: '+';
}
.cp_actab-voice input[type=checkbox]:checked + label::after {
	transform: rotate(315deg);
}


@media screen and (max-width: 640px) {
/* 640pxまでの幅の場合に適応される */
#experiences-s .experiences-Area h2{
    line-height: 1.3;
    font-size: 3rem;
    margin: 1vh 0 2.5vh;
}
#experiences-s .experiences-Area h2 span{
    font-size: 1.4rem;
    display: block;
    line-height: 1;
    padding: 0;
    margin: 0;
}
.voice-medal {
    width: 70px;
}
}


/* 　続きを読む */
.accordion-box {
    position: relative;
}
.accordion-box label {
    height: 140px; /* グラデーションの高さ */
    cursor: pointer;
    text-align: center;
    font-size: 12px;
    position: absolute;
    bottom: 0;
    width: 100%;
        left: 0;

    /* 以下グラデーションは「背景が白」に併せて設定しています */ 
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.95) 90%);
    background: -moz-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.95) 90%);
    background: -o-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.95) 90%);
    background: -ms-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.95) 90%);
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.95) 90%);
}
.accordion-box input:checked + label {
    background: inherit; /* 開いた時には背景グラデーションを消す */
}
.accordion-box label:after {
    content: "続きをよむ"; /* ラベルの文字 */
    letter-spacing: .05em;
    line-height: 2.5rem;
    position: absolute;
    bottom: 10px;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    color: #fff;
    background-color: #13A075;
    width: 18.75rem;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 50vh;
    font-size: clamp(1.8rem, 2.5vw, 2.5rem);
    padding: 1vw;
}
/*.accordion-box label:before {
    content: "↓";
    font-weight: 700;
    position: absolute;
    bottom: 30px;
    left: 50%;
    -webkit-transform: translate(-140px, 0);
    transform: translate(-140px, 0);
    background-color: #fff;
    z-index: 1;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    border-radius: 100%;
    width: 20px;
    height: 20px;
    line-height: 20px;
}
*/
.accordion-box input {
    display: none;
}
.accordion-box .accordion-container {
    overflow: hidden;
    height: 200px; /* 開く前に見えている部分の高さ */
    -webkit-transition: all 0.1s;
    -moz-transition: all 0.1s;
    -ms-transition: all 0.1s;
    -o-transition: all 0.1s;
    transition: all 0.1s;
}


.accordion-box input:checked + label {
    /* display: none ; 閉じるボタンは要らないとき */
}
.accordion-box input:checked + label:after {
    content: "閉じる";
}
/*.accordion-box input:checked + label:before {
    content: "↑";
}*/
.accordion-box input:checked ~ .accordion-container {
    height: auto;
    padding-bottom: 80px; /* 閉じるボタンのbottomからの位置 */
    -webkit-transition: all 0.1s;
    -moz-transition: all 0.1s;
    -ms-transition: all 0.1s;
    -o-transition: all 0.1s;
    transition: all 0.1s;
}
.accordion-container p{
text-align: left;
    font-weight: 500;
}
.voice-medal {
    width: 110px;
    height: auto;
    top: -20px;
}
@media screen and (max-width: 640px) {
/* 640pxまでの幅の場合に適応される */
.voice-medal {
    width: 28vw;
    height: auto;
    top: -5px;
}
.pct-box-voice {
    width: 55% !important;
}
.pct-box-voice img {
    width: 100%;
}
.voice-name {
    width: 95%;
}
.f-box-none-voice li:last-child{
margin-left: 10px;
}

}

/*---------------------------------------------------------
E判定から逆転合格！合格体験記
---------------------------------------------------------*/
#consultation{
    padding: 2vh 0 6vh;
    background: url(../img/consultation/testimonials-bg.webp) no-repeat top center, -moz-linear-gradient(left, #F7EAF1 0%, #F7EAF1 100%);
  background:url(../img/consultation/goukakusokuho-pc.png) no-repeat top center, -webkit-linear-gradient(left, #d6f0fe 0%, #d6f0fe 100%);
  background-size: 100% auto;
}
.consultation-area{
    background: #fff;
    padding: 3rem;
    border: 4px solid #AC9A4D;
    margin: 4vh 0 0;
}
.consultation-area > h2 img{
    max-width: 600px;
    width: 90%;
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.consultation-voicebox-CommentTtl{
    margin: 0 0 3rem;
}
.consultation-voicebox-CommentTtl > span{
    font-size: 3.25rem;
    color: #CD0917;
    font-weight: 700;
    font-family: 'Noto Serif JP';
    background: linear-gradient(transparent 70%, #FFFF00 0%);
    line-height: 1.5;
}
.consultation-voicebox-univ-nameTtl{
    background: #CD0917;
    color: #fff;
    margin: 0.5rem 0;
}
.consultation-voicebox-txt{
    background: #E2DCC1;
    padding: 1rem !important;
}
.consultation-voicebox-univ-name{
    display: flex;
    align-content: flex-start;
}
.consultation-voicebox-name,.consultation-voicebox-univ-nameTtl,.consultation-voicebox-univ-name span{
    font-size: 1.5rem;
    font-weight: 700;
    text-align: center;
    line-height: 1.4;
}

@media screen and (max-width: 1024px) {
/* 1024pxまでの幅の場合に適応される */
}
@media screen and (max-width: 820px) {
/* 820pxまでの幅の場合に適応される */
#consultation {
    padding: 6rem 0;
}
.consultation-voicebox-CommentTtl > span{
font-size: 2.5rem;
}
.consultation-voicebox-univ-name{
    flex-direction: column;
    padding: 0.5rem 0 0;
}
.consultation-area > h2 img {
    max-width: 500px;
}
}
@media screen and (min-width:641px) and ( max-width:820px) {
/*　画面サイズが768pxから820pxまではここを読み込む　*/
}
@media screen and (max-width: 640px) {
/* 640pxまでの幅の場合に適応される */
#consultation{
    background-size: contain;
    padding: 2rem 0;
}
.consultation-area {
    background: #fff;
    padding: 2rem 1rem;
}
.consultation-voicebox-univ-name{
justify-content: center;
}
.consultation-voicebox-CommentTtl {
    margin: 0 0 1rem;
    text-align: center;
}
.consultation-voicebox-CommentTtl > span{
    font-size: 2rem;
    line-height: 1.3;
}
}
@media screen and (max-width: 360px) {
/* 360pxまでの幅の場合に適応される */
}

/*---------------------------------------------------------
無料受験相談で雰囲気を感じ取ってください！
---------------------------------------------------------*/
.conference-area{
    width: 90%;
    margin: 0 auto;
    padding: 6rem 0 0;
}
.conference-box{
width: 48%;
}
.conference-ttl{
border-top: 3px solid #007DBB;
    border-bottom: 3px solid #007DBB;
    padding: 2rem 0;
    font-size: 3rem;
    text-align: center;
    font-weight: 700;
    color: #007DBB;
}

@media screen and (max-width: 1024px) {
/* 1024pxまでの幅の場合に適応される */
}
@media screen and (max-width: 820px) {
/* 820pxまでの幅の場合に適応される */
}
@media screen and (min-width:641px) and ( max-width:820px) {
/*　画面サイズが768pxから820pxまではここを読み込む　*/
}
@media screen and (max-width: 640px) {
/* 640pxまでの幅の場合に適応される */
.conference-area {
    width: 90%;
    margin: 0 auto;
    padding: 3rem 0 0;
}

.conference-box {
    width: 100%;
}
.conference-ttl {
    padding: 1rem 0;
    font-size: 2rem;
    line-height: 1.3;
}
}
@media screen and (max-width: 360px) {
/* 360pxまでの幅の場合に適応される */
}

/*---------------------------------------------------------
無料相談受付中
---------------------------------------------------------*/
.cv-soudan-box{
    padding: 3vh 0 0;
    border-radius: 12px;
}
.cv-soudan-box > h2{
    margin: 0 0 2vh;
    display: flex;
    align-items: center;
    justify-content: center;
}
.cv-soudan-box h2 span{
    position: relative;
    max-width: 80px;
    max-height: 80px;
    width: 10vmin;
    height: 10vmin;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: clamp(2.5rem, 6vw, 5rem);
    color: rgba(0,116,64,1);
    font-weight: 700;
    border: 1px solid rgba(0,116,64,1);
}
.cv-soudan-box h2 span::before {
  content: "";
  display: block;
  padding-top: 100%;
}
#cv-soudan > h3{

}
.cv-soudan-subttl{
    position: relative;
    display: inline-block;
    font-size: clamp(1.8rem, 2.5vw, 2.5rem);
    margin: 0 0 1rem;
    font-weight: 700;
    color: #111;
}
.cv-soudan-subttl:before {
    position: absolute;
    left: -2rem;
    top: 0;
    content: "";
    width: 3px;
    height: 100%;
    background: #111;
    border-radius: 3px;
    transform: rotate(-25deg);
}
.cv-soudan-subttl::after {
    position: absolute;
    content: "";
    right: -2rem;
    top: 0;
    width: 3px;
    height: 100%;
    background: #111;
    border-radius: 3px;
    transform: rotate(25deg);
}

/*---------------------------------------------------------
無料受験相談のお申し込みボタン
---------------------------------------------------------*/
.cv-comment{
    position: relative;
    display: inline-block;
    font-size: 2.25rem;
    margin: 0 0 1rem;
    font-weight: 700;
    color: #CD0917;
}
.cv-comment:before {
    position: absolute;
    left: -2rem;
    top: 0;
    content: "";
    width: 3px;
    height: 100%;
    background: #CD0917;
    border-radius: 3px;
    transform: rotate(-25deg);
}
.cv-comment::after {
    position: absolute;
    content: "";
    right: -2rem;
    top: 0;
    width: 3px;
    height: 100%;
    background: #CD0917;
    border-radius: 3px;
    transform: rotate(25deg);
}

.cv-btn{
    display: block;
    background: rgb(213,28,36);
    background: linear-gradient(0deg, rgba(213,28,36,1) 0%, rgba(255,123,127,1) 100%);
    color: #fff;
    text-align: center;
    text-decoration: none;
    border: 1px solid #d51c24;
}

.cv-btn:hover{
    background: #fff;
    color: #d51c24;
    text-shadow: 0px 1px 4px rgb(255 255 255 / 50%);
}
.cv-btn-body {
    padding: 1rem 1rem;
    border-radius: 12px;
   font-size: 3rem;
    font-weight: 700;
    text-shadow: 0px 1px 4px rgb(0 0 0 / 50%);
}
.cv-btn-body span{
display: block;
font-size: 2rem;
 font-weight: 500;
}
.cv-btn-body i{
    font-size: 3rem;
    margin-left: 1rem;
}

@media screen and (max-width: 1024px) {
/* 1024pxまでの幅の場合に適応される */
}
@media screen and (max-width: 820px) {
/* 820pxまでの幅の場合に適応される */
}
@media screen and (min-width:641px) and ( max-width:820px) {
/*　画面サイズが768pxから820pxまではここを読み込む　*/
}
@media screen and (max-width: 640px) {
/* 640pxまでの幅の場合に適応される */
.cv-comment {
    font-size: 1.6rem;
    line-height: 1;
}
.cv-btn-body {
   font-size: 2rem;
}
.cv-btn-body i {
    font-size: 2rem;
}
}
@media screen and (max-width: 360px) {
/* 360pxまでの幅の場合に適応される */
}

/*---------------------------------------------------------
当てはまっていませんか？
---------------------------------------------------------*/
#voice_s_univ-sp{
    padding:8rem 0;
     background: repeating-linear-gradient( -45deg, #dfebe9, #dfebe9 10px, #d9e8e5 0, #d9e8e5 20px );
}

#binderArea{
    position: relative;
    width: 95%;
    max-width: 800px;
    margin: 4rem auto;
    background: #006f4f;
    border-radius: 12px;
    box-shadow: 8px 9px 10px -12px rgb(0 0 0 / 80%);
    padding: 1rem;
}
.binderBox{
    background: url(../assets/img/bg-hogan.png) repeat;
    background-color: rgba(255,255,255,1);
    padding: 4rem 4rem;
}
.binder-clip{
    position: absolute;
    top: -20px;
    width: 25%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}

.binderBox-subttl{
    font-weight:900;
    color:#006f4f;
    margin: 1rem 0 .5rem;
    text-align: center;
}
.binderBox-subttl > .under-mark{
    font-size: 2.25rem;
}

#binderArea h2{
    text-align: center;
    font-weight: 900;
    font-size: 4rem;
    color: rgba(0, 0, 0, 0);
    text-shadow: 1px 1px 0 #ffff00;
    -webkit-text-stroke: 1.5px #00714d;
    text-stroke: 1.5px #00714d;
    margin: 0 0 3rem;
    letter-spacing: -0.25rem;
}
.binderBox-list li {
    position: relative;
    font-size: 1.8rem;
    font-weight: 700;
    margin-bottom: 0.25rem;
    padding-left: 32px;
    padding-bottom: 0% !important;
    padding-top: 0% !important;
}

.binderBox-list li:before {
    position: absolute;
    content: "";
    background: 100% / 100% url(../assets/img/cv/0801.svg) no-repeat;
    width: 20px;
    height: 20px;
    top: 0.5rem;
    left: 0rem;
}

.binderBox-p{
    background: #ffff4d;
    padding: 1rem 0.5rem;
    font-weight: 700;
    line-height: 1.6;
    font-size: 2rem;
    color: #006f4f;
    text-align: center;
    margin: 2rem 0;
}
.binderBox-check{
    border: 2px solid #d51c24;
    border-radius: 12px;
    margin: 2rem 0 0;
    padding: 1rem 3rem;
    list-style: none;
}
.binderBox-check li{
  text-indent: -1em;
  padding-left: 1em;
  color:#d51c24;
  font-weight:700;
}
.binderBox-check li:before {
  content: ""; /* 空の要素作成 */
  width: 8px; /* 幅指定 */
  height: 8px; /* 高さ指定 */
  display: inline-block; /* インラインブロックにする */
  background-color: #d51c24; /* 背景色指定 */
  border-radius: 50%; /* 要素を丸くする */
  position: relative;
  top: -1px;
  margin-right: 5px;
}
.select-no1-ttl {
    color: #fff;
    font-size: 3rem;
    font-weight: 700;
    background: #9b852e;
    padding: 2rem 1rem;
    text-align: center;
    border-radius: 12px;
}

@media screen and (max-width: 640px) {
/* 640pxまでの幅の場合に適応される */
#voice_s_univ-sp {
    padding: 1rem 0;
}

.binderBox {
    padding: 1rem 1rem;
}
.binder-clip {
    top: -10px;
}
.binderBox-subttl > .under-mark {
    font-size: 1.75rem;
}
#binderArea h2 {
    font-size: 2.8rem;
    line-height: 1.2;
    margin: 0 0 1rem;
}
.binderBox-list li {
    font-size: 1.4rem;
    margin-bottom: 0.25rem;
}
.binderBox-list li:before {
    width: 18px;
    height: 20px;
    top: 0.2rem;
}
.binderBox-p {
    padding: 1rem 0.5rem;
    font-size: 1.6rem;
    margin: 1rem 0;
}
.binderBox-check {
    border-radius: 8px;
    margin: 2rem 0 1rem;
   padding: 1rem 1rem;
    letter-spacing: -.1rem;
    font-size: 1.5rem;
}
.select-no1-ttl {
    font-size: 2rem;
    line-height: 1.3;
    padding: 1rem 1rem;
    border-radius: 8px;
}
}

/*---------------------------------------------------------
個別予備校WAMの特徴
---------------------------------------------------------*/
#yobikou-feature{
width:100%;
background-size: 16px 16px;
background-position: 50% 50%;
background-image: repeating-linear-gradient( 90deg, rgba(0,111,79,0.1) , rgba(0,111,79,0.1) 1px, transparent 1px, transparent 16px),repeating-linear-gradient( 0deg, rgba(0,111,79,0.1) , rgba(0,111,79,0.1) 1px, #fff 1px, #fff 16px);
padding:6rem 0;
}
#yobikou-feature h2{
    background: #007440;
    font-size: 3.5rem;
    padding: 2rem 2.5rem;
    display: inline-block;
    color: #fff;
    font-weight: 700;
}

.feature-group {
    display: flex;
    flex-wrap: wrap;
    padding: 0 0 6rem;
    /* align-items: center; */
    justify-content: space-around;
}
.feature-text-box{
    width: 50%;
    z-index: 20;
    position: relative;
}
.feature-pct-box{
    width: 40%;
    z-index: 10;
}
.feature-text-area{
    background: rgba(247,232,181,0.8);
    position: absolute;
    top: 50%;
    left: 0%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    padding: 0 2rem 2rem;
    box-shadow: 0px 0px 16px -6px rgb(0 0 0 / 80%);
    border-radius: 1rem;
}
.feature-number{
color: #fff;
    font-weight: 700;
    font-size: 2.5rem;
    text-align: center;
    display: inline-block;
    background: #007440;
    padding: 0.5rem 1rem;
    margin: 0 0 1rem;
}
.feature-text-area-right{right: -20%;}
.feature-text-area-left{
left: -30%;
}
.feature-text-area h3{
    color: #F15A24;
    text-align: center;
    font-size: 2.75rem;
    line-height: 1.4;
    font-weight: 700;
    margin: 0 0 2rem;
}
.feature-text-area p{
    color: #000;
    line-height: 1.5;
}

@media screen and (max-width: 1104px) {
.feature-text-area h3 {font-size: 3rem;}

}
@media screen and (max-width: 1024px) {
/* 1024pxまでの幅の場合に適応される */
.feature-text-area h3 {
    font-size: 2.5rem;
}
}
@media screen and (max-width: 912px) {
/* 900pxまでの幅の場合に適応される */
#yobikou-feature{padding: 4rem 0 0;}
.feature-group {
    padding: 0 0 2rem;
    flex-direction: column;
}
.feature-pct-box{
order: 1;
width: 100%;
}
.feature-text-box{
order: 2;
width: 100%;
}
.feature-text-area {
    position: inherit;
    top: 50px;
}
.feature-text-area h3 {font-size: 3rem;}
.feature-text-area-right {
    right: 0;
}
.feature-text-area-left {
    left: 0;
}
.feature-pct-box img{
display: block;
margin: 0 auto;
}
}
@media screen and (max-width: 820px) {
/* 820pxまでの幅の場合に適応される */
}
@media screen and (min-width:641px) and ( max-width:820px) {
/*　画面サイズが768pxから820pxまではここを読み込む　*/
}

@media screen and (max-width: 640px) {
/* 640pxまでの幅の場合に適応される */
#yobikou-feature{
padding: 3rem 0 1rem;
}
#yobikou-feature h2{
    font-size: 2rem;
    padding: 1rem 1.5rem;
}

.feature-group {
    padding: 0;
    flex-direction: column;
    margin: 0 auto;
    width: 95%;
}
.feature-text-area {
    background: rgba(247,232,181,0.95);
    padding: 0 1rem 2rem;
    top: 100px;
}
.feature-number {
    font-size: 1.5rem;
}
.feature-text-area h3 {
    font-size: 2rem;
}
}

/*---------------------------------------------------------
無料体験で雰囲気を感じ取ってください！
---------------------------------------------------------*/
#consultation-flow{
    padding: 0 0 4vh;
}

.consultation-flow-area{
    background: #F3FFFE;
    max-width: 1000px;
    margin: 0 auto 4rem;
    padding: 6rem 5rem;
    box-shadow: 8px 9px 10px -12px rgb(0 0 0 / 80%);
}
.consultation-flow-area > h3{
    color: #fff;
    text-align: center;
    font-size: 3rem;
    font-weight: 700;
    background: #007DBB;
    padding: 2rem 1rem;
    border: 3px solid #007DBB;
    border-radius: 8px;
}
.consultation-flow-area > h4{
    margin: 5rem 0 2rem;
    color: #007DBB;
}
.consultation-flow-area > h4{
    font-size: 2.5rem;
    font-weight: 700;
}
.consultation-flow-area > h4 span{
    font-size: 2rem;
    font-weight: 700;
}
.consultation-flow-area > h4 span{
    background: #007DBB;
    padding: 1rem 2rem;
    border-radius: 50vh;
    color: #fff;
    margin-right: 1.5rem;
}
.step-flow{
    display: flex;
}
.step-flow-text{width: 65%;padding: 0 1rem 0 170px;}
.step-flow-pct{width: 35%;}

@media screen and (max-width: 1024px) {
/* 1024pxまでの幅の場合に適応される */
.consultation-flow-area > h3{
    font-size: 3.5rem;
    padding: 2rem 1rem;
}
.consultation-flow-area {padding: 2rem;}
.consultation-flow-area > h4, 
.consultation-flow-area > h4 span {
    font-size: 2.5rem;
}
.consultation-flow-area > h4, 
.consultation-flow-area > h4 span {
    font-size: 2.5rem;
}
}
@media screen and (max-width: 820px) {
/* 820pxまでの幅の場合に適応される */
#summer-c-flow h3 {margin: 2rem 0 1rem;}
.consultation-flow-area > h4, .consultation-flow-area > h4 span {font-size: 2rem; line-height: 2;}
.consultation-flow-area > h43 span {padding: 1rem 2rem;}
.step-flow-text{width: 65%;padding: 0 1rem 0 0;}
.step-flow-pct{width: 35%;}
.consultation-flow-area > h3 {
    font-size: 3rem;
    padding: 2rem 1rem;
}
}

@media screen and (max-width: 640px) {
/* 640pxまでの幅の場合に適応される */
#consultation-flow {padding: 0 0 3rem;}
.consultation-flow-area{padding: 1rem;}
.consultation-flow-area > h3{
    font-size: 1.8rem;
    padding: 1rem;
    border: 1px solid #006F4F;
    line-height: 1.4;
}
.consultation-flow-area > h4 span {padding: 0.75rem 2rem;}
.consultation-flow-area > h4 span
{font-size: 1.2rem;}
.consultation-flow-area > h4{
    margin: 2rem 0 2rem;
    font-size: 1.6rem;
}
.step-flow {flex-direction: column;}
.step-flow-text{width: 100%;padding: 0;order: 2;margin: 1rem 0 0;}
.step-flow-pct{width: 100%;order: 1;}
}

@media screen and (max-width: 360px) {
/* 360pxまでの幅の場合に適応される */
}

/*---------------------------------------------------------
生徒の声
---------------------------------------------------------*/

.pct-box-voice{
    width: 30%;
}
#student-voice{
    padding:8rem 0;
    background: repeating-linear-gradient( -45deg, #dfebe9, #dfebe9 10px, #d9e8e5 0, #d9e8e5 20px );
    background-blend-mode: lighten;
}

.fukidashi-left, .fukidashi-right{
	position: relative;
	background: #fff;
	border-radius:12px;
    -webkit-border-radius:12px;
    -moz-border-radius:12px;
    padding:2rem;
}
.fukidashi-left:after {
	right: 100%;
	top: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(255, 255, 255, 0);
	border-right-color: rgba(255, 255, 255, 1);
	border-width: 30px;
	margin-top: -30px;
}

.fukidashi-right:after {
	left: 100%;
	top: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(255, 255, 255, 0);
	border-left-color: rgba(255, 255, 255, 1);
	border-width: 30px;
	margin-top: -30px;
}

.student-voice-ttl{
    font-size: 3.2rem;
    line-height: 1.2;
    font-weight: 900;
    color: #da1c24;
    margin: 0 0 2rem;
}

.student-voice-ttl2,.student-voice-ttl2 span{
    font-size: 4rem;
    line-height: 1.3;
    font-weight: 700;
    text-align: center;
    margin: 0 0 2rem;
}

@media screen and (max-width: 640px) {
/* 640pxまでの幅の場合に適応される */
#student-voice {
    padding: 1rem 0 2rem;
}
.student-voice-ttl {
    font-size: 2rem;
}
.fukidashi-left, .fukidashi-right {
    border-radius: 8px;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    padding: 2rem;
}
.fukidashi-left:after{
	top: 100%;
	right: 0%;
	left: 50%;
	border-right-color: transparent;
	border-top-color: rgba(255, 255, 255, 1);
	margin-top: 0px;
	margin-left: -10px;
	border-width: 10px;
}
.fukidashi-right:after {
	top: 100%;
	right: 0%;
	left: 50%;
	border-right-color: transparent;
	border-top-color: rgba(255, 255, 255, 1);
	margin-top: 0px;
	margin-left: -10px;
	border-width: 10px;
}

.student-voice-ttl2,.student-voice-ttl2 span{
    font-size: 2rem;
    margin: 2rem 0 0;
}
.voice-area {
    padding: 0;
}
}

/*---------------------------------------------------------
偏差値40からでも志望校に逆転合格できる理由とは？
---------------------------------------------------------*/
#reason-reversal{
    padding: 0 0 4rem;
    background: repeating-linear-gradient( -45deg, #daedf7, #daedf7 10px, #e2f0f7 0, #e2f0f7 20px );
}
.ex-keio{
    background: #badff3 url(../img/reason-reversal/reason-reversal-pct03.png);
    background-repeat: no-repeat;
    height: 130px;
    font-size: 3rem;
    font-weight: 700;
    line-height: 1.3;
    background-size: 250px auto;
    display: flex;
    align-items: center;
    justify-content: center;
}
.keio-univBox{
    margin: 3rem 0;
    border: 2px solid #001e5c;
    background: #fffaeb;
}
.keio-univ-h3{
    background: #001e5c;
    padding: 1rem;
    color: #fff;
    font-size: 2rem;
    font-weight: 700;
    border-bottom: 5px solid #d81f18;
}

.keio-univ-h3 span{
    color: #ffcf00;
    font-size: 2.75rem;
}
.keio-univBox-contents{
padding:2rem 2rem;
}
.Lavel-tasaku{
    display: inline-block;
    background: #fff;
    padding: 0.25rem 1.5rem;
    border: 1px solid #007440;
    color: #007440;
    border-radius: 50vh;
    margin: 0 0 1rem;
    font-size: 1.25rem;
}
dl.infoBox{
  display:flex;
  flex-wrap: wrap;
  border: 1px solid #ccc;
  border-top: none;
}
.infoBox dt{
  background: #001e5c;
  width: 25%;
  padding: .5rem;
  box-sizing: border-box;
  border-top: 1px solid #ccc; 
  font-size: 1.4rem;
    color: #fff;
}
.infoBox dd{
  padding: .5rem;
  margin: 0;
  border-left: 1px solid #ccc;
  border-top: 1px solid #ccc; 
  width: 75%;
  background: #fff;
  box-sizing: border-box;
  font-size: 1.4rem;
}

.univ-h4{
    font-size: 2.25rem;
    font-weight: 700;
    margin: 1rem 0.5rem;
    color: #d81f18;
}

@media screen and (max-width: 820px) {
/* 820pxまでの幅の場合に適応される */
.ex-keio{
height: 110px;
font-size: 2.5rem;
background-size: 230px auto;
justify-content: flex-end;
padding: 0 1rem 0 1rem;
}
}

@media screen and (max-width: 640px) {
/* 640pxまでの幅の場合に適応される */
.keio-univBox {
    margin: 2rem 0;
}
.ex-keio{
background-image: none;
    font-size: 2rem;
    height: auto;
    padding: 1rem;
}
.keio-univ-h3{
font-size: 1.6rem;
}
.keio-univ-h3 span {
    font-size: 2.25rem;
}
.keio-univBox-contents {
    padding: 1rem;
}
.univ-h4 {
    font-size: 1.75rem;
    line-height: 1.5;
}
}

/*---------------------------------------------------------
オンライン家庭教師WAMでは
志望大学・学部に特化した指導をします！
---------------------------------------------------------*/
#onl-specialize{
    padding: 0 0 8rem;
    background: repeating-linear-gradient( -45deg, #e6e4ed, #e6e4ed 10px, #ebebed 0, #ebebed 20px );
}

@media screen and (max-width: 820px) {
/* 820pxまでの幅の場合に適応される */

}
@media screen and (max-width: 640px) {
/* 640pxまでの幅の場合に適応される */
#onl-specialize{
    padding: 0 0 3rem;
}
}

/*---------------------------------------------------------
Wam独自の5つの理由をご紹介します！
---------------------------------------------------------*/
#reason-univ{
    padding: 0 0 1rem;
    background: repeating-linear-gradient( -45deg, #fff7e2, #fff7e2 10px, #fffaec 0, #fffaec 20px );
}
.arrow-ttl{
    padding: 2rem 1rem;
    background-color: #006F4F;
    text-align: center;
    font-weight: 700;
    line-height: 1.4;
    color: #fff;
    font-size: 3.2rem;
    position: relative;
    margin: 0 0 6rem;
}

.arrow-ttl:before{
    content: "";
    position: absolute;
    z-index: 2;
    border-style: solid;
    bottom: -30px;
    left: 0;
    border-width: 30px 20px 0 20px;
    border-color: #006F4F transparent transparent transparent;
    left: 50%;
    margin-left: -20px;
}

.arrow-ttl h2{
    font-size: 4rem;
}
.big-text{
    font-size: 5rem;
}
.arrow-subttl{
    font-size: 2.5rem;
}
.voice-box {
    border: 1px solid #006f4f;
}
.reason-univArea{
    margin: 0 0 8rem;
}
.reason-univArea h2 {
display: flex;
align-items: center;
margin: 0 0 3rem;
}
.reason-univArea h2:before,
.reason-univArea h2:after {
border-top: 2px solid #006f4f;
content: "";
flex-grow: 1;
}
.reason-univArea h2:before {
margin-right: 1rem;
}
.reason-univArea h2:after {
margin-left: 1rem;
}
.reason-univArea h2 span{
    position: relative;
    width: 60px;
    height: 60px;
    background: #006f4f;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 3.5rem;
    color: #fff;
    font-weight: 700;
    margin: 0 5px;
}
.reason-univArea h3{
    text-align: center;
    margin: 0 0 2rem;
}
.reason-univArea h3 span{
    font-size: 3.5rem;
}

/* 塾・予備校とWamの比較 */
.ComparisonBox{
    padding: 6rem 0 0;
}
.ComparisonBox h3{
    background: #006f4f;
    padding: 2rem 0;
    color: #fff;
    text-align: center;
    font-size: 2.5rem;
    font-weight: 500;
    border-radius: 12px 12px 0px 0px;
    -webkit-border-radius: 12px 12px 0px 0px;
    -moz-border-radius: 12px 12px 0px 0px;
    margin: 0;
}

.ComparisonContents {
    background: #fff;
    padding: 4rem 2rem;
    border-radius: 0px 0px 12px 12px;
    -webkit-border-radius: 0px 0px 12px 12px;
    -moz-border-radius: 0px 0px 12px 12px;
    text-align: center;
    box-shadow: 8px 9px 10px -12px rgb(0 0 0 / 80%);
}
.Contents-shadowBox{
   margin: 4rem 0 0;
    background: #fff;
    padding: 2rem 4rem;
    box-shadow: 8px 9px 10px -12px rgb(0 0 0 / 80%);
    border-radius: 12px;
}

/* 吹き出し */
.arrow-left,.arrow-right{
    position:relative;
    background:#EEFFF4;
    padding:2rem;
    color: #006f4f;
    text-align:center;
    border:2px solid #006F4F;
    font-size:1.8rem;
    font-weight:700;
    border-radius:10px;
    -webkit-border-radius:10px;
    -moz-border-radius:10px;
}
.arrow-left:after,.arrow-left:before{
    border: solid transparent;
    content:'';
    height:0;
    width:0;
    pointer-events:none;
    position:absolute;
    top:50%;
}
.arrow-left:after{
    border-color: rgba(238, 255, 244, 0);
    border-top-width:20px;
    border-bottom-width:20px;
    border-left-width:21px;
    border-right-width:21px;
    margin-top: -20px;
    border-right-color: #006f4f;
    right:100%;
}
.arrow-left:before{
    border-color: rgba(0, 111, 79, 0);
    border-top-width:22px;
    border-bottom-width:22px;
    border-left-width:23px;
    border-right-width:23px;
    margin-top: -22px;
    margin-right: 2px;
    border-right-color:#006F4F;
    right:100%;
}
.arrow-right:after,.arrow-right:before{
    border: solid transparent;
    content:'';
    height:0;
    width:0;
    pointer-events:none;
    position:absolute;
    left:100%;
    top:50%;
}
.arrow-right:after{
    border-color: rgba(238, 255, 244, 0);
    border-top-width:20px;
    border-bottom-width:20px;
    border-left-width:21px;
    border-right-width:21px;
    margin-top: -20px;
    border-left-color:#006F4F;
}
.arrow-right:before{
    border-color: rgba(0, 111, 79, 0);
    border-top-width:22px;
    border-bottom-width:22px;
    border-left-width:23px;
    border-right-width:23px;
    margin-top: -22px;
    margin-left: 2px;
    border-left-color:#006F4F;
}

.Cycle-ttl{
    background: #006f4f;
    padding: 1.5rem 1rem;
    color: #ffff00;
    font-size: 2rem;
    border-radius: 12px;
    margin: 2rem 2rem 3rem;
    font-weight: 700;
}
dl.Cycle-box {
    display: flex;
    flex-wrap: wrap;
    border: 1px solid #ccc;
    border-top: none;
    margin: 4rem 2rem;
}
.Cycle-box dt {
    background: #dfdfdf;
    width: 15%;
    padding: 1rem;
    box-sizing: border-box;
    border-top: 1px solid #ccc;
    color: #006f4f;
    font-weight: 700;
}
.Cycle-box dd {
    padding: 10px;
    margin: 0;
    border-left: 1px solid #ccc;
    border-top: 1px solid #ccc;
    width: 85%;
    background: #fff;
    box-sizing: border-box;
    font-weight: 700;
}

@media screen and (max-width: 820px) {
/* 820pxまでの幅の場合に適応される */
.big-text {
    font-size: 4rem;
}
.reason-univArea h3 span {
    font-size: 3rem;
}
}

@media screen and (max-width: 640px) {
/* 640pxまでの幅の場合に適応される */
#reason-univ{
    padding: 0 0 1rem;
}
.arrow-ttl {
    margin: 0 0 4rem;
}
.arrow-subttl {
    font-size: 1.5rem;
}
.arrow-ttl h2 {
    font-size: 2.5rem;
}
.big-text {
    font-size: 3rem;
}
.reason-univArea{
    margin: 0 0 3rem;
}
.reason-univArea h2 {
    margin: 0 0 1rem;
}
.reason-univArea h2 span {
    width: 40px;
    height: 40px;
    font-size: 2.5rem;
    margin: 0 4px;
}
.reason-univArea h3 {
    margin: 0 0 1rem;
}
.reason-univArea h3 span {
    font-size: 2rem;
    line-height: 1.5;
}
.ComparisonBox {
    padding: 2rem 0 0;
}
.ComparisonBox h3 {
    padding: 1rem 0;
    text-align: center;
    font-size: 1.5rem;
    margin: 0;
}
.ComparisonContents {
    padding: 2rem 1rem;
}
.Contents-shadowBox {
    margin: 2rem 0 0;
    background: #fff;
    padding: 1rem 1.5rem;
    border-radius: 8px;
}
.arrow-left, .arrow-right {
    padding: 1rem;
    font-size: 1.6rem;
    margin: 1rem 0 2rem;
}
.arrow-left:after,.arrow-left:before,.arrow-right:after,.arrow-right:before{
    border: solid transparent;
    content:'';
    height:0;
    width:0;
    pointer-events:none;
    position:absolute;
    bottom:100%;
    left:50%;
    right: 0%;
    top: -21px;
}
.arrow-left:before,.arrow-right:after{
    border-color: rgba(238, 255, 244, 0);
    border-top-width:20px;
    border-bottom-width:20px;
    border-left-width:21px;
    border-right-width:21px;
    margin-left: -21px;
    border-bottom-color:#006F4F;
}
.arrow-left:before,.arrow-right:before{
    border-color: rgba(0, 111, 79, 0);
    border-top-width:21px;
    border-bottom-width:21px;
    border-left-width:23px;
    border-right-width:23px;
    margin-left: -21px;
    margin-bottom: 2px;
    border-bottom-color:#006F4F;
}
.Cycle-ttl {
    padding: 1rem 0.5rem;
    font-size: 1.6rem;
    margin: 0 0 2rem !important;
    line-height: 1.3;
}
dl.Cycle-box {
    margin: 2rem 1rem 0.5rem;
}
.Cycle-box dt {
    width: 25%;
    font-size: 1.4rem;
}
.Cycle-box dd {
    width: 75%;
    font-size: 1.4rem;
}
}

/*---------------------------------------------------------
逆転合格をつかみ取りましょう
---------------------------------------------------------*/
.victoryBox{
    background: #ffff00;
    padding: 2rem 1rem 1rem;
    text-align: center;
    border-top: 10px solid #006f4f;
    border-bottom: 10px solid #006f4f;
}

.victoryBox p{
    font-size: 3rem;
    font-weight: 700;
    line-height: 1;
}
.victoryBox-catch{
    font-size: 4rem;
    font-weight: 900;
}
.victoryBox-catch span{
    font-size: 5rem;
    color: #d01c24;
}
@media screen and (max-width: 640px) {
/* 640pxまでの幅の場合に適応される */
.victoryBox p{
    font-size: 2rem;
}
.victoryBox-catch{
    font-size: 3rem;
}
.victoryBox-catch span{
    font-size: 4rem;
}
}

/*---------------------------------------------------------
Wamで逆転合格を勝ち取った生徒さんの体験談
---------------------------------------------------------*/
#voice_s_univ{
padding: 0 0 6rem;
    background: repeating-linear-gradient( -45deg, #ffe6e6, #ffe6e6 10px, #ffeaea 0, #ffeaea 20px );
}
.voice_s_univ-inner{
margin: 4rem 0;
}
.box2-culum{
    background: #fff;
    padding: 1rem !important;
    margin: 1%;
}
.voice_s_univ-box{
display: flex;
flex-direction: column
}
.voice_s_univ-box li{
padding:1%;
}
.voice_s_univ-box > li > h3{
text-align: center;
}
.voice_s_univ-box h3 span{
color: #006f4f;
    font-size: 2rem;
    font-weight: 700;
    background: linear-gradient(transparent 70%, #ffef92 0%);
}
.voice_s_univ-box > li > img{
display: block;
    margin-left: auto;
    margin-right: auto;
    max-width: 100%;
}
.voice_s_univ-bg{
background: url(../img/voice_s_univ/voice_s_univ-Bg.png) no-repeat center center;
height: 75px;
    display: flex;
    align-items: center;
    padding: 0.5rem 1rem;
    color: #fff;
    font-weight: 700;
    background-size: contain;
    line-height: 1.1;
}
.voice_s_univ-name{
font-size: 2.25rem;
    font-weight: 700;
}

.swiper-container02 {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1;
}
@media screen and (max-width: 640px) {
/* 640pxまでの幅の場合に適応される */
#voice_s_univ {
    padding: 0 0 1rem;
}

.voice_s_univ-inner{
margin: 2rem 0;
}

.text-box2-culum {
    margin: 1% auto;
    width: 95%;
}
.voice_s_univ-box li {
    padding: 1% 0;
}
.voice_s_univ-bg{
padding: 1rem;
}
.voice_s_univ-box h3 span {
    font-size: 1.75rem;
}

}

/*---------------------------------------------------------
集団塾・予備校・家庭教師との違い！
---------------------------------------------------------*/
#difference{
    background: repeating-linear-gradient( -45deg, #ffe5d4, #ffe5d4 10px, #ffe0cd 0, #ffe0cd 20px );
    padding: 0 0 3rem;
}

@media screen and (max-width: 640px) {
/* 640pxまでの幅の場合に適応される */
#difference {
    padding: 0 0 2rem;
}
}

/*---------------------------------------------------------
比較ひょう
---------------------------------------------------------*/

/*比較表*/
table#table-culums {
  /*border: 1px solid #d4d4d4;*/
  border-collapse: collapse;
  margin: 0;
  padding: 0;
  table-layout: fixed;
  width: 100%;
  border-radius: 0px;
  margin-bottom: 1rem;
    font-weight: 400;
}
table#table-culums th {
  background: #888888;
  border: 1px solid #d4d4d4;
  padding: 1rem;
  font-weight: 900;
}
table#table-culums td {
  background: #d9edf6;
  border: 1px solid #d4d4d4;
  padding: 2rem 1rem;
}

table#table-culums th,table#table-culums td{
    font-size: 2rem;
    line-height: 1.2;
}

  table#table-culums td:first-child{
  background: #888888; 
  text-align: center;
  font-weight:900;
  color:#fff;
  }


.th_w10{width:10%;}
.th_w15{width:15%;}
.th_w18{width:18%;}
.th_w22{width:22%;}
.th_w25{width:25%;}
.th_w35{width:35%;}

.schedule-number{
color:#000;
font-weight:700;
}


.table-grad {
    position: relative !important;
    white-space: nowrap;
}

.table-grad:after{
    background-image: none;
}

.bg-wam{
background: #c0dac0 !important;
}

.th-wam{
    background: #006f4f !important;
    color: #fff;
    text-align: center;
}
.th-other{
    background: #0287c1 !important;
    color: #fff;
    text-align: center;
}

.maru,.batsu,.sankaku{
    height: 80px;
    background-size: contain !important;
    display: flex;
    align-items: center;
    justify-content: space-around;
    line-height: 1.2;
}
.maru{
background: url(../assets/img/difference/bg-maru.png) no-repeat center center;
}
.batsu{
background: url(../assets/img/difference/bg-batsu.png) no-repeat center center;
}
.sankaku{
background: url(../assets/img/difference/bg-sankaku.png) no-repeat center center;
}

@media screen and (max-width: 1440px) {
/* 1440pxまでの幅の場合に適応される */

}
@media screen and (max-width: 1024px) {
/* 1024pxまでの幅の場合に適応される */

}
@media screen and (max-width: 768px) {
/* 768pxまでの幅の場合に適応される */
.text-center_questionnaire {	text-align: left;}
  table#table-culums thead {
    display: none;
  }
  table#table-culums tr {
    /*border-bottom: 1px solid #e6ebef;*/
    display: block;
  }
table#table-culums th,
table#table-culums td {
  font-size: 1.75rem;
}
table#table-culums td .fs-small {
  font-size: 1.25rem;
}
  table#table-culums td {
    border-bottom: 0px solid #e6ebef;
    display: block;
  }
  table#table-culums td:first-child{
  background: #888888; 
  text-align: center;
  font-weight:900;
  font-size:1.6rem;
  color:#fff;
  }
  table#table-culums td:before {
    content: attr(aria-label);
    display: block;
    color: #333;
	font-weight:900;
  }
  
  table#table-culums tr:last-child{
  border-bottom: 1px solid #e6ebef;
  }
  
  table#table-culums td.b_blue{
  border-bottom:0px solid #5488c7;
}
}
@media screen and (max-width: 640px) {
/* 640pxまでの幅の場合に適応される */
table#table-culums td .fs-small {
  font-size: 1rem;
}
.list01 {
  padding-left: 2rem;
}

.t1-left{
    font-size: 1.6rem;
    margin-bottom: 1rem;
}

.hikaku-box{
  flex-direction: row;
}
.hikaku-txt{
width:68%;
}
}

/*---------------------------------------------------------
CV
---------------------------------------------------------*/
.contact-area{
    padding: 8rem 0;
}
.contact-area h2{
    font-size: 3rem;
    font-weight: 700;
    margin: 0 0 2rem;
    text-align: center;
}
.contact-area img{
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 80%;
    max-width: 800px;
}
.guarantee-box{
    border: 5px solid #8d8034;
    outline: 2px solid #8d8034;
    outline-offset: -12px;
    padding: 4rem 5rem;
    margin: 3rem 0 0;
}
.guarantee-box h3{
    font-size: 5.2rem;
    font-weight: 700;
    text-align: center;
    margin: 0 0 2rem;
    color: #8d8034;
}


@media screen and (max-width: 640px) {
/* 640pxまでの幅の場合に適応される */
.contact-area {
    padding: 3rem 0;
}
.contact-area h2 {
    font-size: 2rem;
}
.contact-area h3{
    font-size: 2rem;
}
.contact-area img {
    width: 100%;
}
.guarantee-box {
    padding: 3rem 2rem;
    margin: 3rem 0 0;
}
.guarantee-box h3{
    font-size: 3rem;
}
}

/*---------------------------------------------------------
お問い合わせ
---------------------------------------------------------*/
#main-cv{
    padding: 8rem 0;
}
.main-cv{
    border: solid 5px #d71c24;
    padding: 2rem 4rem;
    border-radius: 20px;
    background: linear-gradient(135deg, #fff, #eee);
}
.main-cv > .section-cv-area{
    background: transparent;
}
.main-cv h2{
    font-size: 4rem;
    text-align: center;
    font-weight: 700;
    margin: 3rem 0;
    line-height: 1.2;
    color: #d71c24;
}

.main-cv h3{
    font-size: 2.5rem;
    text-align: center;
    font-weight: 700;
}

.main-cv-list li {
    position: relative;
    font-size: 1.8rem;
    font-weight: 700;
    margin-bottom: 0.25rem;
    padding-left: 32px;
    padding-bottom: 0% !important;
    padding-top: 0% !important;
}

.main-cv-list li:before {
    position: absolute;
    content: "";
    background: 100% / 100% url(../assets/img/cv/0801.svg) no-repeat;
    width: 22px;
    height: 20px;
    top: 0.8rem;
    left: 0rem;
}

.main-cv-listbox{
    width: 80%;
    margin: 0 auto;
    padding: 2rem 0;
    align-items: center;
}
@media screen and (max-width: 820px) {
/* 820pxまでの幅の場合に適応される */
.main-cv h2 {
    font-size: 3rem;
}
.main-cv h3 {
    font-size: 2rem;
}
}
@media screen and (max-width: 640px) {
/* 640pxまでの幅の場合に適応される */
#main-cv{
    padding: 3rem 0;
}
.main-cv{
    border: solid 5px #d71c24;
    padding: 1rem 1rem;
    border-radius: 12px;
}
.main-cv h2{
    font-size: 2rem;
    margin: 1rem 0;
}

.main-cv h3{
    font-size: 1.5rem;
    line-height: 1.5;
}

.main-cv-listbox{
    width: 100%;
    margin: 0 auto;
    padding: 2rem 0;
}
.main-cv-list li {
    margin-bottom: 0.25rem;
    padding-left: 32px;
    padding-bottom: 0% !important;
    padding-top: 0% !important;
}
.main-cv-list li:before {
    top: 0.8rem;
    left: 0rem;
}
}

.check-box-list{
margin:0 0 2vh
}
.check-box-list > li{
    position: relative;
    padding: 0 1rem 0 0;
    font-weight: 700;
    font-size: clamp(1.6rem, 2vw, 2rem);
}
.check-box-list > li:before{
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: '\f14a';
  color: #007440;
  margin: 0 5px 0 0;
}

/*---------------------------------------------------------
CTAボタンエリア20240705
---------------------------------------------------------*/
.section-cv-area{
    padding: 4vh 0 4vh;
    background: #F2FCE6;
}
body[data-cat="campaign-course"] .section-cv-area{
    padding: 4vh 0 6vh;
    background: #F2FCE6;
}
body[data-cat="campaign-start"] .section-cv-area{
    padding: 4vh 0 6vh;
    background: #F2FCE6;
}

.w-800{
    width:95% !important;
    max-width:850px;
    margin:0 auto;
}
.fc-red{
    color: #D00000;
}
.mb-3{
    margin-bottom:3vh;
}
.cta-btnArea-all{
    display: flex;
}
.cta-btnArea-all > li{
    width:calc(100% / 2);
    margin: 2% 2% 2% 0;
}
.cta-btnArea-all > li:last-child{
    margin: 2% 0 2% 0;
}
.cta-areaBox{
    color: #000;
    font-weight:700;
    margin: 0 0 1vh;
    font-size: clamp(2rem, 5vw, 3.5rem);
    text-align: center;
}
.cta-areaBox-ttl-big{
    font-size: clamp(3rem, 7vw, 5rem);
}
.cta-areaBox > p {
    font-size: clamp(2.25rem, 6vw, 4rem);
    line-height: 1;
}
.cta-btnBox02,
.cta-btnBox > a{
    color: #fff !important;
    text-decoration: none !important;
    font-weight: 700;
    display: block;
    padding: 2vh 1vw 2vh 50px;
    border-radius: 12px;
    position: relative;
    line-height: 1.1;
    box-shadow: 0px 4px 6px 0px rgba(0, 0, 0, 0.4);
    text-align: center;
}
.cta-btnBox > a{
    font-size: clamp(1.4rem, 3vw, 2.5rem);
}

.cta-comment{
    position: absolute;
    top: 50%;
    left: 10px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    border: 1px solid #fff;
    border-radius: 50vh;
    width: 60px;
    height: 60px;
    font-size:.6rem;
    background: #fff;
}
.cta-comment-inquiry{
    left: 25%;
}
.cta-comment > span{
position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
.cta-comment-number{
    font-size: 1.4rem;
}
.cta-btnBox-txt-big{
    font-size: clamp(2rem, 6vw, 3.5rem);
}
.cta-btnBox > a:after,
.cta-btnBox02:after{
    font-family: "Font Awesome 5 Free";
    font-display: swap;
    content: "\f105";
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
.highlight{
position: absolute;
    border-radius: 100px;
    width: 100%;
    height: 30%;
    top: 0px;
    left: 0;
    background: linear-gradient(to bottom, rgba(250, 250, 255, 0.9) 10%, rgba(250, 250, 255, 0.3) 100%);
}
.cta-btn_inquiry{
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ff0000), color-stop(100%, #e00303));
  background-image: -moz-linear-gradient(top, #ff0000, #e00303);
  background-image: -webkit-linear-gradient(top, #ff0000, #e00303);
  background-image: linear-gradient(to bottom, #ff0000, #e00303);
  box-shadow:
		0 2px 6px rgba(0,0,0,0.5),
		0 2px 10px rgba(0,100,255, 0.7);
  border-color: #ff0000;
  border:2px solid #ff0000;
}
.cta-btn_inquiry:hover{
  background:#fff;
  color:#ff0000 !important;
}
.cta-btn_inquiry .cta-comment{
  color:#ff0000;
}
.cta-btn_inquiry:hover .cta-comment{
border:1px solid #ff0000;
}

.cta-btn_online_inquiry{
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ff0000), color-stop(100%, #e00303));
  background-image: -moz-linear-gradient(top, #ff0000, #e00303);
  background-image: -webkit-linear-gradient(top, #ff0000, #e00303);
  background-image: linear-gradient(to bottom, #ff0000, #e00303);
  box-shadow: 0px 2px 0px #e00303;
  border-color: #ff0000;
  border:2px solid #ff0000;
}
.cta-btn_online_inquiry:hover{
  background:#fff;
  color:#ff0000 !important;
}
.cta-btn_online_inquiry .cta-comment{
  color:#ff0000;
}
.cta-btn_online_inquiry:hover .cta-comment{
border:1px solid #ff0000;
}
.cta-btn_trial{
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ff9d00), color-stop(100%, #e58905));
  background-image: -moz-linear-gradient(top, #ff9d00, #e58905);
  background-image: -webkit-linear-gradient(top, #ff9d00, #e58905);
  background-image: linear-gradient(to bottom, #ff9d00, #e58905);
  box-shadow: 0px 2px 0px #e58905;
  border-color: #ff9d00;
  border:2px solid #ff9d00;
}
.cta-btn_trial:hover{
  background:#fff;
  color:#ff9d00 !important;
}
.cta-btn_trial .cta-comment{
  color:#ff9d00;
}
.cta-btn_trial:hover .cta-comment{
border:1px solid #ff9d00;
}

.cta-btn_tuition{
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #27ae60), color-stop(100%, #079945));
  background-image: -moz-linear-gradient(top, #27ae60, #079945);
  background-image: -webkit-linear-gradient(top, #27ae60, #079945);
  background-image: linear-gradient(to bottom, #27ae60, #079945);
  box-shadow: 0px 2px 0px #079945;
  border-color: #27ae60;
  border:2px solid #27ae60;
}
.cta-btn_tuition:hover{
  background:#fff;
  color:#27ae60 !important;
}
.cta-btn_tuition .cta-comment{
  color:#27ae60;
}
.cta-btn_tuition:hover .cta-comment{
border:1px solid #27ae60;
}
.cta-btn_tel{
    padding: .5vh .5vw;
    margin: 1vh 0 0;
    display: flex;
    justify-content: center;
  background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #fff), color-stop(100%, #efefef));
  background-image: -moz-linear-gradient(top, #fff, #efefef);
  background-image: -webkit-linear-gradient(top, #fff, #efefef);
  background-image: linear-gradient(to bottom, #fff, #efefef);
  border-color: #efefef;
  border:2px solid #fff;
  color:#007440;
}
.cta-btn_tel:after{
    color: #007440 !important;
        font-size: clamp(1.4rem, 3vw, 2.5rem);
}
.cta-btn_tel a{
    text-decoration: none !important;
    line-height: 1;
}
.school-tel-txt-box{
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 3vh 0 0;
}
.p-framecolumn__box_item--tel{
    justify-content: center !important;
    margin: 2vh 0 0 !important;
}
.p-framecolumn__box_item--tel-num p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: end;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
    padding: 1.5vh 0 1vh;
}

.p-framecolumn__box_item--tel-num p small {
  width: 100%;
  font-size: clamp(1rem, 2vw, 1.6rem);
      color: #007440;
}

.p-framecolumn__box_item--tel-num p i {
    width: calc(90 / 14* 1em);
}

.p-framecolumn__box_item--tel-num p strong {
    font-size: clamp(2rem, 7vw, 5rem);
  letter-spacing: -0.05em;
    color: #007440;
}
@media screen and (max-width: 912px) {
/* 912pxまでの幅の場合に適応される */
.school-tel-txt-box{
    flex-direction: column;
}
.school-tel-txt-box > div{
    margin: 0 0 2vh;
}
.p-framecolumn__box_item--tel-num p i {
    width: calc(60 / 16* 1em);
}
}
@media screen and (max-width: 640px) {
/* 640pxまでの幅の場合に適応される */
.cta-btnArea-all > li > p > a{
        padding: 1vh 0 1vh 25px !important;
}
.cta-comment{
    width: 35px;
    height: 35px;
    font-size:.4rem;
}
.cta-comment-number{
    font-size:.8rem;
}
.cta-comment-inquiry{
    left: 15%;
}
.p-framecolumn__box_item--tel-num p i {
    width: calc(35 / 16* 1em);
}
}