@charset "UTF-8"; /* 文字コードの指定 */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700&display=swap"); /* Google Fonts用のCSSを読み込み */
@font-face {
  font-family: "Bilbo";
  src: url("../fonts/Bilbo-Regular.ttf") format("woff");
  font-weight: normal;
} /*メモ・Bilbo-Regular.ttfのみダウンロード*/
@import url("https://fonts.googleapis.com/css2?family=Sassy+Frass&display=swap");
/*Sassy Frass  Regular 400の追加
font-family: 'Sassy Frass', cursive;*/
/*トップページ設定*/

/* ページ全般の設定 */
html {
  font-size: 62.5%;
}
img.bg2 {
  padding: 0 0 24px 0;
}
body {
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "メイリオ", Verdana,
    "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-size: 1.6rem;
  line-height: 1.75;
  color: #333;
}

li {
  list-style: none;
}
a:visited {
  color: #000;
}
a:link {
  color: #000;
  text-decoration: none;
}
nav a:hover {
  color: #000;

  border-bottom: #000;
  border-bottom-style: solid;
}
.tokugi-1 a:hover {
  opacity: 0.5;
}
#course-list a:hover {
  opacity: 0.5;
}
h2 {
  text-align: center;
  margin-bottom: 2.6rem;
  margin-top: 2.6em;
}
h3 {
  margin-bottom: 0.6rem;
}
section {
  padding: 50px;
}
section#main-contact {
  padding-bottom: 100px;
}
/*ヘッダー*/
header {
  background-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 4;
}

#header-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 50px;
  height: 60px;
}
#hamburger-button {
  display: none;
}

#hamburger-button .hamburger-bars {
  font-size: 24px;
  color: #666;
}
#hamburger-navi-menu {
  margin: 10px;
  display: none;
}
#navi-menu {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
#navi-menu li {
  margin-left: 20px;
}

/*　メインコンテンツ*/

#main {
  margin-top: 60px;
}

/*ビジュアル*/

#main-head {
  background-color: #eee;
  padding: 0;
}

#head-visual {
  max-width: 100vw;
  margin: 0 auto;
}

#head-visual img {
  max-width: 100%;
  height: auto;
}

/*slickの設定*/
.slick-prev:before,
.slick-next:before {
  color: #f5eeee;
}

#main-chief .chief-itro {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.chief-fig .profile-image {
  width: 200px;
  height: 200px;
  margin: 20px;
  border-radius: 50%;
}

a.code-mv {
  background: linear-gradient(transparent 60%, yellow 30%);
  width: 350px;
}
/*-------------------------------*/
/*メディアクエリ　（モバイルの場合の指定）*/
@media screen and (max-width: 960px) {
  .timeline {
    list-style: none;
  }
  .timeline > li {
    margin-bottom: 60px;
  }
}
/*  Desktop */

.timeline > li {
  overflow: hidden;
  margin: 0;
  position: relative;
}
.timeline-date {
  width: 110px;
  float: left;
  margin-top: 20px;
}
.timeline-content {
  width: 75%;
  float: left;
  border-left: 3px #e5e5d1 solid;
  padding-left: 30px;
  padding-bottom: 40px;
}
.timeline-content:before {
  content: "";
  width: 12px;
  height: 12px;
  background: #f1923e;
  position: absolute;
  left: 106px;
  top: 24px;
  border-radius: 100%;
}
p.chif-text {
  color: #856404;
  background-color: #fff3cd;
  border-color: #ffeeba;
  padding: 30px;
  border-radius: 4px;
  line-height: 2.5em;
}

h4.appeal {
  margin-top: 54px;
}
/*--------------------------------*/

/*一覧*/
figcaption {
  padding: 18px 10px;
}

a.course-logo {
  margin: 2vw auto 2vw;
}

.gray-bg {
  background-color: #eee;
}

#course-list {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
}

.p1 {
  font-size: 0.5em;
}
#course-list li {
  min-width: 300px;
  margin-bottom: 55px;
  margin-top: 40px;
  border: 2px solid #dcdcdc;
  background-color: #fff;
  padding: 1vw;
}
.course-logo {
  display: block;
  width: 300px;
  text-align: center;
  font-size: 80px;
  color: #eee;
}
img {
  vertical-align: bottom;
}

/*-----------作品一覧のマウスhover時に浮かせる設定ここから------------------*/
figure > a {
  box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.12), 0 2px 3px 0 rgba(0, 0, 0, 0.22);
  transition: 0.3s;
}
figure > a:hover {
  box-shadow: 0 15px 30px -5px rgba(0, 0, 0, 0.15), 0 0 5px rgba(0, 0, 0, 0.1);
  transform: translateY(-4px);
}
/*-----------作品一覧のマウスhover時に浮かせる設定ここまで------------------*/
.course-bg1 {
  background-color: #e67074;
}
.course-bg2 {
  background-color: #333;
  height: 150px;
}
.course-bg2:hover {
  background-color: #ffffff;
  height: 150px;
}
img.course-bg3 {
  background-color: #f8971f;
  width: 300px;
  height: 150px;
  padding: 0;
  margin: 0;
}
.course-bg3 {
  display: flex;
  flex-direction: column;
}
img.course-bg4 {
  background-color: #8b7acb;
}

.course-bg5 {
  background-color: #f0f6f9;
}
.course-bg6 {
  background-color: #999;
}
.kochira {
  margin: auto;
}
.liveDoor {
  font-size: 0.51em;
  line-height: 0.5em;
}
.shika_text {
  line-height: 1em;
  background: linear-gradient(transparent 60%, yellow 30%);
}
.shika_text_no {
  line-height: 1em;
  background: linear-gradient(transparent 60%, rgba(255, 0, 0, 0.351) 30%);
}
h4 {
  margin: 1em 0;
}

/*趣味*/

.course-logo {
  display: flex;
  /* width: 300px; */
  text-align: center;
  color: #eee;
  flex-direction: column;
}

a.course-logo.course-bg2 {
  align-items: center;
  padding: 15px;
  height: 150px;
}
section#main-hobby p{
  text-align: center;
}
section#main-contact p{
  text-align: center;
}
/*メディアクエリ　（モバイルの場合の指定）1273pxまでの幅で適応される設定*/

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

@media screen and (max-width: 980px) {
  section #main-course {
    margin: 88px 0 0 0;
    padding: 14px 25px 10px 10px;
  }
}
/*メディアクエリ　（モバイルの場合の指定）972pxまでの幅で適応される設定*/
@media screen and (max-width: 972px) {
}

/* フッター */
#footer {
  padding: 2rem;
  text-align: center;
  color: #eee;
  background-color: #333;
}

#main-chief .chief-intro {
  display: flex;
  justify-content: space-around;
  align-items: center;
}

.chief-fig .profile-image {
  width: 200px;
  height: 200px;
  margin: 20px;
  border-radius: 50%;
}
.st {
  font-size: 10px;
  line-height: 10px;
}

/*メディアクエリ　（モバイルの場合の指定）*/
@media screen and (max-width: 960px) {
  section {
    padding: 88px 25px 10px 25px;
  }
  #header-inner {
    padding: 0 10px;
  }
  #hamburger-button {
    display: block;
  }
  #navi {
    display: none;
  }
  /* .timeline-content::before {
    display: none;
  }*/
}
/*~780px*/
@media screen and (max-width: 780px) {
  #main-chief .chief-intro {
    display: flex;
    justify-content: space-around;
    align-items: center;
    flex-direction: column;
  }
}
@media screen and (max-width: 477px) {
  .timeline-content::before {
    display: none;
  }
  #course-list li {
    min-width: 320px;
    margin-bottom: 55px;
    margin-top: 40px;
    border: 2px solid #dcdcdc;
    background-color: #fff;
    padding: 0.5vw;
  }
}

/*追加*/
@media screen and (max-width: 480px) {
  h1 {
    font-size: 6vw;
  }
  #main-chief .chief-intro {
    display: block;
  }

  .chief-fig {
    text-align: center;
  }
  .chief-name {
    text-align: center;
  }
  #course-list li {
    min-width: 320px;
    margin-bottom: 55px;
    margin-top: 40px;
    border: 2px solid #dcdcdc;
    background-color: #fff;
    padding: 0.5vw;
  }
}

.kotira{
  opacity: 0.5;
  padding-top: 20px;
  text-align: right;
  display: flex;
  justify-content: flex-end;
}
