@charset "UTF-8";
/* spring2026.css */

/* =============== ▼ Common setting =============== */
* { 
    font-family: 'Noto Sans JP';
    color: initial;
    text-decoration: none; 
    box-sizing: border-box;
    border-collapse: collapse;
}
body {
	color: #323232;
}
#mv {
	margin-top: 89px;
}
@media screen and (max-width:768px) {
	#mv {
		margin-top: 54px;
	}
}

/* fontのジラ付きを修正する処理 */
.phone_info span {
  display: none;
  visibility: hidden;
  opacity: 0;
  transition: opacity .1s;
}
html.wf-active .phone_info span {
  display: block;
  visibility: visible;
  opacity: 1;
}
.wrap {
    max-width: 1200px;
    margin-left:  auto;
    margin-right: auto;
    padding-left: 50px;
    padding-right: 50px;
}
.flex_box {
    display:flex;
    flex-wrap: nowrap;
}
.pc_blk   { display:block !important; }
.sp_blk   { display:none  !important; }

.flex_box.pc_blk   { display:flex !important;  }
.flex_box.sp_blk   { display:none  !important; }

/* text */
h1,
h2,
h3,
h4 {
	font-family: 'Noto Sans JP';
    line-height: 1.3;
    letter-spacing: .1em;
}
li,
ol,
dt,
dd,
p,
a,
span {
    line-height: 1.6;
    letter-spacing: .05em;
}
a {
    text-decoration: none !important;
}

/* mar & pad */
.marXXL_T { margin-top:100px !important; }
.marXL_T  { margin-top: 80px !important; }
.marL_T   { margin-top: 60px !important; }
.marM_T   { margin-top: 40px !important; }
.marS_T   { margin-top: 30px !important; }
.marXS_T  { margin-top: 20px !important; }
.marXXS_T { margin-top: 10px !important; }

.marXXL_B { margin-bottom:100px !important; }
.marXL_B  { margin-bottom: 80px !important; }
.marL_B   { margin-bottom: 60px !important; }
.marM_B   { margin-bottom: 40px !important; }
.marS_B   { margin-bottom: 30px !important; }
.marXS_B  { margin-bottom: 20px !important; }
.marXXS_B { margin-bottom: 10px !important; }
.mar0_B   { margin-bottom:  0px !important; }

/* pad */
.padXXL_T { padding-top:100px !important; }
.padXL_T  { padding-top: 80px !important; }
.padL_T   { padding-top: 60px !important; }
.padM_T   { padding-top: 40px !important; }
.padS_T   { padding-top: 30px !important; }
.padXS_T  { padding-top: 20px !important; }
.padXXS_T { padding-top: 10px !important; }
.pad0_T   { padding-top:  0px !important; }

.padXXL_B { padding-bottom:100px !important; }
.padXL_B  { padding-bottom: 80px !important; }
.padL_B   { padding-bottom: 60px !important; }
.padM_B   { padding-bottom: 40px !important; }
.padS_B   { padding-bottom: 30px !important; }
.padXS_B  { padding-bottom: 20px !important; }
.padXXS_B { padding-bottom: 10px !important; }
.pad0_B   { padding-bottom:  0px !important; }










/* =============== Basic Setting =================== */
#container {
    background:#fff;
}
#mv img {
	width: 100%;
}
section {
	padding-top:    80px;
	padding-bottom: 80px;
}


/* ===== Section First ===== */
#sec_first {
	position: relative;
	padding-top: 100px;
	background-image: linear-gradient(0deg, rgba(218, 238, 250, 1) 10%, rgba(248, 252, 254, 1));
	z-index: 1;
}
#sec_first:before {
	content: "";
	width:  100%;
	height: 100%;
	position: absolute;
	top:  0;
	left: 0;
	background-image: url(../../../img/lp/spring2026/bg_sakura.png);
	background-repeat: repeat-y;
	background-size: 100%;
	background-position: center;
	z-index: -1;
}
#sec_first h1 {
	font-size: 40px;
	font-size: min(3.6vw,40px);
	font-weight: bold;
	text-align: center;	
	color: #d73c78;
	margin-bottom: 60px;
	margin-bottom: min(4vw,50px);
}
.alignC {
	font-family: "Zen Kaku Gothic New", "Noto Sans JP", serif;
	font-weight: 500;
	line-height: 2.5;
	text-align: center;
}
/* 札幌栄光ゼミSEEDの講習会 */
.kousyuu_card .pink_head {
	width: 100%;
	font-size: min(2.8vw,28px);
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: center;
	padding: .75em .25em;
	background-color: #d74978;
}
.kousyuu_card .pink_head h2 {
	width: fit-content;
	font-size: 28px;
	font-size: min(2.8vw,28px);
	font-weight: 500;
	display: block;
	letter-spacing: .05em;
	color: #fff;
	margin-right: .75em;
}
.kousyuu_card .pink_head p.bg_white {
	width: fit-content;
	font-size: clamp(14px,1.8vw,18px);
	line-height: 1;
	display: block;
	padding: .4em .8em .6em;
	color: #d74978;
	border-radius: 50px;
	background-color: #fff;
}
.kousyuu_card .white_cont {
	width: 100%;
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: stretch;
	box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.1);
}
.kousyuu_card .card {
	width: calc(100%/3);
	padding: 30px 40px 40px;
	padding: min(3vw,30px) min(3vw,40px) min(4vw,40px);
	background-color: #fff;
	box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.12);
}
.kousyuu_card h3 {
	font-size: min(2.2vw,28px);
	font-weight: bold;
	text-align: center;
	margin-bottom: .7em;
}
.kousyuu_card p {
	font-family: "Zen Kaku Gothic New", "Noto Sans JP", serif;
	line-height: 1.8;
	text-align: justify;
}
.kousyuu_card .marker {
	width: fit-content;
	position: relative;
	z-index: 1;
}
.kousyuu_card .p_pink {
	font-size: 1.1em;
	color: #d74978;
}
.kousyuu_card .marker:before {
	content: "";
	width: calc(100% + .6em);
	height: .35em;
	display: block;
	position: absolute;
	left: -.3em;
	bottom: 0;
	background-color: #ffef3a;
	z-index: -1;
}


/* ===== お問い合わせはこちら（共通パーツ） ===== */
.common_contact {
	width: 100%;
	display: block;
	padding: min(3vw,40px) min(6vw,60px) min(3vw,40px);
	border-radius: 10px;
	background-color: #fff;
	box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15);
}
.borLR_heading {
	font-size: min(2.2vw,28px);
	font-weight: bold;
	line-height: 1;
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: center;
	margin-bottom: .3em !important;
}
.borLR_heading:before,
.borLR_heading:after   {
	content: "";
	width:  1.4em;
	height: 1.4em;
	display: block;
	background-image:  url(../../../img/lp/spring2026/head_borderL.svg);
	background-repeat: no-repeat;
	background-position: center;
}
.borLR_heading:before {
	margin-right: .5em;
}
.borLR_heading:after  {
	margin-left: .5em;
	background-image:  url(../../../img/lp/spring2026/head_borderR.svg);
}
.borLR_heading .pink {
	font-size: 1.25em;
	line-height: 1;
	color: #d74978;
	margin-right:  .25em;
	margin-bottom: .25em;
}
.common_contact .topbtn_flex {
	width: 100%;
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
	justify-content: center;
	margin-bottom: 1.5%;
}
.common_contact .common_btnL {
	margin-right: 1.5%;
}


/* ===== お悩み・解決 ===== */
/* ▼ start anim */
svg.anim        { opacity:0; }
svg.is-animated { opacity:1; }

@keyframes animate-svg-stroke-1 {
  0% {
    stroke-dashoffset: 327.3747253417969px;
    stroke-dasharray: 327.3747253417969px;
  }
  100% {
    stroke-dashoffset: 654.7494506835938px;
    stroke-dasharray: 327.3747253417969px;
  }
}
.is-animated .svg-elem-1 {
  -webkit-animation: animate-svg-stroke-1 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0s both;
          animation: animate-svg-stroke-1 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0s both;
}
@keyframes animate-svg-stroke-2 {
  0% {
    stroke-dashoffset: 2px;
    stroke-dasharray: 2px;
  }
  100% {
    stroke-dashoffset: 4px;
    stroke-dasharray: 2px;
  }
}
.is-animated .svg-elem-2 {
  -webkit-animation: animate-svg-stroke-2 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.3s both;
          animation: animate-svg-stroke-2 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 0.3s both;
}
.card .st0 {fill:none;stroke:#0078CE;stroke-width:2.8346;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;}
.card .st1 {fill:none;stroke:#000000;stroke-miterlimit:10;}

.div_onayami .st0 {
	fill: transparent;
	stroke: #d74978;
	stroke-width: 2.846;
    stroke-linecap:  round;
    stroke-linejoin: round;
    stroke-miterlimit: 10;
}
/* ▲ end anim */


h2.h2_blue {
    font-size: 40px;
    font-size: min(3.6vw,40px);
    font-weight: 600;
    text-align: center;
    color: #2a5097;
    margin-bottom: 60px;
}
h2.h2_pink {
    font-size: 40px;
    font-size: min(3.6vw,40px);
    font-weight: 600;
    text-align: center;
    color: #d74978;
    margin-bottom: 60px;
}

/* --- こんなお悩みありませんか？ --- */
.div_onayami {
    margin-bottom: 80px;
}
.onayami_wrap {
    width: 100%;
    flex-wrap: nowrap;
    justify-content: space-between;
}
.onayami_wrap .card {
    width: calc(100%/3 - 15px);
    position: relative;
    padding: 30px 20px;
    padding-left:  min(2vw,20px);
    padding-right: min(2vw,20px);
    border-radius: 10px;
    background-color: #fcf0f4; 
}
.onayami_wrap .onayami_guruguru {
    width: 8vw;
    max-width: 80px;
    position: absolute;
    top:  0;
    left: 0;
    transform: translate(-20%,20%);
}
.onayami_wrap .onayami_guruguru path {
	stroke: #d74978;
}
.onayami_wrap .onayamiImg {
    max-width: 170px;
    display: block;
    margin: 0 auto 30px;
}
.onayami_wrap p {
    font-size: 20px;
    font-size: min(1.6vw,20px);
    font-weight: 500;
	text-align: center;
    letter-spacing: 0;
    color: #323232;
}

/* --- そんなお悩み、すべてSEEDで解決！ --- */
.div_kaiketu .h2_blue,
.div_kaiketu .h2_pink {
    width: 100%;
    display: block;
    position: relative;
    padding-bottom: 60px;
    z-index: 0;
}
/* 見出し下の黄色い線 */
.div_kaiketu .h2_blue:after,
.div_kaiketu .h2_pink:after {
    content: "";
    width:  calc(100% - 100px);
    height: 16vw;
    max-height: 170px;
    display: inline-block;
    position: absolute;
    top:  0;
    left: 0;
    transform: translate(50px, -20%);
    background-image: url(../../../img/lp/spring2026/kaiketu01.svg);
    background-position: center bottom;
    background-repeat: no-repeat;
    background-size: contain;
    padding-left:  50px;
    padding-right: 50px;
    z-index: -1;
}
/* 見出し上 左右のキラキラ */
.div_kaiketu {
    position: relative;
}
.div_kaiketu .kaiketu_kira:before,
.div_kaiketu .kaiketu_kira:after  {
    content: "";
    width:  5.5vw;
    height: 5.5vw;
    max-width:  55px;
    max-height: 55px;
    display: block;
    position: absolute;
    top: max(-40px, -50vw);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}
.div_kaiketu .kaiketu_kira:before {
    left: 30px;
    background-image: url(../../../img/lp/spring2026/kaiketuL.svg);
}
.div_kaiketu .kaiketu_kira:after {
    right: 40px;
    background-image: url(../../../img/lp/spring2026/kaiketuR.svg);
}
/* 解決 2カラム */
.kaiketu_wrap .card {
    width: 100%;
    max-width: 1200px;
    justify-content: space-between;
    margin:  0 auto 120px;
    padding: 0 50px;
}
.kaiketu_wrap .card img {
	object-position: top;
}
.kaiketu_wrap .card:first-of-type img {
	object-position: center;
}
.kaiketu_wrap .card:last-of-type {
    margin-bottom: 0;
}
.kaiketu_wrap .card > div {
    width: calc(50% - 15px);
}
h3.h3_blue {
    font-size: 22px;
    font-size: min(1.8vw,22px);
    font-weight: bold;
    color: #2a5097;
    margin-bottom: 20px;
}
h3.h3_pink {
    font-size: 22px;
    font-size: clamp(16px,1.8vw,22px);
    font-weight: 500;
    color: #d74978;
    margin-bottom: 20px;	
}
.kaiketu_wrap .card p {
    font-weight: 500;
	text-align: justify;
	line-height: 2;
    color: #323232;
}
/* 解決に喜ぶアイコン */
.kaiketuImg {
    width:  17vw;
    height: 17vw;
    max-width:  170px;
    max-height: 170px;
    display: block;
    margin-left: auto;
}
/* pointSVG */
.pointSVG {
	position: relative;
}
.pointSVG img {
    width:  11vw;
    height: 11vw;
    max-width:  120px;
    max-height: 120px;
    position: absolute;
    top: -20px;
}
.kaiketu_wrap .card:nth-of-type(odd) .pointSVG {
	width: 95%;
	position: absolute;
	left: 5%;
}
/* 左右に飛び出す授業風景　写真 */
.kaiketu_wrap .card .left_cont,
.kaiketu_wrap .card .right_cont {
    /*position: relative;*/
    z-index: 1;
}
.kaiketu_wrap .card:nth-of-type(odd) .left_cont .kaiketuBG,
.kaiketu_wrap .card:nth-of-type(even) .right_cont .kaiketuBG {
    width: calc(50% - 15px);
    height: 36vw;
    max-height: 385px;
    max-width: inherit;
    position: absolute;
    z-index: -1;
    object-fit: cover;
    /* add */
}
/* test */
.kaiketu_wrap .card:nth-of-type(odd) .left_cont .kaiketuBG {
    left: 0;
}
.kaiketu_wrap .card:nth-of-type(odd) .right_cont .kaiketuBG {
    right: 0;
}
.kaiketu_wrap .card:nth-of-type(odd) .left_cont .pointSVG img {
    left: -20px;
}
.div_onayami .card p {
    text-align: center;
}


/* ======= お客様の声・生徒の声 ===== */
#sec_voice {
    position: relative;
    background-color: #fcf0f4;
    z-index: 1;
}
#sec_voice:before {
	content: "";
	width:  100%;
	height: 100%;
	position: absolute;
	top:  0;
	left: 0;
	background-image: url(../../../img/lp/spring2026/bg_grad.jpg);
	background-position: top left;
	background-repeat: repeat;
	background-size: cover;
	z-index: -1;
}
#sec_voice h2 {
	font-weight: 500;
    color: #d74978;
}
/* --- 様々な目標に寄り添い指導します --- */
#sec_voice .div_sidou h2 {
	font-weight: 500;
	margin-bottom: .5em;
}
.div_sidou .flex_box {
	display: flex;
	flex-wrap: nowrap;
	align-items: stretch;
	justify-content: space-between;
	margin-top: min(4vw,40px);
}
.div_sidou p {
	line-height: 2;
}
.sidou_card {
	width: calc(100%/3 - 2%);
	display: flex;
	align-items: center;
	flex-direction: column;
	border-radius: 10px;
	margin: 0 !important;
	margin-right: 0 !important;
	box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.05);
}
.sidou_card .bg_pink {
	width: 100%;
	text-align: center;
	padding: 1.5%;
	border-radius: 10px 10px 0 0;
	background-color: #d74978;
}
.sidou_card .bg_pink img {
	height: 9vw;
	max-height: 100px;
	min-height: 80px;
}
.sidou_card .bg_white {
	width: 100%;
	padding: 20px 30px 30px;
	padding: min(2vw,20px) min(3vw,30px) min(3vw,30px);
	border-radius: 0 0 10px 10px;
	background-color: #fff;
}
.sidou_card h3 {
	font-size:   min(2.6vw,26px);
	font-weight: 500;
	text-align:  center;
	color: #d74978;
	margin-bottom: .25em;
}
.sidou_card p {
	font-size:   min(1.8vw,18px);	
	text-align:  center;
	line-height: 1.6;
	letter-spacing: .1em;
}
#sec_voice .h2_Licon:before {
	width:  1.4em;
	height: 1.4em;
}
.div_sidou .h2_Licon:before {
	margin-right: 10px;
	background-image: url(../../../img/lp/spring2026/icon_sidou.svg);
	transform: translateY(-5%);
}
.div_student .h2_Licon:before {
	background-image: url(../../../img/lp/spring2026/icon_senpai.svg);
}
.div_hogosya .h2_Licon:before {
	background-image: url(../../../img/lp/spring2026/icon_hogosya.svg);
}
/* --- 保護者の声 --- */
.div_hogosya .flex_box {
    justify-content: space-between;
}
.div_hogosya .card {
    width: calc(100%/3 - 15px);
    padding: 20px;
    border-radius: 10px;
    background-color: #fff;
	box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.05);
}
.div_hogosya img {
    width:  13vw;
    height: 13vw;
    max-width:  130px;
    max-height: 130px;
    display: block;
    margin: 0 auto 20px;
}
.div_hogosya .card p {
    font-weight: normal;
	line-height: 2;
	text-align: justify;
	color: #323232;
}

/* --- 生徒の声 --- */
.div_student .flex_box {
    flex-wrap: wrap;
    justify-content: space-between; 
}
.div_student .card {
    width: calc(100%/2 - 15px);
    position: relative;
	margin-top: 30px;
    padding: 20px;
    border-radius: 10px;
    background-color: #fff;
	box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.05);
}
.div_student .card:nth-of-type(-n+2) {
    margin-top: 0;
}
/* カードの中身 */
.div_student .card > .flex_box {
    justify-content: space-between;
    flex-wrap: nowrap;
    margin-bottom: 20px;
    border-bottom: 1px solid #2ba4d7;
}
.div_student .cardF > .flex_box {
    border-bottom: 1px solid #e35e94;
}


/* 合格校名 */
dd.color_box {
    font-size: min(1.6vw,16px);
    font-weight: 500;
	line-height: 1.2;
    display: inline-block;
    margin-bottom: 5px;
    padding: 5px 10px;
    color: #fff;
    background-color: #2ba4d7;
}
.cardF .color_box {
    background-color: #e35e94;
}
/* 生徒氏名 */
dt.student_name {
    font-size: 20px;
    font-size: min(2vw,20px);
    font-weight: bold;
    margin-bottom: 10px;
    color: #2ba4d7;
}
dt.student_name .small {
    font-size: min(1.6vw,16px);
	font-weight: 500;
    color: #2ba4d7;
}
.cardF .student_name,
.cardF .student_name .small {
    color: #e35e94;
}

/* アイコン */
.div_student .student_img {
    height: 6.5vw;
    max-height: 65px;
	margin-right: -30px;
}
.div_student .student_img img {
    width:  13.5vw;
    height: 13.5vw;
    max-width:  135px;
    max-height: 135px;
    display: block;
    position: relative;
    top:   0;
    right: 0;
    transform: translateY(-50%);
}

/* 見出しと本文 */
.div_student .h3_color {
    font-size: 18px;
    font-size: min(1.8vw,18px);
    font-weight: bold;
    color: #2ba4d7;
    margin-bottom: 15px;
}
.cardF .h3_color {
    color: #e35e94;
}
.div_student .h3_color + p {
	line-height: 2;
    font-weight: normal;
	color: #323232;
}


/* ===== 料金表 ===== */
/*////// 共通 START //////*/
table {
    overflow-x: scroll;
}

.uk-table th {
    font-size: min(1.4vw,16px);
}
table th,
table td {
    font-size: min(1.4vw,16px);
    vertical-align: middle !important;
}
.uk-table td {
    padding: 16px min(1.2vw,12px);
	padding: min(1vw,10px) min(1.2vw,12px);
}

#price_schedulle .h2_Licon:before {
    width:  80px;
    height: 60px;
    background-image: url(../../../img/lp/spring2026/schedulle_price_icon.svg);
    transform: translateY(-.5%);
}

#price_schedulle p,
#price_schedulle li {
    line-height: 2;
}

.fw_b {
    font-weight: bold;
}
.fc_b {
    color: #3992d5;
}
.fc_r {
    color: #FF0000;
}
.bg_g {
    background-color: #F1F1F1;
}
.va_m {
    vertical-align: middle !important;
}
.comments {
    font-size: 14px;
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
}

/* テーブル範囲　*/

.bg_b {
    font-weight: bold;
    background-color: #EFF9FF;
}

.bg_f {
    background-color: #fff !important;
    vertical-align: middle !important;
}

/*////// 共通 END //////*/

/*////// 個別指導 START //////*/
#price_schedulle {
    position: relative;
    background-color: #fffef5;
}
.innerBox {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 50px;
}

.innerBox > h2 {
    font-size: 40px;
    font-size: min(4vw,40px);
	font-weight: 500;
    color: #d74978;
    text-align: center;
    margin-bottom: 60px;
	margin-bottom: min(4vw,60px);
}

/* 個別指導 タイトル */
.Individual_header {
    display: flex;
    margin-bottom: 50px;
	margin-bottom: min(5vw,50px);
}

.Individual_header > h3 {
    min-width: 150px;
    font-size: 30px;
    font-size: min(2vw,30px);
    color: #fff;
    background-color: #2ba4d7;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 30px;
    padding: min(3vw,30px);
    border-radius: 10px;
    letter-spacing: 0.1em;
    font-weight: bold;
    margin-right: 10px;
}

.Individual_header > ul >li {
    list-style-type: none;
}

/* 個別指導 受講料 */

.Individual_price > h4,
.Individual_schedulle > h4 {
    text-align: center;
    font-weight: 500;
    font-size: 20px;
    font-size: min(2vw,20px);
    margin-bottom: 20px;
}

.Individual_price > h4 > span , .Individual_schedulle > h4 > span {
    font-size: 16px;
    font-size: min(1.6vw,16px);
}

.Individual_price > .price_table {
    margin-bottom: 50px;
}

.Individual_price > .price_table > table {
    text-align: center;
    background-color: #fff;
    border: 1.5px solid #0078CE;
    font-size: 16px;
    font-size: min(1.6vw,16px);
}

.Individual_price > .price_table > table > thead > tr > th {
    text-align: center;
    font-size: 16px;
    font-size: min(1.6vw,16px);
    font-weight: 500;
    background-color: #fcf0f4;
    color: #000;
    border: 1.5px solid #d74978;
}

.Individual_price > .price_table > table > tbody > tr > td {
    color: #000;
    border: 1.5px solid #d74978;
}

.Individual_price > .price_table > p.comments > span {
    color: red;
}

/* 個別指導 スケジュール */

.Individual_schedulle > h4 > span {
    padding-left: 1em;
}

.Individual_schedulle > .schedulle > table {
    text-align: center;
    background-color: #fff;
    font-size: 14px;
    font-size: min(1.4vw,14px);
}

.Individual_schedulle > .schedulle > table > thead > tr > th {
    text-align: center;
    font-size: 16px;
    font-size: min(1.6vw,16px);
    font-weight: bold;
    background-color: #DC2864;
    color: #fff;
    border: 1.5px solid #E4769C;
    padding: 0.5em 0;
}

.Individual_schedulle > .schedulle > table > tbody > tr > td {
    padding: 0.5em 0;
    border: 1.5px solid #d74978;
    line-height: 1.5;
}

.Individual_schedulle > .schedulle > table > tbody > .bg_b_l > td {
    background-color: #f7dbe4;
    font-weight: 500;
}

.Individual_schedulle > .schedulle > table > tbody > .bg_b_l_2 > td {
    background-color: #fff;
    font-weight: 500;
}
.Individual_schedulle > .schedulle > table > tbody > tr > .summer_holiday {
    background-color: #F5F5F5;
    vertical-align: middle;
}

/* ////// 個別指導 END ////// */

/* ////// 集団指導 START ////// */

/*　集団指導 タイトル */

.Group_guidance_header {
    display: flex;
    margin-bottom: 30px;
}

.Group_guidance_header > h3 {
    font-size: 30px;
    font-size: min(2vw,30px);
    color: #fff;
    background-color: #d73c78;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 30px;
	padding: min(2.5vw,25px) min(3vw,30px);
    border-radius: 10px;
    letter-spacing: 0.1em;
    font-weight: bold;
    margin-right: 10px;
}

.Group_guidance_header > ul {
    display: flex;
    align-items: center;
    justify-content: center;
}

/* 集団指導 受講料　*/
.Group_guidance_price > h4 {
    font-size: 20px;
    font-size: min(2vw,20px);
    font-weight: 500;
    text-align: center;
    margin-bottom: 20px;
}

.Group_guidance_price > .price_table {
    margin-bottom: 50px;
}

.Group_guidance_price > .price_table > table * {
	font-weight: 500;
    background-color: #fff;
}

.Group_guidance_price > .price_table > table > thead > tr > th {
	width: 3em;
    text-align: center;
    font-weight: 500;
    color: #000;
    background-color: #fcf0f4;
    border: 1.5px solid #d74978;
}
.Group_guidance_price > .price_table > table > thead > tr > th:first-of-type {
	width: 3em !important;
	max-width: 3em !important;
	min-width: 3em !important;
}
.Group_guidance_price > .price_table > table > tbody > tr > td {
	font-weight: normal;
    text-align: center;
    color: #000;
    border: 1.5px solid #d74978;
    line-height: 1.5;
}
.Group_guidance_schedulle .summer_holiday {
	background-color: #F1F1F1;
}

/* --- 日程表 --- */
/* 見出し */
.Group_guidance_schedulle h4 {
    font-size: min(2vw,20px);
    font-weight: 500;
    text-align: center;
    margin-bottom: 20px;
}
.Group_guidance_schedulle h4 span {
    font-size: min(1.6vw,16px);
    font-weight: 500;
    letter-spacing: .1em;
    margin-left: min(2vw,20px);
}
/* 色 */
span.eleS    { color:#ea4c9b; }
span.juniorS { color:#d74978; }
span.highS   { color:#62ae04; }
/* 縦書き */
.td_tate {
	vertical-align: middle;
}
.td_tate span {
	height: 8em;
  display: inline-block;
  writing-mode: vertical-rl;
  -webkit-writing-mode: vertical-rl;
  text-orientation: mixed;
  -webkit-text-orientation: mixed;
  line-height: 1.5;
}

/* テーブル基本 */
.Group_guidance_schedulle {
    /*max-width: 1200px;*/
    /*overflow-x: scroll;*/
}

.Group_guidance_schedulle table {
    background-color: #fff;
}
.Group_guidance_schedulle th,
.Group_guidance_schedulle td {
    font-size: min(1.4vw,14px);
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
    vertical-align: middle;
    border: 1.5px solid #E4769C;
    padding: 0.5em 0;
}
/* 何月 */
.Group_guidance_schedulle th {
    font-weight: bold;
    text-align: center;
    color: #fff;
    background-color: #DC2864;
}
/* 何日 & 何曜日 */
.Group_guidance_schedulle tbody:first-of-type td {
	width: 4em;
    font-weight: 500;
    text-align: center;
}
/* 何日 */
.Group_guidance_schedulle tbody:first-of-type tr:first-of-type {
    background-color: #FCEEF5;
}
/* 何曜日 */
.Group_guidance_schedulle tbody:first-of-type tr:nth-of-type(2) {
    /* background-color: #fcf0f4; */
}

/* -- 細かい調整 --  */
/* 縦列の一番最初のセル 全部 */
.Group_guidance_schedulle tr > *:first-of-type,
.Group_guidance_schedulle tbody:first-of-type td.fs_small,
.Individual_schedulle tbody:first-of-type td:first-of-type,
.Individual_schedulle tbody:first-of-type td.fs_small {
    width: 4em;
}
.Group_guidance_schedulle tbody:first-of-type td:first-of-type,
.Group_guidance_schedulle tbody:first-of-type td.fs_small,
.Individual_schedulle tbody:first-of-type td:first-of-type,
.Individual_schedulle tbody:first-of-type td.fs_small {
	min-width: 10em;
}
/* お盆 */
td.summer_holiday,
td.td_bon {
    font-weight: 500 !important;
}


/* ===== #sec_FaQ(よくあるご質問)  ===== */
#sec_FaQ {
    background-color: #fcf0f4;
}
#sec_FaQ .h2_Licon:before {
    width: 100px;
    height: 60px;
    background-image: url(../../../img/lp/spring2026/FaQ_icon.svg);
}
#sec_FaQ h2 {
	color: #d74978;
}
#sec_FaQ .h2_Licon + p {
	display: flex;
	justify-content: center;
    margin: 0 auto 50px;
}
#sec_FaQ li {
    position: relative;
    color: #d74978;
    background-color: #fff;
}
/* + - */
#sec_FaQ li:before {
    display: block;
    content: "";
    position: absolute;
    top:   min(5vw,50px);
    right: min(5vw,50px);
    margin:auto;
    width: 30px;
    height: 2px;
    background-color: #d74978;
    transition: .2s;
    transform: rotate(90deg);
}
#sec_FaQ li:after {
    display: block;
    content: "";
    position: absolute;
    top:   min(5vw,50px); 
    right: min(5vw,50px);
    margin: auto;
    width: 30px;
    height: 2px; 
    background-color: #d74978;
    transition: .3s;
}
#sec_FaQ li.uk-open:before {
    transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
}
#sec_FaQ li.uk-open:after {
    background-color: transparent;
}
#sec_FaQ .uk-accordion-title {
    font-size: min(2vw,20px);
    font-weight: bold;
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: flex-start;
    padding: 30px;
	padding: min(3vw,30px);
    color: #d74978 !important;
}
#sec_FaQ .uk-accordion-content {
	line-height: 1.8;
    margin-top: 0;
    padding: 0px 30px 30px;
}
/* Q */
#sec_FaQ .uk-accordion-title:before {
    content: "Q";
    font-size: min(3.2vw,32px);
    line-height: 1;
    float: inherit;
    margin-left: 0;
    margin-right: 15px;
    color: #d74978;
    background-image: inherit;
}


/* ===== 講習の流れ ===== */
#sec_nagare {
    position: relative;
	background-image: url(../../../img/lp/spring2026/bg_sakura.jpg);
    z-index: 1;
}
#sec_nagare:before {
	content: "";
	width:  100%;
	height: 100%;
	display: block;
	position: absolute;
	top:  0;
	left: 0;
	background-image: url(../img/bg_kousyuu.png);
	background-position: top center;
	background-repeat: no-repeat;
	background-size: 100%;
	z-index: -1;
}

h2.h2_Licon {
    font-size: 40px;
    font-size: min(4vw,40px);
    font-weight: 500;
    line-height: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #DC2864;
    margin-bottom: 50px;
}
h2.h2_Licon:before {
    content: "";
    width:  40px;
    height: 40px;
    display: block;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    margin-right: 14px;
}
h2.h2_Licon strong {
	font-size: 1.5em;
	color: #DC2864;
	transform: translateY(-.1em);
}
#sec_nagare h2.h2_Licon span {
	font-size: 1em;
	color: #DC2864;
}
#sec_nagare h2.h2_Licon:before {
	width:  50px;
	height: 60px;
	background-image: url(../../../img/lp/spring2026/nagareIcon.svg);
}
/* 3カラム */
.nagare_wrap {
    justify-content: space-between;
    margin-bottom: 60px;
}
.nagare_wrap > div {
    width: calc(100%/3 - 15px);
    position: relative;
    padding: 20px;
    border-radius: 10px;
    background-color: #fff;
}
/* stepSVG */
.stepSVG {
    width:  8vw;
    height: 8vw;
    max-width:  80px;
    max-height: 80px;
    position: absolute;
    top:  0;
    left: 0;
    transform: translate(-20%,-30%);
}
/* アイコン画像 */
.stepSVG + img {
    width: auto;
    height: 100px;
    display: block;
    margin: 20px auto 20px;
}
/* 見出し */
.nagare_wrap h3 {
    text-align: center;
	color: #d73c78;
}
/* テキスト */
.nagare_wrap .cont_wrap {
	margin-right: 0;
}
.nagare_wrap p {
    font-weight: 500;
	text-align: justify;
}



/* *************** 2026年度 追加記述 *************** */
/* ===== セクション 単科ゼミ ===== */
/* 見出し */
#sec_zemi h2 {
	width: 100%;
	font-size: 28px;
	font-size: clamp(22px,2.8vw,28px);
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	justify-content: center;
	margin-bottom: 1.75em;
}
#sec_zemi h2 span {
	font-weight: 900;
	font-feature-settings: "palt";
	line-height: 1.2;
	letter-spacing: .15em;
	color: #323232;
	margin-right: 1em;
}
#sec_zemi h2 strong {
	font-size: 1.42em;
	line-height: 1;
	color: #DC2864;
}
#sec_zemi h2 .head_box {
	font-size: 24px;
	font-size: clamp(20px,2.4vw,24px);
	text-align: center;
	line-height: 1.2;
	letter-spacing: .1em;
	color: #DC2864;
	border: 3px solid #DC2864;
	border-radius: 10px;
	margin-right: 1em;
	padding: .35em .5em;
}
#sec_zemi h2 .head_box small {
	font-size: .83em;
	color: #DC2864;
}
/* 見出し下文章 */
#sec_zemi h2 + p {
	line-height: 2;
	text-align: center;
	margin-bottom: 3em;
}
/* アコーディオン */
.zemi_accordion > li {
	background-color: #fff;
	border: 1px solid #DC2864;
}
.zemi_accordion > li a {
	font-size: 28px;
	font-size: clamp(20px,2.4vw,24px);
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: flex-start;
	padding: 15px 30px;
	background-color: #DC2864;
}
/* 講座 マル番号 */
.zemi_accordion > li a:before {
	content: "";
	width:  2.75em;
	height: 2.75em;
	min-width:  2.75em;
	min-height: 2.75em;
	display: block;
	background-image: url(../../../img/lp/spring2026/zemi_maru01.svg) !important;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	margin-left: 0;
	margin-right: .75em;
}
.zemi_accordion > li:nth-of-type(2) a:before { background-image:url(../../../img/lp/spring2026/zemi_maru02.svg) !important; }
.zemi_accordion > li:nth-of-type(3) a:before { background-image:url(../../../img/lp/spring2026/zemi_maru03.svg) !important; }
.zemi_accordion > li:nth-of-type(4) a:before { background-image:url(../../../img/lp/spring2026/zemi_maru04.svg) !important; }
.zemi_accordion > li:nth-of-type(5) a:before { background-image:url(../../../img/lp/spring2026/zemi_maru05.svg) !important; }
.zemi_accordion > li:nth-of-type(6) a:before { background-image:url(../../../img/lp/spring2026/zemi_maru06.svg) !important; }

/* アコーディオン 開閉アイコン */
.zemi_accordion > li a:after {
	content: "";
	width:  1em;
	height: 1em;
	display: block;
	align-self: center;
	background-image:  url(../../../img/lp/spring2026/zemi_open.svg);
	background-repeat: no-repeat;
	background-position: center right;
	background-size: contain;
	margin-left:  auto;
	margin-right: .5em;
	transform: translateY(.05em);
}
.zemi_accordion > li.uk-open a:after {
	background-image: url(../../../img/lp/spring2026/zemi_close.svg);
}
/* アコーディオン見出し */
.zemi_accordion li a span,
.zemi_accordion li a small {
	color: #fff;
}
.zemi_accordion li a span {
	font-size: 1em;
}
.zemi_accordion li a small {
	font-size: .83em;
}
/* --- アコーディオン コンテンツ --- */
.zemi_accordion .uk-accordion-content {
	margin: 0;
	padding: 30px;
}
.zemi_accordion .uk-accordion-content > p {
	font-weight: normal;
	line-height: 1.8;
	margin-bottom: 1.25em;
}
/* アコーディオン内 ol */
.zemi_accordion .uk-accordion-content ol li {
	font-weight: 500;
	line-height: 1.8;
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	justify-content: flex-start;
}
.zemi_accordion .uk-accordion-content ol li:last-of-type {
	margin-bottom: 1.25em;
}
/* アコーディオン color box */
.zemi_box {
	padding: 25px;
	background-color: #FCEEF5;
}
.zemi_box div {
	margin-top: .25em;
}
.zemi_box dt,
.zemi_box dd,
.zemi_box p {
	font-weight: 500;
	color: #323232;
}
.zemi_box dt {
	width: fit-content;
	min-width: fit-content;
	display: inline-block;
}
.zemi_box dd {
	width: 100%;
}
.zemi_box p {
	width: fit-content;
	font-feature-settings: "palt";
	letter-spacing: .1em;
	text-align: left;
}
.zemi_box p {
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
}
.zemi_box p span:first-of-type {
	min-width: fit-content;
}

.zemi_box .note {
	font-size: .875em;
	font-weight: 300;
	display: inline-flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	justify-content: flex-start;
}
/* radius */
.zemi_accordion > li {
	border-radius: 10px;
}
.zemi_accordion > li a {
	border-radius: 8px;
}
.zemi_accordion > li.uk-open a {
	border-radius: 8px 8px 0 0;
}


/* ====== 合格実績 ===== */
#sec_goukaku {
	position: relative;
	padding-top:    0;
	padding-bottom: 0;
}
#sec_goukaku .cont img {
	width: 100%;
}
#sec_goukaku .btn {
	width: 100%;
	text-align: center;
	position: absolute;
	left: 0;
	bottom: 5.857vw;
}
#sec_goukaku .btn a {
	width: 26.135vw;
	height: 5.857vw;
	display: inline-block;
}
#sec_goukaku .btn img {
	width: 100%;
	object-fit: contain;
	object-position: center;
}


/* ===== table 追加 ===== */
.uk-table .naname {
	background-image: linear-gradient(to left top, transparent 50%, rgba(215, 73, 120, 1) 50%, rgba(215, 73, 120, 1) calc(50% + 1.5px), transparent calc(50% + 1.5px));
}
#table_zemi th:first-of-type  { width:4em !important; }
#table_zemi th:nth-of-type(2) { width:4em; }
#table_zemi th:nth-of-type(3),
#table_zemi th:nth-of-type(4) { width:70px; }
#table_zemi th:nth-of-type(5),
#table_zemi th:nth-of-type(6) { width:2em; }


/* ===== Instagram ===== */
#sec_insta .flex_box div,
#sec_insta .flex_box a {
	display: block;
}

























@media screen and (max-width:768px) {
	/* =============== ▼ Common setting =============== */
    /* ===== basic ===== */
    .pc_blk { display:none !important;  }
    .sp_blk { display:block !important; }

    .flex_box.pc_blk { display:none !important;  }
    .flex_box.sp_blk { display:flex !important; }

	.align_justify_sp { text-align:justify !important; }
	.align_center_sp  { text-align:center;  }

    /* 親 */
    .wrap,
    .innerBox {
        width: 88%;
        max-width: 550px;
        padding-left:  0;
        padding-right: 0;
    }
    .flex_box {
        flex-wrap: wrap;
    }
    /* 見出し */
    h2.h2_blue,
    h2.h2_Licon {
        font-size: 20px;
        margin-bottom: 20px;
    }
    h2.h2_Licon:before {
        margin-right: 10px;
    }
    h3.h3_blue {
        font-size: 16px;
        text-align: left;
        margin-bottom: 10px;
    }
    h1,
    h2,
    h3,
    h4 {
        line-height: 1.5;
    }

    /* 共通になりそう */
    section .card,
    .contact_info .white_box {
        padding: min(4vw, 30px); /* 15px */
    }

	/* mar */
	.marXXL_T { margin-top:50px !important; }
	.marXL_T  { margin-top:40px !important; }
	.marL_T   { margin-top:30px !important; }
	.marM_T   { margin-top:20px !important; }
	.marS_T   { margin-top:10px !important; }
	.marXS_T  { margin-top: 5px !important; }

	.marXXL_B { margin-bottom:50px !important; }
	.marXL_B  { margin-bottom:40px !important; }
	.marL_B   { margin-bottom:30px !important; }
	.marM_B   { margin-bottom:20px !important; }
	.marS_B   { margin-bottom:10px !important; }
	.marXS_B  { margin-bottom: 5px !important; }

	.marXXL_T-SP { margin-top:50px !important; }
	.marXL_T-SP  { margin-top:40px !important; }
	.marL_T-SP   { margin-top:30px !important; }
	.marM_T-SP   { margin-top:20px !important; }
	.marS_T-SP   { margin-top:10px !important; }
	.marXS_T-SP  { margin-top: 5px !important; }
	.mar0_T-SP   { margin-top: 0px !important; }

	.marXXL_B-SP { margin-bottom:50px !important; }
	.marXL_B-SP  { margin-bottom:40px !important; }
	.marL_B-SP   { margin-bottom:30px !important; }
	.marM_B-SP   { margin-bottom:20px !important; }
	.marS_B-SP   { margin-bottom:10px !important; }
	.marXS_B-SP  { margin-bottom: 5px !important; }
	.mar0_B-SP   { margin-bottom: 0px !important; }

	/* pad */
	.padXXL_T { padding-top:50px !important; }
	.padXL_T  { padding-top:40px !important; }
	.padL_T   { padding-top:30px !important; }
	.padM_T   { padding-top:20px !important; }
	.padS_T   { padding-top:10px !important; }
	.padXS_T  { padding-top: 5px !important; }

	.padXXL_B { padding-bottom:50px !important; }
	.padXL_B  { padding-bottom:40px !important; }
	.padL_B   { padding-bottom:30px !important; }
	.padM_B   { padding-bottom:20px !important; }
	.padS_B   { padding-bottom:10px !important; }
	.padXS_B  { padding-bottom: 5px !important; }

	.padXXL_T-SP { padding-top:50px !important; }
	.padXL_T-SP  { padding-top:40px !important; }
	.padL_T-SP   { padding-top:30px !important; }
	.padM_T-SP   { padding-top:20px !important; }
	.padS_T-SP   { padding-top:10px !important; }
	.padXS_T-SP  { padding-top: 5px !important; }
	.pad0_T-SP   { padding-top: 0px !important; }

	.padXXL_B-SP { padding-bottom:50px !important; }
	.padXL_B-SP  { padding-bottom:40px !important; }
	.padL_B-SP   { padding-bottom:30px !important; }
	.padM_B-SP   { padding-bottom:20px !important; }
	.padS_B-SP   { padding-bottom:10px !important; }
	.padXS_B-SP  { padding-bottom: 5px !important; }
	.pad0_B-SP   { padding-bottom: 0px !important; }



	/* =============== Basic Setting =================== */
	section {
		padding-top: 30px;
		padding-top: min(8vw,50px);
		padding-bottom: 50px;
	}


	/* ===== Section First ===== */
	#sec_first {
		padding-top: 40px;
		padding-top: min(10.667vw,60px);
		background: linear-gradient(0deg, rgba(218, 238, 250, 1) 40%, rgba(248, 252, 254, 1));
	}
	#sec_first:before {
		background-image: url(../../../img/lp/spring2026/bg_sakuraSP.png);
		background-size: 100%;
		background-position: top;
	}
	#sec_first .card p {
		max-width: 400px;
		margin: auto;
	}
	#sec_first h1 {
		font-size: 24px;
	}
	#sec_first p {
		font-size: 16px;
		line-height: 2.2;
		letter-spacing: .12em;
	}
	/* 講習会 */
	.kousyuu_card .pink_head {
		flex-wrap: wrap;
		flex-direction: column;
		padding: 15px 20px 20px;
		border-radius: 12px 12px 0 0;
	}
	.kousyuu_card .pink_head h2 {
		font-size: 20px;
		text-align: center;
		margin-right: 0;
		margin-bottom: .3em;
	}
	.kousyuu_card .pink_head p.bg_white {
		width: 85%;
		text-align: center;
		line-height: 1.4 !important;
		border-radius: 15px;
	}
	/* 講習会カード */
	.kousyuu_card .white_cont {
		flex-wrap: wrap;
		border-radius: 0 0 12px 12px;
		box-shadow: none;
	}
	.kousyuu_card .card {
		width: 100%;
		padding: 25px 30px 30px;
		border-radius: 0;
	}
	.kousyuu_card .card:last-of-type {
		border-radius: 0 0 12px 12px;
	}
	.kousyuu_card h3 {
		margin-bottom: 1.5em;
	}
	.kousyuu_card .marker {
		font-size: 22px;
		font-size: min(5.25vw,22px);
	}
	.kousyuu_card .p_pink {
		font-size: 26px;
		font-size: min(6vw,26px);
		color: #d74978;
	}
	.kousyuu_card .marker.add_width:before {
		width: calc(100% + .3em);
		left: -.1em;
	}
	.kousyuu_card p {
		text-align: justify;
		line-height: 2 !important;
		transform: translateY(-.04em);
	}


	/* ===== お問い合わせはこちら（共通パーツ） ===== */
	.common_contact {
		padding: 30px 20px;
		padding: min(8vw,50px) min(5.333vw,40px);
	}
	.borLR_heading span {
		line-height: 1.2;
		text-align:  center;
	}
	.borLR_heading .pink {
		font-size: 28px;
		font-size: min(7.467vw,28px);
		display: inline-block;
		margin-right: 0;
	}
	.borLR_heading {
		font-size: 24px;
		font-size: min(6.4vw,24px);
	}
	.borLR_heading:before,
	.borLR_heading:after   {
		height: 1.4em;
		align-self: flex-end;
	}
	.common_contact .topbtn_flex {
		display: block;
		margin-bottom: 5%;
	}
	.common_contact .common_btnL {
		margin-right: 0;
	}
	.common_contact .topbtn_flex,
	.common_contact .bottom_btn  {
		max-width: 400px;
		margin-left:  auto;
		margin-right: auto;
	}


	/* ===== お悩み・解決 ===== */
   #sec_onayami {
        padding-bottom: 40px;
    }
    #sec_onayami .h2_blue,
	#sec_onayami .h2_pink {
        margin-bottom: 20px;
        font-size: 20px;
    }
	.div_onayami {
		margin-top: 0px;
	}
    #sec_onayami .onayami_wrap {
        display: block;
    }
    .onayami_wrap .card {
        width: 100%;
        margin-bottom: 20px;
    }
    .onayami_wrap .card:last-of-type {
        margin-bottom: 0;
    }

    .onayami_wrap .onayamiImg {
        margin-bottom: 20px;
    }
    .div_onayami {
        margin-bottom: 40px;
    }
    .div_onayami .card p {
        text-align: center;
        font-size: 16px;
    }
    .div_kaiketu .kaiketu_kira:before, .div_kaiketu .kaiketu_kira:after {
        display: none;
    }
    .div_kaiketu .h2_blue:after,
	.div_kaiketu .h2_pink:after {
		width:  calc(100% - 40px);
        height: min(16vw,50px);
        top: 14vw;
		top: min(14vw,60px);
		padding-left:  20px;
		padding-right: 20px;
        background-image: url(../../../img/lp/spring2026/kaiketu01_SP.svg);
		transform: translate(20px, -20%);
    }
	.kaiketu_wrap {
		max-width: 600px;
		margin: auto;
	}
    .kaiketu_wrap .card {
        width: 92%;
        padding: 0;
        margin: 0 auto 50px;
    }
    .kaiketu_wrap .card > div {
        width: 100%;
    }
    .kaiketu_wrap .card:nth-of-type(odd) .left_cont .kaiketuBG, .kaiketu_wrap .card:nth-of-type(even) .right_cont .kaiketuBG {
        width: 100%;
        position: relative;
        height: auto;
        margin-bottom: 20px;
    }
    .left_cont .h3_blue ,
	.right_cont .h3_blue,
	.left_cont .h3_pink ,
	.right_cont .h3_pink {
        text-align: center;
    }
    .left_cont .h3_blue + p,
	.right_cont .h3_blue + p,
	.left_cont .h3_pink + p,
	.right_cont .h3_pink + p {
        font-size: 14px;
    }
    .kaiketu_wrap .flex_box:nth-child(2) .left_cont {
        order: 1;
    }
    .pointSVG img {
        width: 28vw;
        height: auto;
		max-width: 150px;
		min-width: 93px;
    }
	.kaiketu_wrap .card:nth-of-type(odd) .pointSVG {
		width: inherit;
		position: relative;
		left: 0;
	}
    .kaiketu_wrap .card:nth-of-type(odd) .left_cont .pointSVG img {
        left: -10px;
    }
    .kaiketu_wrap .flex_box:nth-child(2) .pointSVG img {
        right: 0;
    }
    .onayami_wrap .onayami_guruguru {
        width: 20vw;
        left:  15vw;
    }
	#sec_voice:before {
		background-image: url(../../../img/lp/spring2026/bf_gradSP.png);
	}


    /* === ↓ 生徒の声・保護者の声 ↓ === */
    /* 保護者と生徒で生徒で共通 */
    #sec_voice .card {
        width: 100%;
    }
    #sec_voice .card {
        margin-bottom: 20px;
    }
    #sec_voice .card:last-of-type {
        margin-bottom: 0;
    }
    /* カードの中の文字 */
    #sec_voice dd.color_box {
        font-size: 14px;
        margin-bottom: 10px;
    }
    #sec_voice dt.student_name {
        font-size: 16px;
        line-height: 1.2;
    }
    #sec_voice dt.student_name span {
        font-size: 12px;
		font-weight: 500;
		display: block;
		margin-top: .2em;
    }
    #sec_voice .h3_color {
        font-size: 16px;
        letter-spacing: .05em;
    }
    #sec_voice .card p {
        font-size: 14px;
		line-height: 2;
    }
	#sec_voice .div_sidou h2 {
		line-height: 1.4;
		text-align: center;
	}
	#sec_voice .h2_Licon:before {
		width:  2em !important;
		height: 2em !important;
	}
	.div_sidou p {
		font-size: 14px;
	}
	.div_sidou .flex_box {
		flex-wrap: wrap;
		flex-direction: column;
	}
	div .sidou_card:not(:first-of-type) {
		margin-top: 20px !important;
	}
	.sidou_card {
		width: 100%;
	}
	.sidou_card .bg_white {
		padding: 20px 20px 30px;
	}
	.sidou_card .bg_pink img {
		width: 50%;
		height: auto;
		max-height: inherit;
		min-height: auto;
	}
	.sidou_card h3 {
		font-size: 24px;
	}
	.sidou_card p {
		font-size: 18px;
	}
    /* 保護者の声 */
    .div_hogosya {
        margin-bottom: 30px;
    }
    .div_hogosya img {
        width:  37.333vw;
        height: 37.333vw;
    }
	/* 生徒の声 */
    .div_student .h2_Licon:before {
        width: 30px;
    }
    .div_student .student_img {
		width:  auto;
		height: inherit;
		max-height: inherit;
		margin-right: 0;
    }
    .div_student .student_img img {
        width:  30vw;
		max-width: 100px;
        height: auto;
        transform: translate(7%,-7%) scale(.9);
    }
	/* 生徒の声 */
	.div_student .card {
		margin-top: 0;
	}

	@media screen and (min-width:560px) {
		/* 指導内容カード */
		.div_sidou .flex_box {
			flex-direction: inherit;
		}
		.sidou_card {
			width: calc(100%/2 - 10px);
		}
		div .sidou_card:nth-of-type(2) {
			margin-top: 0 !important;
		}
		/* 保護者の声 */
		#sec_voice .card {
			width: calc(100%/2 - 10px);
		}
	}


	/* ===== 料金表 ===== */
    /* ↓ やりにくいので一旦処理 ↓ */
    table,
    .price_table,
    .schedulle,
    .Group_guidance_schedulle { overflow-x: scroll; }
    /* ↑ やりにくいので一旦処理 ↑ */
    #price_schedulle {
        margin-top:  -1px;
        padding-top: 20px;
    }
    /* 見出し前アイコン */
    #price_schedulle .h2_Licon:before {
        width:  40px;
        height: 40px;
    }
    /* --- 多分このセクションで共通 --- */
    /* headerのflex */
    .Individual_header,
    .Group_guidance_header {
        flex-wrap: wrap;
        justify-content: center;
        margin-bottom: 20px;
    }
    .Individual_header h3,
    .Group_guidance_header h3 {
        min-width: inherit;
        font-size: 20px;
        margin-right:   0;
        margin-bottom: 10px;
        padding: 5px;
        border-radius: 0;
    }
    /* 文字 */
    #price_schedulle h4 {
        font-size: 18px;
        margin-bottom: 10px;
    }
    #price_schedulle li,
    #price_schedulle h4 span {
        font-size: 14px;
    }
    #price_schedulle .comments {
        font-size: 12px;
    }

    #price_schedulle h4 span {
        padding-left: 0;
    }

    /* テーブル */
    .Individual {
        margin-bottom: 40px;
    }
    .uk-table {
        margin-bottom: 10px;
    }
    table th,
    table td {
        font-size: 14px !important;
        padding-left:  10px !important;
        padding-right: 10px !important;
    }
    #price_schedulle table {
        min-width: 700px;
    }
    /* 一番左の縦一列 */
    .schedulle tr > *:first-of-type {
        min-width: 130px;
    }


	/* ===== 講習の流れ ===== */
    #sec_nagare {
        margin-top: 0;
		padding-top: 40px;
    }
	#sec_nagare:before {
		background-image: url(../img/bg_kousyuuSP.png);
	}
    .nagare_wrap {
        margin-bottom: 30px;
    }
    /* 見出し */
    #sec_nagare .h2_Licon {
		flex-direction: column;
		align-items: center;
		justify-content: center;
        margin-bottom: 50px;
    }
	#sec_nagare .h2_Licon:before {
		width:  40px;
		height: 50px;
		margin-right: 0;
	}
	#sec_nagare .h2_Licon strong {
		display: inline-block;
		transform: translateY(.05em)
	}

    /* アイコン */
    .stepSVG {
        width:  70px;
        height: 70px;
        left: calc(50% - 35px);
        transform: translate(0,-50%)
    }
    /* カード */
    .nagare_wrap > div {
        width: 100%;
        display: flex;
        align-items: center;
        flex-direction: row-reverse;
        justify-content: space-between;
        margin-bottom: 40px;
        padding-top: 30px;
    }
    .nagare_wrap > div:last-of-type {
        margin-bottom: 0;
    }

    /* 左の文章 */
    .nagare_wrap .cont_wrap {
        width: calc(65% - 5px);
    }
    .nagare_wrap .cont_wrap p {
        font-size: 14px;
    }

    /* 右の画像 */
    .nagare_wrap .card > img {
        width: calc(35% - 10px);
		max-width: 100px;
        padding: 1vw;
    }



    /* === ↓ よくあるご質問 ↓ === */
    #sec_FaQ .h2_Licon:before {
        width:  50px;
        height: 40px;
    }
    #sec_FaQ .h2_Licon + p {
        font-size: 14px;
        margin-bottom: 15px;
    }
    /* li uk-accordion */
    #sec_FaQ .uk-accordion-title {
        font-size: 16px;
        display: flex;
        align-items: center;
        flex-wrap: nowrap;
        justify-content: flex-start;
        padding: 10px;
    }
    /* Q */
    #sec_FaQ .uk-accordion-title:before {
        font-size: 24px;
        line-height: 1;
        margin-right: 5px;
    }
    /* + */
    #sec_FaQ li:before,
    #sec_FaQ li:after  {
        width: 15px;
        top:   25px;
        right: 15px;
    }
    #sec_FaQ li:nth-of-type(n+2):before,
    #sec_FaQ li:nth-of-type(n+2):after  {
        top: 32px;
    }
    /* accordion-cont */
    .uk-accordion-content {
        font-size:  14px;
        text-align: justify;
        margin-top: 10px;
    }


	/* *************** 2026年度 追加記述 *************** */
	/* ===== SP fixed ===== */
	/* スマホの時に画面一番下に追従 */
	.SPfixedBottom {
		width: 100%;
		position: fixed;
		left:   0;
		bottom: 0;
		flex-wrap: nowrap;
		align-items: stretch;
		justify-content: space-between;
	}
	.SPfixedBottom > div {
		width: calc(100%/3);
		font-weight: bold;
	}
	.SPfixedBottom a {
		height: 50px;
		font-size: 14px;
		text-align: center;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: center;
		padding: 10px;
		color: #fff;
	}
	.SPfixedBottom a:before {
		content: "";
		width:  18px;
		height: 18px;
		display: block;
		margin-right: 5px;
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center;
	}
	/* 資料請求・お申し込み・お問い合せ */
	.SPfixedBottom .fixedL { background-color:#82bc3f; }
	.SPfixedBottom .fixedC { background-color:#ff5431; }
	.SPfixedBottom .fixedR { background-color:#00a2e0; }

	.fixedL a:before {
		background-image: url(../../../img/lp/common/SPfixedL.svg);
	}
	.fixedC a:before {
		background-image: url(../../../img/lp/common/SPfixedC.svg);
	}
	.fixedR a:before {
		background-image: url(../../../img/lp/common/SPfixedR.svg);
	}
	footer { padding-bottom: 50px; }


	/* ===== セクション 単科ゼミ ===== */
	#sec_zemi {
		padding-top: 50px;
	}
	#sec_zemi h2 {
		text-align: center;
		flex-wrap: wrap;
		flex-direction: column;
		align-items: center;
		margin-bottom: 1em;
	}
	#sec_zemi h2 .head_box {
		margin-right: 0;
		margin-bottom: .75em;
	}
	#sec_zemi h2 span {
		font-size: 20px;
		margin-right: 0;
	}
	#sec_zemi h2 span,
	#sec_zemi h2 strong {
		line-height: 1.5;
	}
	/* --- アコーディオン --- */
	.zemi_accordion > li a {
		text-align: center;
		padding: 15px;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	.zemi_accordion > li a span {
		font-size: 24px;
		line-height: 1.2;
	}
	.zemi_accordion li a small  {
		width: 100%;
		font-feature-settings: "palt";
		display: inline-block;
		padding-top: .25em;
	}
	/* 講座アイコン */
	.zemi_accordion > li a {
		overflow: visible !important;
	}
	.zemi_accordion > li a:before {
		width:  3.5em;
		height: 3.5em;
		min-width:  3.5em;
		min-height: 3.5em;
		margin-top: -2em;
		margin-right: 0;
		margin-bottom: .5em;
	}
	.zemi_accordion > li a:after {
		margin: 1em auto .5em;
	}
	/* コンテンツ間 余白 */
	.zemi_accordion > li + li {
		margin-top: 40px !important;
	}


	/* ===== 合格実績 ===== */
	#sec_goukaku .btn {
		bottom: 11vw;
	}
	#sec_goukaku .btn a {
		width: 85%;
	}


	/* ===== 様々な目標位寄り添い指導 ===== */
	#sec_voice .div_sidou h2 {
		flex-wrap: wrap;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	.sidou_card {
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		align-items: stretch;
		justify-content: space-between;
	}
	.sidou_card .bg_pink {
		width: 40% !important;
		border-radius: 10px 0 0 10px;
	}
	.sidou_card .bg_white {
		width: 60% !important;
		border-radius: 0 10px 10px 0;
	}
	.sidou_card .bg_pink img {
		width:  100%;
		height: 100%;
		object-fit: contain;
		object-position: center;
	}
	.sidou_card h3 {
		font-size: 18px;
		text-align: left;
	}
	.sidou_card p {
		font-size: 14px;
		text-align: left;
	}


	/* ===== 合格体験記 ===== */
	#sec_voice .div_hogosya h2,
	#sec_voice .div_student h2 {
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	#sec_voice .div_hogosya h2:before,
	#sec_voice .div_student h2:before {
		margin-right: 0;
		margin-bottom: .35em;
	}


	/* ===== 料金表・スケジュール ===== */
	#price_schedulle {
		padding-top: 30px;
	}
	#price_schedulle h2.h2_Licon {
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	#price_schedulle h2.h2_Licon:before {
		margin-right: 0;
		margin-bottom: .35em;
	}
	.Individual_header h3,
	.Group_guidance_header h3 {
		padding: .25em .5em;
		border-radius: 5px;
	}
	#price_schedulle table {
		min-width: 900px;
	}
	.uk-table td {
		padding: 0.5em 0;
	}
	.comments span {
		line-height: 1.8;
		font-feature-settings: "palt";
		letter-spacing: .15em;
	}
	.comments + .comments {
		margin-top: .5em;
	}
	#price_schedulle li,
	#price_schedulle h4 span {
		font-size: 13px;
	}

	/* ===== よくあるご質問 ===== */
	#sec_FaQ h2 {
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	#sec_FaQ h2:before {
		margin-right: 0;
		margin-bottom: .35em;
	}

	/* ===== Instagram ===== */
	#sec_insta .sp_blk {
		position: relative;
	}
	#sec_insta .sp_blk .btn {
		width: 100%;
		text-align: center;
		position: absolute;
		top: min(25vw,160px);
		left: 0;
	}
	#sec_insta .sp_blk .btn a {
		width: 85%;
		height: min(5.857vw,37px);
		display: inline-block;
	}
}