@charset "utf-8";

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  padding: 0;
  color: #000000;
  font-family:  "游ゴシック体", "Yu Gothic", YuGothic, noto-sans-cjk-jp, sans-serif;
  font-style: normal;
  font-feature-settings: "palt";
  font-size: 16px;
  font-weight: 500;
  font-style: normal;
  line-height: 2;
  letter-spacing: 0.1rem;
  text-align: center;
}

.wrapper{
  overflow: hidden;
}

/* ------共通のタイトル ------*/
.title{
  padding-top: 88px;
  text-transform: uppercase;
  color:#1A6AE3;
  font-family:'Montserrat', sans-serif;
  font-size: 48px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
}

.title-jp{
  margin-top: 16px;
  margin-bottom: 64px;
  text-transform: uppercase;
  color:#1A6AE3;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.2rem;
}

/* ------フォント------ */
.white{
  color:#FFFFFF;
}

.blue{
  color:#1A6AE3
}

.bold{
  font-weight: 700;
}

.normal{
  font-size: 500;
}

/* ------メインビジュアル------ */
.mainvisual{
  position: relative;
  width:100%;
  height: 88vh;
  margin-bottom: 32px;
}


/* ------ハンバーガーメニュー------ */
#g-nav{
  position:fixed;
  z-index: -1;
  opacity: 0;
  top:0;
  width:100%;
  height: 100vh;
  background: #1A6AE3;
  transition: all 0.3s;
  }

/*アクティブクラスがついたら透過なしにして最前面へ*/
#g-nav.panelactive{
opacity: 1;
z-index:999;
}

/*ナビゲーションの縦スクロール*/
#g-nav.panelactive #g-nav-list{
  position: fixed;
  z-index: 999; 
  width: 100%;
  height: 100vh;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  font-family: Montserrat;
  font-size: 48px;
  letter-spacing: 0;
  line-height: 1;
}

/*ナビゲーション*/
#g-nav ul {
  display: none;
  z-index: 999;
}

#g-nav.panelactive ul {
  display: block;
}

/*リストのレイアウト設定*/
#g-nav li{
  margin-left: 8.5vw;
  list-style: none;
  text-align: left;
}

.g-nav-wrapper{
  position: absolute;
  top: 50%;
  transform:translateY(-50%);
  -webkit-transform:  translateY(-50%);
}

.g-nav-small{
  margin-top: 2px;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 10%;
  line-height: 24px;
}

#g-nav li a{
color: #FFFFFF;
text-decoration: none;
padding-top:9px;
padding-bottom:9px;
display: block;
text-transform: uppercase;
letter-spacing: 0.1em;
font-weight: bold;
}

/*リストのレイアウト設定-外部のサイト*/
.g-nav-sub{
  margin-top: 64px;
  color: #FFFFFF;
  font-family: "游ゴシック体", "Yu Gothic", YuGothic;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1;
}

.g-nav-sub li{
  margin-top: 16px;
  text-decoration:underline;
}

/*リストのレイアウト設定-SNS*/
.g-nav-sns{
  margin-top: 62px;
  margin-left: 8.5vw;
  text-align: left;
}

.g-nav-sns img{
  vertical-align: top;
}

.g-nav-sns-contact{
  margin-top: 1px;
  height: 28px;
}

.g-nav-sns-insta{
  height: 30px;
  padding-left: 8px;
  padding-right: 8px;
}

.g-nav-sns-twitter{
  margin-top: 1px;
  height: 28px;
}


/* 背景固定(ハンバーガーメニューやアクティブのボタン等で使用) */
.is-fixed{
    height: 100%;
    overflow: hidden;
}

/* ボタンのためのcss */
.openbtn1{
  margin-top: 16px;
  position:fixed;
  z-index: 9999;
  right: 4.26vw;
  cursor: pointer;
  width: 44px;
  height:44px;
}

/*×に変化*/
.openbtn1 span{
  display: inline-block;
  transition: all .4s;
  position: absolute;
  left: 0px;
  height: 2px;
  border-radius: 2px;
  background-color: #1A6AE3;
  width: 44px;
}

.openbtn1 span:nth-of-type(1) {
top:16px;
}

.openbtn1 span:nth-of-type(2) {
top: 24px;
}

/* ×ボタン */
.active{
  background-color: #000000;
  border-radius: 50%;
}

.openbtn1.active span:nth-of-type(1) {
  top: 16px;
  left: 16px;
  transform: translateY(6px) rotate(-45deg);
  width: 30%;
  background-color: #FFFFFF;
}

.openbtn1.active span:nth-of-type(2){
  top: 28px;
  left: 16px;
  transform: translateY(-6px) rotate(45deg);
  width: 30%;
  background-color: #FFFFFF;
}

/* セクションでハンバーガーの色が変わる */
.change-white{
  background-color: #fff !important;
}

.change-white-2{
  background-color: #fff !important;
}

/* mainvisualのロゴ */
.sekizemi-logo{
  position: absolute;
  width: 74.7%;
  top: 24vh;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 10;
}

/* mainvisualの背景イラスト */
.mainvisual-back-illust{
  position: absolute;
  width: 100vw;
  z-index: -1;
  bottom: 210px;
  left: 0;
  right: 0;
  margin: auto;
}

/* mainvisualのコメント-繰り返し */
#mc1{
  display:block; 
}
#mc2{
  display:none;
}
#mc3{
  display:none;
}
#mc4{
  display:none;
}
#mc5{
  display:none;
}
#mc6{
  display:none;
}

/* mainvisualのコメント-装飾 */

.mainvisual-comment{
  position: absolute;
  bottom: 44vw;
}

.mainvisual-comment-1{
  width: 25.8vw;
  z-index: 7;
  left: 32vw;
}

.mainvisual-comment-2{
  width: 26.1vw;
  z-index: 6;
  right: 16vw;
  margin-top: 8px;
}

.mainvisual-comment-3{
  width: 24.3vw;
  z-index: 5;
  left: 14vw;
  margin-top: 8px;
}

.mainvisual-comment-4{
  width: 22.7vw;
  z-index: 3;
  margin-top: 32px;
}

.mainvisual-comment-5{
  width: 26.3vw;
  z-index: 4;
  right: 32vw;
}

.mainvisual-comment-6{
  width: 22.9vw;
  z-index: 2;
  right: 0vw;
  margin-top: 32px;
}


.mainvisual-people{
  width:86.7vw;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 2;
}

/* ------about　導入文------ */
.about{
  background-color: #1A6AE3;
  color: #FFFFFF;
}

.about-text-big{
  padding-top: 80px;
  margin-bottom: 40px;
  font-size: 24px;
  line-height: 40px;
  letter-spacing: 0.25rem;
}

.about-text-small{
  padding-bottom: 80px;
  margin:0 auto;
  width: 91.5%;
  text-align: left;
  line-height: 38px;
  letter-spacing: 0.2rem;
}

/* トップページの写真① */
.toppage-photo{
  width: 100%;
}

/* ------activities　活動------ */
.activities{
  text-align: center;
  margin-bottom: 80px;
}

.activities-container{
  margin-bottom: 64px;
}

.activities-box {
  margin-bottom: 16px;
  padding: 6px 1em;
  color: #FFFFFF;
  background: #000000;
  display: inline-block;
}

.activities-box p {
  margin: 0; 
  padding: 0;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.2rem;
}

.activities-title{
  margin: 0 auto;
  margin-bottom: 36px;
  display: block;
}

.activities-title-1{
  width: 90.4%;
  height: auto;
  max-width: 339px;
}

.activities-title-2{
  width: 78.9%;
  height: auto;
  max-width: 296px;
}

.activities-title-3{
  width: 44.3%;
  height: auto;
  max-width: 166px;
}

.activities-illust{
  width: 91.5vw;
}

.activities-text{
  width: 91.5%;
  margin: 0 auto;
  margin-top: 24px;
  text-align: left;
}

.activities-openbtn-tag{
  margin-top: 32px;
  margin-bottom: 8px;
  background-color: #1A6AE3;
  font-weight: 700;
  color: #FFFFFF;
}

/* activities　　ボタン1 */
.g-nav-activities{
  position:fixed;
  z-index: -1;
  opacity: 0;
  top:0;
  width:100%;
  height: 100vh;
  background: #DFE8F5;
    /*動き*/
  transition: all 0.3s;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  }

/*アクティブクラスがついたら透過なしにして最前面へ*/
.g-nav-activities.panelactive-activities{
opacity: 1;
z-index:999;
}

/*ナビゲーションの縦スクロール*/
.g-nav-avtivities.panelactive-activities .g-nav-list-activities{
  position: fixed;
  z-index: 999; 
  width: 91%;
  height: 100vh;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  font-family: Montserrat;
  font-size:16px;
  color: #000000;
  letter-spacing: 0;
  line-height: 1;
}

/* activities-ボタン2 */
.g-nav-activities-2{
  position:fixed;
  z-index: -1;
  opacity: 0;
  top:0;
  width:100%;
  height: 100vh;
  background: #DFE8F5;
    /*動き*/
  transition: all 0.3s;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  }

/*アクティブクラスがついたら透過なしにして最前面へ*/
.g-nav-activities-2.panelactive-activities-2{
opacity: 1;
z-index:999;
}

/*ナビゲーションの縦スクロール*/
.g-nav-avtivities-2.panelactive-activities-2 .g-nav-list-activities{
  position: fixed;
  z-index: 999; 
  width: 91%;
  height: 100vh;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  font-family: Montserrat;
  font-size:16px;
  color: #000000;
  letter-spacing: 0;
  line-height: 1;
}

/* activities-ボタン3 */
.g-nav-activities-3{
  position:fixed;
  z-index: -1;
  opacity: 0;
  top:0;
  width:100%;
  height: 100vh;
  background: #DFE8F5;
    /*動き*/
  transition: all 0.3s;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  }

/*アクティブクラスがついたら透過なしにして最前面へ*/
.g-nav-activities-3.panelactive-activities-3{
opacity: 1;
z-index:999;
}

/*ナビゲーションの縦スクロール*/
.g-nav-avtivities-3.panelactive-activities-3 .g-nav-list-activities{
  /*ナビの数が増えた場合縦スクロール*/
  position: fixed;
  z-index: 999; 
  width: 91%;
  height: 100vh;/*表示する高さ*/
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  font-family: Montserrat;
  font-size:16px;
  color: #000000;
  letter-spacing: 0;
  line-height: 1;
}

.g-nav-activities-3 .g-nav-list-activities .activities-title{
  height: 30px;
  width: auto;
}

/* activities　ボタン　共通要素 */

.remove-btn-activities{
  height: 50px;
  position: fixed;
  top: 24px;
  right: 4.56vw;
}

.g-nav-list-activities .activities-box{
  margin-top: 98px;
}

.activities-open-text-container{
  margin: 0 auto;
  margin-top: 32px;
  margin-bottom: 80px;
  width: 91.5vw;
  text-align: left;
}


/* activities　ボタン装飾要素 */
.activitiesbtn-open{
  margin: 0 auto;
  position: relative;
  height: 60px;
  width:228px;
  margin-top: 40px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-radius: 40px;
  background-color: #1A6AE3;
  color:#ffffff;
}

.active-btn-text{
  margin-left: 28px;
}

.activities-btn-plus{
  width: 24px;
  height: 24px;
  margin-right: 28px;
  display: inline-block;
  position: relative;
  box-sizing: border-box;
  border: solid 2px #fff;
  background-color: #ffffff;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  transition: .3s;
  margin-right: 28px;
}

.activities-btn-plus:before, .activities-btn-plus:after {
  position: absolute;
  top: 9px;
  left: 50%;
  content: '';
  display: inline-block;
  width: 12px;
  height: 12px;
  border-top: 2px solid #1A6AE3;
  transform: translateX(-50%);
}

.activities-btn-plus:after {
  top: 4px;
  left: -1px;
  transform: rotate(90deg);
}

.activities-btn:hover .activities-btn-plus{
  width: 28px;
  height: 28px;
}

/* ストックリーグボタン */
.activities-container .standard-btn{
  margin-top: 16px;
}

/* ------point 積ゼミのおすすめポイント------- */
.point{
  padding-bottom: 80px;
  background-color: #DFE8F5;
}

.point-img{
  width: 343px;
}

/* スライダー b*/
.swiper--wrapper {
  width: 100%;
  height: 300px;
}

.swiper-slide {
  color: #ffffff;
  width: 100%;
  height: 100%;
  text-align: center;
  line-height: 300px;
}

.swiper-pagination-bullet{
  height: 12px;
  width: 12px;
  border: solid 2px #000000;
  background-color: #DFE8F5;
  opacity: 1;
}

.swiper-pagination-bullet-active{
  background-color: #1A6AE3;
}

/* ------teacher 積ゼミの担当教員------ */
.teacher{
  background-color: #1A6AE3;
  padding-bottom: 80px;
}

.teacher-img{
  width: 59.4%;
  max-width: 400px;
  max-height: 400px;
}

.teacher-name{
  margin-top: 24px;
  margin-bottom: 24px;
  font-size: 36px;
  line-height: 40px;
  letter-spacing: 0.2rem;
}

.teacher-text{
  width: 91.5%;
  margin: 0 auto;
  text-align: left;
}

/* 積先生の研究分野紹介 */
.teacher-box {
  display: inline-block;
  background: #FFFFFF;
  margin-top: 40px;
  padding: 6px 38px;
  color: #1A6AE3;
}

.teacher-box-2{
  padding: 6px 22px;
}

.teacher-box p {
  margin: 0; 
  padding: 0;
  font-size: 24px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.1rem;
}

.teacher-tag{
  margin-top: 24px;
  margin-bottom: 8px;
  font-size: 18px;
  line-height: 1;
}

/* 積先生の詳細リンク */
.teacher-line{
  margin: auto;
  width: 32px;
  height: 2px;
  background: #FFFFFF
}

.teacher-kennkyu-text{
  margin-top: 8px;
}

.teacher-private-text{
  width: 170px;
  margin: 0 auto;
  margin-top: 24px;
  text-align: left;
  font-size: 500;
}

.teacher-link{
  width: 88.2%;
  margin-top: 40px;
  margin-left: 5.9%;
  display: flex;
  justify-content: space-between;
  text-align: center;
  vertical-align: middle;
}

.teacher-link-text{
  font-size: 26px;
  line-height: 32px;
}

/* 矢印 */
.arrow{
  position: relative;
  display: inline-block;
  padding: 0 0 0 16px;
  color: #000;
  vertical-align: middle;
  text-decoration: none;
  font-size: 15px;
}

.arrow::before,
.arrow::after{
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}

.teacher-link-arrow{
  box-sizing: border-box;
  width: 36px;
  height: 36px;
  background-color: #FFFFFF;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  transition: .3s;
}

.teacher-link-arrow::after{
  left: 32%;
  width: 13px;
  height: 13px;
  border-top: 3px solid #1A6AE3;
  border-right:3px solid #1A6AE3;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.teacher-link:hover .teacher-link-arrow{
  width: 40px;
  height: 40px;
}

.teacher-link-line{
  height: 4px;
  width: 88.2%;
  margin: 0 auto;
  margin-top: 14px;
  margin-bottom: 80px;
  background-color: #FFFFFF;
}

/* 積先生からのメッセージ */
.message{
  width: 91.5%;
  margin: 0 auto;
  padding-bottom: 40px;
  background-color: #FFFFFF;
  border-radius: 12px;
  color: #1A6AE3;
  
}

.message-sub{
  padding-top: 40px;
  font-size: 18px;
  line-height: 24px;
  letter-spacing: 0.2rem;
}

.message-main{
  display: table;
  margin: 0 auto;
}

.message-en{
  display: inline-block;
  padding-left: 12px;
  padding-right: 12px;
  font-family: Montserrat;
  font-size: 36px;
  line-height: 36px;
  letter-spacing: 0.2rem;
  display: table-cell;
  vertical-align: middle;
}

.message-line{
  height: 3px;
  width: 32px;
  display: inline-block;
  background-color: #1A6AE3;
}

.message-text{
  width: 79.2vw;
  margin: 0 auto;
  margin-top: 40px;
  text-align: left;
}

/* ------voice　積ゼミ生徒の声------*/
.voice{
  padding-bottom: 56px;
}

.voice-container{
  margin-bottom: 24px;
}

.voice-container-flex{
  width: 91.5vw;
  display: flex;
  margin: 0 auto;
  justify-content: space-between;
}

.voice-student{
  width: 56px;
  height: 64px;
  margin-right: 32px;
}

.voice-title{
  text-align: left;
  font-size: 18px;
  font-weight: 700;
}

/* voice 詳細リンク　装飾*/
.voice-detail{
  width: 91.5vw;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  margin: 0 auto;
}

.voice-detail-text{
  margin-right: 2px;
}

.voice-btn-plus {
  position: relative;
  width: 24px;
  height: 24px;
  background: #FFFFFF;
  border-radius: 50%;
  border: 2px solid #000000;
}

.voice-btn-plus::before, .voice-btn-plus::after {
  position: absolute;
  top: 9px;
  left: 50%;
  content: '';
  display: inline-block;
  width: 12px;
  height: 12px;
  border-top: 2px solid #000000;
  transform: translateX(-50%);
}

.voice-btn-plus::after {
  top: 4px;
  left: -1px;
  transform: rotate(90deg);
}

.voice-line{
  height: 4px;
  width: 88px;
  margin: 0 auto;
  margin-bottom: 24px;
  background-color: #DFE8F5;
}

/* voice　ボタン　共通要素 */
.remove-btn-voice-top{
  height: 50px;
  position: fixed;
  top: 24px;
  right: 4.56vw;
}

.remove-btn-voice-bottom{
  height: 50px;
}

.voice-open-title-en{
  margin-top: 88px;
  color:#FFFFFF;
  font-family: Montserrat;
  font-size: 36px;
}

.voice-open-title-jp{
  margin-top: 8px;
  color:#FFFFFF;
  font-size: 18px;
  letter-spacing: 0.2rem;
}

.voice-subtitle-open{
  margin: 0 auto;
  width: 82vw;
  text-align: left;
  margin-top: 40px;
  font-weight: bold;
  font-size: 28px;
  line-height: 38px;
  letter-spacing: 0.1rem;
  color: #FFFFFF;
  text-shadow: 
  1px 1px 0 #000, -1px -1px 0 #000,
  -1px 1px 0 #000, 1px -1px 0 #000,
  0px 1px 0 #000,  0-1px 0 #000,
  -1px 0 0 #000, 1px 0 0 #000;
}

.voice-student-open{
  width: 100vw;
  margin-top: 32px;
}

.voice-name-open{
  margin-top: 16px;
  color:#ffffff;
  letter-spacing: 0.1rem;
}

.voice-student-polygon{
  margin: 0 auto;
  margin-top: 42px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 16px 24px 16px;
  border-color: transparent transparent #ffffff transparent;
}

.voice-open-text-container{
  margin-bottom: 40px;
  padding-top:32px;
  padding-bottom:32px;
  width: 100vw;
  background-color: #ffffff;
}

.voice-openbtn-text{
  margin: 0 auto;
  width: 79.2vw;
  text-align: left;
  line-height: 32px;
  letter-spacing: 0.1em;
}

.voice-bottom-btns{
  margin-bottom: 112px;
}

.voice-btn-arrow{
  width: 64px;
  height: 64px;
  box-sizing: border-box;
  background-color: #ffffff;
  border: solid 2px #1A6AE3;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  transition: .3s;
}

.voice-btn-arrow::after{
  left: 32%;
  width: 16px;
  height: 16px;
  border-top: 3px solid #1A6AE3;
  border-right:3px solid #1A6AE3;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.voice-btn:hover .standard-btn-arrow{
  width: 28px;
  height: 28px;
}

.voice-btn-arrow-left{
  transform: rotate(180deg);
}

.remove-btn-voice-bottom{
  vertical-align: middle;
  margin: 0 40px 0 40px;
}

/*  voice　ボタン1  */

.g-nav-voice-1{
  position:fixed;
  z-index: -1;
  opacity: 0;
  top:0;
  width:100%;
  height: 100vh;
  background: #1A6AE3;
    /*動き*/
  transition: all 0.3s;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  margin: 0 auto;
  }

/*アクティブクラスがついたら透過なしにして最前面へ*/
.g-nav-voice-1.panelactive-voice-1{
opacity: 1;
z-index:999;
}

/*ナビゲーションの縦スクロール*/
.g-nav-voice-1.panelactive-voice-1 
.g-nav-list-voice{
  position: fixed;
  z-index: 999; 
  height: 100vh;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  font-family: Montserrat;
  font-size:16px;
  color:#000000;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1;
}

/*  voice　ボタン2  */

.g-nav-voice-2{
  position:fixed;
  z-index: -1;
  opacity: 0;
  top:0;
  width:100%;
  height: 100vh;
  background: #1A6AE3;
    /*動き*/
  transition: all 0.3s;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  margin: 0 auto;
  }

/*アクティブクラスがついたら透過なしにして最前面へ*/
.g-nav-voice-2.panelactive-voice-2{
opacity: 1;
z-index:999;
}

/*ナビゲーションの縦スクロール*/
.g-nav-voice-2.panelactive-voice-2  
.g-nav-list-voice{
  position: fixed;
  z-index: 999; 
  height: 100vh;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  font-family: Montserrat;
  font-size:16px;
  color:#000000;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1;
}

/*  voice　ボタン3  */
.g-nav-voice-3{
  position:fixed;
  z-index: -1;
  opacity: 0;
  top:0;
  width:100%;
  height: 100vh;
  background: #1A6AE3;
    /*動き*/
  transition: all 0.3s;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  margin: 0 auto;
  }

/*アクティブクラスがついたら透過なしにして最前面へ*/
.g-nav-voice-3.panelactive-voice-3{
opacity: 1;
z-index:999;
}

/*ナビゲーションの縦スクロール*/
.g-nav-voice-3.panelactive-voice-3  
.g-nav-list-voice{
  position: fixed;
  z-index: 999; 
  height: 100vh;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  font-family: Montserrat;
  font-size:16px;
  color:#000000;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1;
}


/* ------news　お知らせ------*/
.news{
  background-color: #DFE8F5;
  padding-bottom: 80px;
}

.news-title-jp{
  margin-bottom: 32px;
}

.news-time{
  width: 91.5vw;
  margin: 0 auto;
  margin-top: 32px;
  font-family: Montserrat;
  font-size: 14px;
  font-weight: 700;
  line-height: 16px;
  text-align: left;
}

.news-title{
  width: 91.5vw;
  margin: 0 auto;
  text-align: left;
}

/* ニュース　ボタン */
.news .standard-btn{
  margin-top: 64px;
}

.standard-btn{
  height: 60px;
  width:228px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border: solid 4px #1A6AE3;
  border-radius: 40px;
  color:#1A6AE3;
}

.standard-btn-text{
  margin-left: 28px;
}

.standard-btn-arrow{
  width: 24px;
  height: 24px;
  margin-right: 28px;
  box-sizing: border-box;
  border: solid 2px #1A6AE3;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  transition: .3s;
}

.standard-btn-arrow::after{
  left: 32%;
  width: 8px;
  height: 8px;
  border-top: 3px solid #1A6AE3;
  border-right:3px solid #1A6AE3;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.standard-btn:hover .standard-btn-arrow{
  width: 28px;
  height: 28px;
}

.standard-btn-arrow::after{
  left: 32%;
  width: 8px;
  height: 8px;
  border-top: 3px solid #1A6AE3;
  border-right:3px solid #1A6AE3;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.standard-btn:hover .standard-btn-arrow{
  width: 28px;
  height: 28px;
}

/* ------footer　フッター------- */
footer{
  padding-top: 80px;
  padding-bottom: 80px;
  background-color: #1A6AE3;
  font-family: Montserrat;
  color:#FFFFFF;
}

.footer-btn{
  height: 60px;
  width:228px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-radius: 40px;
}

.footer-btn-text{
  margin-left: 28px;
}

.footer-btn-icon{
  height: 24px;
  width: 30px;
  margin-right: 28px;
}

.contact-btn{
  background-color: #FFFFFF;
  color:#1A6AE3;
}

.instagram-btn{
  margin-top: 32px;
  border: solid 4px #FFFFFF;
  color:#FFFFFF;
}

.instagram-btn > .footer-btn-icon{
  height: 30px;
  margin-right: 23px;
}

.twitter-btn{
  margin-top: 32px;
  margin-bottom: 48px;
  border: solid 4px #FFFFFF;
  color:#FFFFFF;
}

.twitter-btn > .footer-btn-icon{
  height: 26.34px;
  width: 32px;
  margin-right: 22px;
}

/* フッター　文字のみのリンク*/
.footer-link-container{
  margin-left: 8.5vw;
  text-align: left;
  line-height: 1;
  letter-spacing: 0;
}

.footer-link-text{
  margin-bottom: 24px;
}

/* フッター　ページの一番上へ*/
.page-top{
  scroll-behavior: smooth;
}
.page-top-sent{
  width: 88px;
  height: 88px;
  margin: 0 0 0 auto;
  margin-right: 4.26vw;
  box-sizing: border-box;
  border: solid 4px #FFFFFF;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  transition: .3s;
}

.page-top-arrow{
  width: 32px;
  height: 32px;
  border-top: 4px solid #fff;
  border-right: 4px solid #fff;
  transform: rotate(-45deg);
  margin-top: 30px;
  margin-left: 24px;
}

@media screen and (max-width:375px) { 
.point-img {
  width: 91.5vw;}

.teacher-link-text{
  font-size: 20px;
}
}

/* ------タブレット------ */
@media screen and (min-width:600px) { 
  /*------ハンバーガーボタン　共通-------*/
  .openbtn1{
    width: 56px;
    height:56px;
  }
  
  .openbtn1 span{
    width: 56px;
  }

  .openbtn1.active span:nth-of-type(1){
    top: 20px;
    left: 20px;
  }

  .openbtn1.active span:nth-of-type(2){
    top:32px;
    left:20px;
  }

  /* ------mainvisual------ */
  .sekizemi-logo{
    top: 160px;
  }

  .mainvisual-people{
    height: 32vh;
    width: auto;
  }

  .mainvisual-comment{
    width: 18vh;
  }

  .teacher-flex{
    display: flex;
    max-width: 480px;
    margin: 0 auto;
    justify-content: space-between;
  }

  .teacher-text{
    width: 48%;
  }
  }

  /* ------PC------ */
  @media screen and (min-width:960px) { 
    /* ------ページ内で共通------ */
    .title{
      padding-top: 160px;
      text-align: left;
      margin-left: 10.3vw;
    }

    .title-jp{
      text-align: left;
      margin-left: 10.3vw;
      margin-bottom: 80px;
    }

    /* ------about------ */
    .about-img-wrap{
      display: flex;
    }

    .about{
      width: 50%;
    }

    .about-text-big{
      width: 29.4vw;
      text-align: left;
      margin-left: 10.3vw;
      padding-top: 120px;

    }

    .about-text-small{
      width: 29.4vw;
      text-align: left;
      margin-left: 10.3vw;
      padding-bottom: 120px;
    }

    .toppage-photo{
      width: 50%;
      object-fit: cover;
    }

    /* ------activities------ */
    .activities{
      margin-bottom: 160px;
    }

    .activities-flex{
      display: flex;
      justify-content: space-between;
      width: 79.4vw;
      margin: 0 auto;
    }
  
    .activities-container{
      width: 28.6%;
    }
  
    .activities-illust{
      width: 100%;
    }

    .panelactive-activities{
      left: 0;
    }

    .panelactive-activities-2{
      left: 0;
    }

    .panelactive-activities-3{
      left: 0;
    }

    .activities-container{
      margin-bottom: 0;
    }

    .activities-text{
      width: 100%;
    }

    .swiper-button-prev, .swiper-rtl .swiper-button-next{
      left: 24vw
    }

    .swiper-button-next, .swiper-rtl .swiper-button-prev{
      right: 24vw;
    }

    /* ナビ開いた時 */
    .g-nav-list-activities{
      text-align: left;
    }

    .g-nav-list-activities .activities-box{
      margin-top: 200px;
      margin-left: 23.5vw;
    }
    .activities-open-text-container{
      width: 52.9vw;
    }

    .g-nav-list-activities > .activities-title{
      margin-left: 23.5vw;
    }

    /* ------写真------ */
    .pc-hidden{
      display: none;
    }

    /* ------point------ */
    .point{
      padding-bottom: 160px;
    }

    /* ------teacher------ */
    .teacher{
      text-align: left;
      padding-bottom: 160px;
    }

    .teacher-img{
      width: 31.7vw;
      height: 31.7vw;
    }

    .teacher > .pc-flex{
      display: flex;
      justify-content: space-between;
      width: 79.4vw;
      max-width:952px;
      margin: 0 auto;
    }

    .teacher-flex{
      display: flex;
    }

    .teacher-flex-right{
      margin-left: 40px;
    }
    
    .teacher-name{
      margin-bottom: 16px;
      font-size: 42px;
    }
    
    .teacher-text{
      margin-left: 0;
      width: 100%;
    }
    .teacher-tag{
      font-weight: 700;
    }
    
    .teacher-line{
      display: none;
    }

    .teacher-private-text{
      margin-left: 0;
    }

    .teacher-link{
      margin-left: 0;
    }

    .teacher-link-line{
      margin-left: 0;
      margin-bottom: 120px;
    }

    .message{
      width: 79.4vw;
      max-width: 952px;
      padding-bottom: 72px;
    }

    .message-sub{
      text-align: center;
      padding-top: 72px;
    }

    .message-text{
      width: 52.9vw;
      max-width: 800px;
    }

    /* ------voice------ */
    .voice > .title{
      padding-top: 120px;
    }

    .voice{
      padding-bottom: 120px;
    }

    .pc-flex {
      width: 79.4vw;
      margin: 0 auto;
      display: flex;
    }

    .voice-container-flex{
      max-width: 952px;
      display: flex;
      justify-content: start;
      align-items: center;
    }

    .voice > .pc-flex{
      display: flex;
    }

    .voice-title{
      display: inline;
    }

    .voice-detail{
      width: 79.4vw;
      max-width: 952px;
    }

    /* voiceのナビオープン */
    .voice-nav-wrap{
      width: 52.9vw;
      margin: 0 auto;
    }

    .voice-open-title-en{
      text-align: left;
    }

    .voice-open-title-jp{
      text-align: left;
    }

    .voice-student-open{
      width: 50%;
    }

    .voice-open-text-container{
      width: 52.9vw;
    }
    
    .voice-openbtn-text{
      width: 42.3vw;
    }

    .g-nav-list-voice{
      width: 100vw;
    }

    /* ------news------ */
    .news > .title{
      padding-top: 120px;
    }

    .news{
      padding-bottom: 120px;
    }

    .news-time{
      width: 79.4vw;
    }

    .news-title{
      width: 79.4vw;
    }

    /* ------footer------ */
    footer{
      padding-top: 120px;
      padding-bottom: 120px;
    }

    .footer-btn{
      margin-left: 10.3vw;
    }

    .twitter-btn{
      margin-bottom: 56px;
    }

    .footer-link-container{
      margin-left: 10.3vw;
    }

    .page-top-sent{
      margin-right: 10.3vw;
    }
  }
  
/* ------スマホの横------ */
@media only screen and (max-width:900px) and (orientation: landscape){
  .mainvisual{
    height: 400px;
  }

  .sekizemi-logo{
    top: 16vh;
    width: 48%;
  }

  .mainvisual-comment{
    bottom: 40vh;
  }

  .mainvisual-comment{
    bottom: 32vh;
  }
  .mainvisual-comment-1{
    left: 44vw;
  }

    .mainvisual-comment-2{
      right: 36vw;
    }

    .mainvisual-comment-3{
      left: 36vw;
    }

    .mainvisual-comment-4{
      left: 28vw;
    }

    .mainvisual-comment-6{
      right: 28vw;
    }
}

/* ------ipadの横------ */
@media only screen and (min-width:901px) and (orientation: landscape){

  .sekizemi-logo{
    top: 16vh;
    width: 40%;
  }

  .mainvisual-comment{
    bottom: 32vh;
  }
  .mainvisual-comment-1{
    left: 42vw;
  }

  .mainvisual-comment-2{
    right: 34vw;
  }

  .mainvisual-comment-3{
    left: 34vw;
  }

  .mainvisual-comment-4{
    left: 28vw;
  }

  .mainvisual-comment-6{
    right: 28vw;
  }
}

/* ------------アニメーション------------ */
/* ------共通フェードイン------ */
.sc-fin{
  opacity: 0;
  transform: translateY(10px);
  transition: all 0.4s ease 0.4s;
}

.sc-fadein{
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

/* フェードイン詳細 */
.sc-fin-2{
  transition-delay: 0.4s;
}

.sc-fin-3{
  transition-delay: 0.8s;
}

/* -------メインビジュアル------ */
/* その場で */
.fadeIn{
  animation-name:fadeInAnime;
  animation-duration:1s;
  animation-fill-mode:forwards;
  opacity:0;
  }
  
  @keyframes fadeInAnime{
    from {
      opacity: 0;
    }
  
    to {
      opacity: 1;
    }
  }
  /* 下から上へ */
.fadeUp {
  animation-name:fadeUpAnime;
  animation-duration:0.5s;
  animation-fill-mode:forwards;
  opacity: 0;
  }
  @keyframes fadeUpAnime{
    from {
      opacity: 0;
    transform: translateY(100px);
    }
  
    to {
      opacity: 1;
    transform: translateY(0);
    }
  }
  /* フェードイン詳細*/
  .sekizemi-logo{
  animation-delay: 0.9s;
  }

  .mainvisual-people{
    animation-delay: 0.4s;
    }