@charset "utf-8";
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@300@500&display=swap");
html {
  /* viewport 1440px のとき font-size 16px */
  font-size: calc(100vw * 16 / 1440);
}
body {
  /* font-family: "Hiragino Sans", Meiryo, sans-serif; */
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN",
    "Hiragino Sans", Meiryo, sans-serif;
  letter-spacing: 0px;
  color: #000000;
}
img {
  width: 100%;
}

/* 共通パーツ */
.ly_sesctionInner {
  width: min(1024px, 74.963396vw);
  margin-inline: auto;
}
.el_h2title {
  text-align: center;
}
.el_h2title_bubble {
  display: block;
  width: min(80px, 5.856515vw);
  margin-inline: auto;
}
.el_h2title_text {
  display: block;
  margin-top: min(20px, 1.464128vw);
  letter-spacing: 0px;
  color: #186f18;
  font-size: min(28px, 2.8rem);
  line-height: calc(48 / 28);
  font-family: "fot-tsukuardgothic-std", sans-serif;
  font-weight: bold;
}
.el_point_h3title {
  font-size: min(18px, 1.8rem);
  line-height: calc(31 / 18);
  letter-spacing: 0px;
  color: #d6643c;
  font-weight: 600;
}
.el_point_text {
  font-size: min(16px, 1.6rem);
  line-height: calc(26 / 16);
  letter-spacing: 0px;
  color: #000000;
}
.el_flag_h4title {
  padding-bottom: min(16px, 1.1171303vw);
}
.el_flag_h4title_red {
  border-bottom: 3px dotted #d6643c;
}
.el_flag_h4title_green {
  border-bottom: 3px dotted #186f18;
}
.el_flag_h4title_image {
  width: min(120px, 8.787477vw);
  margin-inline: auto;
}
.el_flag_h4title_text {
  font-size: min(16px, 1.6rem);
  line-height: calc(19 / 16);
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
  margin-top: 7px;
  display: block;
}
.el_flag_h4title_text_orange {
  color: #d6643c;
}
.el_flag_h4title_text_green {
  color: #186f18;
}
.el_btn_link.el_btn_link_bg_green {
  background-color: #5ab786;
  color: #fff;
}
.bl_profile_flagitem_text {
  margin-top: min(16px, 1.1171303vw);
  letter-spacing: 0px;
  color: #000000;
  font-size: min(14px, 1.4rem);
  line-height: calc(22 / 14);
}
.el_btn_link {
  position: relative;
  display: grid;
  place-items: center;
  width: min(267px, 19.54612vw);
  margin-inline: auto;
  background: #f1c31f 0% 0% no-repeat padding-box;
  border-radius: 21px;
  letter-spacing: 0px;
  color: #186f18;
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
  min-height: 42px;
  transition: 0.3s;
  font-size: min(16px, 1.6rem);
  line-height: calc(19 / 16);
}

/* 下層ページハンバーガーメニュー */
.bl_topHeader_list {
  display: flex;
  align-items: center;
  position: fixed;
  width: 100%;
  z-index: 100;
  background-color: #fff;
  padding: 21px 24px;
  height: 80px;
}
.bl_topHeader_item_treeIcon {
  width: min(60px, 4.39238vw);
}
.bl_topHeader_item_treeText {
  width: min(132px, 9.66325vw);
  margin-left: 18px;
}
.bl_topHeader_item_treeFreelesson {
  width: min(247px, 18.0819912vw);
  min-width: 200px;
  margin-left: auto;
}
.bl_topHeader_item_treeFreelesson_link {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background-color: #d6643c;
  color: #fff;
  border-radius: 40px;
  min-height: 38px;
  letter-spacing: 0px;
  font-size: min(14px, 1.4rem);
  line-height: calc(22 / 14);
}
.bl_topHeader_item_treeFreelesson_link img {
  display: block;
  width: min(38px, 2.781844vw);
}
.bl_topHeader_item_treeLine {
  width: min(38px, 2.781844vw);
  margin-left: 16px;
  min-width: 38px;
}
.bl_topHeader_item_hamburger {
  margin-left: 19px;
}
.bl_topHeader .bl_hamburger_text {
  letter-spacing: 0px;
  color: #46a578;
  line-height: calc(18 / 14);
  font-size: min(12px, 1.2rem);
  font-family: "Montserrat", sans-serif;
}
#js_header_btn,
#js_header_line {
  transition: 0.3s;
  opacity: 1;
  visibility: visible;
}
#js_header_btn.is_hide,
#js_header_line.is_hide {
  opacity: 0;
  visibility: hidden;
}

/* トップ共通ハンバーガーメニュー */
.el_topHeader {
  position: fixed;
  top: 24px;
  right: 40px;
  width: 340px;
  z-index: 100;
}
.el_topHeader .el_topHeader_list {
  width: 340px;
  margin-left: auto;
  background-color: #fff;
  padding: 16px;
  box-shadow: 0px 3px 6px #00000014;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  border-radius: 60px;
}
.el_topHeader .el_topHeader_item_treeIcon {
  width: 40px;
}
.el_topHeader .el_topHeader_item_hamburger {
  width: 40px;
}
.el_topHeader .bl_hamburger_text {
  color: #186f18;
  line-height: calc(19 / 16);
  font-size: min(12px, 1.2rem);
  font-family: "Montserrat", sans-serif;
  text-align: center;
}
.el_topHeader#js_hamburger_menu {
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;
}
.el_topHeader#js_hamburger_menu.is_show {
  opacity: 1;
  visibility: visible;
}
.el_topHeader#js_hamburger_menu {
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;
}

a {
  font-family: sans-serif;
  text-decoration: none;
}
.bl_hamburger {
  display: block;
  height: 40px;
  margin-left: auto;
  position: relative;
  z-index: 10;
  width: 34px;
  border: none;
  background-color: transparent;
  margin: 0;
}
.bl_hamburger.-active .bl_hamburger_line::before {
  top: -6px;
  transform: rotate(20deg);
}
.bl_hamburger.-active .bl_hamburger_line::after {
  top: -6px;
  transform: rotate(-20deg);
}
/* .bl_hamburger.-active .bl_hamburger_text::before {
  content: "Close";
} */
.bl_hamburger_line {
  display: block;
  position: relative;
  width: 34px;
  height: 1px;
  text-align: center;
  transition: 0.3s;
}
.bl_hamburger_line:before,
.bl_hamburger_line:after {
  content: "";
  display: block;
  height: 100%;
  position: absolute;
  width: 100%;
  background-color: #186f18;
  transition: inherit;
}
.bl_hamburger_line:before {
  top: -12px;
}
.bl_hamburger_line:after {
  top: 0;
}
.bl_hamburger_text {
  position: absolute;
  bottom: -1px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
}
/* .bl_hamburger_text::before {
  content: "Menu";
  text-align: center;
  color: #172e59;
  font-size: 10px;
  font-weight: 900;
} */
.bl_hamburger_navAria {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 9;
  height: 100vh;
  width: 420px;
  opacity: 0;
  visibility: hidden;
  padding: 120px 40px 20px;
  background-color: #fff;
  transition: 0.4s;
  overflow-y: scroll;
  z-index: 99;
}
.bl_hamburger_navLink {
  display: block;
  letter-spacing: 0px;
  color: #186f18;
  font-family: "Montserrat", sans-serif;
  font-size: min(16px, 1.6rem);
  line-height: calc(19 / 16);
  position: relative;
}
.bl_hamburger_navLink span:first-of-type {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  transition: 0.3s;
}
.bl_hamburger_navLink span:first-of-type {
  opacity: 0;
}
.bl_followus {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 20px;
}
.bl_followus_text {
  font-size: min(12px, 1.2rem);
  font-family: "Montserrat", sans-serif;
}
.bl_followus_instagram {
  text-align: center;
  position: relative;
  width: 26px;
  height: 26px;
  margin-left: 119px;
}
.bl_followus_instagram::before {
  position: absolute;
  content: "";
  width: 71px;
  height: 1px;
  background-color: #202020;
  right: 48px;
  top: 50%;
  transform: translateY(-50%);
}

.bl_hamburger_navAria.-active {
  opacity: 1;
  visibility: visible;
}
.bl_hamburger_navContent {
  padding-top: 40px;
  padding-right: 25px;
  padding-bottom: 120px;
  padding-left: 25px;
}
.bl_hamburger_navList > li + li {
  margin-top: min(40px, 2.928257vw);
}
.bl_hamburger_navLink.-active::after {
  transform: translateY(-50%) rotate(-90deg);
}
/* 追従バナー */
.bl_contact_wrap {
  position: fixed;
  left: min(68px, 4.978038vw);
  bottom: 24px;
  z-index: 10;
  display: flex;
  align-items: center;
  gap: 17px;
}
.bl_contact_freelessen_link {
  display: flex;
  align-items: center;
}

.bl_contact_freelesse_image {
  /* display: block; */
  width: min(77px, 5.636896vw);
  min-width: 40px;
  position: relative;
  z-index: 1;
  transition: 0.3s;
  position: relative;
}
.bl_contact_freelessen_img {
  position: absolute;
  inset: 0;
  margin: auto;
  transition: 0.3s;
}
.bl_contact_freelessen_img:last-child {
  opacity: 0;
}
.bl_contact_freelessen_text {
  width: min(240px, 40vw);
  min-height: 40px;
  background: url(../images/bg_ribbon_scroll.svg) center / contain no-repeat;
  text-align: center;
  display: grid;
  place-items: center;
  letter-spacing: 0px;
  color: #ffffff;
  font-size: min(16px, 1.2rem);
  line-height: calc(22 / 16);
  position: relative;
  margin-left: -24px;
  z-index: 0;
}

.bl_contact_line_link {
  display: flex;
  align-items: center;
  background-color: #fff;
  border-radius: 60px 0 0 60px;
  padding: 4px;
  gap: 9px;
}
.bl_contact_line_icon {
  display: block;
  width: min(48px, 3.513909vw);
  min-width: 40px;
  transition: 0.3s;
}
.bl_contact_line_img {
  display: block;
  width: min(48px, 3.513909vw);
  min-width: 40px;
  /* border: solid 1px #5ab786; */
}
.bl_contact_line_text {
  font-size: min(16px, 1.2rem);
  line-height: calc(22 / 16);
  color: #000000;
}

/* トップファーストビュー */
.ly_sesction_firstview {
  position: relative;
}
.ly_sesction_firstview::after {
  position: absolute;
  content: "";
  background-color: #5ab786;
  width: calc((1022% / 1366) * 100);
  height: 200%;
  top: 0;
  right: 0;
  z-index: -1;
}
.bl_firstview_head {
  display: grid;
  justify-content: end;
  align-items: center;
  grid-template-areas: "onlinelesson englishschool";
  min-height: 48px;
  height: 3.513909vw;
}
.bl_firstview_head_onlinelesson {
  grid-area: onlinelesson;
  letter-spacing: 0px;
  font-size: min(16px, 1.2rem);
  line-height: calc(27 / 16);
  color: #ffffff;
  opacity: 1;
  padding: 5px 24px 8px;
  height: 100%;
  display: grid;
  align-items: center;
}
.bl_firstview_head_englishschool {
  grid-area: englishschool;
  font-size: min(14px, 1.2rem);
  line-height: calc(24 / 14);
  letter-spacing: 0px;
  color: #000000;
  background-color: #f1c31f;
  padding: 9px 32px 8px 32px;
  position: relative;
  height: 100%;
  display: flex;
  align-items: center;
}
.bl_firstview_head_englishschool::before {
  content: url(../images/icon_jrschool.svg);
  display: inline-block;
  margin-right: 8px;
  vertical-align: middle;
  height: 31px;
}
.bl_firstview_aside {
  position: absolute;
  bottom: 8px;
  /* display: grid; */
  justify-content: end;
  width: max(68px, 4.978038vw);
  right: 0;
}
.bl_firstview_aside_text {
  transform: rotate(90deg);
  color: #fff;
  font-size: min(12px, 1.2rem);
  font-family: "Montserrat", sans-serif;
}
.bl_firstview_aside_instagram {
  text-align: center;
  position: relative;
  margin-top: 160px;
  width: 26px;
  height: 26px;
  margin-inline: auto;
}
.bl_firstview_aside_instagram::before {
  position: absolute;
  content: "";
  width: 1px;
  height: 74px;
  background-color: #fff;
  top: -110px;
  left: 50%;
  transform: translateX(-50%);
}
.bl_firstview_wrap {
  display: grid;
  grid-template-columns: 9.516837vw 1fr;
  gap: 3.733528vw;
  padding: 0 max(68px, 4.978038vw) 0 3.733528vw;
}
.bl_topSideMenu {
  /* margin-right: min(51px, 3.733528vw); */
}
.bl_topSideMenu_textlogo {
  margin-top: 5px;
}
.bl_topSideMenu_nav {
  margin-top: min(190px, 13.909224vw);
}
.bl_topImage_bnr {
  grid-row: 1/2;
  grid-column: 2/3;
}
.bl_topImage_bnr_bg {
  position: relative;
  overflow: hidden;
  display: block;
}
.bl_topImage_bnr_bg::after {
  content: "";
  position: absolute;
  background: transparent
    linear-gradient(
      89deg,
      #ffffff00 0%,
      #ffffffaa 18%,
      #ffffffac 58%,
      #ffffff00 100%
    )
    0% 0% no-repeat padding-box;
  width: 40.702781vw;
  height: 100%;
  /* right: 0; */
  left: 0;
  z-index: 1;
}
.bl_topImageContent {
  grid-row: 1/2;
  grid-column: 2/3;
  /* justify-self: end; */
  justify-self: start;
  align-self: center;
  width: 27.672035vw;
  /* margin-right: 7.540263vw; */
  margin-left: 5.8565vw;
  position: relative;
  z-index: 2;
}
.bl_topImage_sub {
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
  letter-spacing: 0px;
  color: #186f18;
  font-size: min(16px, 1.6rem);
  line-height: calc(19 / 16);
  position: relative;
  margin-left: 27px;
}
.bl_topImage_sub::before {
  content: "";
  position: absolute;
  background-color: #f1c31f;
  width: 19px;
  height: 19px;
  border-radius: 50%;
  left: -27px;
  top: 50%;
  transform: translateY(-50%);
}
.bl_topImage_h1title {
  letter-spacing: 0px;
  color: #186f18;
  text-shadow: 0px 3px 6px #ffffff29;
  font-family: "fot-tsukuardgothic-std", sans-serif;
  font-weight: bold;
  font-size: min(42px, 2.6rem);
  line-height: calc(59 / 42);
  margin-top: min(32px, 2.342606vw);
  padding-bottom: min(32px, 2.342606vw);
  border-bottom: 1px solid #202020;
}
.bl_topImage_lead {
  margin-top: min(32px, 2.342606vw);
  letter-spacing: 0px;
  color: #000000;
  font-size: min(16px, 1.1rem);
  line-height: calc(27 / 16);
  font-weight: 600;
}
.bl_topSideMenu_link {
  display: block;
  letter-spacing: 0px;
  color: #186f18;
  font-family: "Montserrat", sans-serif;
  font-size: max(16px, 1.4rem);
  line-height: calc(19 / 16);
  position: relative;
  font-weight: 300;
}
.bl_topSideMenu_link span:last-of-type {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  transition: 0.3s;
}
.bl_topSideMenu_link span:last-of-type {
  opacity: 0;
}

.bl_topSideMenu_item + .bl_topSideMenu_item {
  margin-top: min(40px, 2.928257vw);
}

/* アコーディオンメニュー */
.bl_accordionWrap .bl_accordion_list {
  width: 100%;
  overflow: hidden;
}
.bl_accordionWrap .bl_accordion_list .bl_accordion_title {
  cursor: pointer;
}
.bl_accordion_list.is_hide .bl_accordion_content {
  visibility: hidden;
  padding-block: 0;
  opacity: 0;
  transition: 0.3s;
}
.bl_accordion_list .bl_accordion_content {
  visibility: visible;
  opacity: 1;
  transition: 0.3s;
}

/* 英語をもっと気軽に */
.ly_sesction_welcome {
  overflow: hidden;
  margin-top: min(80px, 58.56515vw);
}
.ly_sesction_welcome_bgInner {
  border-radius: 2000px 2000px 0 0 / 300px 300px 0 0;
  margin: 0 min(-200px, -14.412884vw);
  background-color: transparent;
  /* height: min(696px, 50.951683vw); */
  background-image: url(../images/bg_sky01.png);
  background-size: cover;
  background-attachment: fixed;
  position: relative;
}
.ly_sesction_welcome_bgInner::before,
.ly_sesction_welcome_bgInner::after {
  content: "";
  position: absolute;
  bottom: 0;
  z-index: 2;
}
.ly_sesction_welcome_bgInner::before {
  background: url(../images/bg_leaf_left.svg) no-repeat center / contain;
  left: 287px;
  left: max(287px, 21.010248vw);
  width: min(102px, 7.46705vw);
  height: min(115px, 8.41874vw);
}
.ly_sesction_welcome_bgInner::after {
  background: url(../images/bg_leaf_right.svg) no-repeat center / contain;
  /* right: 268px; */
  right: max(268px, 19.6193265vw);
  width: min(89px, 6.515373vw);
  height: min(107px, 7.833089vw);
}
.ly_sesction_welcome .ly_sesctionInner {
  width: min(680px, 49.78038vw);
  padding: min(80px, 5.8565153vw) 0 min(160px, 11.71303vw);
}
.bl_welcome_sub {
  text-align: center;
  letter-spacing: 0px;
  color: #202020;
  font-family: "Montserrat", sans-serif;
  font-size: min(16px, 1.6rem);
  line-height: calc(19 / 16);
}
.bl_welcome_sub span {
  position: relative;
}
.bl_welcome_sub span::before,
.bl_welcome_sub span::after {
  content: "";
  position: absolute;
  width: 2px;
  height: 19px;
  background-color: #202020;
  top: 0;
}
.bl_welcome_sub span::before {
  left: -18px;
  transform: rotate(-24deg);
}
.bl_welcome_sub span::after {
  right: -18px;
  transform: rotate(24deg);
}
.bl_welcome_h2title {
  margin-top: min(40px, 2.928257vw);
  letter-spacing: 0px;
  color: #186f18;
  text-shadow: 2px 2px 3px #ffffff60;
  font-family: "fot-tsukuardgothic-std", sans-serif;
  font-weight: bold;
  font-size: min(32px, 3.2rem);
  line-height: calc(54 / 32);
  text-align: center;
}
.bl_welcome_text {
  font-family: "Hiragino Sans", Meiryo, sans-serif;
  font-size: min(16px, 1rem);
  line-height: calc(27 / 16);
  letter-spacing: 0px;
  color: #000000;
  text-align: center;
  margin-top: min(40px, 2.928257vw);
}
.bl_welcome_lead {
  margin-top: min(40px, 2.928257vw);
  text-align: center;
  letter-spacing: 0px;
  color: #000000;
  font-family: "Hiragino Sans", Meiryo, sans-serif;
  font-size: min(22px, 1.4rem);
  line-height: calc(37 / 22);
  text-decoration: underline; /* 下線 */
  text-decoration-thickness: 9px; /* 線の太さ */
  text-decoration-color: #f5d45e; /* 線の色 */
  text-underline-offset: -0.1em; /* 線の位置。テキストに重なるようにやや上部にする */
  text-decoration-skip-ink: none; /* 下線と文字列が重なる部分でも下線が省略されない（線が途切れない） */
}
.bl_welcome_lead span {
  display: block;
  width: fit-content;
  margin: auto;
}
.bl_welcome_lead span + span {
  margin-top: min(28px, 1.944444vw);
}

/* English treeのココが魅力 */
.ly_sesction_point {
  position: relative;
  z-index: 1;
  overflow: hidden;
  margin-top: min(-60px, -4.392386vw);
}
.ly_sesction_point_bgInner {
  border-radius: 2000px 2000px 0 0 / 300px 300px 0 0;
  background-color: #fff;
  margin: 0 min(-200px, -14.412884vw);
}
.ly_sesction_point_contentInner {
  padding: min(87px, 6.36896vw) 0 min(104px, 7.613469vw);
  margin: 0 200px;
}
.bl_pointColumn:first-of-type {
  margin-top: min(68px, 4.978038vw);
}
.bl_pointColumn {
  display: flex;
  width: min(1366px, 100vw);
  margin-inline: auto;
  /* justify-content: space-between; */
  /* gap: 56px; */
}
.bl_pointColumn:nth-of-type(2n) {
  flex-direction: row-reverse;
}
.bl_pointColumn:nth-of-type(2n) .bl_pointColumn_content {
  margin-right: 56px;
}
.bl_pointColumn:nth-of-type(2n + 1) .bl_pointColumn_content {
  margin-left: 56px;
}
.bl_pointColumn_image {
  width: 50%;
}
.bl_pointColumn_image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.bl_pointColumn_content {
  width: min(394px, 28.843382vw);
  padding-block: min(66px, 4.831625vw);
}
.bl_pointColumn_sub {
  font-size: min(16px, 1.6rem);
  line-height: calc(27 / 16);
  letter-spacing: 0px;
  color: #000000;
}
.bl_pointColumn_sub + .el_point_h3title {
  margin-top: min(16px, 1.171303vw);
}
.el_point_h3title + .el_point_text {
  margin-top: min(24px, 1.756954vw);
}
.ly_sesction_point .ly_sesctionInner {
  /* width: min(1024px, 74.963396vw); */
  width: clamp(720px, 90vw, 1024px);
}
.bl_pointColumn_list {
  margin-top: min(64px, 4.685212vw);
  display: flex;
  gap: min(32px, 2.3426061vw);
  justify-content: center;
}
.bl_pointColumn_list_item {
  /* width: min(320px, 23.426061vw); */
  width: min(320px, 100%);
  padding: min(40px, 2.928257vw) min(24px, 1.756954vw);
  box-shadow: 0px 3px 6px #00000014;
  border: 1px solid #46a578;
  border-radius: 10px;
}
.bl_pointColumn_list_item_sub {
  text-align: center;
  font-size: min(16px, 1.6rem);
  line-height: calc(26 / 16);
  letter-spacing: 0px;
  color: #000000;
}
.bl_pointColumn_list_item_image {
  margin-top: min(16px, 1.171303vw);
  width: min(220px, 16.105417vw);
  margin-inline: auto;
}
.bl_pointColumn_list_item .el_point_h3title {
  text-align: center;
  margin-top: min(24px, 1.756954vw);
}

/* English treeの講師ってどんな人！？ */
.ly_sesction_profile {
  background-color: #5ab786;
  padding-top: min(87px, 6.3689604vw);
  padding-bottom: min(125px, 9.150805vw);
}
.ly_sesction_profile .el_h2title_text {
  color: #fff;
}
.ly_sesction_profile .ly_sesctionInner {
  margin-top: min(68px, 4.978038vw);
  width: min(920px, 67.349926vw);
}
.bl_profileWrap {
  background: #ffffff 0% 0% no-repeat padding-box;
  box-shadow: 0px 0px 10px #00000014;
  border-radius: 20px;
  padding: min(56px, 4.0995697vw);
  padding-bottom: min(61px, 4.465592vw);
  position: relative;
}
.bl_profile_column {
  display: flex;
  gap: min(56px, 4.0995607vw);
}
.bl_profile_column_content {
  width: min(427px, 31.25915vw);
}
.bl_profile_column_image {
  width: min(325px, 23.792093vw);
}
.el_profile_text {
  font-family: "Hiragino Sans", Meiryo, sans-serif;
  letter-spacing: 0px;
  color: #000000;
  font-size: min(16px, 1.6rem);
  line-height: calc(27 / 16);
}
.bl_profile_column_kanjiname {
  letter-spacing: 0px;
  color: #000000;
  font-size: min(24px, 2.4rem);
  line-height: calc(41 / 24);
  margin-top: min(10px, 0.7320644vw);
}
.bl_profile_column_englishname {
  letter-spacing: 0px;
  font-family: "Montserrat", sans-serif;
  color: #186f18;
  margin-top: min(14px, 1.02489vw);
  font-weight: 500;
}
.bl_profile_column_list {
  letter-spacing: 0px;
  color: #000000;
  font-size: min(16px, 1.6rem);
  line-height: calc(27 / 16);
  margin-top: min(28px, 2.04978vw);
}
.bl_profile_column_item {
  padding-left: 1.4em;
  text-indent: -1.4em;
}
.bl_profile_column_item + .bl_profile_column_item {
  /* margin-top: min(8px, 0.5856515vw); */
}
.bl_profile_column_item::before {
  content: "";
  width: 15px;
  height: 15px;
  background-color: #5ab786;
  border-radius: 50%;
  display: inline-block;
  vertical-align: text-top;
  left: 0;
  margin-right: 8px;
}
.bl_profile_column_list + .el_profile_text {
  margin-top: min(14px, 1.02489vw);
}
.bl_profile_flaglist {
  display: flex;
  gap: 4%;
}
.bl_profile_flagitem {
  width: 22%;
  text-align: center;
}
.bl_profile_flaglist {
  margin-top: min(54px, 3.953147vw);
}
.bl_profileWrap .el_btn_wrap {
  position: absolute;
  bottom: -21px;
  left: 50%;
  transform: translateX(-50%);
}

/* English treeでは複数のコースをご用意しております！ */
.ly_sesction_course {
  padding-top: min(92px, 6.734992vw);
  padding-bottom: min(104px, 7.613469vw);
}
.ly_sesction_course .ly_sesctionInner {
  width: clamp(740px, 67.349926vw, 920px);
}
.bl_accordionWrap {
  margin-top: min(64px, 4.6852122vw);
}
.bl_accordion_list {
  box-shadow: 0px 3px 6px #00000014;
}
.bl_accordion_list + .bl_accordion_list {
  margin-top: min(40px, 2.928257vw);
}
.bl_accordion_title {
  background: #d6643c 0% 0% no-repeat padding-box;
  letter-spacing: 0px;
  color: #ffffff;
  font-size: min(18px, 1.8rem);
  line-height: calc(22 / 18);
  padding: min(21px, 1.5373352vw) min(24px, 1.7569546vw);
  font-weight: normal;
}
.bl_accordion_title span {
  display: block;
  position: relative;
}
.bl_accordion_title span::before {
  content: "Close";
  position: absolute;
  right: 40px;
  transition: 0.3s;
  letter-spacing: 0px;
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
  font-size: min(16px, 1.6rem);
  line-height: calc(19 / 16);
}
.bl_accordion_title span::after {
  content: "";
  position: absolute;
  width: 16px;
  height: 16px;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  right: 4px;
  transform: rotate(45deg);
  top: -1px;
  transition: 0.3s;
}
.js_accordionList.is_hide .bl_accordion_title span::before {
  content: "Open";
}
.js_accordionList.is_hide .bl_accordion_title span::after {
  transform: rotate(225deg);
  top: 8px;
}
.bl_accordion_content {
  background-color: #fff;
  padding: min(32px, 2.342606vw);
  padding-bottom: min(40px, 2.928257vw);
}
.bl_course_column {
  border: 1px solid #186f18;
  display: flex;
  align-items: center;
  min-height: 64px;
  position: relative;
}
.bl_course_column + .bl_course_column {
  margin-top: min(16px, 0.671303vw);
}
.bl_course_column:nth-of-type(2n) {
  background-color: #fffbf2;
}
.bl_course_column_h4title {
  display: grid;
  align-items: center;
  letter-spacing: 0px;
  color: #186f18;
  text-align: center;
  font-size: min(16px, 1.4rem);
  line-height: calc(22 / 16);
  font-weight: 600;
  position: relative;
  width: 168px;
  min-width: 132px;
  min-height: 64px;
  padding: 12px 27px 12px 12px;
}
.bl_course_column_h4title::after {
  content: "";
  position: absolute;
  background-image: url(../images/bg_arrow_right.svg);
  background-repeat: no-repeat;
  object-fit: cover;
  top: 50%;
  transform: translateY(-50%);
  width: 14px;
  height: 100%;
  right: 0;
}

.bl_course_columun_group01 {
  display: flex;
  align-items: center;
}
.bl_course_columun_group02 {
  display: flex;
  align-items: center;
}
.bl_course_column_minutes {
  display: grid;
  place-items: center;
  margin-left: min(22px, 1.010541vw);
  background-color: #5ab786;
  border-radius: 50%;
  width: clamp(32px, 3.513909vw, 49px);
  height: clamp(32px, 3.513909vw, 49px);
  min-width: 32px;
  min-height: 32px;
  letter-spacing: 0px;
  color: #ffffff;
  font-size: min(14px, 1rem);
  line-height: calc(22 / 14);
}
.bl_course_column_image {
  width: min(40px, 2.928257vw);
  min-width: 32px;
  margin-left: min(16px, 0.671303vw);
}
.bl_course_column_imagetext {
  letter-spacing: 0px;
  color: #000000;
  font-size: min(16px, 1rem);
  line-height: calc(22 / 16);
  font-weight: normal;
  width: min(124px, 9.0775988vw);
  min-width: 84px;
}
.bl_course_column_frequency {
  border: 1px solid #186f18;
  letter-spacing: 0px;
  color: #186f18;
  font-size: min(14px, 1rem);
  line-height: calc(22 / 14);
  display: grid;
  place-items: center;
  min-height: 29px;
  width: min(70px, 5.1244509vw);
  min-width: 36px;
  margin-left: min(23px, 1.083748vw);
}
.bl_course_column_daytime {
  letter-spacing: 0px;
  color: #186f18;
  font-size: min(16px, 1rem);
  line-height: calc(22 / 16);
  margin-left: min(16px, 1.171303vw);
}
.bl_course_column .el_btn_wrap {
  position: absolute;
  right: -16px;
}
.bl_course_column .el_btn_link {
  width: clamp(118px, 12.2005856vw, 153px);
  min-height: 32px;
  padding-right: min(56px, 4.0995607vw);
  padding-left: min(20px, 1.537335vw);
  font-size: min(14px, 1rem);
  line-height: calc(18 / 14);
  transition: 0.3s;
}
.el_btn_link_bar::after {
  content: "";
  height: 1px;
  width: min(27px, 1.9765739vw);
  background-color: #186f18;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 21px;
  transition: 0.3s;
}

/* 無料体験レッスン受付中 */
.ly_sesction_freelesson {
  padding-top: min(56px, 4.09956vw);
  padding-bottom: 192px;
  background: rgba(244, 218, 128, 0.43);
  position: relative;
}
.ly_sesction_freelesson::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../images/bg_letstry.jpg) center / cover;
  z-index: -1;
}
.bl_freelesson_subimage {
  width: min(77px, 5.636896vw);
  margin-inline: auto;
}
.bl_freelesson_h3title {
  margin-top: min(16px, 1.171303vw);
  width: min(430px, 40vw);
  margin-inline: auto;
  min-height: 47px;
  background: url(../images/bg_ribbon.svg) center / contain no-repeat;
  text-align: center;
  display: grid;
  place-items: center;
  letter-spacing: 0px;
  color: #ffffff;
  font-size: min(18px, 1.6rem);
  line-height: calc(31 / 18);
}
.bl_freelesson_lead {
  margin-top: min(24px, 1.756954vw);
}
.bl_freelesson_lead * + * {
  margin-top: min(32px, 2.342606vw);
}
.bl_freelesson_lead_text {
  text-align: center;
  letter-spacing: 0px;
  color: #000000;
  font-size: min(16px, 1.2rem);
  line-height: calc(26 / 16);
}
.ly_sesction_freelesson .el_btn_wrap {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 90px;
}

/* English treeってこんなところ！ */
.ly_sesction_question {
  background-color: #5ab786;
  padding-top: min(87px, 6.36896vw);
  padding-bottom: min(104px, 7.6134699vw);
}
.ly_sesction_question .el_h2title_text {
  color: #fff;
}
.ly_sesction_question .el_h2title_bubble {
  width: min(90px, 6.585797vw);
}
.ly_sesction_question .ly_sesctionInner {
  width: clamp(640px, 74.963396vw, 1024px);
}
.bl_question_list {
  margin-top: min(64px, 4.685212vw);
  /* display: flex; */
  /* gap: min(32px, 2.342606vw); */
  /* justify-content: center; */
}
.bl_question_item {
  width: min(320px, 23.4260614vw);
  /* min-width: 220px; */
  background-color: #ffffff;
  box-shadow: 0px 3px 6px #00000014;
  border: 1px solid #46a578;
  border-radius: 10px;
  padding: 24px 24px 32px 24px;
}
.bl_question_item_column {
  display: flex;
  gap: min(17px, 1.244509vw);
  align-items: flex-start;
}
.bl_question_item_column_image {
  width: min(74px, 5.417276vw);
  min-width: 40px;
  height: min(74px, 5.417276vw);
  min-height: 40px;
  border-radius: 50%;
  overflow: hidden;
  border: solid 2px #5ab786;
}
.bl_question_item_column_image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.bl_question_item_column_content {
  width: calc(100% - min(17px, 1.244509vw) - min(74px, 5.417276vw));
}
.bl_question_item_column_content_class {
  font-size: min(16px, 1.2rem);
  line-height: calc(22 / 16);
  letter-spacing: 0px;
  color: #000000;
}
.bl_question_item_column_content_name {
  font-size: min(16px, 1.2rem);
  line-height: calc(22 / 16);
  margin-top: min(16px, 1.171303vw);
  letter-spacing: 0px;
  color: #000000;
}
.bl_question_item_column_content_name span {
  margin-left: min(13px, 0.9516837vw);
}

.bl_question_item_column_answer {
  margin-top: 20px;
  height: 250px;
  overflow: hidden;
  overflow-y: scroll;
}

.bl_question_item_column_answer ul li {
  font-size: min(16px, 1.2rem);
  line-height: calc(26 / 16);
  letter-spacing: 0px;
  color: #000000;
  padding-left: 15px;
  position: relative;
}

.bl_question_item_column_answer ul li::before {
  position: absolute;
  content: '・';
  font-size: min(16px, 1.2rem);
  left: 0;
  top: 0;
}


.bl_question_item_column_answer::-webkit-scrollbar {
  width: 6px;
}

.bl_question_item_column_answer::-webkit-scrollbar-track {
  background-color: #ccc;
}

.bl_question_item_column_answer::-webkit-scrollbar-thumb {
  background-color: #5ab786;
}


.bl_question_item_answer {
  font-size: min(16px, 1.2rem);
  line-height: calc(26 / 16);
  letter-spacing: 0px;
  color: #000000;
}

/* English treeブログ */
.ly_sesction_blog {
  padding-top: min(87px, 6.36896vw);
  padding-bottom: 210px;
  position: relative;
}
.bl_blog_column {
  margin-top: min(56px, 4.09956vw);
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: min(40px, 2.9282576vw);
}
.bl_blog_column_category {
  width: clamp(180px, 17.569546vw, 240px);
  min-width: 180px;
}
.bl_blog_column_content {
  width: min(744px, 54.4655929vw);
}
.bl_blog_article_column {
  display: flex;
  align-items: center;
  gap: 24px;
}
.bl_blog_article_column_image {
  width: 155px;
}
.bl_blog_article_column_content {
  width: 565px;
}
.bl_blog_column_category_h3title {
  background-color: #5ab786;
  letter-spacing: 0px;
  color: #ffffff;
  font-family: "Montserrat", sans-serif;
  font-size: min(16px, 1.6rem);
  line-height: calc(19 / 16);
  padding: 8px 16px;
}
.bl_blog_column_category_item {
  border-bottom: 3px dotted #5ab786;
}

.bl_blog_column_category_item.active a {
  font-weight: bold;
  color: #5ab786;
}


.bl_blog_column_category_link {
  display: block;
  letter-spacing: 0px;
  color: #d6643c;
  font-size: min(16px, 1.6rem);
  line-height: calc(26 / 16);
  padding: 14px 16px;
  transition: 0.3s;
}
.bl_blog_column_content_item + .bl_blog_column_content_item {
  margin-top: min(40px, 2.928257vw);
}
.bl_blog_article_column_content_date {
  letter-spacing: 0px;
  color: #202020;
  font-size: min(14px, 1.4rem);
  line-height: calc(26 / 14);
}
.bl_blog_article_column_content_category {
  margin-top: min(10px, 0.732064vw);
  background-color: #000;
  color: #fff;
  font-size: min(14px, 1.4rem);
  line-height: calc(26 / 14);
  width: fit-content;
  min-height: 22px;
  padding: 0 14px;
  display: grid;
  place-items: center;
}
.bl_blog_article_column_content_category.bl_blog_article_column_content_category_info {
  background-color: #5a88b7;
}
.bl_blog_article_column_content_category.bl_blog_article_column_content_category_englishstudy {
  background-color: #b75ab3;
}
.bl_blog_article_column_content_category.bl_blog_article_column_content_category_sayenglish {
  background-color: #68b75a;
}
.bl_blog_article_column_content_category.bl_blog_article_column_content_category_todayslesson {
  background-color: #5ab7b0;
}
.bl_blog_article_column_content_leadtext {
  margin-top: min(20px, 1.464128vw);
  letter-spacing: 0px;
  color: #186f18;
  font-size: min(18px, 1.8rem);
  line-height: calc(26 / 18);
}
.ly_sesction_blog .el_btn_wrap {
  position: absolute;
  bottom: 104px;
  left: 50%;
  transform: translateX(-50%);
}
.bl_blog_column_content_link .bl_blog_article_column_content_leadtext {
  transition: 0.3s;
}

/* フッター */
.bl_footer_map_wrap {
  display: flex;
}
.bl_footer_map_content {
  background-color: #5ab786;
  width: 50%;
  padding: min(72px, 5.270863vw);
}
.bl_footer_map_googlemap {
  width: 50%;
}
.bl_footer_map_googlemap iframe {
  width: 100%;
  height: 100%;
}
.bl_footer_map_content_column {
  display: flex;
  gap: min(16px, 1.171303vw);
  width: 248px;
  margin-inline: auto;
  justify-content: center;
  align-items: center;
}
.bl_footer_map_content_image {
  width: 75px;
}
.bl_footer_map_content_h3title_main {
  display: block;
  letter-spacing: 0px;
  color: #ffffff;
  font-size: min(24px, 2.4rem);
  line-height: calc(41 / 24);
}
.bl_footer_map_content_h3title_sub {
  display: block;
  margin-top: 4px;
  letter-spacing: 0px;
  color: #ffffff;
  font-size: min(14px, 1.4rem);
  line-height: calc(24 / 14);
}
.bl_footer_map_content_address {
  margin-top: min(36px, 2.635431vw);
  text-align: center;
  letter-spacing: 0px;
  color: #ffffff;
  font-size: min(16px, 1.6rem);
  line-height: calc(27 / 16);
}
.bl_footer_map_content_address_number {
  margin-right: min(16px, 1.171303vw);
}
.bl_footer_map_content_address + .el_btn_wrap {
  margin-top: min(20px, 1.464128vw);
}
.el_btn_link.el_btn_googlemap {
  border: 1px solid #ffffff;
  background-color: transparent;
  color: #fff;
  letter-spacing: 0px;
  transition: 0.3s;
  width: min(160px, 11.71303vw);
  min-width: 160px;
  min-height: 33px;
}
.bl_footer_map_content_holiday {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: min(40px, 2.928257vw);
  gap: min(16px, 1.171303vw);
}
.bl_footer_map_content_holiday_title {
  background-color: #ffffff;
  border-radius: 4px;
  letter-spacing: 0px;
  color: #46a578;
  font-size: min(16px, 1.6rem);
  line-height: calc(27 / 16);
  padding: 0 8px;
  font-weight: normal;
}
.bl_footer_map_content_holiday_content {
  font-size: min(16px, 1.6rem);
  line-height: calc(27 / 16);
  color: #fff;
  letter-spacing: 0px;
}
.bl_footer_map_content_holiday + .el_btn_wrap {
  margin-top: min(37px, 2.70863vw);
  margin-top: min(24px, 1.756954vw);
}
.ly_footer .el_btn_link.el_btn_contact {
  transition: 0.3s;
  width: min(160px, 11.71303vw);
  min-height: 33px;
  font-size: min(14px, 1.4rem);
  line-height: calc(18 / 14);
  min-width: 160px;
}
.ly_footer .el_btn_link.el_btn_contact span {
  position: relative;
  padding: 0 35px 0 32px;
}
.ly_footer .el_btn_link.el_btn_contact span::before,
.ly_footer .el_btn_link.el_btn_contact span::after {
  content: "";
  position: absolute;
}
.ly_footer .el_btn_link.el_btn_contact span::before {
  background: url(../images/bg_mail_icon.svg) center/contain no-repeat;
  width: 24px;
  height: 24px;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
}
.ly_footer .el_btn_link.el_btn_contact span::after {
  height: 1px;
  width: min(27px, 1.9765739vw);
  background-color: #186f18;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  transition: 0.3s;
}
.ly_footerInner {
  padding-top: min(34px, 2.489019vw);
  padding-bottom: min(24px, 1.756954vw);
  padding-inline: min(68px, 4.978038vw);
}
.bl_footer_followus {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.bl_footer_followus_text {
  font-size: min(12px, 1.2rem);
  font-family: "Montserrat", sans-serif;
}
.bl_footer_copyright {
  text-align: right;
  letter-spacing: 0px;
  color: #707070;
  font-size: min(14px, 1.4rem);
  line-height: calc(24 / 14);
  margin-top: 16px;
}
.bl_footer_followus_instagram {
  text-align: center;
  position: relative;
  width: 26px;
  height: 26px;
  margin-left: 119px;
}
.bl_footer_followus_instagram::before {
  position: absolute;
  content: "";
  width: 71px;
  height: 1px;
  background-color: #202020;
  right: 48px;
  top: 50%;
  transform: translateY(-50%);
}

/* ----------------------------
  ここから PC幅
---------------------------- */
@media screen and (min-width: 768px) {
  .hp_sp {
    display: none !important;
  }

  /* ホバー */
  .bl_hamburger_navLink:hover span:last-of-type {
    opacity: 0;
  }
  .bl_hamburger_navLink:hover span:first-of-type {
    opacity: 1;
    color: #d6633b;
  }
  .bl_contact_freelessen_link:hover .bl_contact_freelessen_img:first-child {
    opacity: 0;
  }
  .bl_contact_freelessen_link:hover .bl_contact_freelessen_img:last-child {
    transform: scale(1.2);
    opacity: 1;
  }
  .bl_contact_line_link:hover .bl_contact_line_icon {
    transform: scale(1.25);
  }
  .bl_topSideMenu_link:hover span:first-of-type {
    opacity: 0;
  }
  .bl_topSideMenu_link:hover span:last-of-type {
    opacity: 1;
    color: #d6633b;
  }
  .bl_profileWrap .el_btn_link:hover {
    width: 140px;
    height: 140px;
    border-radius: 50%;
    background-color: #f1b81f;
    position: relative;
    top: 49px;
  }
  .bl_course_column .el_btn_link:hover {
    background-color: #f1b81f;
  }
  .el_btn_link_bar:hover::after {
    width: min(40px, 2.9282576vw);
    right: 0;
  }
  .ly_sesction_freelesson .el_btn_link:hover {
    width: 140px;
    height: 140px;
    border-radius: 50%;
    background-color: #46a578;
    top: 49px;
  }
  .bl_blog_column_category_link:hover {
    color: #5ab786;
  }
  .ly_sesction_blog .el_btn_link:hover {
    width: 140px;
    height: 140px;
    border-radius: 50%;
    background-color: #f1b81f;
    position: relative;
    top: 49px;
  }
  .bl_blog_column_content_link:hover .bl_blog_article_column_content_leadtext {
    text-decoration: underline;
  }
  .el_btn_link.el_btn_googlemap:hover {
    color: #5ab786;
    background-color: #fff;
  }
  .el_btn_link.el_btn_contact:hover {
    background-color: #f1b81f;
  }
  .el_btn_link.el_btn_contact:hover span::after {
    width: 48px;
    right: -35px;
  }
  .ly_footer .el_btn_link.el_btn_contact:hover span::after {
    width: 40px;
    right: -18px;
  }

  /* English treeでは複数のコースをご用意しております！ */
  .bl_course_column_h4title.bl_course_column_h4title_line3::after {
    background-image: url(../images/bg_arrow_right_line3.svg);
    background-size: contain;
  }

  /* スライダー */
  .swiper_content {
    position: relative;
  }
  .swiper-button-prev:after,
  .swiper-button-next:after {
    font-size: 24px;
  }
  .swiper-button-prev {
    left: -64px;
    margin-top: 0;
    color: #5ab786;
    background-color: #f1c31f;
    width: 48px;
    height: 48px;
    border-radius: 50px;
  }
  .swiper-button-next {
    right: -64px;
    margin-top: 0;
    color: #5ab786;
    background-color: #f1c31f;
    width: 48px;
    height: 48px;
    border-radius: 50px;
  }
}

/* ----------------------------
  ここから SP幅
---------------------------- */
@media not screen and (min-width: 768px) {
  .hp_pc {
    display: none !important;
  }
  /* 基本設定 */
  html {
    /* viewport 375px のとき font-size 16px */
    font-size: calc(100vw * 16 / 375);
  }
  .ly_body {
    overflow-x: hidden;
  }
  /* 共通 */
  .el_h2title_bubble {
    width: 18vw;
    min-width: 72px;
  }
  .el_point_h3title {
    font-size: max(16px, 1rem);
    line-height: calc(27 / 16);
  }
  .el_point_text {
    font-size: max(14px, 0.8rem);
    line-height: calc(24 / 14);
  }
  .ly_sesctionInner {
    width: 100%;
    padding: 0 19px;
  }

  /* ヘッダー */
  .el_topHeader {
    position: fixed;
    width: 100%;
    top: 0;
    right: inherit;
  }
  .el_topHeader .el_topHeader_list {
    width: 100%;
    border-radius: 0;
    justify-content: space-between;
    align-items: center;
    height: 57px;
  }
  .el_topHeader .el_topHeader_item_treeIcon {
    width: calc(38 / 375 * 100%);
    max-width: 44px;
  }
  .el_topHeader .el_topHeader_item.el_topHeader_item_treeText {
    width: calc(92 / 375 * 100%);
    max-width: 140px;
    margin-right: auto;
  }
  .el_btn_link {
    font-size: max(16px, 0.6rem);
    line-height: calc(19 / 16);
  }

  /* メイン */
  .ly_main {
    padding-top: 57px;
  }

  /* ファーストビュー */
  .ly_firstviewInner {
    padding: 0 19px;
  }
  .bl_firstview_wrap {
    display: block;
    padding: 0;
  }
  .ly_sesction_firstview::after {
    right: inherit;
    width: 100%;
    top: calc(86 / 375 * 100%);
  }
  .bl_topImageContent {
    padding: 20px 16px;
    width: calc(100% - 16px);
    margin-right: 0;
    margin-inline: auto;
    margin-top: -16px;
    background-color: #ffffff;
    position: relative;
  }
  .bl_topImage_sub {
    font-size: max(14px, 1rem);
    line-height: calc(18 / 14);
    margin-left: 1.8rem;
  }
  .bl_topImage_sub::before {
    width: 1.2rem;
    height: 1.2rem;
    border-radius: 50%;
    left: -1.8rem;
  }
  .bl_topImage_h1title {
    font-size: max(28px, 1.8rem);
    line-height: calc(41 / 28);
    margin-top: 16px;
    padding-bottom: 0;
    border-bottom: none;
  }
  .bl_topImage_lead {
    margin-top: 16px;
    font-size: max(14px, 0.8rem);
    line-height: calc(24 / 14);
  }

  /* 英語をもっと気軽に */
  .ly_sesction_welcome {
    margin-top: 32px;
  }
  .ly_sesction_welcome_bgInner {
    border-radius: 1000px 1000px 0 0 / 300px 300px 0 0;
    background-image: url(../images/bg_sky01_sp.png);
  }
  .ly_sesction_welcome_bgInner {
    margin: 0 -50px;
  }
  .ly_sesction_welcome .ly_sesctionInner {
    width: calc(100% - 100px);
    padding: 56px 19px 34.133333vw;
  }
  .bl_welcome_sub {
    font-size: max(14px, 1rem);
    line-height: calc(18 / 14);
  }
  .bl_welcome_sub span::before,
  .bl_welcome_sub span::after {
    top: -0.7vw;
    height: 26px;
  }
  .bl_welcome_h2title {
    font-size: max(24px, 1.6rem);
    line-height: calc(41 / 24);
    margin-top: 32px;
  }
  .bl_welcome_text {
    font-size: max(14px, 0.8rem);
    line-height: calc(24 / 14);
    margin-top: 32px;
    text-align: left;
  }
  .bl_welcome_lead {
    text-align: left;
    margin-top: 32px;
    font-size: max(16px, 1rem);
    line-height: calc(27 / 16);
  }
  .bl_welcome_lead span {
    width: 100%;
  }
  .bl_welcome_lead span + span {
    margin-top: 25px;
  }
  .ly_sesction_welcome_bgInner::before {
    left: 69px;
    width: calc(61 / 375 * 100%);
    height: calc(69 / 375 * 100%);
  }
  .ly_sesction_welcome_bgInner::after {
    right: 69px;
    width: calc(54 / 375 * 100%);
    height: calc(64 / 375 * 100%);
  }

  /* English treeのココが魅力 */
  .bl_pointColumn {
    width: 100%;
  }
  .bl_pointColumn:first-of-type {
    margin-top: 36px;
  }
  .ly_sesction_point_bgInner {
    border-radius: 1000px 1000px 0 0 / 300px 300px 0 0;
    margin: 0 -50px;
  }
  .ly_sesction_point_contentInner {
    width: calc(100% - 100px);
    padding: 72px 0 72px;
    margin: 0;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
  }
  .el_h2title_text {
    font-size: max(18px, 1rem);
    line-height: calc(31 / 18);
    margin-top: 8px;
  }
  .bl_pointColumn {
    flex-direction: column;
  }
  .bl_pointColumn:nth-of-type(2n) {
    flex-direction: column;
  }
  .bl_pointColumn:nth-of-type(2n) .bl_pointColumn_image {
    margin-left: auto;
  }
  .bl_pointColumn_image {
    width: calc(303 / 375 * 100%);
  }
  .bl_pointColumn_content {
    width: 100%;
    padding-block: 0;
    padding: 24px 19px 0;
  }
  .bl_pointColumn:nth-of-type(2n + 1) .bl_pointColumn_content {
    margin-left: 0;
  }
  .bl_pointColumn:nth-of-type(2n) .bl_pointColumn_content {
    margin-right: 0;
  }
  .bl_pointColumn + .bl_pointColumn {
    margin-top: 48px;
  }
  .bl_pointColumn_sub {
    font-size: max(14px, 0.8rem);
    line-height: calc(24 / 14);
  }
  .el_point_h3title + .el_point_text {
    margin-top: 8px;
  }
  .bl_pointColumn_sub + .el_point_h3title {
    margin-top: 0;
  }
  .ly_sesction_point .ly_sesctionInner {
    width: 100%;
    padding: 0 19px;
  }
  .bl_pointColumn_list {
    flex-direction: column;
    gap: 16px;
    margin-top: 40px;
  }
  .bl_pointColumn_list_item {
    width: 100%;
    padding: 32px 16px;
  }
  .bl_pointColumn_list_item_sub {
    font-size: max(14px, 0.8rem);
    line-height: calc(24 / 14);
  }
  .bl_pointColumn_list_item_image {
    width: calc(220 / 375 * 100%);
    min-width: 220px;
    margin-top: 16px;
  }
  .bl_pointColumn_list_item .el_point_h3title {
    margin-top: 16px;
  }

  /* English treeの講師ってどんな人！？ */
  .ly_sesction_profile .ly_sesctionInner {
    width: 100%;
    margin-top: 40px;
  }
  .ly_sesction_profile {
    padding-top: 72px;
    padding-bottom: 149px;
  }
  .bl_profileWrap {
    border-radius: 8px;
    padding: 24px 17px;
  }
  .bl_profile_column {
    flex-direction: column-reverse;
    gap: 18px;
  }
  .bl_profile_column_image {
    width: 100%;
    margin: auto;
  }
  .bl_profile_column_content {
    width: 100%;
  }
  .el_profile_text {
    font-size: max(14px, 0.8rem);
    line-height: calc(24 / 14);
  }
  .bl_profile_column_kanjiname {
    font-size: max(24px, 1.4rem);
    line-height: calc(41 / 24);
    margin-top: 4px;
  }
  .bl_profile_column_englishname {
    font-size: max(14px, 0.8rem);
    line-height: calc(18 / 14);
    margin-top: 8px;
  }
  .bl_profile_column_list {
    margin-top: 18px;
    font-size: max(14px, 0.8rem);
    line-height: calc(24 / 14);
  }
  .bl_profile_column_item + .bl_profile_column_item {
    margin-top: 8px;
  }
  .bl_profile_column_list + .el_profile_text {
    margin-top: 16px;
  }
  .bl_profile_flaglist {
    margin-top: 40px;
    flex-direction: column;
  }
  .bl_profile_flagitem {
    width: 100%;
    padding-inline: 15px;
  }
  .el_flag_h4title_image {
    width: calc(177 / 375 * 100%);
    min-width: 177px;
  }
  .el_flag_h4title_text {
    display: block;
    margin-top: -20px;
  }
  .el_flag_h4title {
    padding-bottom: 16px;
  }
  .bl_profile_flagitem_text {
    margin-top: 16px;
  }
  .bl_profile_flagitem + .bl_profile_flagitem {
    margin-top: 40px;
  }
  .bl_profile_flagitem_text {
    font-size: max(14px, 0.8rem);
    line-height: calc(22 / 14);
  }
  .bl_profileWrap .el_btn_wrap {
    bottom: -66px;
    width: 100%;
  }
  .el_btn_link {
    min-height: 51px;
    border-radius: 60px;
    width: 100%;
  }

  /* English treeでは複数のコースをご用意しております！ */
  .ly_sesction_course {
    padding-top: 72px;
    padding-bottom: 72px;
  }
  .bl_course_column {
    flex-direction: column;
  }
  .bl_course_column_h4title {
    width: 100%;
    font-size: max(16px, 0.7rem);
    line-height: calc(22 / 16);
    font-weight: 600;
    padding: 0;
  }
  .bl_course_columun_group01 {
    width: 100%;
    justify-content: center;
    margin-top: 8vw;
  }
  .bl_course_column_minutes {
    margin-left: 0;
    width: max(49px, 13.066666vw);
    height: max(49px, 13.066666vw);
    min-width: 49px;
    min-height: 49px;
  }
  .bl_course_column_image {
    width: max(49px, 13.066666vw);
    min-width: 49px;
    margin-left: 0;
  }
  .bl_course_column_imagetext {
    width: auto;
    min-width: auto;
    font-size: max(16px, 0.7rem);
    line-height: calc(22 / 16);
  }
  .bl_course_columun_group02 {
    width: 100%;
    justify-content: center;
    margin-top: 6vw;
    padding-bottom: 50px;
  }
  .bl_course_column_frequency {
    margin-left: 0;
    width: 70px;
    min-width: 70px;
    font-size: max(16px, 0.7rem);
    line-height: calc(22 / 16);
  }
  .bl_course_column_daytime {
    margin-left: 16px;
    font-size: max(16px, 0.7rem);
    line-height: calc(22 / 16);
  }
  .bl_course_column .el_btn_wrap {
    right: inherit;
    bottom: -25.5px;
    width: calc(100% - 34px);
  }
  .bl_course_column .el_btn_link {
    min-height: 51px;
    width: 100%;
  }
  .bl_course_column_h4title::after {
    background-image: url(../images/bg_arrow_bottom_sp.svg);
    background-size: cover;
    background-position: top center;
    top: inherit;
    transform: translateY(0);
    width: 100%;
    max-width: 337px;
    height: 3vw;
    right: inherit;
    left: 50%;
    transform: translateX(-50%);
    bottom: -3vw;
  }
  .bl_course_column + .bl_course_column {
    margin-top: 57px;
  }
  .bl_accordion_list + .bl_accordion_list {
    margin-top: 57px;
  }
  .bl_accordionWrap {
    margin-top: 40px;
  }
  .ly_sesction_course .ly_sesctionInner {
    width: 100%;
    padding: 0 19px;
  }
  .bl_accordionWrap .bl_accordion_list .bl_accordion_title {
    height: 100px;
    text-align: center;
    padding: 16px;
    font-size: min(16px, 1rem);
    line-height: calc(22 / 16);
  }
  .bl_accordion_title span::before {
    right: inherit;
    left: 50%;
    transform: translateX(-50%);
    top: 28px;
    font-size: min(14px, 0.8rem);
    line-height: calc(18 / 14);
  }
  .bl_accordion_title span::after {
    right: inherit;
    top: 56px;
    left: 50%;
    transform: rotate(45deg) translateX(-50%);
  }
  .js_accordionList.is_hide .bl_accordion_title span::after {
    top: 56px;
    transform: rotate(225deg) translateX(-50%);
    transform-origin: left center;
  }
  .bl_accordion_content {
    padding: 0;
    padding-bottom: 0;
    padding-top: 16px;
  }
  .bl_accordion_list {
    box-shadow: none;
  }
  .bl_accordion_list .bl_accordion_content {
    margin-bottom: 25.5px;
  }
  .is_hide.bl_accordion_list .bl_accordion_content {
    margin-bottom: 0;
  }
  .el_btn_link_bar::after {
    content: none;
  }

  /* 無料体験レッスン受付中 */
  .ly_sesction_freelesson {
    padding: 32px 0 43px;
  }
  .ly_sesction_freelesson::after {
    background: url(../images/bg_letstry_sp.jpg) center / cover;
  }
  .bl_freelesson_subimage {
    width: 14.1333333vw;
    min-width: 53px;
  }
  .bl_freelesson_h3title {
    width: 85.333333vw;
    min-width: 320px;
    margin-top: 16px;
    font-size: max(16px, 0.7rem);
    line-height: calc(27 / 16);
  }
  .bl_freelesson_lead {
    margin-top: 24px;
  }
  .bl_freelesson_lead_text {
    font-size: min(14px, 0.8rem);
    line-height: calc(24 / 14);
  }
  .ly_sesction_freelesson .el_btn_wrap {
    position: relative;
    bottom: inherit;
    left: inherit;
    transform: translateX(0);
    margin-top: 32px;
  }

  /* English treeってこんなところ！ */
  .ly_sesction_question {
    padding-top: 72px;
    padding-bottom: 72px;
  }
  .ly_sesction_question .ly_sesctionInner {
    width: 100%;
  }
  .swiper-free-mode > .swiper-wrapper.bl_question_list {
    margin-top: 40px;
    /* flex-direction: column; */
    /* gap: 16px; */
  }
  .bl_question_item {
    width: 100%;
    padding: 24px;
  }
  .bl_question_item_column {
    gap: 16px;
  }
  .bl_question_item_column_image {
    width: 19.733333vw;
    min-width: 74px;
    height: 19.733333vw;
    min-height: 74px;
  }
  .bl_question_item_column_content {
    width: calc(100% - 16px - 19.733333vw);
  }
  .bl_question_item_column_content_class {
    font-size: max(16px, 0.7rem);
    line-height: calc(22 / 16);
  }
  .bl_question_item_column_content_name {
    font-size: max(16px, 0.7rem);
    line-height: calc(22 / 16);
    margin-top: 16px;
  }
  .bl_question_item_answer {
    margin-top: 16px;
    font-size: max(16px, 0.7rem);
    line-height: calc(26 / 16);
  }

  /* English treeブログ */
  .ly_sesction_blog {
    padding-top: 72px;
    padding-bottom: 72px;
  }
  .bl_blog_column {
    margin-top: 43px;
    flex-direction: column;
    gap: 28px;
  }
  .bl_blog_column_category {
    width: 100%;
  }
  .bl_blog_column_content {
    width: 100%;
  }
  .bl_blog_article_column {
    flex-direction: column;
    gap: 16px;
  }
  .bl_blog_article_column_image {
    width: 100%;
  }
  .bl_blog_article_column_content {
    width: 100%;
  }
  .bl_blog_column_category_h3title {
    position: relative;
    min-height: 42px;
    display: grid;
    align-items: center;
  }
  .bl_blog_column_category_h3title::after {
    content: "";
    position: absolute;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
    transform-origin: left center;
    transform: rotate(45deg);
    width: 18px;
    height: 18px;
    right: 16px;
    top: 0;
    transition: 0.3s;
  }
  .bl_blog_column_category_accordion.is_hide
    .bl_blog_column_category_h3title::after {
    transform: rotate(225deg);
    transform-origin: center;
    top: 16px;
  }
  .bl_blog_column_category_accordion.is_hide .bl_blog_column_category_list {
    visibility: hidden;
    opacity: 0;
  }
  .bl_blog_column_category_accordion .bl_blog_column_category_list {
    visibility: visible;
    opacity: 1;
    transition: 0.3s;
  }
  .bl_blog_column_category_h3title {
    font-size: max(16px, 0.7rem);
    line-height: calc(19 / 16);
  }
  .bl_blog_column_category_link {
    font-size: max(16px, 0.7rem);
    line-height: calc(26 / 16);
    padding: 8px 16px;
  }
  .bl_blog_article_column_content_date {
    font-size: min(14px, 0.5rem);
    line-height: calc(26 / 14);
  }
  .bl_blog_article_column_content_category {
    margin-top: 8px;
    font-size: min(14px, 0.6rem);
    line-height: calc(26 / 14);
  }
  .bl_blog_article_column_content_leadtext {
    margin-top: 16px;
    font-size: max(16px, 0.7rem);
    line-height: calc(24 / 16);
  }
  .ly_sesction_blog .el_btn_wrap {
    position: relative;
    bottom: inherit;
    left: inherit;
    transform: translateX(0);
    margin-top: 40px;
  }
  .bl_blog_column_content_item + .bl_blog_column_content_item {
    margin-top: 40px;
  }

  /* フッター */
  .bl_footer_map_wrap {
    flex-direction: column;
  }
  .bl_footer_map_content {
    padding: 32px 19px 40px;
    width: 100%;
  }
  .bl_footer_map_content_column {
    width: 100%;
    flex-direction: column;
    gap: 16px;
  }
  .bl_footer_map_content_image {
    width: 20vw;
    min-width: 75px;
  }
  .bl_footer_map_content_h3title_main {
    font-size: max(24px, 1.4rem);
    line-height: calc(41 / 24);
    text-align: center;
  }
  .bl_footer_map_content_h3title_sub {
    margin-top: 0;
    text-align: center;
    font-size: max(14px, 0.7rem);
    line-height: calc(26 / 14);
  }
  .bl_footer_map_content_address {
    margin-top: 12px;
    font-size: max(14px, 0.7rem);
    line-height: calc(26 / 14);
  }
  .bl_footer_map_content_address + .el_btn_wrap {
    margin-top: 24px;
  }
  .bl_footer_map_content_holiday {
    margin-top: 32px;
    gap: 16px;
  }
  .bl_footer_map_content_holiday_title {
    font-size: max(16px, 0.8rem);
    line-height: calc(27 / 16);
  }
  .bl_footer_map_content_holiday_content {
    font-size: max(16px, 0.8rem);
    line-height: calc(27 / 16);
  }
  .bl_footer_map_content_holiday + .el_btn_wrap {
    margin-top: 16px;
  }
  .el_btn_link.el_btn_contact span::after {
    width: 27px;
  }
  .ly_footerInner {
    padding: 24px 19px 25px;
  }
  .bl_footer_copyright {
    margin-top: 0;
    text-align: center;
    font-size: max(14px, 0.7rem);
    line-height: calc(24 / 14);
  }

  /* ハンバーガーメニュー中身 */
  .el_topHeader .el_topHeader_list {
    box-shadow: none;
  }
  .bl_hamburger_navAria {
    width: 100vw;
    padding: 57px 0 0;
    right: inherit;
    left: 0;
  }
  .bl_hamburger_navContent {
    padding: 0;
  }
  .bl_firstview_head {
    display: block;
    max-height: inherit;
    height: inherit;
  }
  .bl_firstview_head_onlinelesson {
    margin-top: 16px;
    padding: 0;
    color: #167c48;
    font-size: max(14px, 0.7rem);
    line-height: calc(24 / 14);
    text-align: center;
  }
  .bl_firstview_head_englishschool {
    margin-top: 14px;
    text-align: center;
    min-height: 47px;
    font-size: max(14px, 0.7rem);
    line-height: calc(24 / 14);
  }
  .bl_firstview_head_englishschool::before {
    width: 35px;
    position: relative;
    top: -1px;
  }
  .bl_hamburger_navLink span:first-of-type {
    opacity: 1;
  }
  .bl_hamburger_navLink span:first-of-type {
    position: relative;
    top: inherit;
    left: inherit;
  }
  .bl_hamburger_navList {
    margin-top: 32px;
    padding: 0 19px;
  }
  .bl_hamburger_navList > li {
    text-align: center;
    padding-bottom: 24px;
    border-bottom: 1px solid #cccccc;
  }
  .bl_hamburger_navList > li + li {
    margin-top: 24px;
  }
  .bl_hamburger_navJapanese {
    font-size: max(16px, 0.8rem);
    line-height: calc(27 / 16);
  }
  .bl_hamburger_navEnglish {
    font-size: max(14px, 0.7rem);
    line-height: calc(18 / 14);
    margin-top: 8px;
    font-family: "Montserrat", sans-serif;
    font-weight: 300;
  }
  .bl_followus {
    position: relative;
    left: inherit;
    transform: translateX(0);
    bottom: inherit;
    margin-top: 40px;
    padding-bottom: 39px;
  }

  /* 追従バナー */
  .bl_contact_wrap {
    gap: 0;
    left: 0;
    bottom: 0;
    width: 100%;
  }
  .bl_contact_freelessen {
    width: 50%;
  }
  .bl_contact_line {
    width: 50%;
  }
  .bl_contact_freelessen_link {
    width: 100%;
    gap: 6px;
    background-color: #2f483e;
    padding: 6px;
    min-height: 45px;
    justify-content: center;
  }
  .bl_contact_freelesse_image {
    width: 35px;
    min-width: 35px;
  }
  .bl_contact_freelessen_text {
    background: transparent;
    width: fit-content;
    min-height: auto;
    margin-left: 0;
    font-size: max(12px, 0.5rem);
    line-height: calc(20 / 12);
    place-items: flex-start;
  }
  .bl_contact_line_link {
    border-radius: 0;
    min-height: 45px;
    gap: 8px;
    padding: 6px;
    justify-content: center;
  }
  .bl_contact_line_icon {
    width: 33px;
    min-width: 33px;
  }
  .bl_contact_line_text {
    width: fit-content;
    font-size: max(12px, 0.5rem);
    line-height: calc(20 / 12);
  }
  .el_btn_link.el_btn_googlemap,
  .ly_footer .el_btn_link.el_btn_contact {
    width: 100%;
    min-height: 51px;
  }
  .ly_footer .el_btn_link.el_btn_contact span::after {
    width: 27px;
  }

  /* 背景をスマホで固定 */
  _::-webkit-full-page-media,
  _:future,
  :root .ly_sesction_welcome_bgInner {
    background-attachment: inherit;
  }

  /* スライダー */
  .swiper_content {
    position: relative;
  }
  .swiper-button-prev:after,
  .swiper-button-next:after {
    font-size: 20px;
  }
  .swiper-button-prev {
    left: -10px;
    margin-top: 0;
    color: #5ab786;
    background-color: #f1c31f;
    width: 32px;
    height: 32px;
    border-radius: 50px;
  }
  .swiper-button-next {
    right: -10px;
    margin-top: 0;
    font-size: 16px;
    color: #5ab786;
    background-color: #f1c31f;
    width: 32px;
    height: 32px;
    border-radius: 50px;
  }
}
