@charset "utf-8";
/*
Theme Name: 個別指導のWAM 2022 メインテーマ
Theme URI: http://www.k-wam.jp/
Description: 2022.05.01
Version: 2.0
Tags:
-------------------------------------------------------------- */
.marker_y{background:linear-gradient(transparent 70%, rgba(245, 187, 77, 0.4) 80%);}
.marker_g{background: linear-gradient(transparent 70%, rgba(2, 131, 71, 0.2) 80%);}
.marker_b{background: linear-gradient(transparent 70%, rgba(45, 152, 218, 0.2) 80%);}
.marker_p{background: linear-gradient(transparent 70%, rgba(251, 92, 101, 0.2) 80%);}

/* フローティングバナー 追加設定*/
.p-aside__btn{
    display: none;  /* 最初は隠す。jsでスクロール検知したら表示する。 */
}

/* トップページ 合格体験記 */
.p-archive__voice.is_slide .p-archive__voice_box_item--sch.has_passing_school_info {
display: block;
}
.p-archive__voice_box_item--sch.has_passing_school_info .p-archive__voice_box_item--sch-txt {
padding: 0 0.5em;
}
.p-archive__voice_box_item--prf-txt-name .graduated_school{
    margin-top: 0.5em;
    line-height: 1.2em;
}
/* 教室ページ WAMの特徴 */
.p-usp__box_item--txt-description {
    margin-top: 20px;
    line-height: 1.3;
}
.p-usp__box_item--txt-description p{
    margin-top: 1em;
}
/* 近隣の教室 */
.near_area{
	margin: 0 auto 1.5em !important;
}
.near_area_name {
    text-align: left;
	margin-bottom: 0.8em !important;
	font-weight:bold;
}

/* 高校情報 */
.highschools_internal_links{margin:2rem auto;}
.l-wrapper.is_junior .p-btn__type01 ul li a.details{
    height: 75%;
    margin: auto;
}
@media screen and (max-width: 768px) {
    .l-wrapper.is_junior .p-btn__type01 ul li a.details{
        height: 100%;
        margin: auto;
    }  
}

/* 季節講習ページ */
h1.h1_small{color:#007440;font-size: 1.2rem;text-align: center;margin-top: 2rem;}
h1.h1_small.lower{margin-bottom: 1.5rem;}
h1.font_pink{color:#FB5C65;}
h1.font_blue{color:#2D98DA;}
h1.font_lgreen{color:#27AE60;}

h1.page_front{
    font-size: 2rem;
    color:#007440;
    text-align: center;
    padding: 3rem 0 1vh;
    line-height: 3rem;
}
h1.page_regular{
    font-size: 2rem;
    text-align: center;
    padding: 3rem 0 1vh;
    line-height: 3rem;
}
@media screen and (max-width: 768px) {
    h1.page_front,h1.page_regular{
        font-size: 1.4rem;
        padding: 1.5rem 0 0;
    }
    h1.h1_small{font-size: 1rem;}
}
.emphasis_txt {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    line-height: 1;
    font-size: 1.2rem;
    font-weight: bold;
  }
.emphasis_txt.pink{
color: #FB5C65;
}
.emphasis_txt.blue{
color: #2D98DA;
}
.emphasis_txt::before,.emphasis_txt::after {
    width: 1px;
    height: 1em;
    content: "";
  }
.emphasis_txt.pink::before,.emphasis_txt.pink::after {
background-color: #FB5C65;
}
.emphasis_txt.blue::before,.emphasis_txt.blue::after {
    background-color: #2D98DA;
    }
.emphasis_txt::before{
    margin-right: 0.5em;
    transform: rotate(-30deg);
}
.emphasis_txt::after {
    margin-left: 0.5em;
    transform: rotate(30deg);
}
/* パンくずリスト */
@media screen and (max-width: 768px) {
    .p-breadcrumblist {
        display: unset !important;
    }
    .p-breadcrumblist .p-section{
        margin-top: 0.25rem !important;
        margin-bottom: 0.1rem !important;
    }

.p-breadcrumblist > .p-section > .p-section__inner > ol{
display:flex;
    overflow-x: scroll;
    word-break: keep-all;
    white-space: nowrap;
    flex-wrap: nowrap;
        padding: .5rem 0;
}
.p-breadcrumblist > .p-section > .p-section__inner > ol::-webkit-scrollbar {
    display: none;
  }
}

.p-breadcrumblist .p-section{
margin-top: 0.5rem;
}

.p-breadcrumblist ol {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 0.5em 2em;
  }
  
  .p-breadcrumblist ol li {
    position: relative;
    text-align:left;
  }
  
  .p-breadcrumblist ol li a {
    color: #007440;
    text-decoration: underline;
  }
  
  .p-breadcrumblist ol li a:hover {
    text-decoration: none;
  }
  
  .p-breadcrumblist ol li a::after,
  .p-breadcrumblist ol li span::after {
    display: inline-block;
    font-family: "FontAwesome";
    content: '\f105';
    font-weight: normal;
    color: initial;
    width: 1em;
    height: 1em;
    position: absolute;
    top: 0;
    right: -1.5em;
  }
  
  .p-breadcrumblist ol li strong {
    font-weight: bold;
  }

/* 教室一覧 */
.p-schoolindex__type01 .p-schoolindex__keyword {margin-top:3rem;}
.p-schoolindex__school_num{margin-bottom: 2rem;text-align:left;}
.school_num{color: #f75455; font-weight: bold;padding: 0.2rem;}
.about_school_area{margin:3rem auto 5rem;text-align: left;line-height: 1.5;padding:0 !important;}
.about_school_area h2{font-size:calc(20 / 16* 1.0em);color:#007440;border-bottom:solid 2px #007440;padding:0.5rem 0;margin-bottom: 1rem;}
.to_online_wam{ text-align: center; }
.bannar-to_online_wam{ margin: 2em auto; }
.p-bannar-to_online_wam{color:#007440;}
.p-table__box table tbody tr td.school_info_link a {
	display: flex;
	justify-content: center;
	align-items: center;
  position: relative;
	width: 100%;
	height: 3rem;
	color: #007440;
	text-decoration: none;
	transition: 0.3s;
  background-color: #fff;
  border-radius: 28px;
  border: solid 1px #007440;
  font-size: 0.9rem;
  padding: 0 1.5rem 0 0.8rem;
  text-align: center;
}
.p-table__box table tbody tr td.school_info_link a::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 1rem;
	transform: rotate(45deg) translateY(-50%);
	width: 6px;
	height: 6px;
	border-width: 1px 1px 0 0;
	border-style: solid;
	border-color: #007440;
}
.p-table__box table tbody tr td.school_info_link a:hover {color: #fff; background-color: #007440; border: solid 1px;}
.p-table__box table tbody tr td.school_info_link a:hover::after {border-color: #fff;}
@media screen and (max-width: 768px) {
  .about_school_area { padding: calc(20 / 16* 1em) !important; }
  .to_online_wam { padding: 0 !important; }
}
.p-table__box th strong a {text-decoration: underline;}	

/* 教室詳細  見出し変更に伴うスタイル再定義*/
article.single-school .p-explain__tit02 h1 {
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid #007440;
  text-align: center;
}
article.single-school .p-explain__tit02 h1 small {
  display: block;
  font-size: 21px;
  margin-bottom: 10px;
}
article.single-school .p-explain__tit02 h1 strong {
  display: block;
  font-size: 60px;
  font-weight: bold;
  color: #007440;
}
article.single-school .p-explain__tit02 h1 strong .icn-img {
  display: inline-block;
  vertical-align: middle;
}
article.single-school .p-explain__tit02 h1 strong .icn-img img {
  max-width: 75px;
}
@media screen and (max-width: 600px) {
  article.single-school .p-explain__tit02 h1 strong .icn-img img {
    max-width: 35px;
  }
}
@media screen and (max-width: 600px) {
  article.single-school .p-explain__tit02 h1 {
    padding-bottom: 15px;
    margin-bottom: 15px;
  }
  article.single-school .p-explain__tit02 h1 small {
    font-size: 14px;
    margin-bottom: 5px;
  }
  article.single-school .p-explain__tit02 h1 strong {
    font-size: 21px;
  }
}

/* 教室詳細：近くの教室 */

.p-nearbyschool__type01 .p-nearbyschool__box_item h3.p-nearbyschool__box_item--tit {
  font-size: 24px;
  padding-bottom: 0;
  font-weight: bold;
  color: #FB5C65;
  background: #FFF2F3 !important;
}
@media screen and (max-width: 600px) {
  .p-nearbyschool__type01 .p-nearbyschool__box_item h3.p-nearbyschool__box_item--tit {
    font-size: 20px;
  }
}

.p-nearbyschool__type01 .p-nearbyschool__box_item.is_junior h3.p-nearbyschool__box_item--tit {
  color: #2D98DA !important;
  background: #F4FAFF !important;
}

.p-nearbyschool__type01 .p-nearbyschool__box_item.is_high h3.p-nearbyschool__box_item--tit {
  color: #27AE60 !important;
  background: #F1F7F0 !important;
}
/* 高校情報詳細：近くの教室 */
.single-hs-nearby_school {text-align: left;}
.single-hs-nearby_school .p-tit{margin:1rem auto;}
.single-hs-nearby_school .p-nearbyschool__box_item{ padding:0 1rem;}
.city_schools ul{margin-left:1rem;}
.school_area_link{margin-bottom:0.5rem;}
.school_area_link.right{text-align:right;}
.school_area_link i {display:unset;color:#007440;margin-right:0.5rem;}
.city_schools{margin:1rem 0;}
.single-hs-nearby_school .p-nearbyschool__box_item{margin-bottom: 1rem;}
.single-hs-nearby_school .to_online_wam{margin-top:3rem;}
.single-hs-nearby_school .bannar-to_online_wam{width:60%;margin: 1rem auto;}
.single-hs-nearby_school .p-tit-to_online_wam{ font-weight:bold; color:#007440; }
@media screen and (max-width: 768px) {
    .single-hs-nearby_school .bannar-to_online_wam{width:100%;}
    .single-hs-nearby_school .p-bannar-to_online_wam{font-size:0.8rem;}
    .city_schools ul{margin-left:0;  display: inline-grid; column-gap: 2em; grid-template-columns: repeat(2, auto);}
}


.p-timetable__type01 .p-timetable__box table {text-align: center;}

/* 合格体験談リンク */
.part_result_links .lead_text{
    margin: 4em auto 1em;
}
@media screen and (max-width: 768px) {
    .part_result_links .lead_text{
        margin: 3em auto 1em;
    }
}
@media screen and (max-width: 600px) {
  .part_result_links .p-listbycourse__type01 .p-listbycourse__btn ul{
    padding-bottom: 0px;
  }
}


/* 季節講習リンク*/
.p-listbycourse.seasonal_training .p-listbycourse__tit{margin-bottom: 0;}
.seasonal_training_description{color: #007440;margin-bottom:1rem; }
.p-listbycourse.seasonal_training .p-listbycourse__btn{font-size:1.4rem;}
.is_spring{background: #FB5C65 !important;}
.is_summer{background: #27AE60 !important;}
.is_winter{background: #2D98DA !important;}


/* 教室を探すリンク */
.link_btn, .schoolsearch{width: 100%; max-width: 500px;margin: 3rem auto 0;}
.link_btn  a i, .schoolsearch a i{margin-right: 0.5rem;}
.link_btn a i.fa-angle-right, .schoolsearch a i.fa-angle-right{position: absolute; right: 1rem;}
.link_btn a, .schoolsearch a {
display: flex;
justify-content: center;
align-items: center;
position: relative;
width: 100%;
height: 4rem;
color: #007440;
text-decoration: none;
transition: 0.3s;
background-color: #fff;
border-radius: 4rem;
border: solid 1px #007440;
font-size: calc(18 / 16* 1rem);
font-weight:bold;
padding: 0 1.5rem 0 0.8rem;
text-align: center;
}
.link_btn a:hover , .schoolsearch a:hover {color: #fff; background-color: #007440; border: solid 1px;}
.link_btn a:hover::after, .schoolsearch a:hover::after {border-color: #fff;}
@media screen and (max-width: 768px) {
  .link_btn, .schoolsearch {padding: calc(20 / 16* 1rem);}
  .link_btn a, .schoolsearch a { height: calc(50 / 16* 1rem); font-size: calc(16 / 16* 1rem);}
}

/* 英検ページ */
.supText{
    font-size: 75.5%;
    vertical-align: top;
    position: relative;
    top: -0.1em;
}
.w-1200,.w-1000,.w-800,.w-600{
    margin:0 auto;
    width:95%;
}
.w-1200{max-width:1200px;}
.w-1000{max-width:1000px;}
.w-800{max-width:800px;}
.w-600{max-width:600px;}
.sel-box{padding:6vh 0;}
.sel-box-top{padding:6vh 0 0;}
.sel-box-bottom{padding:0 0 6vh;}
.t-c{text-align: center;}
.t-r{text-align: right;}
.mt-3{margin-top:3vh;}
.mt-4{margin-top:4vh;}
.mb-2{margin-bottom:2vh;}
.mb-3{margin-bottom:3vh;}
.mb-4{margin-bottom:4vh;}
.pt-1{padding-top:1vh;}
.pt-2{padding-top:2vh;}
.pb-1{padding-bottom:2vh;}
.pb-2{padding-bottom:2vh;}
.p-fs{font-size: clamp(1rem, 2.5vw, 1.1rem) !important;line-height:1.3;}
.lh-1{line-height:1;}
.lh-13{line-height:1.3;}
.fw{font-weight:700;}
.top-ttl,.semi-ttl{line-height:1.3;}
.ff-roboto{font-family: 'Roboto', sans-serif;}
.big-txt{font-size: clamp(2.5rem, 6vw, 4rem) !important;}
.top-ttl{font-size: clamp(1.3rem, 4vw, 2.75rem) !important;}
.semi-ttl{font-size: clamp(1.1rem, 2.5vw, 2rem) !important;}
.third-ttl{font-size: clamp(1rem, 2vw, 1.8rem) !important;}
.border-r50{border-radius: 50vh;}
.bk-naname{transform: skewX(-15deg);}
.cb {clear: both;}
.fc-eiken-red{color: #DA1C24;}
.fc-eiken-blue{color: #2D98DA;}
.fc-wam-green{color: #007440;}
.fc-white{color: #fff;}
.fc-l-gray{color: #95A5A6;}
.wam-green-bg{background: #007440;}
.wam-green-l-bg{background: #F9F9F3;}
.wam-green-l-bg02{background:rgba(0,116,64,0.2);}
.blue-l-bg{background: #F4FAFF;}
.blue-bg{background: #2D98DA;}
.blue-box{
    background: #fff;
    border: 2px solid #2D98DA;
    position: relative;
}
.check-list-blue{padding: 2vh 2vw;}
.check-list-blue > li{
    padding-left: 1.5em;
    position: relative;
    font-size: clamp(1rem, 1.5vw, 1.3rem);
    line-height: 1.3;
    font-weight: 700;
    color:#000;
    margin: 0 0 1vh;
}
.check-list-blue > li:before{
    display: inline-block;
    font-family: "Font Awesome 5 Free";
    content: '\f14a';
    margin-right: 0.5em;
    width: 1em;
    height: 1em;
    font-weight: 900;
    position: absolute;
    top: 0.1em;
    left: 0;
    color: #2D98DA;
}
.reason-area{
    position: relative;
    margin-top: 8vh;
}
.reason-area-number{
    display: flex;
    align-items: center;
    position: absolute;
    top: -40px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    font-weight: 700;
}
.reason-areaBox{
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
    background: #fff;
    margin: 0 0 6vh;
}
.reason-areaBoxTtl{
display: flex;
    align-items: center;
    padding: 6vh 0 0;
}
.reason-areaBoxNumber{
    display: flex;
    flex-direction: column;
    align-content: center;
    align-items: center;
    justify-content: center;
    width: 100px;
    height: 100px;
    margin: 0 2vw 0 0;
    padding: 1%;
        font-weight: 700;
}
.reason-areaBoxContents{
    padding: 4vh 4vw 3vw;
}
.voice-junior-highschool-box-ttl{
    font-size:.9rem !important;
}
.reason-06-img{
    height: 350px !important;
}
.reason-area-box-pct{
    float: right;
    margin-left: 2vw;
    margin-bottom: 3vh;
}
.price-box{
    border-collapse: collapse;
    border: 1px solid #D9D9D9;
    width:100%;
}
.price-box th, .price-box td{
    padding: 1rem;
    border-right: 1px solid #D9D9D9;
    text-align: center;
    font-weight: 700;
    width: 33.3%;
}
.price-box tr{
    border-bottom: 1px solid #D9D9D9;
}
.price-box tr:last-child,{
    border-bottom: 0px transparent;
}
.price-box th{
    background: #F5F5F5;
}
/* 受講までの流れ */
.flow-area-box{
    margin: 6vh 0 0;
}
.flow-area-box > h3{
    display: flex;
    align-items: center;
}
.flow-area-box > h3 >span{
    font-size: 1rem;
    padding: .5rem 1rem;
    margin-right: 1rem;
}
.step-flow-box{
    display: flex;
}
.step-flow-text{
    width: 65%;
    padding: 0 1rem 0 100px;
}
.step-flow-pct{
    width: 35%;
}

@media screen and (max-width: 640px) {
/* 640pxまでの幅の場合に適応される */
.reason-ttlBox{
    flex-direction: column;
}
.reason-ttlBox img{
    max-width: 100px;
    padding-right: 0;
}
.reason-areaBoxNumber{
    width: 60px;
    height: 60px;
}
.reason-area-box-pct{
    float: unset;
    margin-left: 0;
}
.reason-area-number{
    top: -15px;
}
.step-flow-box{
    flex-direction: column;
}
.flow-area-box > h3{
    flex-direction: column;
}
.flow-area-box > h3 >span {
    margin-right: 0;
    margin-bottom: 1rem;
}
.step-flow-text,.step-flow-pct{
    width: 100%;
}
.step-flow-text{
    order:2;
    padding: 2vh 0 0;
}
.step-flow-pct{
    order:1;
}
}

.eiken-fv-area{

}
.eiken-fv-area-bg{
    background-image: url(./assets_verprevious/img/course/eiken/eiken-bg-pc.png);
    width:100%;
    max-width:1200px;
    margin:0 auto;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    background-size: cover !important;
    position: relative;
    padding-top: 23%;
    height: 0;
}
.eiken-fv-area-contents{
    position: absolute;
    top: 50%;
    left: 80%;
    transform: translate(-75%, -50%);
    -webkit-transform: translate(-75%, -50%);
    -ms-transform: translate(-75%, -50%);
    white-space: nowrap;
}
.eiken-fv-area-contents-sub-ttl{
    background: #2D98DA;
    color: #fff;
    padding: 1vh 1.5vw;
    font-weight: 700;
    margin: 0 0 1vh;
    display: inline-block;
    font-size: clamp(1.3rem, 2.9vw, 2.75rem);
}
.eiken-fv-area-contents-ttl01,.eiken-fv-area-contents-ttl02{
font-weight:900;
--x: 0 0 var(--text-outline--width, 6px) 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 */;
      line-height: 1;
}
.eiken-fv-area-contents-ttl01{
    font-size: clamp(2.25rem, 7vw, 4rem) !important;
}
.eiken-fv-area-contents-ttl02{
    font-size: clamp(1.6rem, 5vw, 2.5rem);
}
.eiken-fv-br-tab{
    display: none;
}
@media screen and (max-width: 1200px) {
.eiken-fv-br-tab{
    display: block;
}
}
.nayami-pct{
    position: absolute;
    width: 18% !important;
    max-width: 150px !important;
    bottom: 6vh;
    right: 30%;
}
.voice-tearcher-area{
    background:#F5F5F5;
}
.voice-tearcher-area-box{
width: 90%;
    margin: 0 auto;
}
.voice-tearcher-box{
    background:#fff;
    padding:1rem;
    margin:0 1%;
    border-radius: 1.5vh;
}
.voice-tearcher-box-ttl{
    font-size: clamp(1rem, 2vw, 1rem) !important;
    text-align: center;
    line-height: 1.3;
    margin: 0 0 2vh;
    color: #0E9BD5;
}
.voice-tearcher-box-pct img{
    margin-left: auto;
    margin-right: auto;
    width: 80%;
}
.voice-tearcher-box-name{
    font-size: clamp(.9rem, 2vw, .9rem) !important;
    font-weight: 700;
    text-align: center;
    margin: 1vh 0 2vh;
}
.voice-tearcher-box-contents{
    line-height: 1.3;
}
@media screen and (max-width: 1400px) {
/* 1400pxまでの幅の場合に適応される */
.nayami-pct{
   right: 25%;
}
.eiken-fv-area-bg{
    padding-top: 30%;
}
}
@media screen and (max-width: 1024px) {
/* 1024pxまでの幅の場合に適応される */
.eiken-fv-area-bg{
    padding-top: 41%;
}
.nayami-pct{
   right: 15%;
}
}
@media screen and (max-width: 820px) {
/* 820pxまでの幅の場合に適応される */
.nayami-pct{
   right: 10%;
}
}
@media screen and (max-width: 640px) {
/* 640pxまでの幅の場合に適応される */
.eiken-fv-area-bg{
    background-image: url(./assets_verprevious/img/course/eiken/eiken-bg-sp.webp);
    padding-top: 71%;
}
.nayami-pct{
    display:none !important;
}
}
/*---------------------------------------------------------
合格体験記2025
---------------------------------------------------------*/
#consultation{
    padding: 4vh 0 6vh;
  background:url(./assets/img/common/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;
}
.voice-medal {
    width: 110px;
    height: auto;
    top: -20px;
}
#examination-Area-Voice{
    margin: 0 0 3vh;
}
#examination-Area-Voice h2{
    padding: 2.5vh 1vw;
    background: #a08200;
    outline: 1px solid rgb(255, 255, 255);
    outline-offset: -8px;
    border-radius: 0.5vw;
    margin: 0 auto;
    position: relative;
        line-height: 1.2;
}
#examination-Area-Voice h2 span{
    font-size: clamp(1.25rem, 3.5vw, 2rem);
    color: #fff;
    font-family: 'Noto Serif JP',serif;
    margin: 0 0 2vh;
    position: relative;
}

.voice-medal {
    position: absolute;
    width: 80px !important;
    height: auto;
    right: 0;
    top: -10px;
}
.exam-success-story-area{
padding: 0 2vw;
    max-width: 1200px;
    width: 90%;
    margin: 0 auto;
}
.exam-success-story .slick-prev{
    right: -15px;
} 
.exam-success-story .slick-next{
    left: -15px;
}
.exam-success-story-box{
background: #fff;
    padding: 2vh 2vw;
    margin: 1vh .5vw;
}
.exam-success-story-box-ttl{
    text-align: center;
    margin: 3vh 0;
}
.exam-success-story-box-ttl > span{
    color: #006f4f;
    font-weight: 700;
    background: linear-gradient(transparent 70%, #ffef92 0%);
        font-size: 18px;
        line-height: 1.3;
}
.exam-success-story-box-pct{

}
.exam-success-story-box-pct img{
    width: 50%;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.voice_s_univ-bg{
background: url(./assets/img/common/consultation/voice_s_univ-Bg.png) no-repeat left center;
height: 75px;
    display: flex;
    align-items: center;
    padding: 0.5rem 1rem;
    color: #fff;
    font-weight: 700;
    background-size: contain;
    line-height: 1.1;
    font-size: 18px;
}
.voice_s_univ-name{
font-size: 16px;
    font-weight: 700;
    margin: 0 0 3vh;
}
.voice_s_univ-name > span{
font-size: 12px;
}
.exam-success-story-box-contents > p{
line-height: 1.3;
font-size: 15px;
}




.price-col, .course-col{
    display: flex;
    gap:30px;
}
.price-col .cell,.course-col .cell{
    position: relative;
    max-width: 33%;
    width: 100%;
}
.price-col .cell:after, .course-col .cell:after{
    content: '';
    position: absolute;
    top: 0;
    right: -15px;
    width: 0;
    height: 100%;
    border-right: 1px dotted #ccc;
}
.price-col .cell:last-child:after,.course-col .cell:last-child:after{
    display: none;
}
.price-col .cell h3, .course-col .cell h3{
    text-align: center;
    padding: 5px;
    background: #F9F9F3;
}
.price-col .cell li {
    padding-bottom: 5px;
    margin-bottom: 5px;
    border-bottom: 1px dotted #ccc;
}
.price-col .cell li:last-child, .course-col .cell li:last-child{
    border-bottom: 0;
}
.price-col .cell dl {
    display: flex;
    padding: 10px;
    line-height: 1;
}
.price-col .cell dl dt {
    background: #007440;
    color: #fff;
    border-radius: 5px;
    padding: 10px 10px;
    font-size: 16px;
    display: inline-block;
    min-width: 100px;
    text-align: center;
    font-weight: bold;
}
.price-col .cell dl dd {
    padding: 5px 10px;
    font-weight: bold;
    font-size: 24px;
}
.price-col .cell dl dd small {
    font-size: 0.4em;
    font-weight: normal;
}

.course-col .cell h3{
    border-bottom: solid #007440;
    margin-bottom: 8px;
}
 .course-col .cell li{
    padding: 0 1em 8px;
    margin-bottom: 8px;
    border-bottom: 1px dotted #ccc;
}
.course-col .cell li {
    position: relative;
}
 .course-col .cell li:after {
    font-family: "FontAwesome";
    content: "\f105";
    position: absolute;
    top: 50%; 
    right: 1em;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
.course-col .cell li a{
    display: block;
    padding: 0 1em;
}

@media screen and (max-width: 640px) {
    .price-col, .course-col{
        display: flex;
        flex-wrap: wrap;
        gap:15px;
    }
    .price-col .cell, .course-col .cell{
        max-width: 100%;
        width: 100%;
    }
    .price-col .cell:after, .course-col .cell:after{
        display: none;
    }
}


/* ワム研 */
.p-blog__column_head--tit h1 {
  font-size: calc( 28 / 16 * 1em);
  line-height: 1.6;
  text-align: left;
}
.p-tit__head01 .wamken_common {
    font-size: calc( 20 / 16 * 1.0em);
    font-weight:bold;
  }

.p-tit__type08.wamken, .p-tit__type08.wamken h2 {
display:block;
}

/* クチコミ評価 */
.evaluation_score{
    background: #FFFDE9;
    margin: 0 auto;
    /* width: 70%; */
    padding:1em;
}
.li-evaluation_score{
    display: inline-block;
    list-style: none;
    margin: 0 0.5em;
    line-height: 1.5em;
}
table.evaluation {
    margin: 0 auto;
    /* width: 80%; */
  }
  article.single-school .p-table__box table.evaluation tbody tr th{
      text-align: left;
      width: 12em;
    }
  td.star {
      width: 8em;
  }
.rate {
    position: relative;
    display: inline-block;
    width: calc(1em * 5);
    height: 1em; 
}
.rate::before, .rate::after{
    position: absolute;
    display: inline-block;
    content: '★★★★★';
    height: 1em;
    line-height: 1em;
}
.rate::after {
    overflow: hidden;
    width: calc(var(--score) * 1em);
    color: #ffb906; 
}
.rate::before {
    color: #c4c4c4;
}
.reference_source {
    font-size: 0.9em;
    text-align: right;
}
.reference_source  a {
    text-decoration: underline;
}
  @media screen and (max-width: 768px) {
    .li-evaluation_score{
        width: 100%;
        text-align: left;
        margin: 0 1em;
    }
    /* スマホ表示ではテーブル縦並び */
    .evaluation_score, table.evaluation {
    margin: 0 auto;
    width: 100%;
  }
  article.single-school .p-table__box table.evaluation tbody tr th, article.single-school .p-table__box table.evaluation tbody tr td {
    display: block;
    width: 100%;
    padding: 10px;
  }
  article.single-school .p-table__box table.evaluation tbody tr td.star {
    padding-bottom: 0;
  }
  article.single-school .p-table__box table.evaluation tbody tr th{
      border-bottom:none;
      border-top: 1px solid #D9D9D9;
      padding-bottom: 0;
    }
   article.single-school .p-table__box table.evaluation tbody tr td {
      border:none;
    }
    td.star {
      width: 100%;
  }
  .reference_source {
    text-align: left;
    margin-left: 10px;
}
}

/* 比較表 */
.p-explain-hikaku-area{

}
.hikaku-box{
    margin: 0 0 6vh;
}
.hikaku-box th,
.hikaku-box td{
    padding: 2.5vh 1vw;
    position: relative;
}
.hikaku-box th{
    background: #4f8965;
    color: #fff;
    border: 1px solid #D9D9D9;
}
.hikaku-box td{
background: #fff;
border: 1px solid #D9D9D9;
}
.hikaku-item{
background: #F8F8F8 !important;
    color: #000 !important;
    width: 15% !important;
}
.bg-excellent::after{
    content: '';/*何も入れない*/
    position: absolute;
    background-image: url('./assets/img/index/bg-excellent.png');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 50px;/*画像の幅*/
  height: 50px;/*画像の高さ*/
  margin-inline: auto;
}
.bg-good::after{
    content: '';/*何も入れない*/
    position: absolute;
    background-image: url('./assets/img/index/bg-good.png');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 50px;/*画像の幅*/
  height: 50px;/*画像の高さ*/
  margin-inline: auto;
}
.bg-passable::after{
    content: '';/*何も入れない*/
    position: absolute;
    background-image: url('./assets/img/index/bg-passable.png');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 50px;/*画像の幅*/
  height: 50px;/*画像の高さ*/
  margin-inline: auto;
}
.bg-bad::after{
    content: '';/*何も入れない*/
    position: absolute;
    background-image: url('./assets/img/index/bg-bad.png');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 50px;/*画像の幅*/
  height: 50px;/*画像の高さ*/
  margin-inline: auto;
}
.hikaku-box-bg-wam{
background: #f1f7f0 !important;
    border-left: 4px solid #007440 !important;
    border-right: 4px solid #007440 !important;
}
.hikaku-box-bg-wam-last{
    border-bottom: 4px solid #007440 !important;
}
.wam-box{
    border: 4px solid #007440!important;
    background: #007440 !important;
    color:#fff !important;
    font-size: clamp(1.2rem, 3vw, 1.8rem) !important;
}
@media screen and (max-width: 480px) {
.hikaku-box th, .hikaku-box td {
    font-size: .7rem;
}
.hikaku-item {
    width: 20% !important;
}
}

/*---------------------------------------------------------
大学受験差し替え
---------------------------------------------------------*/
@media screen and (max-width: 480px) {
[data-cat="high"] p{
    font-size: clamp(1rem, 3vw, 1.3rem);
    line-height: 1.3;
}
[data-cat="high"] .box-senbatsu .title {
        font-size: 1.4rem;
}
}

/*WAMは生徒さん一人ひとりの苦手・弱点に合わせた指導をします!*/
.column-1{
    display: flex;
    flex-direction:column;
}
.column-1 > div{
	width:calc(100% / 1);
	padding: 1%;
}
.column-2{
    display: flex;
}
.column-2 > div{
	width: 50%;
	padding: 1%;
	display: flex;
	align-items: stretch;
}
.column-2none{
    display: flex;
}
.column-2none > div{
	width: 50%;
	padding: 1%;
	display: flex;
	align-items: stretch;
}
.fl-stretch{
	display: flex;
    align-items: stretch;
}
.border-dotted-brown{
    border: 4px dotted #773e0e;
}
.coaching-ttl,.coaching-ttl01,.coaching-ttl02{
	line-height: 1.3;
}
.coaching-ttl{
    text-align: center;
    font-weight: 700;
    color: #773e0e;
    font-size: clamp(1.2rem, 4vw, 2.5rem)!important;
        margin: 2vh 0;
}
.coaching-ttl01{
    font-size: clamp(1.1rem, 3vw, 1.8rem)!important;
    font-weight: 700;
    text-align: center;
    color: #fff;
}
.coaching-ttl02{
    font-size: clamp(1.1rem, 3vw, 1.8rem)!important;
    font-weight: 700;
    text-align: center;
    color: #000;
}
.coaching-border01,.coaching-border02,.coaching-border-none{
    border-radius: 1vh;
    width: 100%;
}
.coaching-border01 img,.coaching-border02 img,.coaching-border-none img{
    padding: 5%;
}
.coaching-border01{
border: 2px solid #009687;
}
.coaching-border02{
border: 2px solid #660066;
}
.bg-coaching01,.bg-coaching02,.bg-coaching03,.bg-coaching04{
	padding: 1vh .5vw;
}
.bg-coaching01{
    background: #009687;
}
.bg-coaching02{
    background: #660066;
}
.bg-coaching03{
    background: #d9efed;
}
.bg-coaching04{
    background: #e8d9e8;
}
.list-coaching-g,.list-coaching-p{
    list-style: none;
    margin: 0;
    padding: 2%;
}
.list-coaching-g > li,.list-coaching-p > li{
  text-indent: -1em;
  padding-left: 1em;
      line-height: 1.3;
    margin-bottom: 1vh;
        font-size: clamp(.8rem, 3vw, 1.2rem);
        font-weight:700;
}
.list-coaching-g > li:before,.list-coaching-p > li:before{
  content: ""; /* 空の要素作成 */
  width: 10px; /* 幅指定 */
  height: 10px; /* 高さ指定 */
  display: inline-block; /* インラインブロックにする */
  border-radius: 50%; /* 要素を丸くする */
  position: relative;
  top: -1px;
  margin-right: 5px;
}
.list-coaching-g{

}
.list-coaching-p{

}
.list-coaching-g > li:before{
  background-color: #009687; /* 背景色指定 */
}
.list-coaching-p > li:before{
  background-color: #660066; /* 背景色指定 */
}
.pct-cover{
    object-fit: cover;
}
.schedule-bg01,.schedule-bg02{
    padding: 2%;
    border-radius: 1vh;
}
.schedule-bg01{
    background: #cfe9fc;
}
.schedule-bg02{
    background: #def1d0;
}
.schedule-ttl01,.schedule-ttl02{
    font-size: clamp(1.6rem, 2vw, 2.25rem);
    font-weight: 700;
    text-align: center;
}
.schedule-ttl01{
    color: #0071af;
}
.schedule-ttl02{
    color: #007240;
}
@media screen and (max-width: 640px) {
.column-2{
    flex-direction: column;
}
.column-2 > div{
	width: 100%;
}
}
/*---------------------------------------------------------
余白調整
---------------------------------------------------------*/

/* 全体 */
@media screen and (max-width: 768px) {
.home .p-bg {
 padding: calc(20 / 16 * .1em) !important;
    }
.pt-md {
    padding-top: 20px !important;
}
.mb-sm {
    margin-bottom: 15px !important;
}
.mb-md {
    margin-bottom: 20px !important;
}
.mt-md {
    margin-top: 20px !important;
}
.mb-lg {
    margin-bottom: 40px !important;
}
.p-tit__type02 h1, .p-tit__type02 h2, .p-tit__type02 h3, .p-tit__type02 h4, .p-tit__type02 h5, .p-tit__type02 h6, .p-tit__type02 p{
gap: 0.1em !important;
}
.p-tit__type02 h1, .p-tit__type02 h2, .p-tit__type02 h3, .p-tit__type02 h4, .p-tit__type02 h5, .p-tit__type02 h6, .p-tit__type02 p {
        font-size: calc(26 / 16 * .8em) !important;
    }
.p-listofcont__index .p-listofcont__tit {
        margin-bottom: .5em !important;
}
.p-archive__voice_att + .p-archive__voice_btn {
    margin: 1.5em 0 !important;
}
.p-listofcont__index .p-listofcont__btn {
        margin-top: calc(20 / 16 * 1em) !important;
        margin-bottom: calc(20 / 16 * 1em) !important;
    }
.p-usp__point .p-usp__bgi {
        padding: calc(100 / 16 * 0.7em) 0 calc(50 / 16 * 0.5em) 0;
    }
.p-tit__type02 strong {
        line-height: 1.3 !important;
    }
.p-tit__type02 {
        padding: 1em 0 0 !important;
    }
.link_btn, .schoolsearch {
    margin: 2rem auto 0 !important;
}
/* CTA */
.cta-areaBox {
    margin: 1vh 0 0 !important;
}
.p-cnv {
        margin-bottom: 1vh !important;
    }
.p-framecolumn__type01 .p-framecolumn__box_item--btn {
        margin-top: calc(20 / 16 * 0.5em) !important;
    }
.p-framecolumn__box_item--tel {
    margin: .5vh 0 0 !important;
    width: 99% !important;
}
/* パンくず */

/* TOP */
h1.page_front, h1.page_regular {
    padding: 0 !important;
    line-height: 1.3 !important;
}
.section-mv-slider{
padding-bottom: 1px !important;
padding-top: 1px !important;
}
.slick-dots{
    bottom: -15px;
}
.slick-dotted.slick-slider{
margin-bottom: calc(30 / 16 * 0.7em) !important;
}
.slick-dots li,.slick-dots li button{
    height: 15px;
    width: 15px;
}
.section-youtube {
    padding-bottom: 5px !important;
}
.p-blog__info {
        margin-bottom: 0 !important;
        padding-top: 0 !important;
    }
.section-parents-voices {
        padding-bottom: 0 !important;
    }
.section-satisfaction-level {
        padding-bottom: 20px !important;
    }
.p-mcl__box_item {
        padding-bottom: 0em !important;
    }
.section-youtube-collabo .box{
margin-bottom: 20px;
}
/* 中受TOP */
.txt-ebox > p{
    font-size:14px;
}
.p-faq__type01 .p-faq__btn {
        margin-bottom: 1em;
    }

/* 高校生 */
[data-cat="high"] .section-youtube .p-tit__type02{
padding: 0 !important;
}
/* footer */
.p-footer__sitemap {
        padding: 0 0 0;
}
    
/* 各学年TOP */
.p-frameblock__type01 .p-frameblock__box > ul {
    gap: calc(50 / 16 * .25em);
}
.sp_mt-lg{
    margin-top: 40px !important;
}
.sp_mt-md{
    margin-top: 20px !important;
}
.sp_mb-md{
    margin-bottom: 20px !important;
}
.sp_mb-lg{
    margin-bottom: 40px !important;
}
.sp-pd-0{padding: 0 !important;}

.sp_pt-number{padding-top: 20px !important;}
.p-listofcont__index .p-listofcont__msg {
        margin-top: 2em;
        margin-bottom: 2em;
    }
.p-usp__point .p-usp__btn{
margin-top: calc(50 / 16 * .5em);
margin-bottom: calc(50 / 16 * .5em);
}
 }
 
@media screen and (max-width: 640px) {
.p-mainvisual{
padding-top: 0;
}
}