body {
  font-family: "Helvetica Neue",
    Arial,
    "Hiragino Kaku Gothic ProN",
    "Hiragino Sans",
    Meiryo,
    sans-serif;
}

.pc {
  display: block;
}

.sp {
  display: none;
}

.flex {
  display: flex;
  justify-content: space-between;
}

a img {
  transition: opacity 0.3s;
}

a:hover img {
  opacity: 0.6;
}

.container {
  max-width: 1148px;
  padding-left: 24px;
  padding-right: 24px;
  margin: 0 auto;
}

.container-l {
  max-width: 1488px;
  padding-left: 24px;
  padding-right: 24px;
  margin: 0 auto;

}

section.kv {
  background-image: url(../images/kv_bg@2x.png);
  background-size: 1443px auto;
  background-position: top center;
  height: 1175px;
}

.content_img img {
  margin: 0 auto;
}

h1 {
  margin-top: 10px;
}

.kv_content {
  padding-top: 35px;
  position: relative;
  left: 35px;
}

section.kv2 {
  background-image: url(../images/kv2_bg.png);
  background-size: 1662px auto;
  background-position: top center;
  height: 1019px;
}

.kv2_content {
  padding-top: 92px;
}

section.cta {
  background-color: rgba(248, 241, 98, 0.37);
  padding: 40px 0;
}

.cta_content2 {
  padding-top: 40px;
}

.instractor_content {
  padding-top: 40px;
}


section.nayami {
  background-image: url(../images/nayami_bg_1.png);
  background-size: 1440px auto;
  background-position: top center;
  height: 1800px;
  background-color: rgba(248, 241, 98, 0.37);
  position: relative;
}

.nayami_bg_img {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 1;
}

.nayami_content1 {
  padding-top: 92px;
  position: relative;
  z-index: 10;
}

.nayami_content1 img {
  margin-left: auto;
  margin-right: 0;
}

.nayami_content2 img {
  margin-left: 0;
  margin-right: auto;
}

.nayami_content2 {
  padding-top: 120px;
  position: relative;
  z-index: 10;
}

section.osusume {
  background-image: url(../images/suisho_bg.png);
  background-size: cover;
  padding: 60px 0;
}

.suisho_content {
  padding-top: 80px;
  padding-bottom: 40px;
}

section.system {
  background-image: url(../images/system_bg.png);
  background-size: 1440px;
  height: 125px;
  background-position: top center;
  position: relative;
  z-index: 10;
}

.system_content {
  padding-top: 24px;
  position: relative;
  z-index: 10;
}

section.system::after {
  background-color: #ec6d74;
  content: "";
  width: 100%;
  height: calc(100% - 25px);
  top: 0;
  left: 0;
  position: absolute;
  z-index: 1;
}

section.system2 {
  margin-top: -44px;
  position: relative;
  z-index: 1;
  background-position: top center;
  background-size: cover;
  background-repeat: no-repeat;
  background-image: url(../images/system2_bg.png);
}

.system2_content img {
  margin-right: 0;
  margin-left: auto;
  padding-top: 60px;
  position: relative;
  z-index: 10;
  padding-bottom: 60px;
}

section.system2::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  /* background: linear-gradient(to right, #dedede,#f8fafb); */

}

.system3_content {
  padding: 60px 0;
}

section.fms {
  background-color: #6CA8AF;
  position: relative;
}

.fms_content img {
  margin-right: 0;
  margin-left: 0;
}

.fms_content.flex {
  align-items: center;
  justify-content: flex-end;
  width: 44.02778%;
  padding-right: 40px;
}

.fms_content2 {
  width: 55.97222%;
}

.fms_content2 img {}

section.fms::after {
  background-image: url(../images/counse_bg.png);
  height: 100%;
  position: absolute;
  background-size: contain;
  background-position: right;
  /* content: ""; */
  top: 0;
  right: 0;
  background-repeat: no-repeat;
}

section.train {
  margin-top: 80px;
  background-color: #6CA8AF;
  padding-bottom: 100px;
}

.tran_content {
  padding-top: 60px;

}

.white_content {
  background-color: white;
  padding: 20px 10px;
  margin-top: 40px;
}

.tran_content_img:first-child {
  padding-right: 10px;
}

.commu {
  padding: 40px 0 100px;
}

.youtube_container {
  max-width: 600px;
  margin: 0 auto;
}

.youtube_wrap {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  margin-top: 40px;
}

.youtube_wrap iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

section.youtube {
  padding-top: 60px;
  padding-bottom: 100px;
}

.youtube_content2 {
  padding-top: 60px;
}

section.voice {
  background-image: url(../images/voice_bg.png);
  background-size: contain;
  background-repeat: repeat;
  padding: 60px 0 100px;
}

.voice_content2 {
  position: relative;
  padding: 60px 60px 60px 60px;
  margin-top: 60px;
}

.white_box2 {
  background-color: white;
  border-radius: 20px;
}

.voice_bg {

  position: absolute;
  width: 50%;
  right: 0;
  top: 0;

}

.voice_content3 {
  padding-top: 100px;
}

.price {
  margin-top: 100px;
  background-color: #E6E6E6;
  padding: 60px 0 0;
  margin-bottom: 60px;
}

.price_img1 {
  background-color: white;
  border-radius: 20px;
  padding: 60px 40px;
  margin-top: 40px;
}

.price_img2 {
  margin-top: 100px;
  padding-bottom: 100px;
  position: relative;
  z-index: 10;
}

.price_bg {
  position: absolute;
  bottom: 0;
  right: -140px;
  z-index: 1;
}

.price .container {
  position: relative;
}

section.faq {
  padding: 100px 0;
}

.qbox.flex, .abox.flex {
  justify-content: flex-start;
  align-items: center;
}

.qbox {
  padding: 20px;
  background-color: rgba(236, 109, 115, 0.53);

}

.q_text {
  margin-left: 20px;
}

.q_img {
  width: 20px;
}

.a_img {
  width: 20px;
}

.a_text, .q_text {
  width: calc(100% - 40px);
  font-weight: bold;
}

.abox.flex {
  align-items: flex-start;
}

.a_text {
  margin-left: 20px;
}

.q_text span {
  font-size: 24px;
  line-height: 30px;
}

.abox {
  padding: 20px 20px 20px 60px;

}

.a_text {
  font-size: 20px;
  line-height: 40px;
}

.faq_item {
  margin-top: 40px;
  margin-bottom: 100px;
}

.img_access {
  background-color: #CCCCCC;
  margin-top: 20px;
  position: relative;
  z-index: 10;
}

.img_access::after {
  position: absolute;
  content: "";
  width: 100vw;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
  background-color: #CCCCCC;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
}
.img_access img{
  
  position: relative;
  z-index: 10;
}
.logo_bottom {
  margin-top: 40px;
}

.google_map {
  position: relative;
  width: 100%;
  padding-top: 31.25%;
  margin-top: 40px;
}

.google_map iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

.img_access3 {
  margin-top: 60px;
}

section.footer {
  background-color: #ec6d74;
  padding: 20px;
  margin-top: 100px;
}

.footer img {
  max-width: 270px;
}

@media screen and (min-width: 768px) and (max-width: 1140px) {
  .nayami_bg_img {
    display: none;
  }
}