/* ==========================
Reset
========================== */

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

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

body {

  font-family: "Noto Sans JP", sans-serif;
    color: #4F4C4C;
    line-height: 1.8;
  font-size: 16px;
}

.pc-on {
  display: block;
}

.sp-on {
  display: none !important;
}

a {

  text-decoration: none;
  color: inherit;
  /* color: #00C8AA; */
  /* text-decoration: underline; */

}

ul {

  list-style: none;

}

button {
  font-family: "Noto Sans JP", sans-serif;
  color: #4F4C4C;
}

html {
  scroll-behavior: smooth;
}

.sp-on{
  display: none;
}

.pc-on {
  display:block;
}
/* ========================================
   Header
======================================== */
.header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;

  width: 100%;
  height: 62px;

  background: #fff;
}

.header {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
      color: #000;
}

.header-inner {
  width: min(100%, 1200px);
  height: 100%;
  margin: 0 auto;
  /* padding: 0 40px; */

  display: flex;
  align-items: center;
  justify-content: space-between;
}

.logo {
    font-size: 17px;
  font-weight: 700;
  line-height: 1.4;
  white-space: nowrap;
}

.nav {
  height: 100%;

  display: flex;
  align-items: center;
    gap: 32px;
      /* font-size: 14px; */
      /* font-weight: 500; */
      color: #000;
}

.nav a {
  transition: opacity 0.3s ease;
}

.nav a:hover {
  opacity: 0.6;
}

.nav-entry {
    width: 150px;
      height: 40px;
      display: flex;
      align-items: center;
      justify-content: center;
      color: #fff;
      background: #00C8AA;
      font-weight: 600;
}


/* ========================================
   Main Visual
======================================== */

.mv {
  /* width: min(100%, 1200px);
  margin: 0 auto; */
  overflow: hidden;
}

.mv picture {
  display: block;
  width: 100%;
}

.mv-image {
  width: 100%;
  height: auto;
  display: block;
      padding-top: 60px;
}


/* ========================================
   Contents
======================================== */

main>section:not(.mv) {
  width: min(100%, 1080px);
  margin: 0 auto;
}


/* ========================================
   Hamburger
======================================== */

.menu-button {
  display: none;

  width: 40px;
  height: 40px;
  padding: 8px;

  border: 0;
  background: transparent;
  cursor: pointer;

  flex-direction: column;
  justify-content: center;
  gap: 5px;
}

.menu-button span {
  display: block;
  width: 24px;
  height: 2px;
  background: #000;
}


/* ========================================
   Tablet
======================================== */

@media screen and (max-width: 1024px) {



  .nav {
    gap: 24px;
  }
/* 
  .nav-entry {
    width: 120px;
  } */

}


/* ========================================
   Smartphone
======================================== */

@media screen and (max-width: 767px) {

  .header {
    height: 56px;
  }

  .header-inner {
    width: 90%;
  }

  .logo {
    max-width: calc(100% - 60px);

            font-size: 14px;
    line-height: 1.3;

    white-space: normal;
  }

  .nav {
    display: none;
            height: auto;
  }

  .menu-button {
    display: flex;
    flex-shrink: 0;
  }

  .mv {
    width: 100%;
  }

  /*
   * スマホ用MV画像を用意する場合は
   * mv-sp.jpgを使用
   */
  .mv-image {
    width: 100%;
    height: auto;
        padding-top: 90px;
  }

}


.internship-info__content h2 {
    margin: 0;
      /* color: #4f4c4c; */
      font-size: 30px;
      /* font-weight: 700; */
      line-height: 1.6;
      text-align: center;
}

.internship-info__content p {
    margin: 16px 0 0;
      /* color: #4f4c4c; */
      font-size: 16px;
      font-weight: 400;
      line-height: 2;
      text-align: center;
}
.internship-info__content{
  margin-top: 140px;
}


.internship-info__banner{
max-width: 685px;
  margin: 0 auto;
  margin-top: 85px;
  box-shadow: 0 3px 17px rgba(0, 0, 0, 0.18);
}

.internship-info__banner:hover{
  opacity: 0.8;
  transition: 0.3s;
}

.internship-info{
  margin-top: 85px;
}

h2 span{
  font-size: 36px;
}
       

/* ========================================
   Program
======================================== */

.program {
  width: 100%;
  background: #fff;
}

.program__inner {
  width: min(100%, 1080px);
  margin: 0 auto;
  /* padding: 96px 80px 120px; */
}
.program{
  margin-top: 170px !important;
}

/* ========================================
   Title
======================================== */

.program__title {
    margin: 0;
      color: #000;
      font-size: 65px;
      font-weight: 700;
      line-height: 1.5;
}


/* ========================================
   Intro
======================================== */

.program__intro {
    margin-top: 100px;
}

.program__heading {
margin: 0;
  /* color: #4f4c4c; */
  font-size: 30px;
  font-weight: 700;
  line-height: 1.6;
}

.program__lead {
  margin: 12px 0 0;

  color: #4f4c4c;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8;
}


/* ========================================
   Program Steps
======================================== */

.program__steps {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;

  margin-top: 28px;
}


/* ========================================
   Card
======================================== */

.program-card {
  min-width: 0;
}

.program-card__image {
  width: 100%;
  aspect-ratio: 1.7 / 1;

  overflow: hidden;
  border-radius: 6px;
}

.program-card__image img {
  display: block;

  width: 100%;
  height: 100%;

  object-fit: cover;
}


.program-card__title {
    margin: 26px 0 0;
      /* color: #4f4c4c; */
      font-size: 18px;
      font-weight: 700;
      line-height: 1.6;
}

.program-card__text {
  margin: 8px 0 0;

  font-size: 16px;
  font-weight: 400;
  line-height: 1.8;
}


/* ========================================
   Tablet
======================================== */

@media screen and (max-width: 1024px) {



  .program__title {
    font-size: 36px;
  }

  .program__steps {
    gap: 20px;
  }

}


/* ========================================
   Smartphone
======================================== */

@media screen and (max-width: 767px) {

    .program__inner {
        padding: 0px 0 80px;
      }

  .program__title {
    font-size: 32px;
  }

  .program__intro {
    margin-top: 48px;
  }

  .program__heading {
    font-size: 20px;
  }

  .program__lead {
    margin-top: 16px;

    font-size: 15px;
    line-height: 1.9;
  }

  .program__steps {
    grid-template-columns: 1fr;
    gap: 48px;

    margin-top: 40px;
  }

  .program-card__image {
    aspect-ratio: 1.7 / 1;
  }

  .program-card__title {
    margin-top: 14px;
    font-size: 18px;
  }

  .program-card__text {
    margin-top: 8px;
    font-size: 15px;
    line-height: 1.7;
  }

}


/* ========================================
   Small Smartphone
======================================== */

@media screen and (max-width: 480px) {



  .program__title {
    font-size: 28px;
  }

  .program__heading {
    font-size: 20px;
  }

}


/* ========================================
   3つのポイント
======================================== */

.points {
  width: 100%;
  background: #fff;
      margin-top: 182px !important;
}

.points__inner {
  width: min(100%, 1080px);
  margin: 0 auto;
  /* padding: 72px 80px 120px; */
}


/* ========================================
   タイトル
======================================== */

.points__title {
  margin: 0;

  color: #4f4c4c;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.5;
}


/* ========================================
   ポイント一覧
======================================== */

.points__list {
  display: flex;
  flex-direction: column;
  gap: 72px;

  margin-top: 48px;
}


/* ========================================
   ポイント
======================================== */

.point {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  align-items: center;
}


/* 2つ目だけ左右反転 */

.point--reverse .point__image {
  order: 2;
}

.point--reverse .point__content {
  order: 1;
}


/* ========================================
   画像
======================================== */

.point__image {
  width: 100%;
  overflow: hidden;
  border-radius: 6px;
}

.point__image img {
  display: block;

  width: 100%;
  height: auto;

  /* aspect-ratio: 320 / 151; */
  object-fit: cover;
}


/* ========================================
   テキスト
======================================== */

.point__content {
  min-width: 0;
}

.point__heading {
  display: flex;
    align-items: flex-start;
    gap: 3px;
    margin: 0;
 
  font-size: 18px;
  font-weight: 700;
  line-height: 1.6;
}

.point__heading img {
    width: 22px;
      /* height: 16px; */
      /* flex: 0 0 16px; */
      margin-top: 6px;
}

.point__content p {
    margin: 21px 0 0;
      /* color: #4f4c4c; */
      font-size: 16px;
      font-weight: 400;
      line-height: 1.9;
}


/* ========================================
   タブレット
======================================== */

@media screen and (max-width: 1024px) {

 

  .point {
    gap: 32px;
  }

}


/* ========================================
   スマートフォン
======================================== */

@media screen and (max-width: 767px) {

  .points__inner {
          padding: 0px 0 80px;
  }

  .points__title {
    font-size: 24px;
  }

  .points__list {
    gap: 56px;
    margin-top: 40px;
  }



  /*
   * スマホでは
   * 画像
   * ↓
   * テキスト
   * の縦並び
   */

  .point,
  .point--reverse {
    display: flex;
    flex-direction: column;
    gap: 14px;

    align-items: stretch;
  }

  .point--reverse .point__image,
  .point--reverse .point__content {
    order: initial;
  }

  .point__heading {
    font-size: 18px;
  }

  .point__content p {
    margin-top: 12px;

    font-size: 15px;
    line-height: 1.7;
  }

}


/* ========================================
   小さいスマートフォン
======================================== */

@media screen and (max-width: 480px) {


  .points__title {
    font-size: 22px;
  }

}

.about-links {
  width: 100%;
  background: #fff;
      margin-top: 260px !important;
}

.about-links__inner {
  width: min(100%, 1080px);
  margin: 0 auto;
  /* padding: 72px 80px 120px; */

  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 47px;
}


/* カード */

.about-card {
  min-width: 0;
}

.about-card__image {
  width: 100%;
  overflow: hidden;
  border-radius: 6px;
}

.about-card__image img {
  width: 100%;
  aspect-ratio: 315 / 157;
  object-fit: cover;
}

.about-card__content {
  padding-top: 18px;
}

.about-card__content h2 {
margin-top: 15px;
  /* color: #4f4c4c; */
  font-size: 20px;
  font-weight: 700;
  line-height: 1.6;
}

.about-card__content p {
    margin: 20px 0 0;
      /* color: #4f4c4c; */
      font-size: 16px;
      /* line-height: 1.9; */
}

.about-card__content p+p {
  margin-top: 18px;
}


/* リンク */

.about-card__link {
  display: inline-block;
  margin-top: 20px;

  color: #00C8AA;
  font-size: 16px;
  /* font-weight: 500; */
  line-height: 1.6;

  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}

.about-card__link:hover {
  opacity: 0.65;
}


/* タブレット */

@media screen and (max-width: 1024px) {

  .about-links__inner {
    padding-right: 48px;
    padding-left: 48px;
    gap: 28px;
  }

}


/* スマホ */

@media screen and (max-width: 767px) {

  .about-links__inner {
    display: flex;
    flex-direction: column;
    gap: 56px;

          padding: 56px 0 80px;
  }

  .about-card__content {
    padding-top: 16px;
  }

  .about-card__content h2 {
    font-size: 18px;
    margin-top: 0;
  }

  .about-card__content p {
          font-size: 15px;
            line-height: 1.7;
  }

  .about-card__link {
    font-size: 16px;
  }

}




/* ========================================
   参加者の声
======================================== */

.voices {
  width: 100%;
  background: #fff;
    margin-top: 100px !important;
}

.voices__inner {
  width: min(100%, 1080px);
  margin: 0 auto;
  /* padding: 88px 80px 120px; */
}

.program__lead span{
  font-weight: bold;
}

/* ========================================
   タイトル
======================================== */

.voices__title {
  margin: 0;

  color: #000;
  font-size: 65px;
  font-weight: 700;
  line-height: 1.5;
}


/* ========================================
   リスト
======================================== */

.voices__list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 53px;
      margin-top: 76px;
}


/* ========================================
   各項目
======================================== */

.voice {
  display: flex;
  flex-direction: column;
  align-items: center;
}


/* ========================================
   写真
======================================== */

.voice__photo {
  width: 100%;
  overflow: hidden;
  /* border-radius: 6px; */
}

.voice__photo img {
  display: block;

  width: 100%;
  height: auto;

  /* aspect-ratio: 320 / 200;
  object-fit: cover; */
}


/* ========================================
   吹き出し
======================================== */

.voice__bubble {
  position: relative;

  /* width: 88%; */
  padding: 12px 14px;

  border: 1px solid #4f4c4c;
  border-radius: 6px;

  background: #fff;
}

.voice__bubble p {
  margin: 0;

  /* color: #4f4c4c; */
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
}


/* ========================================
   上向きの吹き出し
======================================== */

.voice__bubble::before,
.voice__bubble::after {
  content: "";

  position: absolute;
  left: 50%;

  width: 0;
  height: 0;

  transform: translateX(-50%);
}

.voice__bubble::before {
  top: -10px;

  border-left: 9px solid transparent;
  border-right: 9px solid transparent;
  border-bottom: 10px solid #4f4c4c;
}

.voice__bubble::after {
  top: -9px;

  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-bottom: 9px solid #fff;
}


/* ========================================
   01・03
   写真 → 吹き出し
======================================== */

.voice--01 .voice__bubble,
.voice--03 .voice__bubble {
  margin-top: 20px;
}


/* ========================================
   02
   吹き出し → 写真
======================================== */

.voice--02 {
  padding-top: 12px;
}

.voice--02 .voice__bubble {
  margin-bottom: 20px;
}

.voice--02 .voice__bubble::before {
  top: auto;
  bottom: -10px;

  border-top: 10px solid #4f4c4c;
  border-bottom: 0;
}

.voice--02 .voice__bubble::after {
  top: auto;
  bottom: -9px;

  border-top: 9px solid #fff;
  border-bottom: 0;
}


/* ========================================
   タブレット
======================================== */

@media screen and (max-width: 1024px) {

  .voices__list {
    gap: 20px;
  }

}


/* ========================================
   スマートフォン
======================================== */

@media screen and (max-width: 767px) {

    .voices__inner {
        padding: 4px 0px 80px;
      }

  .voices__title {
    font-size: 32px;
  }

  .voices__list {
    display: flex;
    flex-direction: column;
    gap: 36px;

    margin-top: 40px;
  }

  .voice,
  .voice--02 {
    padding-top: 0;
  }

  .voice__photo {
    width: 100%;
  }

  .voice__bubble {
    width: 92%;
  }

  .voice__bubble p {
          font-size: 15px;
            line-height: 1.7;
  }

  .voice--01 .voice__bubble,
  .voice--03 .voice__bubble {
    margin-top: 20px;
  }

  .voice--02 .voice__bubble {
    margin-bottom: 20px;
  }

}


/* ========================================
   小さいスマートフォン
======================================== */

@media screen and (max-width: 480px) {

  .voices__title {
    font-size: 28px;
  }

}


/* ========================================
   先輩パイロットのメッセージ
======================================== */

.pilot-message {
  width: 100%;
  background: #fff;
}

.pilot-message__inner {
width: min(100%, 1200px);
  margin: 0 auto;
  /* padding: 80px 80px 120px; */
  margin-top: 330px !important;
}


/* ========================================
   タイトル
======================================== */

.pilot-message__title {
  margin: 0;

      color: #000;
        font-size: 65px;
  font-weight: 700;
  line-height: 1.45;
}


/* ========================================
   3カラム
======================================== */

.pilot-message__list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 68px;

  margin-top: 48px;
}


/* ========================================
   各プロフィール
======================================== */

.pilot-message__item {
  min-width: 0;
}


/* ========================================
   丸いプロフィール画像
======================================== */

.pilot-message__profile {
  display: block;

      width: 240px;
        height: 240px;

  margin: 0 auto 20px;

  object-fit: contain;
}


/* ========================================
   キャッチコピー
======================================== */

.pilot-message__catch {
  margin: 0;

  font-size: 17px;
  font-weight: 700;
  line-height: 1.6;
}


/* ========================================
   本文
======================================== */

.pilot-message__text {
  margin: 8px 0 0;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.8;
}


.banner2{
  margin-top: 145px;
}

/* ========================================
   タブレット
======================================== */

@media screen and (max-width: 1024px) {

  .pilot-message__inner {
    padding-right: 48px;
    padding-left: 48px;
  }

  .pilot-message__list {
    gap: 32px;
  }

}


/* ========================================
   スマートフォン
======================================== */

@media screen and (max-width: 767px) {

  .pilot-message__inner {
    padding: 64px 0px 80px;
  }

  .pilot-message__title {
    font-size: 32px;
  }

  .pilot-message__list {
    display: flex;
    flex-direction: column;
    gap: 56px;

    margin-top: 40px;
  }

  .pilot-message__profile {

    margin-bottom: 20px;
  }

  .pilot-message__catch {
    font-size: 16px;
  }

  .pilot-message__text {
    line-height: 1.7;
  }

}


/* ========================================
   小さいスマートフォン
======================================== */

@media screen and (max-width: 480px) {



  .pilot-message__title {
    font-size: 28px;
  }

}


/* ========================================
   Support
======================================== */

.support {
  width: 100%;
  background: #fff;
}

.support__inner {
    margin: 0 auto;
      /* padding: 72px 80px 120px; */
      text-align: center;
      margin-top: 170px !important;
}


/* ========================================
   Title
======================================== */

.support__title {
  margin: 0;

  font-size: 25px;
  font-weight: 700;
  line-height: 1.6;
}


/* ========================================
   Lead
======================================== */

.support__lead {
  margin: 16px 0 0;

  font-size: 16px;
  font-weight: 400;
  line-height: 1.8;
}


/* ========================================
   Cards
======================================== */

.support__list {
      display: flex;
        /* grid-template-columns: repeat(3, 132px); */
        justify-content: center;
        gap: 35px;

  margin-top: 32px;
}

.support-card {
    width: 240px;
      min-height: 150px;
      padding: 10px 8px 8px;
      border-radius: 8px;
      background: #D4D6D6;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.support-card__image {
      width: 140px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.support-card__image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.support-card__title {
  margin: 4px 0 0;

      font-size: 20px;
  font-weight: 500;
  line-height: 1.4;
}


/* ========================================
   Note
======================================== */

.support__note {
  margin: 24px 0 0;

  font-size: 15px;
  font-weight: 400;
  line-height: 1.6;
}


/* ========================================
   Tablet
======================================== */

@media screen and (max-width: 1024px) {



}


/* ========================================
   Smartphone
======================================== */

@media screen and (max-width: 767px) {

  .support__inner {
          padding-bottom: 80px;
    margin-top: 50px !important;
  }

  .support__title {
    font-size: 20px;
  }

  .support__lead {
    text-align: left;
    font-size: 15px;
  }

  .support__list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
  }

  .support-card {
    width: 100%;
    min-height: 90px;
  }

  .support__note {
    text-align: left;
  }

}


/* ========================================
   Small Smartphone
======================================== */

@media screen and (max-width: 480px) {

 

  .support__list {
    gap: 8px;
  }

  .support-card {
          margin-bottom: 10px;
          max-width: 110px;
  }

  .support-card__title {
    font-size: 15px;
  }

}

/* ========================================
   応募
======================================== */

.requirements {
  width: 100%;
  background: #fff;
}

.requirements__inner {
  width: min(100%, 1200px);
  margin: 0 auto;
    /* padding: 80px 80px 120px; */
      margin-top: 220px;
}


/* ========================================
   メインタイトル
======================================== */

.requirements__title {
  color: #000;
  margin: 0;
  font-size: 65px;
  font-weight: 700;
  line-height: 1.5;
}


/* ========================================
   募集要項
======================================== */

.requirements__section {
  margin-top: 64px;
}

.requirements__heading {
  margin: 0;
  font-size: 25px;
  font-weight: 700;
  line-height: 1.6;
}


/* ========================================
   募集要項ボックス
======================================== */

.requirements__box {
      margin-top: 60px;
        border: 1px solid #4F4C4C;
  background: #fff;

      padding: 70px 50px;
}


/* ========================================
   項目
======================================== */

.requirements__list {
  margin: 0;
}

.requirements__item {
  margin: 0 0 30px;
}

.requirements__item:last-child {
  margin-bottom: 0;
}

.requirements__item dt {
  margin: 0 0 6px;

  font-size: 16px;
  font-weight: 700;
  line-height: 1.6;
}

.requirements__item dd {
  margin: 0;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8;
}


/* 補足部分 */

.requirements__item--note {
  margin-top: -10px;
}


/* ========================================
   タブレット
======================================== */

@media screen and (max-width: 1024px) {



  .requirements__box {
    padding: 32px;
  }

}


/* ========================================
   スマートフォン
======================================== */

@media screen and (max-width: 767px) {

  .requirements__inner {
   padding-bottom: 80px;
    margin-top: 50px !important;
  }

  .requirements__title {
    font-size: 32px;
  }

  .requirements__section {
    margin-top: 48px;
  }

  .requirements__heading {
    font-size: 18px;
  }

  .requirements__box {
    margin-top: 24px;
    padding: 24px 20px;
  }

  .requirements__item {
    margin-bottom: 28px;
  }

  .requirements__item dt {
    font-size: 16px;
  }

  .requirements__item dd {
    font-size: 15px;
    line-height: 1.7;
  }

}


/* ========================================
   小さいスマートフォン
======================================== */

@media screen and (max-width: 480px) {



  .requirements__box {
    padding: 20px 16px;
  }

}


/* ========================================
   よくある質問
======================================== */

.faq {
  width: 100%;
  background: #fff;
}

.faq__inner {
  width: min(100%, 1200px);
  margin: 0 auto;
    margin-top: 130px;
}


/* ========================================
   タイトル
======================================== */

.faq__title {
  margin: 0;

  font-size: 25px;
  font-weight: 700;
  line-height: 1.6;
}


/* ========================================
   FAQボックス
======================================== */

.faq__box {
    margin-top: 60px;
      padding: 70px 50px;
      border: 1px solid #4F4C4C;
      background: #fff;
}


/* ========================================
   FAQリスト
======================================== */

.faq__list {
  margin: 0;
}

.faq__item {
  margin: 0 0 28px;
}

.faq__item:last-child {
  margin-bottom: 0;
}


/* ========================================
   質問
======================================== */

.faq__item dt {
  margin: 0 0 6px;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.6;
}


/* ========================================
   回答
======================================== */

.faq__item dd {
  margin: 0;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8;
}


/* ========================================
   応募ボタン
======================================== */

.faq__button-wrap {
  display: flex;
  justify-content: center;

  margin-top: 56px;
}

.faq__button {
        display: flex;
          align-items: center;
          justify-content: center;
          width: 413px;
          min-height: 90px;
          color: #fff;
          background: #00C8AA;
          font-size: 25px;
          font-weight: 500;
      line-height: 1;
      transition: opacity 0.3s ease;
}

.faq__button:hover {
  opacity: 0.75;
}

.faq__item dd {
  margin: 0;
      padding-left: 1.2em;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8;
  position: relative;
}

.faq__item dd::before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
}
.arrow-btn{
      width: 10px;
        margin-left: 9px;
        margin-top: 5px;
}

/* ========================================
   タブレット
======================================== */

@media screen and (max-width: 1024px) {



  .faq__box {
    padding: 32px;
  }

}


/* ========================================
   スマートフォン
======================================== */

@media screen and (max-width: 767px) {

  .faq__inner {
    padding-bottom: 80px;
    margin-top: 50px !important;
  }

  .faq__title {
    font-size: 20px;
  }

  .faq__box {
    margin-top: 24px;
    padding: 24px 20px;
  }

  .faq__item {
    margin-bottom: 28px;
  }

  .faq__item dt {
    font-size: 16px;
  }

  .faq__item dd {
    font-size: 15px;
    line-height: 1.7;
  }

  .faq__button-wrap {
    margin-top: 48px;
  }

}


/* ========================================
   小さいスマートフォン
======================================== */

@media screen and (max-width: 480px) {



  .faq__box {
    padding-right: 16px;
    padding-left: 16px;
  }

}


.sponsors {
  width: 100%;
  background: #fff;
}

.sponsors__inner {
  width: min(100%, 1200px);
  margin: 0 auto;
      margin-top: 215px;
}


/* ========================================
   タイトル
======================================== */

.sponsors__title {
  margin: 0;

  color: #000;
  font-size: 65px;
  font-weight: 700;
  line-height: 1.5;
}


/* ========================================
   リード文
======================================== */

.sponsors__lead {
  margin: 52px 0 0;

  font-size: 16px;
  line-height: 1.8;
}


/* ========================================
   協賛グループ
======================================== */

.sponsors__group {
    margin-top: 95px;
}

.sponsors__heading {
  margin: 0;

  font-size: 20px;
  font-weight: 700;
  line-height: 1.6;
}


/* ========================================
   ロゴ
======================================== */

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

.sponsors__logos--gold {
  gap: 32px;
      margin-top: 40px;
}

.sponsors__logos--silver {
  gap: 28px;
      margin-top: 40px;
}

.sponsors__logos--bronze {
    margin-top: 50px;
}

.sponsors__logo {
  display: flex;
  align-items: center;
}

.sponsors__logo img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
}


/* ゴールド */

.sponsors__logos--gold .sponsors__logo:nth-child(1) img {
      width: 200px;
          margin-left: -10px;
}

.sponsors__logos--gold .sponsors__logo:nth-child(2) img {
      width: 192px;
}


/* シルバー */

.sponsors__logos--silver .sponsors__logo:nth-child(1) img {
    width: 170px;
        margin-left: -15px;
}

.sponsors__logos--silver .sponsors__logo:nth-child(2) img {
  width: 370px;
}

.sponsors__logos--silver .sponsors__logo:nth-child(3) img {
  width: 194px;
}



/* ブロンズ */

.sponsors__logos--bronze .sponsors__logo img {
    width: 345px;
}

.sponsors a:hover{
  opacity: 0.8;
  transition: 0.3s;
}



/* ========================================
   スマートフォン
======================================== */

@media screen and (max-width: 767px) {

  .sponsors__inner {
    padding-bottom: 80px;
    margin-top: 120px !important;
  }

  .sponsors__title {
    font-size: 32px;
  }

  .sponsors__lead {
    margin-top: 40px;
    font-size: 15px;
  }

  .sponsors__group {
    margin-top: 48px;
  }

  .sponsors__heading {
    font-size: 18px;
  }

  .sponsors__logos--gold,
  .sponsors__logos--silver {
    gap: 24px;
  }

 

  .sponsors__logos--bronze .sponsors__logo {
    width: 100%;
  }

}


/* ========================================
   小さいスマートフォン
======================================== */

@media screen and (max-width: 480px) {



  .sponsors__title {
    font-size: 28px;
  }

}

/* ========================================
   Contact Area
======================================== */

.contact-area {
  width: 100%;
  background: #fff;
  margin-top: 200px !important;
}

.contact-area__inner {
  width: min(100%, 1200px);
  margin: 0 auto;

  text-align: center;
}


/* ========================================
   メッセージ
======================================== */

.contact-area__message {
  margin: 0;
}

.contact-area__lead {
  margin: 0;

  font-size: 16px;
  font-weight: 400;
  line-height: 1.7;
}

.contact-area__title {
  margin: 14px 0 0;

  font-size: 25px;
  font-weight: 700;
  line-height: 1.6;
}


/* ========================================
   お問い合わせ
======================================== */

.contact-area__box {
    width: min(100%, 550px);
      margin: 64px auto 0;
      padding: 34px 20px;
      border: 1px solid #4F4C4C;
}

.contact-area__box p {
  margin: 0;

  font-size: 16px;
  line-height: 1.7;
}

.contact-area__box p+p {
  margin-top: 4px;
}

.contact-area__box a {

  text-decoration: underline;
  text-underline-offset: 3px;
}


/* ========================================
   SNS
======================================== */

.contact-area__sns {
  display: flex;
  align-items: center;
  justify-content: center;

  margin-top: 28px;

  font-size: 16px;
  line-height: 1.6;
}

.contact-area__sns a {

  text-decoration: underline;
  text-underline-offset: 3px;
}

.contact-area__sns span {
  margin: 0 4px;
}


/* ========================================
   プライバシーポリシー・応募規約
======================================== */

.contact-area__links {
  display: flex;
  flex-direction: column;
  align-items: center;

  gap: 14px;

  margin-top: 40px;
}

.contact-area__links a {

  font-size: 14px;
  line-height: 1.6;

  text-decoration: underline;
  text-underline-offset: 3px;
}


/* ========================================
   Hover
======================================== */

.contact-area a:hover {
  opacity: 0.65;
}



/* ========================================
   Smartphone
======================================== */

@media screen and (max-width: 767px) {

  .contact-area__inner {
    padding: 56px 0px 64px;
  }

  .contact-area__title {
    font-size: 18px;
  }

  .contact-area__box {
    width: 100%;
        margin-top: 28px;
    padding: 20px 16px;
  }

  .contact-area__sns {
    flex-wrap: wrap;
    row-gap: 4px;

    margin-top: 28px;
  }

  .contact-area__links {
    margin-top: 36px;
  }

}





/*==================================
Footer
==================================*/

.footer {

  background: #4f4c4c;
    margin-top: 100px;


}

.footer__inner {

  display: grid;

  grid-template-columns: 1fr auto 1fr;

  align-items: center;

}

.footer__left {

  display: flex;

  justify-content: flex-end;

  padding-right: 100px;

}

.footer__left img {

  width: 150px;

}

.footer__center {

  display: flex;

  justify-content: center;

}

.footer__center img {

  width: 8px;
  /* height: 460px; */

  display: block;

}

.footer__right {

  padding-left: 70px;

}

.footer__right p {

  font-family: "Jost", sans-serif;

  font-size: 14px;
  font-weight: 500;
  line-height: 2;

  color: #fff;
  text-align: left;
}



@media(max-width:768px) {

  .pc-on {
    display: none;
  }

  .sp-on {
    display: block;
  }



  .footer__inner {

    /* grid-template-columns: 1fr; */

    gap: 40px;

    text-align: center;

  }

  .footer__left {

    justify-content:end;

    padding-right: 0;

  }

  .footer__center img {

    width: 8px;
    height: 120px;

    margin: auto;

  }

  .footer__right {

    padding-left: 0;

  }

  .footer__right p {

    font-size: 10px;

  }
.pc-on {
  display: none !important;
}
.sp-on {
  display: block !important;
}

main>section:not(.mv) {
 width: 90% !important;
}
.internship-info__content h2{
  font-size: 18px;
}
.program {
  margin-top: 30px !important;
}
.points{
  margin-top: 0 !important;
}

        .about-links {
          margin-top: 0 !important;
        }
h2 span {
  font-size: 21px;
}
.internship-info__content p{
  text-align: left;
  line-height: 1.7;
      margin: 36px 0 0;
}
.internship-info__content {
  margin-top: 50px;
}
.voices{
  margin-top: 0 !important;
}
.banner2 {
  margin-top: 0;
}
.faq__button{
      min-height: 80px;
      font-size: 20px;
}
.pilot-message__inner{
  margin-top: 50px !important;
}
.support-card__image img{
  width: 70%;
}
.internship-info__banner{
  margin-top: 0 !important;
}
.sponsors__logos--gold .sponsors__logo:nth-child(1) img {
  width: 190px;
  margin-left: 0;
          /* margin: 0 auto; */
}
.sponsors__logos--gold .sponsors__logo:nth-child(2) img {
  width: 182px;
/* margin: 0 auto; */
}
.sponsors__logos--gold{
  display: block;
}
.sponsors__logo{
  display: block;
          /* margin: 0 auto; */
  margin-top: 40px;
}
.sponsors__logos{
  display: block;
}
.sponsors__logos--silver .sponsors__logo:nth-child(1) img{
  width: 190px;
  margin-left: 0;
}
.sponsors__group2{
  margin-top: 88px;
}
.sponsors__group3{
  margin-top: 48px;
}
.sponsors__group2 .sponsors__logo{
  margin-top: 0;
}
.contact-area{
  margin-top: 0 !important;
}
.contact-area__box p{
  font-size: 15px;
}

.footer{
  margin-top: 0;
}
.footer__left img {
  width: 90px;
}

.arrow-btn {
  width: 8px;
  margin-left: 9px;
  margin-top: 4px;
}

}