.html,body{
box-sizing: border-box;
margin: 0px;
}

/*ヘッダーここから*/
main {
  padding-top: 80px;
}
header {
  position: fixed;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 20px;
  background: #e6e6e6;
  max-height: 80px;
  width: 100%;
  z-index: 100;
}
header a {
  max-height: 80px;
}
.TKAI_logo {
  margin-left: 80px;
  width: 330px;
  vertical-align: -3px;
}
.header_nav {
  margin-left: auto;
}
.header_nav li {
    padding: 0 14px;  
    display: inline;
    text-decoration: none;
}
.header_nav li + li {
    border-left: 2px solid #b7b7b7;
  }
.header_nav a {
    color: #287892;
    font-weight: bold;
    text-decoration: none;
  }

.header_btn {
  max-height: 80px;
  margin: 0 30px;
  vertical-align: -3px;
}


.logo {
  font-size: 24px;
}


.drawer_hidden {
  display: none;
}


.drawer_open {
  display: flex;
  height: 60px;
  width: 60px;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 100;
  cursor: pointer;
}


.drawer_open span,
.drawer_open span:before,
.drawer_open span:after {
  content: '';
  display: block;
  height: 3px;
  width: 25px;
  border-radius: 3px;
  background: #333;
  transition: 0.5s;
  position: absolute;
}


.drawer_open span:before {
  bottom: 8px;
}


.drawer_open span:after {
  top: 8px;
}


#drawer_input:checked ~ .drawer_open span {
  background: rgba(255, 255, 255, 0);
}


#drawer_input:checked ~ .drawer_open span::before {
  bottom: 0;
  transform: rotate(45deg);
}


#drawer_input:checked ~ .drawer_open span::after {
  top: 0;
  transform: rotate(-45deg);
}
 
/* メニューデザイン*/
p.nav_title{
  color: #002D40;
  text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  font-family: Inter;
  font-size: 65px;
  font-weight: 500;
  letter-spacing: 0.05em;
  position: absolute;
  left: 43%;
  right: 0;
  
}
.nav_banner{
  display:flex;
  flex-flow: column;
  width: 55%;
  text-align: right;
  margin: 215px 0 75px 130px;
  gap: 20px;
}
.nav_button{
  padding-left: 25px;
  padding-top: 25px;
  width: 50;
}
.nav_img {
  width: 350px;
}
.nav_list {
  display: flex;
  flex-flow: column;
  width: 48%;
  list-style: none;
  margin: 230px 0 75px 0;
  padding-left: 20px;
}
.nav_item{
  font-size: 25px;
  padding: 20px 0 20px 25px;
}
.nav {
  margin-right: 80px;
}
button {
  /* 背景色を無色に */
  background: transparent;
  /* 枠線を消す */
  border: none;
  /* クリックした際に枠線をnone消す */
  outline: none;
  /* 影を消す */
  box-shadow: none;
}
.drawer{
  margin: auto;
  text-align: center;
  text-decoration:none;
}
.drawer:link { /*アクセスしたことのないリンク*/
  color:#000000;
}
.drawer:visited {/*アクセスしたリンク*/
  color:#000000;
}
.drawer:hover {/*カーソル合わせた時*/
  color:#000000;
  text-decoration:underline;
}
.drawer:active {/*クリックしたとき*/
  color:#000000;
}
.nav_content {
  width: 100%;
  height: 100%;
  display: flex;
  position: fixed;
  top: 0;
  left: 100%; /* メニューを画面の外に飛ばす */
  z-index: 99;
  background: #D9ECF2;
  transition: .5s;
}


#drawer_input:checked ~ .nav_content {
  left: 0;
}



/*トップ画像*/
img.top_image{
  width:100%;
}

/*ページ中身ここから*/
.oc_banner{
  margin: 50px auto !important;
  max-width:664px;
}

.oc_banner img{
  width: 100%;
}

/*ボタン系*/

button {
  /* 背景色を無色に */
  background: transparent;
  /* 枠線を消す */
  border: none;
  /* クリックした際に枠線をnone消す */
  outline: none;
  /* 影を消す */
  box-shadow: none;
}

div.img_button{
  display: flex;
}
div.button{
  margin: auto;
}
button.img_button_left{
  margin-right: 20px;
}
button.img_button_right{
  margin-left: 20px;
}
.footer_button_left.footer_button_right{
  margin: auto
}
/*ボタン系ここまで*/

/*授業紹介ここから*/
div.pickup{
  display: flex;
}
div.info{
  background-color: #D9ECF2;
  width:33%;
  margin: 0 15px;
  padding: 30px;
}
.grade{
  background-color: #002D40;
  color: #ffffff;
  display: inline-block;
  padding: 10px 50px;
  margin-top: 150px;
}
.pickup_hl{
  font-size: 50px;
  border-bottom: 1px solid #F56A79;
  width: 300px;
  text-align: right;
}

h4.info{
  text-align: center;
}
.class_notice{
  margin-left: 100px;
}
/*授業紹介ここまで*/

h3.title{
  text-align: center;
  font-size: 32px;
  margin: 80px 0;
}
  p.text{
    text-align: center;
    font-size: 22px;
    margin: 50px 0;
}

/*ページ中身ここまで*/
div.wrapper{
    max-width: 1024px;
    margin: 100px auto;
}
.image{
  display: block;
    margin: 0 auto;
}
li.nav_item{
    display: inline-block;
}
nav.header_nav{
    display: inline-block;
}
p.text{
    text-align: center;
}
  /*ここからフッター*/


  div.footer{
    background-color:#D9ECF2;
    height: 540px;
  }
  div.footer_item{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: auto;
    max-width: 1024px;
  }
  .footer_contents_left{
    text-align: left;
    width: 40%;
    margin: 100px 0px 33px 0px;  
  }
  .footer_contents_left img {
    width: 430px;
  }
  .footer_contents_right{
    width: 55%;
    margin: 106px 0px 81px 0px;
  }
  .footer_container{
    max-width: 720px;
    display: flex;
    flex-wrap: wrap;
    margin: auto;
  }
  li.footer_item{
    width: 33%;
    text-align: left;
    list-style: none;
    font-size: 14px;
    font-style: normal;
    line-height: 2.5;
    color: #000;
  }
  .access{
    font-weight: 500;
    font-size: 16px;
    margin: 0 0 13px 14px;
  }
  .tel{
    font-family: "Josefin Sans", serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-size: 55px;
    margin: 24px 0px 15px 15px;
  }
  a.link{
    margin: auto;
    text-align: center;
    text-decoration:none;
  }
  a.link:link { /*アクセスしたことのないリンク*/
    color:#000000;
  }
  a.link:visited {/*アクセスしたリンク*/
    color:#000000;
  }
  a.link:hover {/*カーソル合わせた時*/
    color:#000000;
    text-decoration:underline;
  }
  a.link:active {/*クリックしたとき*/
    color:#000000;
  }
  .footer_button{
    display: inline-block;
    margin: auto;
  }
  .footer_button_left {
    margin-right: 36px;
    cursor: pointer;
    transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
    background: #ffffff;
    border: 2px solid #ffffff;
    border-radius: 60px;
    color: #000;
    display: inline-block;
    font-weight: 700;
    font-size: 18px;
    width: 320px;
    height: 40px;
    padding: 7px 0px;
    text-align: center;
    line-height: 2.3;
  }
  .footer_button_left:hover {
    background: #de6666;
    color: #ffffff;
    border: 2px solid #ffffff;
  }
  .footer_button_right {
    margin-left: 36px;
    cursor: pointer;
    transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
    background: #000000;
    border: 2px solid #000000;
    border-radius: 60px;
    color: #fff;
    display: inline-block;
    font-weight: 700;
    font-size: 18px;
    width: 320px;
    height: 40px;
    padding: 7px 0px;
    text-align: center;
    line-height: 2.3;
  }
  
  
  .footer_button_right:hover {    
    background: #de6666;
    color: #ffffff;
    border: 2px solid #ffffff;
  }
  
  
  .footer_button_right img {
    vertical-align: -6px;
  }
  