@charset "UTF-8";
/*   独自CSS追加   */


/*  *{ border-bottom: 2px solid #000; }  *//*チェック用*/

/* font */
body {
    color: #333333;
   /* font-family: 'Zen Kaku Gothic New', sans-serif;
    font-weight: 500;*/
    line-height: 1.5;
    
    
    /* Adobe Fonts */
    /*font-family: 'Avenir Black', "hiragino-kaku-gothic-pron", sans-serif;*/
    font-family: 'Avenir Medium', "hiragino-kaku-gothic-pron", sans-serif;
    font-weight: 300;
    font-style: normal;
}

html { font-size: 62.5%; } /* 10px */
body { font-size: 1.6rem; } /* 16px */
p ,
li,
li p,
th,td
  { font-size: 1.5rem; }


/**/
body{ 
    position: relative;
}


a:hover{
  transition: 0.2s ;
  opacity: 0.7;
}

@media (min-width: 1000px) {

  .container {
    max-width: 1300px;
  }
  .headline .container {
    max-width: 1500px;
  }
  
}

@media (max-width: 1440px) {
  .container {
    padding-left: 5%;
    padding-right: 5%;
  }
   .headline .container {
    padding-left: 0;
    padding-right: 0;
  }
  
}

/*　基本レイアウト関連　*/
.wrapper{}
.home .wrapper{}

/* Flixdレイアウトの分下に下げる。　ページ内リンク時のオフセット offsetの設定は、 jsで設定　*/
.wrapper.fixed_wrapper{
  padding-top:105px;
}
.wrapper.fixed_wrapper.fixed_wrapper_high{
  padding-top:170px;
}
  
@media only screen and (max-width:768px){

  .wrapper.fixed_wrapper{
  padding-top:50px;
  }
  .wrapper.fixed_wrapper.fixed_wrapper_high{
  padding-top:95px;
  }
}

/*
.wrapper{
  padding-top:4%;
}
.home .wrapper{
  padding-top:8%;
}
*/

.col-md-8{
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
section{
  margin: 0 5%;
  margin-bottom: 5em;
  }

.detail.page,
.detail.archive{
  padding-top: 0;
}




/* ヘッダー header */ 
.headline{
  width: 100%;
  padding-top: 1em;
  margin: auto;
  background: #FFF;
}
  
.headline.fixed{
  position: fixed;
  top: 0;
  left: 0;
  z-index: 30;
}

.headline .container{
  width:90%;
}

/*　ヘッダー　*/
.headline .row{
  display: flex;
  justify-content: space-between;
  align-content: flex-end;
  flex-wrap: nowrap;
}

.headline .col_logo{
  width: 20% ;
  min-width: 200px;
  margin-top: auto;
  margin-bottom: 0;
  text-align: center;
 
  }
.headline .col_logo p,  
.headline .col_logo h1{ padding: 0; margin: 0; }  

.headline .col_logo a.logo{ display: block;}
.headline .col_logo a.logo img{
    width:100% !important; 
    height: auto !important;
  }
.headline .col_right{ /*width: 80% ; margin-top: auto;*/}
.headline li{ font-weight: 600; }




/* グローバルナビ　検索用：head_menu */
/*  グローバルナビ(2段目) */
.col_navi_area{
    width: 100%;
    display: flex;
    justify-content: flex-end;
}


/*  グローバルナビ行  */
.col_navi_area .navbar_sp,
.col_navi_area .navbar,
.col_navi_area .navbar2,
.col_navi_area .tel_box{
  flex-grow: 1;
  margin-left: auto;
}


/*  グローバルナビ(メイン)  */
.navbar{}
.navbar ul{
  flex-wrap: nowrap;
  }
.navbar li {
  margin-right: 15px;
  border-bottom: 0;
}

/*ヘッダーのお問い合わせボタンをPCでは削除*/
@media only screen and (min-width:769px){
  .navbar li#menu-item-723{  display: none !important ;}
}

.navbar li a {
  display: block;
  color: #000;
  position: relative; /* 相対位置指定 */
  text-decoration: none;
  padding: 0.5em 0.8em 0.8em 0.8em;
  
}

/* メニューバーの文字サイズ　*/
.navbar li a { font-size: 1.3rem; }
@media only screen and (max-width:1620px){
  .navbar li a {
    padding: 0.5em 0.3em 0.8em 0.3em;
     font-size: 1.2rem; 
   }
}
/*
@media only screen and (max-width:1560px){
  .navbar li a {
    font-size: 0.9vw;
    
     }
}
*/


/*　ナビの下線　*/
.navbar li{}
.navbar ul li a::after {
  content: '';
  display: block;
  height:4px; 
  background-color: #000;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  transition: width 0.3s;
}
.navbar ul li a:hover::after{
  width:0;
  border: 0;
}

.navbar li .dropdown-menu{
  display: none;
  padding: 0;
  background: rgba(0,0,0, 0.9);
}
.navbar li .dropdown-menu a{
  display: block;
  color: #FFF;
  width: 100%;
  transition: transform 0.2s;
}
.navbar li .dropdown-menu a:hover{
    color: #FFF;
}
.dropdown-item:hover,
.dropdown-item:focus {
    color: #FFF;
    text-decoration: none;
    background: rgba(255,255,255, 0.1);
  }

.navbar li.dropdown-menu a::after { display: none;  }



.navbar li.btn-em{}
.navbar li.btn-em a{
    display: block;
    padding: 0.5em 1em;
    border:solid 2px #FF0004;
    background: #FF0004;
    color: #FFF;
    transition: 0.3s;
    position: relative; /* 疑似要素の基準となるポジション */
    overflow: hidden; /* 疑似要素が要素外に出ないようにする */
}
.navbar li.btn-em a:hover{
    text-decoration: none;
}

/* 光が走るエフェクト */
.navbar li.btn-em a::after {
    content: '';
    position: absolute;
    top: 0;
    left: -120%; /* 初期状態では見えない位置に設定 */
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.5); /* 光の色と透明度 */
    transition: all 0.3s;
    z-index: 1;
    transform: skewX(-20deg); /* 斜めにする */
}
/* ホバー時のエフェクト */
.navbar li.btn-em a:hover::after {
    left: 120%; /* 右へ移動させる */
}
.navbar li.btn-trial a{}
.navbar li.btn-document a{
    background: #FFF;
    color: #FF0004;
}
.navbar li.btn-document a::after {
    background: rgba(255, 0, 0, 0.05); /* 光の色と透明度 */
}


/*　電話番号部分　*/
.navbar .tel_box{ }         
.navbar .tel_box p{
    color: #000;
    margin-bottom: 0;
    line-height: 1.2em;
}
.navbar .tel_box .open_time{
    text-align: center;
}
.navbar .tel_box .tel_no{
    font-size:1.5rem;
    color: #000;
    font-weight: bold;
}
.navbar .tel_box .tel_no a{
    display: inline;
    font-size: 120%;
    color: #000;
    text-decoration: underline ;
    margin-left: 0.5em;
}
.navbar li.tel_box .tel_no a::after{  height: 0; }

.navbar_sp{ display:none; }

/*　グローバルナビ（小）サイトマップ等　*/
.col_navi_up{
    width: 100%;
}
.col_navi_up ul{
    list-style-type: none;
    display: flex;
    float:right;
}
.col_navi_up ul li{
    margin-right: 10px;
    font-size: 1.3rem;
    }
.col_navi_up ul li a{
    padding: 0.2em 0.5em;
    color: #000;
}
.col_navi_up ul li:nth-child(1)::after {
    content: "　|";
}



                    /*一旦未使用*/
                    /*　グローバルナビ（資料請求・お問合せ）　*/
                    .navbar2{}
                    .navbar2 ul{
                        list-style-type: none;
                        display: flex;
                    }
                    .navbar2 ul li{ margin-right: 10px; }
                    .navbar2 ul li a{
                        display: block;
                        padding: 0.5em 1em;
                        border:solid 2px #FF0004;
                        background: #FF0004;
                        color: #FFF;
                        transition: 0.3s;
                        position: relative; /* 疑似要素の基準となるポジション */
                        overflow: hidden; /* 疑似要素が要素外に出ないようにする */
                    }
                    .navbar2 ul li:nth-child(2) a{
                        background: #FFF;
                        color: #FF0004;
                    }
                    .navbar2 ul li a:hover{
                        text-decoration: none;
                    }

                    /* 光が走るエフェクト */
                    .navbar2 ul li a::after {
                        content: '';
                        position: absolute;
                        top: 0;
                        left: -120%; /* 初期状態では見えない位置に設定 */
                        width: 100%;
                        height: 100%;
                        background: rgba(255, 255, 255, 0.5); /* 光の色と透明度 */
                        transition: all 0.3s;
                        z-index: 1;
                        transform: skewX(-20deg); /* 斜めにする */
                    }
                    .navbar2 ul li:nth-child(2) a::after {
                        background: rgba(255, 0, 0, 0.05); /* 光の色と透明度 */
                    }
                    /* ホバー時のエフェクト */
                    .navbar2 ul li a:hover::after {
                        left: 120%; /* 右へ移動させる */
                    }




/* 背景トンボ Ver1　*/
/*.bg_header_fixed_line{
  position: fixed;
  top: -10px;
  left: calc( 4% - 1px );
  z-index: 51;
  width: calc( 92% - 1px );
  padding: 0;
  margin: 0;
}
.bg_header_fixed{
  position: fixed;
  top: 8px;
  left: 6px;
  z-index: -1;
}
.bg_header_fixed img{
  width:100%;
  z-index: -1;
 }

.bg_tombo{}
.bg_tombo img{
  position: fixed;
  }*/
  
  
/* 背景トンボ Ver2　*/
/*.bg_header_fixed2{
  position: fixed;
  width: 100%;
  margin: 0;
  padding: 0;
}
.bg_header_fixed2 img{ width: 100%; }
.bg_header_fixed2_line{
  position: fixed;
  z-index: -2;
  top: 0;
  right: 0;
  }

.bg_header_fixed2_top{ z-index: 11; top: 0; left: 0 }
.bg_header_fixed2_mdl{ z-index: -2; top:49%;}
.bg_header_fixed2_btm{ z-index: 10; bottom: 0; left: 0;}
*/

/*背景トンボVer3*/
.bg_tombo{}
.bg_tombo img{
  position: fixed;
  z-index: 50;
  }

/*ポジション*/
.bg_tombo img.tombo-lt,
.bg_tombo img.tombo-lb{ left:10px; }

.bg_tombo img.tombo-rt,
.bg_tombo img.tombo-rb{ right:10px; }

.bg_tombo img.tombo-lm{ left:14px; }
.bg_tombo img.tombo-rm{ right:14px; }


.bg_tombo img.tombo-lt,
.bg_tombo img.tombo-ct,
.bg_tombo img.tombo-rt{ top:10px; }

.bg_tombo img.tombo-lm,
.bg_tombo img.tombo-rm{ top:49%; }

.bg_tombo img.tombo-ct,
.bg_tombo img.tombo-cb{ left:49%; }

.bg_tombo img.tombo-lb,
.bg_tombo img.tombo-cb,
.bg_tombo img.tombo-rb{ bottom: 10px; }

/* サイズ　*/
.bg_tombo img.tombo-lt,
.bg_tombo img.tombo-lb,
.bg_tombo img.tombo-rt,
.bg_tombo img.tombo-rb{ width: 3%;}

.bg_tombo img.tombo-lm,
.bg_tombo img.tombo-rm{ width: 3%;}

.bg_tombo img.tombo-ct,
.bg_tombo img.tombo-cb{ width: 3%; }

/* ライン */
.bg_tombo img.tombo-line-t{
  top:0;
  left:3.5%;
  width:93%;
  height: 8px;
  /*left:calc( 4% - 8px );
  width: calc( 93% - 2px);*/
  }

.bg_tombo img.tombo-line-r{
  right:0;
  /*top:4.65%;*/
  top: 5% ;
  height:calc(100% - 10%);
  width: 8px;
  /*top:calc( 6% + 4px );
  height: calc(87% + 3px );*/
  }
 
  
  
/* フッター Footer */
footer{
  position: relative;
  background: #F1F1F1;
  padding-bottom: 0;
}
footer .container{}
.footer_line{
  background: #F1F1F1;
  margin: 0;
  padding: 0;
  text-align: center;
}
.footer_line img{
  width:93%;
  height: 8px;  vertical-align: bottom; }

.footer_flex{
  display:flex;
  justify-content: space-between;
  align-content: flex-start;
  margin: 0 2%;
 
  
}
.footer_flex .logo_area{
  background: url("./images/common/bg_footer_logo.png") no-repeat 0 0;
  background-size: 100% auto;
  text-align: center;
  width: 40%;
  padding: 6%;
}
.footer_flex .navi_area{
  width: 57%;
  display: flex;
  justify-content: flex-start;
  margin: 0 0 auto 0;
}

.footer_flex .navi_area .sub_row{
  display: flex;
  flex-wrap: wrap;
  align-content: stretch;
  margin-right: 1em;
  width: 100%;
  
}
.footer_flex .navi_area .sub_row.sp_only{
  display:none;
}
.footer_flex .navi_area .sub_row div{
  width: 100%;
  border: 1px solid #2D2D2D;
  padding: 1em;
  margin-bottom: 1em;
  }
.footer_flex .navi_area h4{
  font-weight: bold;
  text-align: center;
  border-bottom: 1px solid #2D2D2D;
  padding: 0.2em;
  font-size: 1.5rem;
}
.footer_flex .navi_area a{ color: #2D2D2D;  text-decoration: none;}  
.footer_flex .navi_area ul{
  list-style-type:none;
  padding:0;
  }
.footer_flex .navi_area ul li{
  text-align: center;
  font-weight: 300;
  font-size: 1.2rem;
  }  
.footer_flex .navi_area ul li a{}  
.footer_flex .navi_area ul li a:hover{ 
  text-decoration: underline;
}  


.footer_flex .txt_addr{  
  font-weight: 600;
  margin-bottom: 1em;
  }
.footer_flex .btn_map{ width: 50%; margin: auto; }





/* タイトル部分　*/
h1{ font-weight: 600; }
h1.ttl_h1{
  font-size: 3.0rem;
  }
h1.ttl_h1 span.w30{
  display: block;
  width: 50%;
  margin-left:0;
  }
h1.ttl_h1_bg{
  background-repeat: no-repeat;
  background-size:100% auto;
  background-position: center 0;
  padding:14% 2%;
  color: #FFF;
  text-align: center;
  font-family: 'Avenir Black', "hiragino-kaku-gothic-pron", sans-serif;
  font-weight: 600;
}

h1.ttl_h1_bg.ttl-reproduce{padding:10% 2% !important; }
h1.ttl-beginner{  padding:12% 2% ;}

h1.ttl-beginner{ background-image: url("images/title-beginner.jpg");}
h1.ttl-features{ background-image: url("images/title-features.jpg");}
h1.ttl-course{ background-image: url("images/title-course.jpg");}
h1.ttl-reproduce{ background-image: url("images/title-reproduce.jpg");}
h1.ttl-reproduce-arch{ background-image: url("images/title-reproduce-arch.jpg");}
h1.ttl-access{ background-image: url("images/title-access.jpg"); }
h1.ttl-event{ background-image: url("images/title-event.jpg"); }
h1.ttl-performance{ background-image: url("images/title-performance.jpg"); }
h1.ttl-session{ background-image: url("images/title-session.jpg"); }



h1.ttl_h1-v2{
  background: rgba(0,0,0,1.00);
  color: #FFF;
  text-align: center;
}
h1.ttl_h1-v2 span{
  display: inline-block;
  padding: 3em 0;
}
@media only screen and (max-width:768px){
  h1.ttl_h1-v2 span{
    width:100%;
    padding: 2em 0;
  }
}

h2{
  font-family: 'Avenir Black', "hiragino-kaku-gothic-pron", sans-serif;
  font-weight: 600;
  text-align: center;
}
.home h2{
  font-size: 4.3rem;
  margin-bottom: 1em;
  position: relative;
  background: #2D2D2D;
  color:#FFF;
  padding: 0.5em;
}
.home h2 span{
 display: block;
 font-size:40%;
 font-weight: 500;/*Zen Kaku Gothic New*/
}





/* ブロック部分のタイトル　*/
.post_body h2{
  padding:0.3em 0.5em;
  font-family: 'Avenir Black', "hiragino-kaku-gothic-pron", sans-serif;
  font-weight: 600;
  font-size: 2.3rem;
  color:#2D2D2D;
  background:none;
  position:relative;
  margin-bottom: 1.5em;
  border: 0;
  text-align: center;
}
.post_body h2::after{
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  border-bottom: 1px solid #2D2D2D;
  width: 500px;
 }
.post_body h2 span {
  border-bottom: 0;
  font-size: 100%;
}


 
/* 文字サイズ → function.php で指定 */
.has-small-font-size{ }


/*  汎用-その他   */
.flex{
  display: flex;
  justify-content: center;
  align-content: start;
  }
.flex.fbx-j-l{ align-content: flex-start;}
.flex.fbx-j-r{ align-content: flex-end;}
.flex.fbx-j-arnd{ align-content: space-around;}
.flex.fbx-j-btw{ align-content: space-between;}

.flex.fbx-a-tp{ align-content: flex-start;}
.flex.fbx-a-cnt{ align-content: center;}
.flex.fbx-a-bm{ align-content: flex-end;}

.flex.fbx-j-wp{ flex-wrap: wrap; }

.btn-more{
  text-align: center;
  margin: auto;
  }
/*.btn-more img{
  width:50px;
}*/



/*ボタン（ブロックのボタンでも使用）*/
.btn-more2{}
.btn-more2 a,
.is-style-btn-more2 .wp-block-button__link,
.is-style-btn-more2-or .wp-block-button__link,
.is-style-btn-more2-pk .wp-block-button__link,
.is-style-btn-more2-bl .wp-block-button__link,
.is-style-btn-more2-gr .wp-block-button__link,
.is-style-btn-more2-trial .wp-block-button__link
{
    background-color: #FFF;
    background-image: url("images/common/bg_btn_more2.png");
    background-repeat: no-repeat;
    background-position: 10px center;
    background-size: 30px auto;
    display: inline-block;
    padding:9px 20px 10px 50px;
    text-align: center;
    border: 1px solid #2D2D2D;
    border: 1px solid #2D2D2D;
    color: #2D2D2D;
    text-decoration: none;
    margin: 10px;
    border-radius: 50vh;    
    box-shadow: 0px 4px 0px #2D2D2D;
    transition: transform 0.2s, box-shadow 0.2s;
    font-weight: 300;
    font-size: 1.7rem;
}

.is-style-btn-more2-or .wp-block-button__link{ background-image: url("images/common/bg_btn_more2-or.png"); }
.is-style-btn-more2-pk .wp-block-button__link{ background-image: url("images/common/bg_btn_more2-pk.png");}
.is-style-btn-more2-bl .wp-block-button__link{ background-image: url("images/common/bg_btn_more2-bl.png");}
.is-style-btn-more2-gr .wp-block-button__link{ background-image: url("images/common/bg_btn_more2-gr.png");}

.is-style-btn-more2-trial .wp-block-button__link{
  color: #FFF; 
  background-color: #FF1F07;
}
.is-style-btn-more2-trial .wp-block-button__link{ background-image: url("images/common/bg_btn_more3.png");}


.btn-more2 a:hover,
.is-style-btn-more2 .wp-block-button__link:hover,
.is-style-btn-more2-or .wp-block-button__link:hover,
.is-style-btn-more2-pk .wp-block-button__link:hover,
.is-style-btn-more2-bl .wp-block-button__link:hover,
.is-style-btn-more2-gr .wp-block-button__link:hover,
.is-style-btn-more2-trial .wp-block-button__link:hover
{
    box-shadow: none;
    transform: translateY(4px);
}
.btn-more2.btn-more2-cnt{
    text-align: center;
}
h2 .btn-more2{
    position:inherit;
}
.btn-more2.center{  display: inline-block; 
  margin-left: auto;
  margin-right: auto;
  }



.btn-more3 a{
    font-size: 1.7rem;
    background-color: #FF1F07;
    background-image: url("images/common/bg_btn_more3.png");
    background-repeat: no-repeat;
    background-position: 10px center;
    background-size: 30px auto;
    display: inline-block;
    padding:9px 20px 10px 50px;
    text-align: center;
    border: 2px solid #2D2D2D;
    color: #FFF;
    text-decoration: none;
    margin: 10px;
    border-radius: 50vh;    
    box-shadow: 0px 4px 0px #2D2D2D;
    transition: transform 0.2s, box-shadow 0.2s;
    font-weight: 600;
    
}
.btn-more3 a:hover {
    box-shadow: none;
    transform: translateY(4px);
}



.box-border-1{
  display: inline-block;
  border: 1px solid #2D2D2D;
  padding: 1em 3em;
  margin-left:0;
  font-weight: 600;
}


/*　目次　*/
/* 基本の目次*/
ul.toc_list {
  list-style-type: none;
  margin: 2em;
  margin-bottom: 4em;
  background: #FFF;
  border: 0;
  padding: 0;
  display: flex;
  justify-content: center;
}
ul.toc_list li {
  margin: 0 1%;
  text-align: center;
  display: flex;
}
ul.toc_list li a {
  display: flex;
  align-items: center;
  align-content: center;
  padding: 0.9em 3.5em 0.8em 3.5em;
  border: 1px solid #2D2D2D;
  color: #2D2D2D;
  overflow: hidden;
  position: relative;
  font-weight: 600;
  height: 100%;
  z-index: 1; /* テキストを手前に */
}
ul.toc_list li a:hover {
  background: none;
  text-decoration: none;
  color: #FFF;
}
/* Effect */
ul.toc_list li a::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: #2D2D2D;
  transform-origin: 50% 0%;
  transform: scaleY(0);
  transition: transform ease .2s;
  z-index: -1; /* 背景を奥に */
}
ul.toc_list li a:hover::before {
  transform-origin: 50% 100%;
  transform: scaleY(1);
}

/*　end 汎用 */


/*特長の目次*/
.page_features ul.toc_list li{
  margin:0 2%;
}
.page_features ul.toc_list li a{
  border: 0;
  color: #FFF;
  background: #CE1100;
  position: relative;
  padding-top: 1.5em ;
  padding-bottom: 1.5em ;
}

.page_features ul.toc_list li a::after{
  position: absolute;
  top: 5px;
  left: 10px;
  border: 0;
  font-size: 1.5rem;
  
}
.page_features ul.toc_list li:nth-child(1) a::after{ content: " POINT1"; color:#FFF; }
.page_features ul.toc_list li:nth-child(2) a::after{ content: " POINT2"; color:#FFF; }
.page_features ul.toc_list li:nth-child(3) a::after{ content: " POINT3"; color:#FFF; }
.page_features ul.toc_list li:nth-child(4) a::after{ content: " POINT4"; color:#FFF; }
.page_features ul.toc_list li:nth-child(5) a::after{ content: " POINT5"; color:#FFF; }
.page_features ul.toc_list li:nth-child(6) a::after{ content: " POINT6"; color:#FFF; }


.center{ text-align:  center;}






/* TOP */


.mv{
  display:flex;
  justify-content: space-around;
  /*align-content: flex-end;*/
  align-content: flex-start;
  /*margin-right: 30px;*/
  margin-left:5%;
  margin-right:5%;
}
.mv div{
width: 100%;
margin-top:auto;
}

.mv div.mv_logo{ width: 9.5%; margin-top:0; }
.mv img{ width: 100%; }  


.mv_btm_row{
  padding: 1.5em 0;
  margin-bottom: 5em;
  justify-content: flex-start;
  }
.mv_btm_row div{ /*margin:auto;*/}

.txt-pass_rate{
  margin: 0;
  margin-left: calc( 11% - 5px );
}
.txt-pass_rate p{
  font-weight: 600;
  margin-bottom: 0;
  text-align: right;
}
.txt-pass_rate p.line-1{
  font-size: 2vw;
}
.txt-pass_rate p.line-2{
  font-size: 2vw;
}
.txt-pass_rate p .rd{ color: #FF0004; }
.txt-pass_rate p .small{ font-size: 60%; }


.txt-pass_rate{
  text-align: left;
}
.txt-pass_rate .flex{
  justify-content: flex-start;
  align-content: center;
  margin: 0;
  margin-bottom: 0.5em;
}
.txt-pass_rate .flex p{
  margin: auto 4px;
  }
.mv-btn{
  color: #FFF;
}
.mv-btn a{
  padding: 0.5em 1em;
  color: #FFF;
  display: inline-block;
}
.mv-btn.btn-pass_news a,
.mv-btn.btn-seminar a{
  font-size:1.8rem;
}

.mv-btn.btn-pass_news{
  margin-right: 0.5em ;
  }
.mv-btn.btn-pass_news a{
  background: #0000FF;
  
}
.mv-btn.btn-pass_news a:hover{opacity: 1; }
.mv-btn.btn-seminar a{
  background: #FF2711;
 }



/* 講習会ボタン（ヘッダー用）*/
.btn-seminar-head{
  text-align: center;
  width:100%;
  background: #FFF;
  font-weight: bold;
  border: 2px solid #ff4b4e;
  margin: 10px auto;
  
}
.btn-seminar-head a{
  color: #ff4b4e;
  display: block;
}
.btn-seminar-head a:hover{
  background: #ff4b4e;
  color: #FFF;
}
@media only screen and (max-width:768px){

  .btn-seminar-head{
    background: #0000ff;
    border: 0;
  }

  .btn-seminar-head a{
    color: #FFF;
  }
}




.btn-trial{}
.btn-trial a{
dispay:block;
background: #FF0004;
color: #FFF;
font-weight: bold;
padding:1em 2em;
}  


.top_bnr_area{
  display:flex;
  justify-content:space-around;
  align-content: center;
  padding: 0;
  margin-bottom: 2em;
}
.top_bnr_area li{
  width: 100%;
  display:flex;
  justify-content:center;
  align-content: center;
  position: relative;
  margin: 0 1%;
}

.top_bnr_area li a{
  display:block;
  width:100%;
  text-decoration: none;
  font-weight: 600;
  }  
.top_bnr_area li a img{ width: 100%; }
.top_bnr_area li a.btn_txt{
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0%;
  left: 0%;
  z-index: 10;
  color: #FFF;
  display:flex;
  justify-content:center;
  align-content: center;
  background: rgba(0,0,0,0.3);
}
.top_bnr_area li a.btn_txt span{
  text-align: center;
  margin: auto;
  background: rgba(0,0,0, 0.5);
  width: 72%;
  padding: 12%  6%;
  font-size: 1.5rem;
  }
  .top_bnr_area li a.btn_txt-row1 span{
   padding: 17% 10%;
  }
.top_bnr_area li a.btn_txt:hover{
  background: rgba(0,0,0,0.0);
}
.txt-bnr_area_catch{
    font-size: 2.3rem;
    font-weight: 600;
    text-align: center;
}
.txt-bnr_area_catch img{
     height: 1.5em;
     margin-right: 0.2em;
}




/* TOP NEWS */
.top_news_list{}
.top_news_list ul{
    list-style-type: none;
    padding: 0;
}
.top_news_list ul li{
    margin-bottom: 1.5em;}


.top_news_list ul li span{}
.top_news_list ul li span.date{
}   
.top_news_list ul li span.txt{
    margin-left: 2em;
}   
.top_news_list ul li span.txt a{
    color: #333;
    text-decoration: none;
}   


/*　TOP EVENT　*/ 
.top_event_content .wp-block-columns{
    column-gap:0em!important;
    row-gap:0em!important;
    gap:0em!important;
    margin-bottom:0!important;
}
.top_event_content .wp-block-columns figure.wp-block-image{
  margin-bottom:0;
}

.color-to-bw a{}
.color-to-bw a:hover img{
  filter: grayscale(100%);
}

/*
.event_bnr{
    list-style-type:none;
}
.event_bnr li{
    width: 100%;
    margin-bottom: 2em;
} 
.event_bnr li a{
    display: flex;
} 
.event_bnr li a img{
    width: 50%;
}
.event_bnr li:nth-child(even) img:nth-child(1){
    order: 1
}
*/




/* TOP　声*/
.top_voice_list{
  margin-bottom: 0;
  }
.top_voice_list{
  display: flex;
  justify-content: center;
  align-content:center;
}
.top_voice_list a{
  color: #2D2D2D;
  text-decoration: none;
  }
.top_voice_list ul{
  display: flex;
  justify-content: space-between;
  align-content:center;
  flex-wrap: wrap;
  background: url("./images/top/top_voice_txt.png") no-repeat;
  background-position: calc(50% + 20px) center;
  padding: 0;
  margin-bottom: 0;
  list-style: none;
}

.top_voice_list ul li{
  width: 43%;
  }

.top_voice_list .sub{
  display: flex;
  /*flex-wrap: wrap;*/
  justify-content: center;
  align-content: flex-end;
  border-bottom: 1px solid #CCC;
  
  padding-bottom: 1em;
  margin-bottom: 1em;
}



.top_voice_list li:nth-child(3){ margin-left: -3%; }
.top_voice_list li:nth-child(4){ margin-right: -3%; }
.top_voice_list li .top_voice_txt{  width:100px; }
.top_voice_list li .top_voice_txt img{   }
.top_voice_list li p{
  margin-top: auto;
  font-size: 1.1rem;
  }
.top_voice_list li .name{ width: 36%;}
.top_voice_list li .comment{ width: 45%; }
.top_voice_list li .pic{ width: 18%; margin-left: 1%;}
.top_voice_list li .pic img{ width: 100%;}
.top_voice_list li .comment{ line-height:1.6em;}
.top_voice_list li:nth-child(even) a{ flex-direction: row-reverse;}
.top_voice_list li:nth-child(even) a .pic{ margin-right: 1%; ; }


.top_voice_list li .title{
  font-size: 12px;
  display: block;
  font-weight: bold;
}


.top_voice_list li:nth-child(odd) .title{ text-align: right; }
.top_voice_list li:nth-child(even) .title{  text-align: left; }

.top_voice_list li:nth-child(even) .name{  text-align: right; }

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

    /* TOP　声*/
    #top_voice{}
    #top_voice h3{
      font-weight: 600;
      text-align: center;
      font-size: 2.0rem;
       margin: 1em;
       margin-bottom: 1em;
	    text-shadow: 0 3px 8px rgba(0,0,0, 0.3);
    }
    
    .top_voice_list{}
    .top_voice_list{
      display: block;
    }

    .top_voice_list ul{
      display: flex;
      justify-content: space-between;
      align-content:center;
      flex-wrap: wrap;
      background: none;
    }

    .top_voice_list ul li{
      width: 100%;
      }
    .top_voice_list .sub{
      display: flex;
      justify-content: center;
      align-content: flex-start;
      border-bottom: 1px solid #CCC;
      flex-wrap: wrap;
      padding-bottom: 1em;
      margin-bottom: 1em;
      
    }
    .top_voice_list .sub:nth-child(3){ margin-left: 0; }
    .top_voice_list .sub:nth-child(4){ margin-right: 0; }
    .top_voice_list .sub.top_voice_txt{  width:100px; }
    .top_voice_list .sub.top_voice_txt img{   }

    .top_voice_list .sub p{
      margin-top: 0;
      font-size: 1.1rem;
      }
    .top_voice_list .sub .name{ width: 100%;}
    .top_voice_list .sub .comment{ width: 74%;}
    .top_voice_list .sub .pic{ width: 24%; margin-left: 1%;}
    .top_voice_list .sub .pic img{ width: 100%;}

    .top_voice_list .sub:nth-child(even){  flex-direction: row-reverse;} /* 偶数要素は反対に*/
    .top_voice_list .sub:nth-child(even) .pic{ margin-right: 1%; ; }

    .top_voice_list li:nth-child(odd) .title{ text-align: left; }

}

/*　TOP　ABOUT */

.top_about_box{
    align-content: center;
}
.about_pic,
.about_txt{
    margin: auto;
}

.about_pic{}
.about_txt{
    /*text-align: center;*/
    }
.about_txt p{
      font-size: 1.5rem;
      line-height: 1.7em;
    }





/*初めての方*/
.page_beginner{}
.page_beginner h2::after{
   width: 100%;
 }
  
.page_beginner .page .wp-block-columns{
  border-bottom: 1px solid #CCC;
  padding-bottom: 3em;
  margin-bottom: 3em;
  align-content: center;
}
.page_beginner .page .wp-block-columns .is-layout-flow{
  margin: auto;
}
.page_beginner .page .wp-block-columns:nth-child(odd) .is-layout-flow:nth-child(1) { order: 2; }
.page_beginner .page .wp-block-columns:nth-child(odd) .is-layout-flow:nth-child(2) { order: 1; }

.page_beginner .page .beginner-txtbox{
  border: 1px solid #2D2D2D;
  text-align: center;
  position: relative;
  padding:2em 2em 1em 2em;
}

.page_beginner .page .beginner-txtbox h3.wp-block-heading{
  background:#FFF;
  color: #2D2D2D;
  display: inline-block;
  z-index: 3;
  padding:0em 2em;
  position: absolute;
  top:0%;
  left: 50%;
  transform: translate(-50%, -50%);

}
.page_beginner .page .beginner-txtbox .has-text-align-left{
 padding-top: 1em;
 }
.page_beginner .page .is-layout-flow figure.wp-block-image{
  margin-left: 2em;
  position: relative;
  z-index: 1;
  box-shadow: 0px 0px 10px rgba(0,0,0,0.5);
}

/* パターン1 */
/* 
.page_beginner .page .is-layout-flow h3.wp-block-heading{
    background:#2D2D2D;
    color: #FFF;
    display: inline-block;
    padding:1em 2em;
    position: relative;
    z-index: 3;
}
.page_beginner .page .is-layout-flow figure.wp-block-image{
  margin-top: -2.5em;
  margin-left: 2em;
  position: relative;
  z-index: 1;
  
  box-shadow: 0px 0px 10px rgba(0,0,0,0.5);
}
 */


/*保護者の方*/
.for_parent{}

.page_beginner .page .for_parent.wp-block-columns{
  align-items: stretch;
  border-bottom: 0;
}
.for_parent.wp-block-columns .is-layout-flow{
  border: 1px solid #CCC;
  width: 90%;
  padding: 2%;
  margin: 0 !important;
}
.page_beginner .page .for_parent .is-layout-flow h3.wp-block-heading{
  color: #2D2D2D;
  background: none;
  padding: 0.5em 0.5em 1em 0.5em;
  text-align: center;
  width: 100%;
  margin: 0;

}
.page_beginner .page .for_parent .is-layout-flow p{
  margin: 0;
}


/* 特長　*/
.page_features{}
.page_features h2.wp-block-heading{
  border: 2px solid #000;
  height: auto !important;
  margin-bottom: auto;
 

  width: 90%;
  border-radius: 10px;
  padding: 3em 2em 2em 2em;
  margin: auto;
  display: flex;
  align-content: center;
  margin-bottom: 15px;
 
}
.page_features h2.wp-block-heading{
  margin: auto;
  position: relative;
  }
.page_features h2.wp-block-heading span{
  width: 100%;
}

.page_features h2.wp-block-heading::after{ display: none; }  
.page_features h2.wp-block-heading::before{
  position: absolute;
  top: 18%;
  left: 50%;
  width: 100%;
  transform: translate(-50%, 0);
  text-align: center;
  font-size: 50%;
  text-shadow: 1px 1px 0 ,#2D2D2E;
  -webkit-text-stroke: 1px #2D2D2E;
  text-stroke: 1px #2D2D2E;
  border: 0;
  font-size: 2.2rem;
  
}
.page_features .wp-block-columns:nth-child(1) h2.wp-block-heading::before{ content: " POINT1"; color:#FFB100; }
.page_features .wp-block-columns:nth-child(2) h2.wp-block-heading::before{ content: " POINT2"; color:#FF3A85;}
.page_features .wp-block-columns:nth-child(3) h2.wp-block-heading::before{ content: " POINT3"; color:#47E3C1;}
.page_features .wp-block-columns:nth-child(4) h2.wp-block-heading::before{ content: " POINT4"; color:#6FFF31;}
.page_features .wp-block-columns:nth-child(5) h2.wp-block-heading::before{ content: " POINT5"; color:#FFB100;}
.page_features .wp-block-columns:nth-child(6) h2.wp-block-heading::before{ content: " POINT6"; color:#FFB100;}
.page_features .wp-block-columns:nth-child(7) h2.wp-block-heading::before{ content: " POINT7"; color:#FFB100;}
.page_features .wp-block-columns:nth-child(8) h2.wp-block-heading::before{ content: " POINT8"; color:#FFB100;}
.page_features .wp-block-columns:nth-child(9) h2.wp-block-heading::before{ content: " POINT9"; color:#FFB100;}
.page_features .wp-block-columns:nth-child(10) h2.wp-block-heading::before{ content: " POINT10"; color:#FFB100;}
.page_features .post_body .wp-block-columns{
  margin-bottom: 4em;
  }



/* コース・料金　*/
.page_course{}
.page_course .wp-block-column{}
.page_course .wp-block-column .is-layout-flow:nth-child(2){}

.page_course .wp-block-column table{
  border-collapse: collapse;
}
.page_course .wp-block-column table td{
  padding:3px 3px !important;
}
.page_course .wp-block-column table tr td:nth-child(1){ width: 28%;}
.page_course .wp-block-column table tr td:nth-child(3){ width: 52%;}/*3列目がある場合*/

.page_course .wp-block-column h3.wp-block-heading{
  border-bottom:1px solid #2D2D2D;
  padding:0.2em 0.5em;
}

.page_course td em{
  font-style: normal;
  color:#FF0004;
} 
.box-waribiki{
  border: solid #FF0000;
  border-width: 0 1px 1px 1px;
}

/*.page_course .wp-block-column .is-layout-flow figure{
  border-width:0 !important;
}
.page_course .wp-block-column .is-layout-flow:nth-child(2) table th{}
.page_course .wp-block-column{}
.page_course .wp-block-column{}
.page_course .wp-block-column{}

*/




/*　合格者の声（一覧ページ）　*/

.category-voice{}
.voice_list ul{
   margin: 3em;
   padding:0;
}
.voice_list ul li.sub{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 3em 3em 4em 3em;
  margin-bottom: 3em;

  /* トンボ背景 */
  background-image: 
    url(images/voice/voice-tombo-t.png),
    url(images/voice/voice-tombo-m.png),
    url(images/voice/voice-tombo-b.png)
    ;
  background-position:
   center top,
   center center,
   center bottom;

  background-repeat: no-repeat;
  background-size: 100% auto;
}

/*偶数行は左にmargin*/
/*.voice_list ul li.sub:nth-child(2n){ margin-left: 10%; }*/

.voice_list ul li.sub h3{
   width:100%;
   text-align: center;
   padding: 1em;
   font-weight: bold;
   font-size: 1.7rem;
}
.voice_list ul li.sub .pic{ width: 10%; }
.voice_list ul li.sub .pic2{ width: 24%; }
.voice_list ul li.sub .txt { width:62%;}
.voice_list ul li.sub .pic img{ width: 100%; }
.voice_list ul li.sub .name{ font-weight: 600; font-size: 1.3rem; }
.voice_list ul li.sub .comment{}
.voice_list ul li.sub .name .voice_name_check{ color: #FF0004; }

.voice_list ul li.sub .name-rl{
  writing-mode: vertical-rl;
  display: block;
  margin: 1em auto 0 auto;
  }

.voice_list ul li.sub .pic{
   text-align: center;
 }
.voice_list ul li.sub .pic img{  }


/*　合格実績　*/
.performance-data{
  border:4px solid #447ED2;
  padding: 1em;
  }
.performance-data-txt em{ font-style: normal; color: #FF0004;}

/* 合格再現作品　一部過去合格作品と共用 */
.category-reproduce{}
.category-reproduce{}

.category-reproduce h2,
.reproduce-arch h2{
  text-align: center;
  margin: 2em auto ;
  }
.category-reproduce h2 span,
.reproduce-arch h2 span{
  display: inline-block;
  padding: 0.6em 3em;
  border:solid #2D2D2D 1px;
  }


/*合格再現作品の目次*/
.reproduce-toc{
  border: 1px solid #2D2D2D;
  margin: 2% 10%;
  text-align: center;
  padding: 1em;
  display: flex;
  }
.reproduce-toc .sub{
  display: flex;
  justify-content: space-between;
 /* align-content: center;*/
}
.reproduce-toc a{ color:  #2D2D2D; }
.reproduce-toc ul{
  list-style-type: none;
  padding: 0;
  /*margin: auto;*/
  margin-top: 1em;
  margin-left: 1em;
 /* display: flex;
  flex-wrap:wrap;*/
  }
.reproduce-toc ul li{
  text-align: left;
  font-size: 1.4rem;
  margin-bottom: 1em;
 /* width:48%;*/
  }
.reproduce-toc p.index-title{
   -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    font-weight: 600;
    font-size: 1.6rem;
  }  
.reproduce-toc p.index-title a{
  display: block;
  padding: 0.6em;
  border:solid #2D2D2D;
  border-width: 1px;
  /*border-width: 1px 0px 1px 1px;*/
  }
/*目次ここまで*/





.reproduce_list{
  display:flex;
  flex-wrap: wrap;
}
.reproduce_list .reproduce_list_col{
  width: 100%;
}
.reproduce_list .sub{
  display: flex;
  /*margin-left: 5%;*/
}

.reproduce_list h3{
  /* writing-mode: vertical-rl; 
   padding: 0;
   */
  width: 100%;
  font-size: 1.6rem;
  text-align: center;
  margin: 1em 0.4em 0 0em;
  font-weight: 600;
  }
.reproduce_list ul{
  list-style-type:none;
  display:flex;
  flex-wrap: wrap;
  padding: 0;
  width: 100%;

}
.reproduce_list ul li{
  width: 23%;
  margin-right: 2%;
  position:relative;
}

.reproduce_list ul li .pic{ margin-top: 10px; }
.reproduce_list ul li .pic img{ width: 100%; }
.reproduce_list .btn{ width: 100%; }
.reproduce_icon{
  justify-content: space-between;
}
.reproduce_icon .icon{
  display: inline-block;
  text-align:cetner;
  font-size: 1.2rem;
  padding: 1px 0.5em;
}
.reproduce_icon .score{
  /*border: 1px solid #FF0004;
  color:#FF0004;*/
  border: 1px solid #3D4377;
  color:#3D4377;
  margin-left: auto;
  margin-right: 0;
  }
.reproduce_icon .geneki{
  background: #FF0004;
  border: 1px solid #FF0004;
  color:#FFF;
  margin-right: 1em;
}
.reproduce_icon .geneki-no{
    padding: 0;
    background:#FFF;
    overflow: hidden;
    text-indent: -9999px;
    border: 0;
}




  
 /*　過去作品　*/
.reproduce-arch .list section{
  display:flex;
  flex-wrap:wrap;
  justify-content: space-between;
}
.reproduce-arch .list section h3{ width:100%; }
.reproduce-arch .list section .sub{
  width: 49%;
}
.reproduce-arch .list ul{ 
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  list-style-type: none;
}

.reproduce-arch .list ul li{
  width: 48%;
  margin: 0 1% 1% 1%;
}
.reproduce-arch .list ul li img{ width:100%;}

.reproduce-arch .list section .sub100{ width: 100%; }
.reproduce-arch .list section .sub100 ul li{
  width: 23%;
}




/* 現役作品　＋　過去作品　Ver2 */
.reproduce-arch-ver2 h4{
  font-weight: bold;
}

.reproduce-arch-ver2 .list section{
  display:flex;
  flex-wrap:wrap;
  justify-content: space-between;
}
.reproduce-arch-ver2 .list section h3{ width:100%; }
.reproduce-arch-ver2 .list section .sub{
  width: 49%;
}
.reproduce-arch-ver2 .list ul{ 
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-start;
  list-style-type: none;
}

.reproduce-arch-ver2 .list ul li{
  width: 23%;
  margin: 0 1% 1% 1%;
}
.reproduce-arch-ver2 .list ul li img{ width:100%;}

.reproduce-arch-ver2 .list section .sub100{ width: 100%; }
.reproduce-arch-ver2 .list section .sub100 ul li{
  width: 23%;
}


/*
.reproduce_list_ver2{
  display:flex;
  flex-wrap: wrap;
}
.reproduce_list_ver2 .reproduce_list_ver2_col{
  width: 100%;
  }

.reproduce_list_ver2 h3{
  width: 100%;
  font-size: 1.6rem;
  text-align: center;
  margin: 1em 0.4em 0 0em;
  font-weight: 600;
  }
.reproduce_list_ver2 ul{
  list-style-type:none;
  display:flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  padding: 0;
  width: 100%;

}
.reproduce_list_ver2 ul li{
  width: 23%;
  margin-right: 2%;
  margin-left: 0;
  position:relative;
}

.reproduce_list_ver2 ul li .pic{ margin-top: 10px; }
.reproduce_list_ver2 ul li .pic img{ width: 100%; }
.reproduce_list_ver2 .btn{ width: 100%; }
.reproduce_icon{
  justify-content: space-between;
}
.reproduce_icon .icon{
  display: inline-block;
  text-align:cetner;
  font-size: 1.2rem;
  padding: 1px 0.5em;
}
.reproduce_icon .score{
  border: 1px solid #FF0004;
  color:#FF0004;
  }
.reproduce_icon .geneki{
  background: #FF0004;
  border: 1px solid #FF0004;
  color:#FFF;
  margin-right: 1em;
}
.reproduce_icon .geneki-no{
    padding: 0;
    background:#FFF;
    overflow: hidden;
    text-indent: -9999px;
    border: 0;
}
*/

   


/* レイアウト変更前 */
/* 
.reproduce_list{
  display:flex;
}
.reproduce_list .reproduce_list_col{
  width: 50%;
}
.reproduce_list .sub{
  display: flex;
  margin-left: 5%;
}

.reproduce_list h3{
  writing-mode: vertical-rl;
  font-size: 1.6rem;
  text-align: left;
  padding: 0;
  margin: 1em 0.4em 0 0em;
  font-weight: 600;
  }
.reproduce_list ul{
  list-style-type:none;
  display:flex;
  flex-wrap: wrap;
  border-bottom: 1px solid #CCC;
  padding: 0;

}
.reproduce_list ul li{
  width: 48%;
  margin-right: 2%;
  position:relative;
}

.reproduce_list ul li .pic{ margin-top: 10px; }
.reproduce_list ul li .pic img{ width:  100%; }


.reproduce_icon{
  justify-content: space-between;
}
.reproduce_icon .icon{
  display: inline-block;
  text-align:cetner;
  font-size: 1.2rem;
  padding: 1px 0.5em;
}
.reproduce_icon .score{
  border: 1px solid #FF0004;
  color:#FF0004;
  
  }
.reproduce_icon .geneki{
  background: #FF0004;
  border: 1px solid #FF0004;
  color:#FFF;
  margin-right: 1em;
  
} */
 
/*アクセス*/
.access_contact{}  
.access_contact ul{
  flex-wrap: wrap;
  list-style-type: none;
  justify-content: space-around;
  align-content: center;
  padding: 0;
}
.access_contact ul li{
  width: 20%;
  margin: auto;
  text-align: center;
}
.access_contact li a{ color:#2D2D2D !important; } 

.access_contact .btn-more2{}
.access_contact .btn-more2 a,
.access_contact .btn-more3 a
    {
        background-size: 20px auto;
        margin: 3px 2px;
        font-size: 1.6rem;
        width: 90%;
        padding:7px 10px 8px 30px;
    }
.access_contact .btn-more3 a{ color: #FFF !important; } 
    

/* EVENT */
.page_event{}
.page_event h2.wp-block-heading::after{
  width: 100%;
 }
.page_event .wp-block-image{
  margin-bottom: 0em;
  }
.page_event .wp-block-columns{
   margin-bottom:4em;
 }
.page_event .wp-block-columns h3{
  font-size:2.5rem;
  }


/* お問い合わせ　*/
/*.post_body #contact h2{
  width: 100%;
  border-bottom: 1px solid #2D2D2D;
}
.post_body #contact h2::after{
  display: none;
 }*/


/**/
.sp_only{ display:none; }




/*　　------------------------------------------------------------


モバイル、SP用　CSS  検索用：SPSP


------------------------------------------------------------　*/



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

  *{ box-sizing: border-box; }
  .sp_only{  display:inherit; }
  span.sp_only{  display:inline; }
  .sp_none{  display:none; }

}


@media only screen and (max-width:768px){
  
  /*　基本レイアウト関連　*/
  section{
    margin: 0 4%;
    margin-bottom: 2.5em;
  }
  
  .container {
    padding-left: 7%;
    padding-right: 7%;
  }
  

}

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

  /* タイトル部分　*/
  h1{ }
  h1.ttl_h1{}
  h1.ttl_h1_bg{
    padding:19% 0; 
    background-size:auto 100%;
  }
/*  h1.ttl_h1_bg.ttl-reproduce{padding:10% 2% !important; }*/
  h1.ttl-beginner{  padding:17% 0;  }


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

  /*ヘッダーSP*/
  .headline{
    margin-bottom: 0;
    padding-bottom:0;

  }
  .headline .container{}
  .headline .row{
    display: flex;
    align-content: flex-end;
    flex-wrap:wrap;
    padding: 0;
  }

  .headline .col_logo{
    /*width:40%;*/
    width:45%;
    min-width: auto;
    margin-top:0;
    margin-left: 2%;
    text-align: left;
    }
  
  /*HOMEはH1、それ以外はPタグ*/
  .headline .col_logo h1 a,
  .headline .col_logo p a{
    padding-top: 2%;
    font-size: 12px;/*font-sizeを指定しないと高さがずれるので調整*/
    }

  .headline .col_right{ width: 100% ; margin: 0; padding:0; }

  /*ナビ（小）*/
  .col_navi_up{ display: none; }


}


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

    /* SP Navi グローバルナビ(メイン) 　*/
    .navbar-toggler{
      position: absolute;
      top:-2.3rem;
      right: 2.2rem;
    }

    


    .col_navi_area{}
    .navbar{
      background: #FFF;
      margin: 0 -3%;
    }
    

    .navbar ul{ padding: 0; list-style-type:none;  }
    .navbar ul ul ul{  
      padding-left: 0.5em;
     }
    .navbar ul ul ul *{ border: 0; }
    .navbar li {
      margin-right: 15px;
      border-bottom: 1px solid #2D2D2D;
    }
    /*.navbar li.sp_only{ display: block !important;}*/

    .navbar li.btn-em{ 
      margin-top: 0.2em;
      margin-bottom: 0.1em;
      border-bottom: 0;
      }
    .navbar li a {
      background: #FFF;
      padding: 0.5em;
    }
    .navbar ul li a::after {
      display: none;
    }
    .navbar li.dropdown{}
    .navbar li.dropdown{}
    .navbar li.dropdown .dropdown-menu{
      background:#FAFAFA;
      border: 0;
    }
    .navbar li.dropdown .dropdown-menu a{
      color:#2D2D2D;
      background: none;
      padding: 0.5em;
      border: 0;
       width: 0;
    }
  
  



    .navbar li.dropdown .dropdown-menu{}
    .navbar li.dropdown .dropdown-menu li{
      /* padding-left: 1em !important;*/
     }
    
    .navbar .tel_box{
      /*background: #FFF;*/
      padding:1em  0.5em;
      display: flex;
      justify-content:space-between;
    }     
    .navbar .tel_box .open_time{ order: 2; font-size: 3.4vw; }
    .navbar .tel_box .tel_no{ order: 1; font-size: 3.5vw;}
    
    .navbar .tel_box .open_time,
    .navbar .tel_box .tel_no{
      flex-grow: 1;
      width: 100%;
      padding: 0;
      margin: 0;
      text-align: center;
      }
    
    .navbar .tel_box .tel_no a{
      background: none;
      margin-left: 0;
      }

     .navbar_sp{
        display: inline-block;
       /* position:fixed;*/
       position: absolute;
       top: 15px;
       right: 5rem;
      }  
    .navbar.navbar_sp{
      margin: 0;
      padding:0;
      }
    .navbar_sp ul{
      padding: 0 !important; margin: 0;
      }
    .navbar_sp li a {
      background: #FFF;
    }
    .navbar_sp li.btn-em{ 
      margin-top: 0em;
      margin-bottom: 0em;
      margin: 0;
      border-bottom: 0;
      font-size: 1.3rem;
    }
    .navbar_sp li.btn-em a{
      padding: 0.4em 0.7em 0.2em 0.7em;
  }
}
@media only screen and (max-width:768px){

    /* フッター Footer SP */
    footer{
      position: relative;
      background: #F1F1F1;
      padding-bottom: 0;
    }
    footer .container{ }
    .footer_flex{
      display: flex;
      flex-wrap: wrap;
    }
    .footer_flex .logo_area{
      background-position: center 0;
      background-size: auto  100%;
      width: 100%;
      padding: 10% 0;
      margin-bottom: 2em;
    }
    .footer_flex .logo_area .footer_logo{
      width: 60%;
      margin: auto;
      }
    .footer_flex .btn_map{
    width: 40%; margin: auto; }


    .footer_flex .navi_area{
      width: 100%;
    }
    .footer_flex .navi_area .sub_row{
      margin: 0;
    }
    

    .footer_flex .navi_area ul{
      margin-bottom: 0;  
    }
    
  /*  .footer_flex .navi_area .sub_row:nth-child(1){  }
    .footer_flex .navi_area .sub_row:nth-child(2){ order:3; }
    .footer_flex .navi_area .sub_row:nth-child(3){ order:2; }
    .footer_flex .navi_area .sub_row:nth-child(4){ order:4; }

     .footer_flex .navi_area .sub_row:nth-child(2) div:nth-child(1){order:2; }
     .footer_flex .navi_area .sub_row:nth-child(2) div:nth-child(2){order:1; }*/
     
    .footer_flex .navi_area .sub_row .sp_only{ display: block; } 
    .footer_flex .navi_area .sub_row.sp_only{ display: block; } 
    .footer_flex .navi_area .sub_row .sp_only h4{ display: block; width: 100%;  }



}

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

    /* フッター Footer SP Sサイズ */
    .footer_flex .navi_area{
      flex-wrap: wrap;
      width: 100%;
    }
    .footer_flex .navi_area .sub_row{
      width: 100%;
    }
    .footer_flex .navi_area h4{
      font-size: 1.5rem;
    }
    


  

}


/*タイトル*/
@media only screen and (max-width:768px){
  h1.ttl_h1{
    font-size: 2.0rem;
  }
  h1.ttl_h1 span.w30{
    width: 100%;
  }

}

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


    /*　目次　*/
    ul.toc_list {
      margin-bottom: 2em;
      flex-wrap: wrap;
    }
    ul.toc_list li {
      margin: 0 0 2% 0;
      width: 100%;
    }
    ul.toc_list li a {
      display: block;
      width: 100%;
      padding: 0.9em 0.5em 0.8em 0.5em;
    }
    
    /*特長の目次*/
    .page_features ul.toc_list li{
      margin:0 0 2% 0;
    }

}



/*汎用*/
@media only screen and (max-width:768px){


    /*ボタン（ブロックのボタンでも使用）*/
    /*.wp-block-buttons-is-layout-flex{
      display: block !important;
    }*/
    /*wp-block-buttons is-content-justification-center is-layout-flex wp-container-core-buttons-is-layout-1 wp-block-buttons-is-layout-flex*/
    .btn-more2{}
    .btn-more2,
    .btn-more3,
    .is-style-btn-more2,
    .is-style-btn-more2-or,
    .is-style-btn-more2-pk,
    .is-style-btn-more2-bl,
    .is-style-btn-more2-gr,
    .is-style-btn-more2-trial
    {
     width: 80%;
     margin:auto;
    }
  
    .btn-more2 a,
    .btn-more3 a,
    .is-style-btn-more2 .wp-block-button__link,
    .is-style-btn-more2-or .wp-block-button__link,
    .is-style-btn-more2-pk .wp-block-button__link,
    .is-style-btn-more2-bl .wp-block-button__link,
    .is-style-btn-more2-gr .wp-block-button__link,
    .is-style-btn-more2-trial .wp-block-button__link
    .is-style-btn-more2-or{
        box-sizing: border-box;
        white-space: pre-wrap;
        background-size: 20px auto;
        width: 100%;
        margin: 10px auto;
        font-size: 1.6rem;
        background-position: 3px center;
        padding:7px 10px 8px 30px;
     }



}



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

  /* TOPページ */
  .mv_btm_row{
    flex-wrap: wrap;
  }
  .mv_btm_row .btn,
  .mv_btm_row .txt-pass_rate{ width: 100%; }
  .mv_btm_row .btn{ order:2; }
  .mv_btm_row .txt-pass_rate{ order:1;
    margin: 0 1%;
    }
  
  .txt-pass_rate p{ text-align: center; }
  .txt-pass_rate p.line-1{ font-size: 3.2vw; margin:auto 0; }
  .txt-pass_rate p.line-2{}
  .txt-pass_rate p .rd{ }
  .btn-trial{}
  
  .mv-btn a{
    padding: 0.3em 0.3em;
  }
  .mv-btn.btn-pass_news,
  .mv-btn.btn-seminar{
    margin: 0;
  }
  .mv-btn.btn-pass_news a,
  .mv-btn.btn-seminar a{
    font-size:0.9vh;
  }


  /*ボタンあり時*/
/*  .txt-pass_rate p.line-1{ font-size: 3.2vw; }
  .mv-btn.btn-pass_news a,
  .mv-btn.btn-seminar a{ font-size:0.9vh;}
  .mv_btm_row .btn-more3 a{ font-size:1.4rem;} */ 
  
  .txt-pass_rate p.line-1{ font-size: 4.2vw; line-height: 1.4em; }
  .mv-btn.btn-pass_news a,
  .mv-btn.btn-seminar a{ font-size:1.7vh;}
  .mv_btm_row .btn-more3 a{ font-size:1.4rem;} 
  
  
  .mv_btm_row{
    padding: 1.5em 0 0 0 ;
    margin-bottom: 2em;
  }

  .txt-pass_rate.sp_only{ display:block; }

  .txt-pass_rate .flex{
    justify-content: center;
  }

/*  .txt-pass_rate .flex{
  justify-content: center;
    align-content: center;
    margin-bottom: 0.5em;
  }
  .txt-pass_rate .flex p{ margin: auto 4px; }
  .mv-btn{
  color: #FFF;
  }
  .mv-btn a{
    padding: 0.5em 1em;
    color: #FFF;
    display: inline-block;
  }
  .mv-btn.btn-pass_news{
    margin-right: 0.5em ;
    }
  .mv-btn.btn-pass_news a{
    background: #0000FF;
    font-size: 1.0vh;
  }
  .mv-btn.btn-seminar a{
    background: #FF2711;
    
   }
*/


    /* TOP バナー*/
    .top_bnr_area{
      display:flex;
      flex-wrap: wrap;
      justify-content: flex-start; 
    }
    .top_bnr_area li{
      width:48%;
      margin: 0 1% 2% 1%;
    }

    .top_bnr_area li a{
      display:block;
      width:100%;
      }  
    .top_bnr_area li a.btn_txt{ }
    .top_bnr_area li a.btn_txt span{
      width: 76%;
      font-size: 1.2rem;
      }
      .top_bnr_area li a.btn_txt-row1 span{
       padding: 17% 10%;
      }



    .txt-bnr_area_catch{
        /*font-size: 1.9rem;*/
        font-size: 5vw;
    }




    /* TOP EVENT */
    .top_event_content .wp-block-columns:nth-child(2n) .wp-block-column:nth-child(1){ order:2; }
    .top_event_content .wp-block-columns:nth-child(2n) .wp-block-column:nth-child(2){ order:1;}


    /* TOP NEWS */
    .top_news_list{}
    .top_news_list ul{
        list-style-type: none;
        padding: 0;
    }
    .top_news_list ul li{
        margin-bottom: 1.5em;}


    .top_news_list ul li span{}
    .top_news_list ul li span.date{ display: block;    }   
    .top_news_list ul li span.txt{
        display: block;  
        margin-left: 0em;
    }   
    .top_news_list ul li span.txt a{ }   



    /*　TOP　ABOUT */
    .top_about_box{
      display: block;
    }
    .about_pic,
    .about_txt{
      margin: auto;
    }

    .about_pic{}
    .about_txt{
      text-align: left;}
    .about_txt p{
      font-size: 1.5rem;
     }

}


@media only screen and (max-width:768px){
/*コース*/

  .page_course{}
  .box-waribiki{
    border: solid #FF0000;
    border-width: 1px 1px 1px 1px;
    padding: 1em 1em 0.8em 1em;
  }


}

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


  /* 初めての方　*/
  .page_beginner{}
  .page_beginner h2::after{}
  .page_beginner .page .wp-block-columns{}
  .page_beginner .page .wp-block-columns .is-layout-flow{}
  .page_beginner .page .wp-block-columns:nth-child(odd) .is-layout-flow:nth-child(1) { order:0; }
  .page_beginner .page .wp-block-columns:nth-child(odd) .is-layout-flow:nth-child(2) { order:0; }
  .page_beginner .page .is-layout-flow figure.wp-block-image{ margin-left: 0; }


  .page_beginner .page  .beginner-txtbox h3.wp-block-heading{
    width: 80%;
    padding:0em 0.5em;
  }
  .page_beginner .page .beginner-txtbox .has-text-align-left{
    padding-top: 0.5em;
  }


}




/* 特長 - SP */
@media only screen and (max-width:768px){
      
    .page_features{}
    .page_features h2.wp-block-heading{}
    .page_features h2.wp-block-heading span{}
    .page_features h2.wp-block-heading::after{ }  
    .page_features h2.wp-block-heading::before{}
    .page_features .post_body .wp-block-columns{
      margin-bottom: 2em;
      gap: 0;
      }
    .page_features .post_body .wp-block-column{
     padding: 0;
     margin: 0;
    }
    .page_features .wp-block-buttons{
      margin-bottom:1em;
    }


}




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


  /* 合格再現作品　目次 */
  .reproduce-toc{
    margin: 0%;
    padding: 1em;
    flex-wrap: wrap;
    }
  .reproduce-toc .sub{
    width: 100%;
    flex-wrap: wrap;
  }
  .reproduce-toc a{}
  .reproduce-toc ul{
    list-style-type: none;
    width: 100%;
    margin-top: 0;
    margin-bottom: 0;
    }

  .reproduce-toc .sub ul:nth-child(3){ margin-bottom: 1em; }
  
  .reproduce-toc ul li{
    text-align: left;
    font-size: 1.4rem;
    margin-bottom: 0.7em;  
    }
  .reproduce-toc p.index-title{
     -ms-writing-mode:lr-tb;
      writing-mode: horizontal-tb;/*横書きに戻す*/
      width: 100%;
    }  
  .reproduce-toc p.index-title a{
    display: block;
    padding: 0.6em;
    border:solid #2D2D2D;
    border-width: 1px 1px 1px 1px;
    }
    
    
  /*目次ここまで*/




  .reproduce_list{
    flex-wrap:wrap;
  }
  .reproduce_list .reproduce_list_col{
    width: 100%;
    margin-bottom: 2em;
  }
  .reproduce_list .sub{
    margin-left: 0;
  }

  .reproduce_list h3{}
  .reproduce_list ul{}
  .reproduce_list ul li{ width: 48%; }
  .reproduce_list ul li .icon-geneki{}
  .reproduce_list ul li .pic{}
  .reproduce_list ul li .pic img{}

  .score{
    display: inline-block;
    float: right;
    text-align: cetner;
    border: 1px solid #FF0004;
    color:#FF0004;
    padding: 1px 0.5em;
    }



/*旧レイアウト*/
/*
  .reproduce_list{
    flex-wrap:wrap;
  }
  .reproduce_list .reproduce_list_col{
    width: 100%;
    margin-bottom: 2em;
  }
  .reproduce_list .sub{
    margin-left: 0;
  }

  .reproduce_list h3{}
  .reproduce_list ul{}
  .reproduce_list ul li{}
  .reproduce_list ul li .icon-geneki{}
  .reproduce_list ul li .pic{}
  .reproduce_list ul li .pic img{}

  .score{
    display: inline-block;
    float: right;
    text-align: cetner;
    border: 1px solid #FF0004;
    color:#FF0004;
    padding: 1px 0.5em;
    }
*/

   /*　過去作品　*/
  .reproduce-arch .list section{
    flex-wrap:wrap;
  }
  .reproduce-arch .list section h3{}
  .reproduce-arch .list section .sub{
    width: 100%;
  }
  .reproduce-arch .list ul{ 
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    list-style-type: none;
    padding:0;
  }

  .reproduce-arch .list ul li{
    width: 48%;
    margin: 0 1% 1% 1%;
  }
  .reproduce-arch .list ul li img{ width:100%;}

  .reproduce-arch .list section .sub100{ width: 100%; }
  .reproduce-arch .list section .sub100 ul li{
    width: 48%;
    margin: 0 1% 1% 1%;
  }

}

/*　合格者の声　*/
@media only screen and (max-width:768px){

  .voice_list ul{
     margin: 1em;
  }
  .voice_list ul li.sub{}
  .voice_list ul li.sub{
    display:block;
    width: 100%;
    padding: 1em 1em 1em 1em;
  }
  .voice_list ul li.sub:nth-child(2n){ margin-left: 0%; }
  .voice_list ul li.sub p,
  .voice_list ul li.sub div{}
  .voice_list ul li.sub .pic{ width:30%; min-width: 130px; margin: auto; margin-bottom: 1em;}
  .voice_list ul li.sub .pic2{ width:50%; min-width: 130px; margin: auto; margin-bottom: 1em;}
  .voice_list ul li.sub .txt { width: 100%; margin-left: 0;}
  .voice_list ul li.sub .txt { width: 100%; margin-left: 0;}
  .voice_list ul li.sub .name{ text-align: center;}
  .voice_list ul li.sub .name-rl{
    writing-mode:initial;
    display: block;
    margin: 1em auto 0 auto;
    }  
  
}

/* アクセス　*/
@media only screen and (max-width:768px){
  .access_contact{}  
  .access_contact ul{}
  .access_contact ul li{
    width: 33%;
  }
  .access_contact ul li .btn-more2 a,
  .access_contact ul li .btn-more3 a{
    font-size: 3.3vw;
  }
  
  .access_contact .btn-more2,
  .access_contact .btn-more3{
    margin: 0;
  }
    

  .access_contact .btn-more3 a{
    color: #FFF !important;
  }   
  
}
@media only screen and (max-width:430px){
  .access_contact ul li{
    width: 50%;
    order:16;
  }
  .access_contact ul li:nth-child(1){ order:1;}
  .access_contact ul li:nth-child(2){ order:2;}
  .access_contact ul li:nth-child(3){ order:4;}
  .access_contact ul li:nth-child(4){ order:3;}
  .access_contact ul li:nth-child(5){ order:5;}
  .access_contact ul li:nth-child(6){ order:6;}
  .access_contact ul li:nth-child(7){ order:8;}
  .access_contact ul li:nth-child(8){ order:7;}
  .access_contact ul li:nth-child(9){ order:9;}
  .access_contact ul li:nth-child(10){ order:10;}
  .access_contact ul li:nth-child(11){ order:12;}
  .access_contact ul li:nth-child(12){ order:11;}
  .access_contact ul li:nth-child(13){ order:13;}
  .access_contact ul li:nth-child(14){ order:14;}
  .access_contact ul li:nth-child(15){ order:16;}
  .access_contact ul li:nth-child(16){ order:15;}

}