@charset "utf-8";
/* CSS Document */


/* 全体装飾ここから
---------------------------------------*/
html {
  -webkit-box-sizing: border-box;/*borderまでを含めたサイズをwidthとして指定する*/
  box-sizing: border-box;
  font-size: 62.5%;/*標準16pxの62.5%=10px*/
  scroll-behavior: smooth;/*スムーズスクロール。旧iosでは非対応。どうしても必要な場合はjs*/
}
body {
  font-family: 'しっぽり明朝 B1', serif, "Noto Sans JP", sans-serif;
  -webkit-font-smoothing: antialiased;/*文字のアンチエイリアス設定*/
  -moz-osx-font-smoothing: grayscale; /*Firefox用の文字のアンチエイリアス設定*/
  font-feature-settings: "palt"; /*文字詰め*/
  letter-spacing: 0; /*文字間の設定*/
  line-height: 1.75; /*行間の設定*/
  width: 100%;
  background-size: contain;
	color: #1D2B61;
}

.sitewrapper {
  overflow: hidden;
}

img {
  max-width: 100%;
  height: auto;/*高さは幅に応じて*/
  vertical-align: bottom;/*画面下に謎に開く余白防止*/
}

li {
  list-style: none;
}

/* 全体装飾ここまで
---------------------------------------*/


/*headerデザインここから
---------------------------------------*/

#menu-btn-check {
  display: none;
}

.header {
  display: flex;
  align-items: center;
}

.menu-content ul {
  display: flex;
}

.menu-content ul li {
  font-size: 2em;
  margin-left: 7.3vw;
  text-decoration: underline;
  text-decoration-color: #1D2B61;
  text-underline-offset: 8px;
  transition: 1.0s;
  font-weight: 700;
}

.menu-content ul li a {
  text-decoration: none;
  color: #1D2B61;
}

.menu-content ul li:hover {
  opacity: 0.7;
}

h1 {
  padding: 2vw;
}

.contact_btn {
  color: #1D2B61;
}

.wrap {
  display: flex;
  overflow: hidden;
  height: 500px;
  object-fit: cover;
}

/*headerデザインここまで
---------------------------------------*/


/*mainデザインここから
---------------------------------------*/

.top_img {
  display: none;
}

.top_img_pc {
  width: 100%;
}

.about_sigin {
  font-size: 4em;
  margin: 3vw 3vw 0 0;
  text-align: right;
  border-bottom: 1px solid #1D2B61;
}

.main_img_gindou {
  margin: 5vw 0 3vw 5vw;
}

.pc_wrap {
  display: flex;
  align-items: center;
  justify-content: center;
}

/*大阪岳風会とは？ここから*/
.about_sigin {
  color: #1D2B61;
  font-family: 'しっぽり明朝 B1', serif;
  font-size: 3em;
  margin: 3vw 3vw 0 0;
  text-align: right;
  border-bottom: 1px solid #1D2B61;
}

.title_gakuhuukai {
  font-size: 3em;
  text-align: center;
  margin-top: 3vw;
  color: #1D2B61;
}

.main_img_gindou {
  margin-top: 5vw;
  margin-left: 20vw;
}

.main_img_gindou img {
  width: 100%;
}

.pc_wrap {
  display: block;
}

.text_sigin {
  color: #1D2B61;
  font-family: 'しっぽり明朝 B1', serif;
  font-size: 2em;
  text-align: left;
  margin-left: 19vw;
}

.top_img_pc {
  display: block;
}

.l-table {
  width: 50%;
  box-sizing: border-box;
  margin: 2em auto;
}

tbody {
  display: table-row-group;
}

.l-table th {
  vertical-align: middle;
}

.l-table th, .l-table td {
  border-bottom: 1px solid #ddd;
  padding: 20px;
  display: block;
  box-sizing: border-box;
  text-align: center;
  font-size: 2em;
}

iframe {
  width: 435px;
  height: 270px;
}

.illustrated {
  width: 35%;
  margin: 4vw auto;
  margin-left: 32.5vw;
}

.tel_img {
  display: none;
}


/*mainデザインここまで
---------------------------------------*/


/*footerデザインここから
---------------------------------------*/

.footer {
  background-color: #1D2B61;
}

.logo_img_footer {
  width: 15%;
  margin: 0 auto;
  padding-top: 5vw;
  margin-bottom: 6vw;
}

small {
  display: block;
  font-size: 2em;
  color: #FFF;
  text-align: center;
  padding-bottom: 3vw;
}

/*footerデザインここまで
---------------------------------------*/

/*レスポンシブデザインここから(max-width:1500px)
======================================================
======================================================*/
@media(max-width:1500px){
  .menu-content ul li {
    font-size: 1.7em;
    margin-left: 7vw;
  }
  .main_img_sigin {
    margin-left: 3vw;
  }

}

/*レスポンシブデザインここから(max-width:1400px)
======================================================
======================================================*/
@media(max-width:1400px){
  .menu-content ul li {
    font-size: 1.3em;
    margin-left: 7vw;
  }
  .main_img_sigin {
    margin-left: 3vw;
  }
}


/*レスポンシブデザインここから(max-width:1200px)
======================================================
======================================================*/
@media(max-width:1200px){
  .time-schedule {
    max-width: 1100px;
  }
  /*メニューボタンCSS*/
  .menu-content {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 80;
    background-color: #3584bb;
  }
  .menu-content ul {
    display: block;
    padding: 200px 10px 0;
  }
  .menu-content ul li {
    border-bottom: solid 1px #ffffff;
    list-style: none;
  }
  .menu-content ul li a {
    display: block;
    width: 100%;
    font-size: 15px;
    box-sizing: border-box;
    color:#ffffff;
    text-decoration: none;
    padding: 9px 15px 10px 0;
    position: relative;
  }
  .menu-content ul li a::before {
    content: "";
    width: 7px;
    height: 7px;
    border-top: solid 2px #ffffff;
    border-right: solid 2px #ffffff;
    transform: rotate(45deg);
    position: absolute;
    right: 11px;
    top: 16px;
  }
  
  .menu-content {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 100%;/*leftの値を変更してメニューを画面外へ*/
    z-index: 80;
    background-color: #3584bb;
    transition: all 0.5s;/*アニメーション設定*/
  }
  
  #menu-btn-check:checked ~ .menu-content {
    left: 0;/*メニューを画面内へ*/
  }
  
  .contact_btn {
    color: #FFF;
    background-color: #3584bb;
    padding: 0;
    border-radius: 0;
  }
  
  .menu-content ul li {
    margin-left: 0;
  }

      /*ハンバーガーメニュー*/
      .menu-btn {
        position: fixed;
        top: 10px;
        right: 10px;
        display: flex;
        height: 60px;
        width: 60px;
        justify-content: center;
        align-items: center;
        z-index: 90;
        background-color: #3584bb;
    }
    
      .menu-btn span,
      .menu-btn span:before,
      .menu-btn span:after {
          content: '';
          display: block;
          height: 3px;
          width: 25px;
          border-radius: 3px;
          background-color: #ffffff;
          position: absolute;
    }
    
      .menu-btn span:before {
          bottom: 8px;
    }
    
      .menu-btn span:after {
          top: 8px;
    }
    
    /*三本線を「×」マークにする*/
    #menu-btn-check:checked ~ .menu-btn span {
      background-color: rgba(255, 255, 255, 0);/*メニューオープン時は真ん中の線を透明にする*/
    }
    #menu-btn-check:checked ~ .menu-btn span::before {
      bottom: 0;
      transform: rotate(45deg);
    }
    #menu-btn-check:checked ~ .menu-btn span::after {
      top: 0;
      transform: rotate(-45deg);
    }
    
    #menu-btn-check {
      display: none;
    }

    .text_sigin02 {
      font-size: 1.5vw;
    }

    .text_sigin {
      font-size: 1.7em;
      margin-left: 8vw;
    }

    iframe {
      width: 476px;
      height: 320px;
    }

    .main_img_gindou img {
      width: 670px;
    }

      
}

/*レスポンシブデザインここから(max-width:900px)
======================================================
======================================================*/
@media(max-width:900px){
  small {
    font-size: 1.5em;
  }
  .about_sigin {
    font-size: 3em;
  }
  .text_sigin {
    font-size: 1.7em;
    margin: 2vw;
  }
  .title_gakuhuukai {
    font-size: 2.5em;
  }
  .none_900 {
    display: none;
  }
  .flex_wrapper {
    display: block;
  }
  iframe {
    width: 726px;
    height: 270px;
  }
  .main_img_gindou img {
    width: 540px;
  }
  .flex_02 {
    width: 100%;
  }

}


/*=========モバイルファーストCSS=========*/

/*レスポンシブデザインここから(max-width:600px)
======================================================
======================================================*/
@media(max-width:600px){

  /*ハンバーガーメニュー*/
  .menu-btn {
    position: fixed;
    top: 10px;
    right: 10px;
    display: flex;
    height: 60px;
    width: 60px;
    justify-content: center;
    align-items: center;
    z-index: 90;
    background-color: #3584bb;
}

  .menu-btn span,
  .menu-btn span:before,
  .menu-btn span:after {
      content: '';
      display: block;
      height: 3px;
      width: 25px;
      border-radius: 3px;
      background-color: #ffffff;
      position: absolute;
}

  .menu-btn span:before {
      bottom: 8px;
}

  .menu-btn span:after {
      top: 8px;
}

/*三本線を「×」マークにする*/
#menu-btn-check:checked ~ .menu-btn span {
  background-color: rgba(255, 255, 255, 0);/*メニューオープン時は真ん中の線を透明にする*/
}
#menu-btn-check:checked ~ .menu-btn span::before {
  bottom: 0;
  transform: rotate(45deg);
}
#menu-btn-check:checked ~ .menu-btn span::after {
  top: 0;
  transform: rotate(-45deg);
}

#menu-btn-check {
  display: none;
}

/*メニューボタンCSS*/
.menu-content {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 80;
  background-color: #3584bb;
}
.menu-content ul {
  display: block;
  padding: 200px 10px 0;
}
.menu-content ul li {
  border-bottom: solid 1px #ffffff;
  list-style: none;
}
.menu-content ul li a {
  display: block;
  width: 100%;
  font-size: 15px;
  box-sizing: border-box;
  color:#ffffff;
  text-decoration: none;
  padding: 9px 15px 10px 0;
  position: relative;
}
.menu-content ul li a::before {
  content: "";
  width: 7px;
  height: 7px;
  border-top: solid 2px #ffffff;
  border-right: solid 2px #ffffff;
  transform: rotate(45deg);
  position: absolute;
  right: 11px;
  top: 16px;
}

.menu-content {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 100%;/*leftの値を変更してメニューを画面外へ*/
  z-index: 80;
  background-color: #3584bb;
  transition: all 0.5s;/*アニメーション設定*/
}

#menu-btn-check:checked ~ .menu-content {
  left: 0;/*メニューを画面内へ*/
}

.contact_btn {
  color: #FFF;
  background-color: #3584bb;
  padding: 0;
  border-radius: 0;
}

.menu-content ul li {
  margin-left: 0;
}

/*headerここから*/
h1 {
  margin: 2vw;
}

.top_img {
  display: block;
  width: 100%;
}

.top_img_pc {
  display: none;
}
.illustrated {
  width: 70%;
  margin-left: 16vw;
}


/*mainここから*/

.title_gakuhuukai {
  border-left: 2px solid #1D2B61;
  padding-left: 0.5em;
  margin-bottom: 1em;
  text-align: left;
  color: #1D2B61;
  font-size: 2em;
  margin-left: 5vw;
  margin-top: 3.5vw;
}

.pc_wrap {
  display: block;
}

/*footerここから*/

.footer {
  background-color: #1D2B61;
}

.logo_img_footer {
  width: 40%;
  margin: 0 auto;
  padding-top: 5vw;
  margin-bottom: 20vw;
}

small {
  display: block;
  font-size: 1.2em;
  color: #FFF;
  text-align: center;
  padding-bottom: 5vw;
}

.tel_img_pc {
  display: none;
}

.tel_img {
  display: block;
}
}


/*レスポンシブデザインここから(max-width:450px)
=================================================*/
@media(max-width:450px){
  h1 img {
    width: 60%;
  }

}


/*レスポンシブデザインここから(max-width:370px)
=================================================*/
@media(max-width:370px){

  .logo_img_footer {
    width: 55%;
  }

}

/*レスポンシブデザインここから(max-width:330px)
=================================================*/
@media(max-width:330px){

  h1 img {
    width: 65%;
  }

  small {
    padding: 10vw;
  }

}

/*レスポンシブデザインここから(max-width:300px)
=================================================*/
@media(max-width:300px){
  h1 img {
    width: 72%;
  }

}