@charset "UTF-8";
:root {
  --break-xs: 375;
}

img {
  height: auto;
}

@media only screen and (min-width: 768px) {
  .hp_spOnly {
    display: none !important;
  }
}

.hp_pcOnly {
  display: none !important;
}

@media only screen and (min-width: 768px) {
  .hp_pcOnly {
    display: block !important;
  }
}

.curve-section {
  position: relative;
}

.section-inr {
  max-width: 1040px;
  margin: auto;
  padding: 0 20px;
}

@media only screen and (max-width: 767px) {
  .section-inr {
    padding: 0 20px;
  }
}

.curve-section__inr {
  position: relative;
  overflow: hidden;
  min-height: 200px;
  padding: 100px 0;
}

.curve-section__inr.is-blue {
  background: #0070CC;
}

.curve-section__inr.is-lightblue {
  background: #b3d7f5;
}

.curve-section__inr.is-lightblue2 {
  background-color: #EDF6FE;
}

.curve-section__inr.is-curve-up::before, .curve-section__inr.is-curve-down::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 80px;
  background-size: 100% 100%;
}

@media only screen and (max-width: 767px) {
  .curve-section__inr.is-curve-up::before, .curve-section__inr.is-curve-down::before {
    left: 50%;
    transform: translateX(-50%);
    background-position-x: center;
    background-size: 140% 100%;
    width: calc(100vw + 4vw);
    margin-left: -2vw;
    height: 14vw;
  }
}

.curve-section__inr.is-curve-up.is-curve-white::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 80' preserveAspectRatio='none'%3E%3Cpath fill='%23ffffff' d='M0,80 C360,0 1080,0 1440,80 L1440,0 L0,0 Z'/%3E%3C/svg%3E");
}

.curve-section__inr.is-curve-up.is-curve-blue::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 80' preserveAspectRatio='none'%3E%3Cpath fill='%230070CC' d='M0,80 C360,0 1080,0 1440,80 L1440,0 L0,0 Z'/%3E%3C/svg%3E");
}

.curve-section__inr.is-curve-up.is-curve-lightblue::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 80' preserveAspectRatio='none'%3E%3Cpath fill='%23b3d7f5' d='M0,80 C360,0 1080,0 1440,80 L1440,0 L0,0 Z'/%3E%3C/svg%3E");
}

.curve-section__inr.is-curve-up.is-curve-lightblue2::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 80' preserveAspectRatio='none'%3E%3Cpath fill='%23EDF6FE' d='M0,80 C360,0 1080,0 1440,80 L1440,0 L0,0 Z'/%3E%3C/svg%3E");
}

.curve-section__inr.is-curve-down.is-curve-white::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 80' preserveAspectRatio='none'%3E%3Cpath fill='%23ffffff' d='M0,0 C360,80 1080,80 1440,0 L1440,0 L0,0 Z'/%3E%3C/svg%3E");
}

.curve-section__inr.is-curve-down.is-curve-blue::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 80' preserveAspectRatio='none'%3E%3Cpath fill='%230070CC' d='M0,0 C360,80 1080,80 1440,0 L1440,0 L0,0 Z'/%3E%3C/svg%3E");
}

.curve-section__inr.is-curve-down.is-curve-lightblue::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 80' preserveAspectRatio='none'%3E%3Cpath fill='%23b3d7f5' d='M0,0 C360,80 1080,80 1440,0 L1440,0 L0,0 Z'/%3E%3C/svg%3E");
}

.curve-section__inr.is-curve-down.is-curve-lightblue2::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 80' preserveAspectRatio='none'%3E%3Cpath fill='%23EDF6FE' d='M0,0 C360,80 1080,80 1440,0 L1440,0 L0,0 Z'/%3E%3C/svg%3E");
}

@media only screen and (min-width: 768px) {
  .bunkyou_hero3 {
    width: 100%;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    background-image: url("../img/common/kv_lower_bg.png");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    aspect-ratio: 1440 / 572;
    max-height: 572px;
  }
}

.bunkyou_hero3_bg {
  width: 100%;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

@media only screen and (min-width: 768px) {
  .bunkyou_hero3_bg {
    height: 100%;
    background-position: bottom center;
    min-height: 450px;
    max-height: 450px;
  }
}

.bunkyou_hero3_ly {
  max-width: 1040px;
  padding: 0 20px;
  margin: 0 auto;
}

@media only screen and (min-width: 768px) {
  .bunkyou_hero3_ly {
    height: 100%;
  }
}

.bunkyou_hero3_inr {
  padding: 0 0 32px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_hero3_inr {
    padding: 0;
    height: 100%;
    display: flex;
    align-items: center;
  }
}

.bunkyou_hero3_cont {
  padding: 16px 0 0;
}

@media only screen and (min-width: 768px) {
  .bunkyou_hero3_cont {
    padding: 0;
  }
}

.bunkyou_hero3_cont > *:last-child {
  margin-bottom: 0;
}

.bunkyou_hero3_ttl {
  display: flex;
  align-items: center;
  min-height: calc(48px * 1.25);
  margin-bottom: 8px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_hero3_ttl {
    min-height: calc(72px * 1.25);
  }
}

.bunkyou_hero3_ttl img {
  display: block;
}

.bunkyou_hero3_txt {
  font-size: 1.125rem;
  line-height: 1.75;
  font-weight: 300;
  letter-spacing: calc(18px * 0.05);
  margin-bottom: 24px;
}

.bunkyou_hero3 .el_btn {
  display: block;
  padding: 6px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_hero3 .el_btn {
    display: inline-block;
    padding: 23px;
  }
}

.bunkyou_hero3 .el_btn .el_btn_cont {
  gap: 10px;
}

.bunkyou_hero3 .el_btn .el_btn_txt {
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: calc(20px * 0.05);
}

.bunkyou_hero3.is-case .bunkyou_hero3_bg {
  background-image: url("../img/case/kv_case_bg_sp.png");
  aspect-ratio: 375 / 643;
}

@media only screen and (min-width: 768px) {
  .bunkyou_hero3.is-case .bunkyou_hero3_bg {
    background-image: url("../img/case/kv_case_bg.png");
    aspect-ratio: auto;
  }
}

.bunkyou_hero3.is-case .bunkyou_hero3_ttl img {
  max-width: 160px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_hero3.is-case .bunkyou_hero3_ttl img {
    max-width: none;
  }
}

.bunkyou_hero3.is-movie .bunkyou_hero3_bg {
  background-image: url("../img/movie/kv_movie_bg_sp.png");
  aspect-ratio: 375 / 395;
}

@media only screen and (min-width: 768px) {
  .bunkyou_hero3.is-movie .bunkyou_hero3_bg {
    background-image: url("../img/movie/kv_movie_bg.png");
    aspect-ratio: auto;
  }
}

.bunkyou_hero3.is-movie .bunkyou_hero3_ttl img {
  max-width: 239px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_hero3.is-movie .bunkyou_hero3_ttl img {
    max-width: none;
  }
}

.bunkyou_hero3.is-seminar .bunkyou_hero3_bg {
  background-image: url("../img/seminar/kv_seminar_bg_sp.png");
  aspect-ratio: 375 / 569;
}

@media only screen and (min-width: 768px) {
  .bunkyou_hero3.is-seminar .bunkyou_hero3_bg {
    background-image: url("../img/seminar/kv_seminar_bg.png");
    aspect-ratio: auto;
  }
}

.bunkyou_hero3.is-seminar .bunkyou_hero3_ttl {
  margin-bottom: 16px;
}

.bunkyou_hero3.is-seminar .bunkyou_hero3_ttl img {
  max-width: 316px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_hero3.is-seminar .bunkyou_hero3_ttl img {
    max-width: none;
  }
}

.bunkyou_heroCaseDetail_bg {
  width: 100%;
  background-image: url("../img/case/kv_case_detail_bg_sp.png");
  background-size: 100%;
  background-position: top center;
  background-repeat: no-repeat;
}

@media only screen and (min-width: 768px) {
  .bunkyou_heroCaseDetail_bg {
    background-image: url("../img/case/kv_case_detail_bg.png");
    background-size: cover;
    background-position: center;
  }
}

.bunkyou_heroCaseDetail_ly {
  max-width: 1040px;
  padding: 0 20px;
  margin: 0 auto;
}

@media only screen and (min-width: 768px) {
  .bunkyou_heroCaseDetail_ly {
    height: 100%;
  }
}

.bunkyou_heroCaseDetail_inr {
  padding: 0 0 50px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_heroCaseDetail_inr {
    padding: 0 0 60px;
    height: 100%;
    display: flex;
    align-items: center;
  }
}

.bunkyou_heroCaseDetail_cont {
  display: flex;
  flex-direction: column;
  gap: 40px;
  padding: 16px 0 0;
}

@media only screen and (min-width: 768px) {
  .bunkyou_heroCaseDetail_cont {
    gap: 33px;
    padding: 0;
  }
}

.bunkyou_heroCaseDetail_top {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_heroCaseDetail_top {
    gap: 16px;
  }
}

.bunkyou_heroCaseDetail_ttl {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.bunkyou_heroCaseDetail_name {
  display: block;
  font-size: 1.25rem;
  font-weight: 300;
  color: #0078DC;
}

@media only screen and (min-width: 768px) {
  .bunkyou_heroCaseDetail_name {
    font-size: 1.5rem;
  }
}

.bunkyou_heroCaseDetail_lead {
  display: block;
  font-size: 2.25rem;
  font-weight: 700;
  line-height: 1.5;
  color: #333;
}

@media only screen and (min-width: 768px) {
  .bunkyou_heroCaseDetail_lead {
    font-size: 3.5rem;
  }
}

.bunkyou_heroCaseDetail_body {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_heroCaseDetail_body {
    flex-direction: row;
    gap: 74px;
  }
}

.bunkyou_heroCaseDetail_detail {
  display: flex;
  flex-direction: column;
  align-items: normal;
  gap: 24px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_heroCaseDetail_detail {
    align-items: flex-start;
  }
}

.bunkyou_heroCaseDetail_txt {
  font-size: 1rem;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: calc(16px * 0.05);
}

@media only screen and (min-width: 768px) {
  .bunkyou_heroCaseDetail_txt {
    font-size: 1.125rem;
    letter-spacing: calc(18px * 0.05);
  }
}

.bunkyou_heroCaseDetail .el_btn {
  display: block;
  padding: 23px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_heroCaseDetail .el_btn {
    display: inline-block;
    min-width: min(384px, 100%);
  }
}

.bunkyou_heroCaseDetail .el_btn .el_btn_cont {
  gap: 10px;
}

.bunkyou_heroCaseDetail .el_btn .el_btn_txt {
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: calc(20px * 0.05);
}

.bunkyou_heroCaseDetail_eyecatch {
  flex-shrink: 0;
}

.bunkyou_heroCaseDetail_eyecatch img {
  aspect-ratio: 472 / 291;
  width: 100%;
  object-fit: cover;
  border-radius: 6px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_heroCaseDetail_eyecatch img {
    width: 472px;
  }
}

.bunkyou_heroCaseDetail_bottom {
  padding: 24px;
  background-color: #EDF6FE;
  border-radius: 8px;
}

.bunkyou_heroCaseDetail_bottom.is-tachibana .bunkyou_caseGnav li:nth-child(1) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_heroCaseDetail_bottom.is-k-kyoei .bunkyou_caseGnav li:nth-child(2) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_heroCaseDetail_bottom.is-yjp_y_gakuin .bunkyou_caseGnav li:nth-child(3) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_heroCaseDetail_bottom.is-gakushuin .bunkyou_caseGnav li:nth-child(4) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_heroCaseDetail_bottom.is-aiko .bunkyou_caseGnav li:nth-child(5) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_heroCaseDetail_bottom.is-osakaseiryo .bunkyou_caseGnav li:nth-child(6) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_heroCaseDetail_bottom.is-salesio .bunkyou_caseGnav li:nth-child(7) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_heroCaseDetail_bottom.is-kyototachibana .bunkyou_caseGnav li:nth-child(8) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_heroCaseDetail_bottom.is-takinogawa .bunkyou_caseGnav li:nth-child(9) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_heroCaseDetail_bottom.is-kashiwagi .bunkyou_caseGnav li:nth-child(10) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_heroCaseDetail_bottom.is-toyokawa .bunkyou_caseGnav li:nth-child(11) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_heroCaseDetail_bottom.is-edotori .bunkyou_caseGnav li:nth-child(12) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_heroCaseDetail_bottom.is-gijuku .bunkyou_caseGnav li:nth-child(13) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_heroCaseDetail_bottom.is-fukuokafutaba .bunkyou_caseGnav li:nth-child(14) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_heroCaseDetail_bottom.is-nichidai3 .bunkyou_caseGnav li:nth-child(15) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_heroCaseDetail_bottom.is-hachioji .bunkyou_caseGnav li:nth-child(16) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_heroCaseDetail_bottom.is-shotoukakoen-ejh .bunkyou_caseGnav li:nth-child(17) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_heroCaseDetail_bottom.is-akenohoshi .bunkyou_caseGnav li:nth-child(18) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_heroCaseDetail_bottom.is-kamimura .bunkyou_caseGnav li:nth-child(19) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

#case .lg-section::after {
  content: none;
}

#case .curve-section__inr {
  background-image: url("../img/top_v2/bg_lb.png");
  background-repeat: repeat-y;
  background-position: center top;
  background-size: 100% auto;
}

@media only screen and (max-width: 767px) {
  #case .curve-section__inr {
    background-image: url("../img/top_v2/bg_lb_sp.png");
    background-size: 100% auto;
    background-position: center 10vw;
    padding-bottom: 0;
    padding-top: calc(13.33333vw);
  }
}

.bunkyou_caseNew_inr {
  padding: 0 0 50px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseNew_inr {
    padding: 40px 0 0;
  }
}

.bunkyou_caseNew_inr > .lg-section {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseNew_inr > .lg-section {
    gap: 20px;
  }
}

.bunkyou_toolnav {
  display: flex;
  gap: 8px;
  margin-bottom: 16px;
}

.bunkyou_toolnav_item {
  border-right-width: 0;
}

@media (max-width: 600px) {
  .bunkyou_toolnav_item#tab-all {
    display: none;
  }
}

.bunkyou_cases {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px 20px;
}

@media (min-width: 601px) {
  .bunkyou_cases {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 1001px) {
  .bunkyou_cases {
    grid-template-columns: repeat(3, 1fr);
  }
}

.bunkyou_card {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  gap: 16px;
  padding: 24px 24px 16px;
  background-color: #fff;
  text-decoration: none;
  border-radius: 8px;
  color: #333;
}

.bunkyou_card:focus .bunkyou_card_head img, .bunkyou_card:hover .bunkyou_card_head img {
  transform: scale(1.05);
}

.bunkyou_card:focus .el_btn, .bunkyou_card:hover .el_btn {
  background: #005ca9;
}

.bunkyou_card:focus .el_btn .el_btn_icon, .bunkyou_card:hover .el_btn .el_btn_icon {
  transform: translate(84%, -50%);
  transition: transform 0.2s;
}

.bunkyou_card_head {
  border-radius: 8px;
  overflow: hidden;
}

.bunkyou_card_head img {
  display: block;
  aspect-ratio: 272 / 168;
  object-fit: cover;
  transition: transform 0.3s ease;
}

.bunkyou_card_head .g-tag-img {
  display: none;
}

.bunkyou_card_body {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.bunkyou_card_top {
  display: flex;
  gap: 8px;
  align-items: center;
}

.bunkyou_card_area {
  flex-shrink: 0;
  text-align: center;
  background-color: #ccc;
  font-size: .6875rem;
  font-weight: 600;
  color: #fff;
  border-radius: 3px;
  letter-spacing: calc(11px * 0.05);
  padding: 2px 4px;
  min-width: min(72px, 100%);
}

.bunkyou_card_area.is-hokkaido {
  background: #3957B0;
}

.bunkyou_card_area.is-kanto {
  background: #008391;
}

.bunkyou_card_area.is-kinki {
  background: #7247B7;
}

.bunkyou_card_area.is-chubu {
  background: #427E1D;
}

.bunkyou_card_area.is-shikoku {
  background: #C05600;
}

.bunkyou_card_area.is-kyusyu {
  background: #C91C76;
}

.bunkyou_card_ttl {
  font-size: .6875rem;
  font-weight: 300;
}

.bunkyou_card_lead {
  font-size: 1rem;
  font-weight: 300;
  line-height: 1.6;
}

.bunkyou_card_bottom {
  display: flex;
  flex-direction: column;
  gap: 8px;
  background: #e8f4fb;
  border-radius: 8px;
  padding: 8px 20px;
}

.bunkyou_card_keywords_ttl {
  font-size: .6875rem;
  font-weight: 600;
}

.bunkyou_card_keywords_tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0 .25em;
}

.bunkyou_card_keywords_tag {
  font-size: .6875rem;
  font-weight: 300;
}

.bunkyou_card_services_ttl {
  font-size: .6875rem;
  font-weight: 600;
}

.bunkyou_card_services_tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0 .25em;
}

.bunkyou_card_services_tag {
  display: flex;
  gap: 0 .25em;
  align-items: center;
  font-size: .6875rem;
  font-weight: 300;
}

.bunkyou_card_services_tag::after {
  display: block;
  content: '/';
  font-size: .6875rem;
  font-weight: 300;
}

.bunkyou_card_services_tag:last-child::after {
  content: none;
}

.bunkyou_card_more {
  text-align: center;
  margin-top: auto;
}

.bunkyou_card .el_btn {
  width: auto;
  padding: 8px 27px;
}

.bunkyou_paper_inr {
  padding: 50px 0;
}

@media only screen and (min-width: 768px) {
  .bunkyou_paper_inr {
    padding: 80px 0;
  }
}

.bunkyou_paper_ttl {
  min-height: calc(32px * 1.5);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 16px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_paper_ttl {
    min-height: calc(40px * 1.5);
  }
}

.bunkyou_paper_cont {
  position: relative;
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  align-items: center;
  background-color: #0070CC;
  border-radius: 8px;
  z-index: 4;
}

@media only screen and (min-width: 768px) {
  .bunkyou_paper_cont {
    padding: 40px 80px;
    flex-direction: row;
    justify-content: space-between;
    gap: 80px;
  }
}

.bunkyou_paper_head {
  flex-shrink: 0;
}

.bunkyou_paper_head img {
  display: block;
  max-width: 198px;
}

.bunkyou_paper_body {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.bunkyou_paper_desc {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.bunkyou_paper_txt {
  color: #fff;
  font-size: 1rem;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: calc(16px * 0.05);
}

.bunkyou_paper .el_btn {
  display: block;
  padding: 6px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_paper .el_btn {
    display: inline-block;
    padding: 21px 80px;
  }
}

.bunkyou_paper .el_btn .el_btn_cont {
  gap: 10px;
}

.bunkyou_paper .el_btn .el_btn_txt {
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: calc(20px * 0.05);
}

.bunkyou_caseGnav {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
}

.bunkyou_caseGnav li {
  position: relative;
  font-size: .75rem;
  font-weight: 600;
}

.bunkyou_caseGnav li::after {
  position: absolute;
  content: '';
  height: 12px;
  width: 1px;
  background-color: #333;
  top: 50%;
  right: -8px;
  transform: translateY(-50%);
}

.bunkyou_caseGnav li:last-child::after {
  content: none;
}

.bunkyou_caseGnav a {
  color: #0070CC;
}

.bunkyou_tachibana img {
  display: block;
  width: 100%;
}

#manual .curve-section__inr {
  background-image: url("../img/top_v2/bg_lb.png");
  background-repeat: repeat-y;
  background-position: center top;
  background-size: 100% auto;
}

@media only screen and (max-width: 767px) {
  #manual .curve-section__inr {
    background-image: url("../img/top_v2/bg_lb_sp.png");
    background-size: 100% auto;
    background-position: center 10vw;
    padding-bottom: 0;
    padding-top: calc(13.33333vw);
  }
}

.bunkyou_manual_inr {
  padding: 0 0 50px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_manual_inr {
    padding: 120px 0;
  }
}

.bunkyou_manual_ttl img {
  display: block;
  margin: 0 auto 32px;
}

.bunkyou_manual_unit {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.bunkyou_manual_box {
  background-color: #fff;
  padding: 24px 16px;
  border-radius: 8px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_manual_box {
    padding: 24px;
  }
}

.bunkyou_manual_ttlSub {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 6px;
  margin-bottom: 16px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_manual_ttlSub {
    margin-bottom: 24px;
  }
}

.bunkyou_manual_ttlSub img {
  display: block;
  min-height: calc(32px * 1.4 * 2);
}

@media only screen and (min-width: 768px) {
  .bunkyou_manual_ttlSub img {
    min-height: calc(40px * 1.4);
  }
}

.bunkyou_manual_ttlSub span {
  display: block;
  font-size: 1.125rem;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: calc(18px * 0.05);
}

.bunkyou_manual_cont {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_manual_cont {
    grid-template-columns: repeat(2, 1fr);
  }
}

.bunkyou_manual_item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 3;
  gap: 8px;
}

.bunkyou_manual_item img {
  display: block;
  border-radius: 8px;
  aspect-ratio: 464 / 271;
  object-fit: cover;
}

.bunkyou_manual_item_ttl {
  font-size: 1.5rem;
  line-height: 1.75;
  font-weight: 300;
}

.bunkyou_manual_item_ttl span {
  display: block;
  font-size: .875rem;
}

.bunkyou_manual_item_list {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.bunkyou_manual_item_list li {
  border-radius: 3px;
  background-color: #0078DC;
  padding: 4px 8px;
  font-size: .875rem;
  font-weight: 600;
  letter-spacing: calc(14px * 0.05);
  color: #fff;
  line-height: 1.5;
}

.bunkyou_manual_item.bunkyou_manual_item__noList {
  grid-row: span 2;
}

.bunkyou_manual_video {
  position: relative;
  aspect-ratio: 16 / 9;
  width: 100%;
  overflow: hidden;
  border-radius: 8px;
}

.bunkyou_manual iframe {
  width: 100%;
  height: 100%;
}

#case_detail_cont2 .curve-section__inr,
#case_detail_cont5 .curve-section__inr {
  background-image: url("../img/top_v2/bg_lb.png");
  background-repeat: repeat-y;
  background-position: center top;
  background-size: 100% auto;
}

@media only screen and (max-width: 767px) {
  #case_detail_cont2 .curve-section__inr,
  #case_detail_cont5 .curve-section__inr {
    background-image: url("../img/top_v2/bg_lb_sp.png");
    background-size: 100% auto;
    background-position: center 10vw;
    padding-bottom: 0;
    padding-top: calc(13.33333vw);
  }
}

#case_detail_cont1 .curve-section__inr,
#case_detail_cont4 .curve-section__inr {
  background-image: url("../img/top_v2/bg_b.png");
  background-repeat: repeat-y;
  background-position: center top;
  background-size: 100% auto;
}

@media only screen and (max-width: 767px) {
  #case_detail_cont1 .curve-section__inr,
  #case_detail_cont4 .curve-section__inr {
    background-image: url("../img/top_v2/bg_b_sp.png");
    background-size: 100% auto;
    background-position: center 10vw;
    padding-bottom: 0;
    padding-top: calc(13.33333vw);
  }
}

#case_detail_cont3 {
  padding: 0 0 50px;
}

@media only screen and (min-width: 768px) {
  #case_detail_cont3 {
    padding: 0;
  }
}

#case_detail_cont3 .curve-section__inr {
  background-image: url("../img/top_v2/bg_wt.png");
  background-repeat: repeat-y;
  background-position: center top;
  background-size: 100% auto;
}

@media only screen and (max-width: 767px) {
  #case_detail_cont3 .curve-section__inr {
    background-image: url("../img/top_v2/bg_lb_sp.png");
    background-size: 100% auto;
    background-position: center 10vw;
    padding-bottom: 0;
    padding-top: calc(13.33333vw);
  }
}

.bunkyou_caseDetail_cont {
  display: flex;
  flex-direction: column;
  gap: 48px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseDetail_cont {
    align-items: center;
  }
}

.bunkyou_caseDetail_gnav {
  position: relative;
  padding: 0 0 50px;
  z-index: 4;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseDetail_gnav {
    padding: 0 0 80px;
  }
}

.bunkyou_caseDetail_gnav_cont {
  padding: 24px;
  background-color: #EDF6FE;
  border-radius: 8px;
}

.bunkyou_caseDetail_gnav_cont.is-tachibana .bunkyou_caseGnav li:nth-child(1) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_caseDetail_gnav_cont.is-k-kyoei .bunkyou_caseGnav li:nth-child(2) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_caseDetail_gnav_cont.is-yjp_y_gakuin .bunkyou_caseGnav li:nth-child(3) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_caseDetail_gnav_cont.is-gakushuin .bunkyou_caseGnav li:nth-child(4) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_caseDetail_gnav_cont.is-aiko .bunkyou_caseGnav li:nth-child(5) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_caseDetail_gnav_cont.is-osakaseiryo .bunkyou_caseGnav li:nth-child(6) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_caseDetail_gnav_cont.is-salesio .bunkyou_caseGnav li:nth-child(7) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_caseDetail_gnav_cont.is-kyototachibana .bunkyou_caseGnav li:nth-child(8) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_caseDetail_gnav_cont.is-takinogawa .bunkyou_caseGnav li:nth-child(9) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_caseDetail_gnav_cont.is-kashiwagi .bunkyou_caseGnav li:nth-child(10) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_caseDetail_gnav_cont.is-toyokawa .bunkyou_caseGnav li:nth-child(11) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_caseDetail_gnav_cont.is-edotori .bunkyou_caseGnav li:nth-child(12) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_caseDetail_gnav_cont.is-gijuku .bunkyou_caseGnav li:nth-child(13) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_caseDetail_gnav_cont.is-fukuokafutaba .bunkyou_caseGnav li:nth-child(14) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_caseDetail_gnav_cont.is-nichidai3 .bunkyou_caseGnav li:nth-child(15) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_caseDetail_gnav_cont.is-hachioji .bunkyou_caseGnav li:nth-child(16) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_caseDetail_gnav_cont.is-shotoukakoen-ejh .bunkyou_caseGnav li:nth-child(17) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_caseDetail_gnav_cont.is-akenohoshi .bunkyou_caseGnav li:nth-child(18) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_caseDetail_gnav_cont.is-kamimura .bunkyou_caseGnav li:nth-child(19) a {
  text-decoration: none;
  color: #333;
  font-weight: 300;
}

.bunkyou_caseFeature_inr {
  padding: 40px 0 0;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseFeature_inr {
    padding: 60px 0 0;
  }
}

.bunkyou_caseFeature_cont {
  display: flex;
  flex-direction: column;
  gap: 32px;
  align-items: center;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseFeature_cont {
    align-items: flex-start;
    gap: 48px;
  }
}

.bunkyou_caseFeature_items {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  gap: 32px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseFeature_items {
    flex-direction: row;
    justify-content: space-between;
    gap: 60px;
  }
}

.bunkyou_caseFeature_item {
  width: 100%;
  list-style: none;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseFeature_item {
    width: calc((100% - 120px) / 3);
  }
}

.bunkyou_caseFeature_item.is-01 {
  transition-delay: 200ms;
}

.bunkyou_caseFeature_item.is-02 {
  transition-delay: 500ms;
}

.bunkyou_caseFeature_item.is-03 {
  transition-delay: 700ms;
}

@media (max-width: 600px) {
  .bunkyou_caseFeature_item {
    min-height: 1%;
  }
  .bunkyou_caseFeature_item + .bunkyou_case_point_item {
    margin-top: 30px;
  }
}

.bunkyou_caseFeature_item dl {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseFeature_item dl {
    gap: 16px;
  }
}

.bunkyou_caseFeature_item_fig {
  padding: 0 26px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseFeature_item_fig {
    padding: 0;
  }
}

.bunkyou_caseFeature_item_fig > img {
  width: 100%;
  display: block;
  border-radius: 50%;
}

.bunkyou_caseFeature_item_title {
  text-align: center;
  font-weight: 600;
  font-size: 1.75rem;
  color: #fff;
  line-height: 1.5;
}

.bunkyou_caseFeature_item_txt {
  font-size: 1rem;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: calc(16px * 0.05);
  color: #fff;
}

.bunkyou_caseFeature_service {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.bunkyou_caseFeature_service_head {
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: calc(20px * 0.05);
  color: #fff;
}

.bunkyou_caseFeature_service_items {
  display: flex;
  flex-wrap: wrap;
  gap: 0 1.5em;
}

.bunkyou_caseFeature_service_items > li {
  list-style: none;
  position: relative;
  color: #fff;
  font-size: 1rem;
  font-weight: 300;
  letter-spacing: calc(16px * 0.05);
}

.bunkyou_caseFeature_service_items > li::after {
  content: '／';
  display: block;
  position: absolute;
  top: 0;
  right: -14px;
  width: 10px;
}

.bunkyou_caseFeature_service_items > li:last-child::after {
  content: none;
}

.bunkyou_caseFeature_service_items > li > a {
  color: #fff;
}

.bunkyou_caseFeature_btn {
  width: 100%;
  margin: 0 auto;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseFeature_btn {
    width: auto;
  }
}

.bunkyou_caseFeature_btn a {
  display: flex;
  gap: 4px;
  flex-direction: column;
  align-items: center;
  font-size: 1.25rem;
  font-weight: 300;
  line-height: 1.5;
  padding: 12px;
  text-decoration: none;
  background-color: #fff;
  border-radius: 100px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseFeature_btn a {
    padding: 12px 80px;
  }
}

.bunkyou_caseFeature_btn a::after {
  display: block;
  content: '';
  flex-shrink: 0;
  background-image: url("../img/case/icon_arrow_bottom.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  aspect-ratio: 8 / 5;
  width: 8px;
}

.bunkyou_caseProfile_inr {
  padding: 0 0 42px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseProfile_inr {
    padding: 0;
  }
}

.bunkyou_caseProfile_title {
  min-height: calc(32px * 1.4);
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 16px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseProfile_title {
    min-height: calc(40px * 1.4);
  }
}

.bunkyou_caseProfile_title img {
  max-width: 247px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseProfile_title img {
    max-width: none;
  }
}

.bunkyou_caseProfile_list {
  background: #fff;
  padding: 24px 16px;
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseProfile_list {
    padding: 56px 80px;
    flex-direction: row;
    justify-content: space-between;
    gap: 0;
  }
}

.bunkyou_caseProfile_list + p {
  color: #fff;
  text-align: right;
  margin-top: 16px;
  font-size: 12px;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: calc(12px * 0.05);
}

.bunkyou_caseProfile_data {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseProfile_data {
    width: calc((100% - 40px) / 2);
    order: 2;
    gap: 16px;
  }
}

.bunkyou_caseProfile_data_head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.bunkyou_caseProfile_data_title {
  font-size: 24px;
  line-height: 1.5;
  font-weight: 600;
  letter-spacing: calc(24px * 0.05);
}

.bunkyou_caseProfile_data_url a {
  font-size: .875rem;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: calc(14px * 0.05);
  color: #0078DC;
}

.bunkyou_caseProfile_data_ico {
  display: inline-block;
  width: 1em;
  height: 1em;
  fill: none;
  stroke: #0078DC;
  stroke-width: 2px;
  vertical-align: middle;
  margin-right: .25em;
}

.bunkyou_caseProfile_data_info {
  font-size: .75rem;
  line-height: 1.5;
  font-weight: 300;
  letter-spacing: calc(14px * 0.05);
}

.bunkyou_caseProfile_data_txt {
  font-size: .875rem;
  line-height: 1.5;
  font-weight: 300;
  letter-spacing: calc(14px * 0.05);
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseProfile_data_txt {
    font-size: 1rem;
    letter-spacing: calc(16px * 0.05);
  }
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseProfile_fig {
    width: calc((100% - 40px) / 2);
    order: 1;
  }
}

.bunkyou_caseProfile_fig > figure img {
  display: block;
  aspect-ratio: 380 / 235;
  object-fit: cover;
  border-radius: 8px;
  margin: 0 auto;
}

.bunkyou_caseProfile_fig_items {
  display: flex;
  justify-content: center;
  margin-top: 8px;
  gap: 6px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseProfile_fig_items {
    margin-top: 16px;
    gap: 20px;
  }
}

.bunkyou_caseProfile_fig_item {
  width: calc((100% - 12px) / 3);
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseProfile_fig_item {
    width: calc((100% - 40px) / 3);
  }
}

.bunkyou_caseProfile_fig_item img {
  display: block;
  margin: 0 auto;
  border-radius: 50%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
}

.bunkyou_caseProfile_fig_name {
  font-size: .75rem;
  font-weight: 300;
  margin-top: 8px;
  letter-spacing: calc(12px * 0.05);
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseProfile_fig_name {
    font-size: .875rem;
    letter-spacing: calc(14px * 0.05);
  }
}

.bunkyou_caseProfile_wrap {
  background: #fff0e1;
  border-radius: 10px;
  max-width: 1000px;
  margin: 50px auto 0;
  padding: 4%;
}

@media only screen and (max-width: 767px) {
  .bunkyou_caseProfile_wrap {
    margin: 25px auto 0;
  }
}

.bunkyou_caseProfile_teacher {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}

.bunkyou_caseProfile_teacher_head {
  width: 140px;
}

@media only screen and (max-width: 767px) {
  .bunkyou_caseProfile_teacher_head {
    width: 70px;
  }
}

.bunkyou_caseProfile_teacher_head > img {
  border-radius: 50%;
}

.bunkyou_caseProfile_teacher_body {
  width: calc(100% - 160px);
}

@media only screen and (max-width: 767px) {
  .bunkyou_caseProfile_teacher_body {
    width: calc(100% - 90px);
  }
}

.bunkyou_caseProfile_teacher_name {
  color: #ff9226;
  font-size: 18px;
  line-height: 1.55556;
  font-weight: 700;
}

@media only screen and (max-width: 767px) {
  .bunkyou_caseProfile_teacher_name {
    font-size: 16px;
  }
}

.bunkyou_caseProfile_teacher_lead {
  font-size: 16px;
  margin-top: 10px;
}

@media only screen and (max-width: 767px) {
  .bunkyou_caseProfile_teacher_lead {
    font-size: 12px;
  }
}

.bunkyou_caseSolution_title {
  text-align: center;
  margin-bottom: 32px;
}

.bunkyou_caseSolution_items {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  gap: 24px 16px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseSolution_items {
    flex-direction: row;
  }
}

.bunkyou_caseSolution_item {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseSolution_item {
    width: calc((100% - 16px) / 2);
  }
}

.bunkyou_caseSolution_balloon {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 4px 8px;
  border-radius: 8px;
  background-color: #FFD4A3;
  min-height: 56px;
}

.bunkyou_caseSolution_balloon::after {
  position: absolute;
  content: '';
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 86%);
  background-image: url("../img/case/icon_arrow_bottom_orange.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  aspect-ratio: 28 / 17;
  width: 28px;
}

.bunkyou_caseSolution_balloon p {
  text-align: center;
  font-size: .875rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: calc(14px * 0.05);
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseSolution_balloon p {
    font-size: 1rem;
    letter-spacing: calc(16px * 0.05);
  }
}

.bunkyou_caseSolution_oval {
  display: flex;
  flex-direction: column;
  gap: 4px;
  background-color: #fff;
  border-radius: 100px;
  padding: 10px 8px;
  min-height: 89px;
  display: flex;
  justify-content: center;
  align-items: center;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseSolution_oval {
    padding: 10px;
  }
}

.bunkyou_caseSolution_oval p {
  text-align: center;
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: calc(16px * 0.05);
  font-weight: 600;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseSolution_oval p {
    font-size: 1.25rem;
    letter-spacing: calc(20px * 0.05);
  }
}

.bunkyou_caseSolution a.bunkyou_caseSolution_oval {
  color: #333;
  text-decoration: none;
}

.bunkyou_caseSolution a.bunkyou_caseSolution_oval::after {
  display: block;
  content: '';
  background-image: url("../img/case/icon_arrow_bottom.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  aspect-ratio: 8 / 5;
  width: 8px;
}

.bunkyou_caseCta {
  text-align: center;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseCta {
    padding: 32px 0;
  }
}

.bunkyou_caseCta p {
  font-size: 20px;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: calc(20px * 0.05);
  margin-bottom: 16px;
}

.bunkyou_caseCta .el_btn {
  display: block;
  padding: 8px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseCta .el_btn {
    display: inline-block;
    padding: 23px 80px;
  }
}

.bunkyou_caseCta .el_btn .el_btn_cont {
  gap: 10px;
}

.bunkyou_caseCta .el_btn .el_btn_txt {
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: calc(24px * 0.05);
}

.bunkyou_caseChange_title {
  min-height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 16px;
}

.bunkyou_caseChange_cont {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.bunkyou_caseChange_box {
  background: #fff;
  padding: 24px 16px;
  border-radius: 8px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseChange_box {
    padding: 56px 80px;
  }
}

.bunkyou_caseChange_box .bunkyou_caseChange_head:not(:first-child) {
  margin-top: 32px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseChange_box .bunkyou_caseChange_head:not(:first-child) {
    margin-top: 40px;
  }
}

.bunkyou_caseChange_box p {
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: calc(16px * 0.05);
}

.bunkyou_caseChange_sub {
  font-size: 32px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: calc(32px * 0.05);
  color: #0078DC;
  margin-bottom: 16px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseChange_sub {
    font-size: 40px;
    letter-spacing: calc(40px * 0.05);
    margin-bottom: 40px;
  }
}

.bunkyou_caseChange_subMin {
  font-size: 1.5rem;
  font-weight: 300;
  line-height: 1.4;
  color: #0078DC;
  margin-bottom: 16px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseChange_subMin {
    font-size: 1.75rem;
  }
}

.bunkyou_caseChange_figure img {
  border-radius: 8px;
}

.bunkyou_caseChange_figure.bunkyou_caseChange_figure__human img {
  width: 80%;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseChange_figure.bunkyou_caseChange_figure__human img {
    width: 100%;
  }
}

.bunkyou_caseChange_desc::after {
  content: '';
  display: block;
  clear: both;
}

.bunkyou_caseChange_desc dt {
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: calc(16px * 0.05);
  font-weight: 600;
  float: left;
  margin-right: 6px;
}

.bunkyou_caseChange_wrap {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseChange_wrap {
    flex-direction: row;
    align-items: flex-start;
    gap: 32px;
  }
}

.bunkyou_caseChange_wrap .bunkyou_caseChange_figure img {
  display: block;
  aspect-ratio: 400 / 247;
  object-fit: cover;
}

.bunkyou_caseChange_wrap > * {
  width: 100%;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseChange_wrap > * {
    width: calc((100% - 32px) / 2);
  }
}

.bunkyou_caseChange_wrap * {
  margin: 0;
}

.bunkyou_caseChange_name {
  text-align: center;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseChange_name {
    text-align: right;
  }
}

.bunkyou_caseVoice_title {
  text-align: center;
  margin: 0 auto 32px;
}

.bunkyou_caseVoice_title img {
  max-width: 320px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseVoice_title img {
    max-width: none;
  }
}

.bunkyou_caseVoice_box {
  padding: 24px 16px;
  background-color: #EDF6FE;
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  gap: 32px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseVoice_box {
    padding: 56px 80px;
  }
}

.bunkyou_caseVoice_item {
  display: flex;
  flex-direction: column;
}

.bunkyou_caseVoice_item:first-child {
  gap: 32px;
  align-items: center;
}

.bunkyou_caseVoice_item:first-child .bunkyou_caseVoice_lead {
  text-align: center;
  font-size: 1.75rem;
  letter-spacing: calc(28px * 0.05);
  color: #0070CC;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseVoice_item:first-child .bunkyou_caseVoice_lead {
    font-size: 2rem;
    letter-spacing: calc(32px * 0.05);
  }
}

.bunkyou_caseVoice_item:first-child .bunkyou_caseVoice_balloon::after {
  position: absolute;
  content: "";
  background-image: url("../img/case/icon_arrow_right_white.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  aspect-ratio: 34 / 39;
  width: 34px;
  top: 0;
  left: 0;
  transform: rotate(180deg) translate(50%, -50%);
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseVoice_item:first-child .bunkyou_caseVoice_balloon::after {
    transform: rotate(180deg) translate(50%, -100%);
  }
}

.bunkyou_caseVoice_item:last-child {
  gap: 8px;
}

.bunkyou_caseVoice_item:last-child .bunkyou_caseVoice_lead {
  font-size: 1.125rem;
  letter-spacing: calc(18px * 0.05);
  text-align: center;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseVoice_item:last-child .bunkyou_caseVoice_lead {
    text-align: left;
  }
}

.bunkyou_caseVoice_item:last-child .bunkyou_caseVoice_balloon::after {
  position: absolute;
  content: "";
  background-image: url("../img/case/icon_arrow_right_white.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  aspect-ratio: 34 / 39;
  width: 34px;
  top: 0;
  right: 0;
  transform: translate(50%, 50%);
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseVoice_item:last-child .bunkyou_caseVoice_balloon::after {
    transform: translate(50%, 150%);
  }
}

.bunkyou_caseVoice_name {
  text-align: center;
  font-weight: 300;
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: calc(16px * 0.05);
  color: #0070CC;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseVoice_name {
    font-size: 1.125rem;
    letter-spacing: calc(18px * 0.05);
  }
}

.bunkyou_caseVoice_lead {
  font-weight: 600;
  line-height: 1.5;
}

.bunkyou_caseVoice_logo {
  padding: 16px 0;
}

.bunkyou_caseVoice_logo img {
  display: block;
  margin: 0 auto;
}

.bunkyou_caseVoice_body {
  display: flex;
  gap: 24px;
  align-items: flex-start;
}

.bunkyou_caseVoice_body img {
  display: block;
  width: 70px;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  object-fit: cover;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseVoice_body img {
    width: 140px;
  }
}

.bunkyou_caseVoice_balloon {
  position: relative;
  background-color: #fff;
  padding: 24px;
  border-radius: 8px;
}

.bunkyou_caseVoice_balloon p {
  font-size: 1rem;
  line-height: 1.5;
}

.bunkyou_caseMovie_inr {
  padding: 0 0 50px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseMovie_inr {
    padding: 0;
  }
}

.bunkyou_caseMovie_title {
  text-align: center;
  margin: 0 auto 32px;
}

.bunkyou_caseMovie_items {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseMovie_items {
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }
}

.bunkyou_caseMovie_item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  gap: 16px;
  background-color: #fff;
  border-radius: 8px;
  padding: 16px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseMovie_item {
    padding: 24px;
  }
}

.bunkyou_caseMovie_item_ttl {
  display: flex;
  align-items: center;
  gap: 24px;
  font-size: 1.25rem;
  font-weight: 300;
  line-height: 1.5;
}

.bunkyou_caseMovie_item_ttl::before {
  display: block;
  content: '';
  flex-shrink: 0;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

.bunkyou_caseMovie_item_video {
  position: relative;
  aspect-ratio: 16 / 9;
  width: 100%;
  overflow: hidden;
  border-radius: 8px;
}

.bunkyou_caseMovie_item iframe {
  width: 100%;
  height: 100%;
}

.bunkyou_caseMovie_item:nth-child(1) .bunkyou_caseMovie_item_ttl::before {
  background-image: url("../img/case/case_movie_num1.svg");
  aspect-ratio: 14 / 32;
  width: 14px;
}

.bunkyou_caseMovie_item:nth-child(2) .bunkyou_caseMovie_item_ttl::before {
  background-image: url("../img/case/case_movie_num2.svg");
  aspect-ratio: 27 / 32;
  width: 27px;
}

.bunkyou_caseMovie_item:nth-child(3) .bunkyou_caseMovie_item_ttl::before {
  background-image: url("../img/case/case_movie_num3.svg");
  aspect-ratio: 26 / 32;
  width: 26px;
}

.bunkyou_caseMovie_item:nth-child(4) .bunkyou_caseMovie_item_ttl::before {
  background-image: url("../img/case/case_movie_num4.svg");
  aspect-ratio: 29 / 32;
  width: 29px;
}

.bunkyou_caseSummary_inr {
  padding: 0 0 50px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseSummary_inr {
    padding: 0;
  }
}

.bunkyou_caseSummary_title {
  text-align: center;
  margin: 0 auto 32px;
}

.bunkyou_caseSummary_items {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseSummary_items {
    grid-template-columns: repeat(2, 1fr);
  }
}

.bunkyou_caseSummary_item {
  background: #fff;
  padding: 24px 16px;
  border-radius: 8px;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: calc(20px * 0.05);
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseSummary_item {
    font-size: 1.5rem;
    letter-spacing: calc(24px * 0.05);
    padding: 40px;
  }
}

.bunkyou_caseSummary_item_line {
  color: #0070CC;
}

.bunkyou_caseService {
  width: 100%;
}

.bunkyou_caseService_title {
  min-height: calc(32px * 1.4);
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 16px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseService_title {
    min-height: calc(40px * 1.4);
  }
}

.bunkyou_caseService_title img {
  max-width: 212px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseService_title img {
    max-width: none;
  }
}

.bunkyou_caseService_cont {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseService_cont {
    gap: 48px;
  }
}

.bunkyou_caseService_box {
  padding: 24px 16px;
  background-color: #fff;
  border-radius: 8px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseService_box {
    padding: 24px 80px;
  }
}

.bunkyou_caseService_list {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.bunkyou_caseService_list li {
  border-radius: 3px;
  background-color: #0078DC;
}

.bunkyou_caseService_list span,
.bunkyou_caseService_list a {
  display: block;
  padding: 4px 8px;
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: calc(16px * 0.05);
  color: #fff;
  line-height: 1.5;
}

.bunkyou_caseService_list a {
  transition: opacity 0.2s;
}

.bunkyou_caseService_list a:focus, .bunkyou_caseService_list a:hover {
  opacity: 0.6;
  text-decoration: none;
}

.bunkyou_caseService_btn {
  width: 100%;
  margin: 0 auto;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseService_btn {
    width: auto;
  }
}

.bunkyou_caseService_btn a {
  display: flex;
  gap: 4px;
  flex-direction: column;
  align-items: center;
  font-size: 1.25rem;
  font-weight: 300;
  line-height: 1.5;
  padding: 12px;
  text-decoration: none;
  background-color: #fff;
  border-radius: 100px;
  transition: background-color 0.2s, opacity 0.2s;
}

@media only screen and (min-width: 768px) {
  .bunkyou_caseService_btn a {
    padding: 12px 80px;
  }
}

.bunkyou_caseService_btn a:focus, .bunkyou_caseService_btn a:hover {
  background: #e6e6e6;
}

.bunkyou_caseService_btn a::after {
  display: block;
  content: '';
  flex-shrink: 0;
  background-image: url("../img/case/icon_arrow_bottom.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  aspect-ratio: 8 / 5;
  width: 8px;
}

#seminar .curve-section__inr {
  background-image: url("../img/top_v2/bg_lb.png");
  background-repeat: repeat-y;
  background-position: center top;
  background-size: 100% auto;
  padding-bottom: 120px;
}

@media only screen and (max-width: 767px) {
  #seminar .curve-section__inr {
    background-image: url("../img/top_v2/bg_lb_sp.png");
    background-size: 100% auto;
    background-position: center 10vw;
    padding-top: calc(13.33333vw);
    padding-bottom: calc(13.33333vw);
  }
}

#seminar .seminar-title {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 32px;
}

@media only screen and (max-width: 767px) {
  #seminar .seminar-title {
    max-width: calc(62.93333vw);
    margin-left: auto;
    margin-right: auto;
    margin-bottom: calc(8.53333vw);
  }
}

#seminar .seminar-col {
  margin-bottom: 64px;
}

@media only screen and (max-width: 767px) {
  #seminar .seminar-col {
    margin-bottom: calc(10.66667vw);
  }
}

@media only screen and (min-width: 768px) {
  #seminar .seminar-col .seminar-btn {
    max-width: 506px;
    margin-left: auto;
    margin-right: auto;
  }
}

#seminar .seminar-col .seminar-btn a {
  width: 100%;
}

#seminar .seminar-col .is-sam {
  border-radius: 8px;
  overflow: hidden;
}

#seminar .seminar-col .is-sam img {
  aspect-ratio: 272 / 153;
  object-fit: cover;
  display: block;
}

#seminar .seminar-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 20px calc( 20/1000*100%);
  margin-bottom: 32px;
}

@media only screen and (max-width: 767px) {
  #seminar .seminar-grid {
    gap: calc(4.26667vw);
    margin-bottom: calc(6.4vw);
  }
}

#seminar .seminar-grid .seminar-grid--col {
  max-width: calc( 320/1000*100%);
  background-color: #fff;
  border-radius: 8px;
  padding: 24px;
}

@media only screen and (max-width: 767px) {
  #seminar .seminar-grid .seminar-grid--col {
    max-width: 100%;
    padding: calc(4.26667vw);
  }
}

#seminar .seminar-grid .seminar-grid--col h3 {
  font-size: 20px;
}

@media only screen and (max-width: 767px) {
  #seminar .seminar-grid .seminar-grid--col h3 {
    font-size: calc(5.33333vw);
  }
}

#seminar .seminar-grid .seminar-grid--col .is-tags {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 16px;
}

@media only screen and (max-width: 767px) {
  #seminar .seminar-grid .seminar-grid--col .is-tags {
    gap: calc(2.13333vw);
    margin-top: calc(4.26667vw);
  }
}

#seminar .seminar-grid .seminar-grid--col .is-tags .is-tag {
  color: #fff;
  padding: 3px 4px;
  border-radius: 2px;
  line-height: 1;
  font-size: 12px;
}

#seminar .seminar-grid .seminar-grid--col .is-tags .is-tag.is-sc {
  background-color: #008391;
}

#seminar .seminar-grid .seminar-grid--col .is-tags .is-tag.is-ac {
  background-color: #EDF6FE;
  color: #0070CC;
}

#seminar .seminar-grid .seminar-grid--col .is-tags .is-tag.is-sm {
  background-color: #C91C76;
}

#seminar .seminar-grid .seminar-grid--col .is-tags .is-tag.is-pub {
  background-color: #7247B7;
}

#seminar .seminar-grid .seminar-grid--col .case-btn {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 8px;
}

@media only screen and (max-width: 767px) {
  #seminar .seminar-grid .seminar-grid--col .case-btn {
    margin-top: calc(2.13333vw);
  }
}

#seminar .seminar-grid .seminar-grid--col .case-btn .c-btn {
  font-size: 14px;
  padding: 10px 24px;
}

#seminar .seminar-grid .seminar-grid--col .case-btn .el_btn {
  padding: 10px 24px;
}

#seminar .seminar-grid .seminar-grid--col .case-btn .el_btn .el_btn_cont {
  gap: 10px;
}

#seminar .seminar-grid .seminar-grid--col .case-btn .el_btn .el_btn_txt {
  line-height: 1.2;
  text-align: left;
}

#seminar .seminar-grid .seminar-grid--col .is-note {
  font-size: 12px;
  margin-top: 8px;
}

@media only screen and (max-width: 767px) {
  #seminar .seminar-grid .seminar-grid--col .is-note {
    font-size: calc(3.2vw);
    margin-top: calc(2.13333vw);
  }
}

#seminar .seminar-grid .seminar-grid--col.is-wide {
  max-width: 100%;
  width: 100%;
}

#seminar .seminar-grid .seminar-grid--col.is-wide .is-wide-col {
  display: flex;
  flex-direction: row-reverse;
  gap: 20px;
}

@media only screen and (max-width: 767px) {
  #seminar .seminar-grid .seminar-grid--col.is-wide .is-wide-col {
    flex-direction: column;
    gap: calc(4.26667vw);
  }
}

#seminar .seminar-grid .seminar-grid--col.is-wide .is-wide-col a {
  text-align: center;
  text-decoration: none;
  color: #333;
}

#seminar .seminar-grid .seminar-grid--col.is-wide .is-wide-col a span {
  border-radius: 8px;
  display: block;
  overflow: hidden;
}

#seminar .seminar-grid .seminar-grid--col.is-wide .is-wide-col a span img {
  transition: transform 0.3s ease;
}

@media only screen and (min-width: 768px) {
  #seminar .seminar-grid .seminar-grid--col.is-wide .is-wide-col a:hover span img {
    transform: scale(1.05);
  }
}

#seminar .seminar-grid .seminar-grid--col.is-wide h3 {
  padding-bottom: 1em;
  border-bottom: 1px solid #ccc;
  margin-bottom: 0.5em;
}

#seminar .seminar-grid .seminar-grid--col.is-wide h3 img {
  width: 100%;
  height: auto;
  display: block;
}

#seminar .seminar-grid .seminar-grid--col.is-wide h4 {
  font-size: 18px;
  margin-top: 15px;
  font-weight: bold;
}

@media only screen and (max-width: 767px) {
  #seminar .seminar-grid .seminar-grid--col.is-wide h4 {
    margin-top: calc(2.13333vw);
    font-size: calc(4.8vw);
  }
}

#seminar .seminar-grid .seminar-grid--col.is-wide p {
  font-size: 16px;
  margin-top: 8px;
}

@media only screen and (max-width: 767px) {
  #seminar .seminar-grid .seminar-grid--col.is-wide p {
    font-size: calc(4.26667vw);
    margin-top: calc(2.13333vw);
  }
}

#seminar .seminar-mail {
  background-color: #fff;
  overflow: hidden;
  position: relative;
  border-radius: 8px;
  padding: 48px;
}

@media only screen and (min-width: 768px) {
  #seminar .seminar-mail {
    min-height: 282px;
  }
}

@media only screen and (max-width: 767px) {
  #seminar .seminar-mail {
    padding: calc(6.4vw) calc(5.33333vw) 0;
  }
}

@media only screen and (max-width: 767px) {
  #seminar .seminar-mail h3 {
    max-width: calc(62.66667vw);
    margin-left: auto;
    margin-right: auto;
    margin-bottom: calc(2.13333vw);
  }
}

@media only screen and (max-width: 767px) {
  #seminar .seminar-mail p {
    text-align: center;
    font-size: calc(4.26667vw);
  }
}

#seminar .seminar-mail > img {
  position: absolute;
  bottom: 0;
  right: 38px;
}

@media only screen and (max-width: 767px) {
  #seminar .seminar-mail > img {
    position: static;
    max-width: calc(35.2vw);
    margin-left: auto;
    margin-right: auto;
    margin-top: calc(4.26667vw);
    display: block;
  }
}

@media only screen and (min-width: 768px) {
  #seminar .seminar-mail .seminar-mail--col {
    max-width: 693px;
  }
}

#seminar .seminar-mail .mail-btn {
  margin-top: 16px;
}

@media only screen and (min-width: 768px) {
  #seminar .seminar-mail .mail-btn {
    max-width: 423px;
  }
}

@media only screen and (max-width: 767px) {
  #seminar .seminar-mail .mail-btn {
    margin-top: calc(4.26667vw);
  }
}

#seminar .seminar-mail .mail-btn a {
  width: 100%;
}

.c-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 18px 24px;
  border-radius: 100px;
  font-size: 16px;
  font-weight: bold;
  text-decoration: none;
  cursor: pointer;
  border: none;
  transition: background 0.2s, color 0.2s, opacity 0.2s;
  line-height: 1.2;
}

.c-btn > span .is-s {
  font-size: 70%;
}

.c-btn.is-blue {
  background: #0070cc;
  color: #fff;
}

@media (min-width: 768px) {
  .c-btn.is-blue:hover {
    background: #005499;
  }
}

.c-btn.is-orange {
  background: #ffd4a3;
  color: #333;
}

@media (min-width: 768px) {
  .c-btn.is-orange:hover {
    background: #ffbc70;
  }
}

.c-btn.is-white {
  background: #edf6fe;
  color: #0070cc;
}

@media (min-width: 768px) {
  .c-btn.is-white:hover {
    background: #d5eafd;
  }
}

.c-btn.is-full {
  display: flex;
  width: 100%;
}

.c-btn.is-multiline {
  padding: 10px 24px;
}

@media (max-width: 767px) {
  .c-btn {
    font-size: calc(4vw);
    padding: calc(3.2vw) calc(5.33333vw);
    gap: calc(2.13333vw);
  }
}

.c-btn svg {
  display: block;
  flex-shrink: 0;
  width: 25px;
  height: 16px;
}

@media (max-width: 767px) {
  .c-btn svg {
    width: calc(5.86667vw);
    height: calc(3.73333vw);
  }
}

.c-btn__text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2px;
}

.c-btn__text-main {
  font-size: 16px;
  font-weight: bold;
}

@media (max-width: 767px) {
  .c-btn__text-main {
    font-size: calc(4vw);
  }
}

.c-btn__text-sub {
  font-size: 12px;
  font-weight: normal;
}

@media (max-width: 767px) {
  .c-btn__text-sub {
    font-size: calc(2.93333vw);
  }
}

.c-btn-group {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}

@media (max-width: 767px) {
  .c-btn-group {
    gap: calc(3.2vw);
  }
}

.el_btn {
  display: inline-block;
  background-color: #0078DC;
  border-radius: 100px;
  padding: 18px 24px;
  text-align: center;
  transition: background-color 0.2s, opacity 0.2s;
  text-decoration: none;
}

.el_btn:focus, .el_btn:hover {
  background: #005ca9;
}

.el_btn:focus .el_btn_icon, .el_btn:hover .el_btn_icon {
  transform: translate(84%, -50%);
  transition: transform 0.2s;
}

.el_btn_cont {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.el_btn_txt {
  font-size: .875rem;
  font-weight: 600;
  color: #fff;
}

.el_btn_arrow {
  overflow: hidden;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  width: 25px;
  height: 16px;
  border-radius: 100px;
  flex-shrink: 0;
}

.el_btn_icon {
  position: absolute;
  display: flex;
  align-items: center;
  gap: 16px;
  top: 50%;
  right: 50%;
  transform: translate(12%, -50%);
}

.el_btn_icon::before {
  display: block;
  content: '';
  background-image: url("../img/common/ico_arw_r_btn.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  aspect-ratio: 10 / 8;
  width: 10px;
  min-width: 10px;
}

.el_btn img {
  display: block;
  width: 10px;
  min-width: 10px;
}

.el_btn.el_btn__bgReverse {
  background-color: #EDF6FE;
}

.el_btn.el_btn__bgReverse:focus, .el_btn.el_btn__bgReverse:hover {
  background: #bddefb;
}

.el_btn.el_btn__bgReverse .el_btn_txt {
  color: #0070CC;
}

.el_btn.el_btn__bgReverse .el_btn_arrow {
  background-color: #0070CC;
}

.el_btn.el_btn__bgReverse .el_btn_icon::before {
  background-image: url("../img/common/ico_arw_r_wht_btn.svg");
}

.bunkyou_lowerNav_wrap {
  width: 100%;
  position: fixed;
  left: 0;
  transform: translate(0, calc(-100% - 80px));
  z-index: 200;
  transition: .15s;
}

@media only screen and (min-width: 768px) {
  .bunkyou_lowerNav_wrap {
    transform: translate(0, calc(-100% - 90px));
  }
}

.bunkyou_lowerNav_cont {
  transition: all .5s;
  transform: translate(0, calc(100% + 80px + 16px));
}

@media only screen and (min-width: 768px) {
  .bunkyou_lowerNav_cont {
    transform: translate(0, calc(100% + 90px + 16px));
  }
}

.bunkyou_lowerNav_inr {
  display: flex;
  flex-direction: column;
  padding: 16px;
  border-radius: 8px;
  background-color: #FFD4A3;
  gap: 16px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_lowerNav_inr {
    flex-direction: row;
    justify-content: space-between;
    padding: 15px 40px;
  }
}

.bunkyou_lowerNav_logo {
  display: block;
  transition: .3s;
}

.bunkyou_lowerNav_logo:focus, .bunkyou_lowerNav_logo:hover {
  opacity: .7;
}

.bunkyou_lowerNav_logo img {
  display: block;
  width: 113px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_lowerNav_logo img {
    width: 100%;
  }
}

.bunkyou_lowerNav_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 16px 12px;
}

@media only screen and (min-width: 768px) {
  .bunkyou_lowerNav_list {
    justify-content: space-around;
    gap: 16px 32px;
  }
}

.bunkyou_lowerNav_item a {
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: .875rem;
  font-weight: 600;
  transition: opacity .3s;
  color: #333;
}

@media only screen and (min-width: 768px) {
  .bunkyou_lowerNav_item a {
    font-size: 1rem;
    gap: 8px;
    height: 100%;
  }
}

.bunkyou_lowerNav_item a::after {
  display: block;
  content: '';
  flex-shrink: 0;
  background-image: url("../img/case/icon_arrow_right_reverse_dark.svg");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  aspect-ratio: 25 / 16;
  width: 25px;
}

.bunkyou_lowerNav_item a:focus, .bunkyou_lowerNav_item a:hover {
  opacity: .7;
}

.bunkyou_lowerNav.is-scroll .bunkyou_lowerNav_wrap {
  transition: .3s;
}

html.is-scroll.is-scroll-down:not(.is-header-menu-open) .bunkyou_lowerNav_cont {
  transform: translate(0, -100%);
}

.ct {
  z-index: 3;
}

.ct .curve-section__inr {
  padding-top: 8%;
  padding-bottom: 6%;
  min-height: 0;
}

@media only screen and (max-width: 767px) {
  .ct .curve-section__inr {
    padding-top: calc(24vw);
    padding-bottom: calc(13.33333vw);
  }
}

.ct > img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, calc( -50% + 80px));
}

@media only screen and (max-width: 767px) {
  .ct > img {
    display: none;
  }
}

.ct .ct-inr {
  display: flex;
  flex-direction: column;
  align-items: center;
  z-index: 2;
  position: relative;
}

@media only screen and (min-width: 768px) {
  .ct .ct-inr {
    max-width: 71.73611%;
    margin-left: auto;
    margin-right: auto;
  }
}

@media only screen and (max-width: 767px) {
  .ct .ct-title img {
    width: 100%;
    height: auto;
  }
}

.ct .ct-btn {
  max-width: 350px;
  width: 100%;
  margin-top: 40px;
}

@media only screen and (max-width: 767px) {
  .ct .ct-btn {
    margin-top: -2vw;
    margin-left: auto;
    margin-right: auto;
    max-width: calc(89.33333vw);
  }
}

.ct .ct-btn > a {
  width: 100%;
}

@media only screen and (min-width: 768px) {
  .ct.is-01 .curve-section__inr {
    padding-top: 12%;
    padding-bottom: 12%;
  }
  .ct.is-01 .curve-section__inr .ct-inr {
    padding-top: 0;
    padding-bottom: 0;
    justify-content: center;
  }
}

@media (max-width: 1000px) {
  .ct.is-01 .curve-section__inr .ct-inr {
    min-height: 518px;
  }
}

.ct.is-01 > img {
  transform: translate(-50%, calc( -50%));
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .ct.is-02 .curve-section__inr {
    padding-top: calc(13.33333vw);
    padding-bottom: calc(13.33333vw);
  }
}

.ct.is-02 > img {
  top: -24%;
  transform: translate(-50%, 0);
  width: 100%;
}

@media (max-width: 1000px) {
  .ct.is-02 > img {
    top: -11%;
  }
}
