@charset "utf-8";
/* CSS Document */

/*---------------------------
メインカラー
#BD2B4D
サブカラー
#E2951D
サブカラー2
#2E3D8E
サブカラー3（予備）
#386E44
ダークグレー
#333630
ペールグレー
#F0F1F5
---------------------------*/

@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,700&display=swap&subset=japanese');


* {
    font-family: 'Noto Sans JP', sans-serif, "Font Awesome 5 Free";
}

body {
    font-family: 'Noto Sans JP', sans-serif, "Font Awesome 5 Free";
    font-size: 14px;
    line-height: 1.5;
    color: #333630;/*----←←←指定のグレイ---------*/
    background-size: auto;
    overflow-x: hidden;
}

/* 960px以上の画面の場合、container幅を1200pxに */
@media (min-width: 960px) {
    .container {
        max-width: 1200px;
    }
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
td {
    font-family: 'Noto Sans JP', sans-serif, "Font Awesome 5 Free";
}

.container-fluid {
    padding: 0;
}

.border_gry {
    border-bottom: 1px solid #F0F1F5;
    line-height: 2;
}

/*------ボタンのフォーカスなし-------------*/

.btn:focus {
    outline: 0;
    box-shadow: 0 0 0 0;
}


/*------フォントサイズ-------------------*/
.f10 {
    font-size: 10px;
}

.f12 {
    font-size: 12px;
}

.f13 {
    font-size: 13px;
}

.f14 {
    font-size: 14px;
}

.f15 {
    font-size: 15px;
}

.f16 {
    font-size: 16px;
}

.f18 {
    font-size: 18px;
}

.f20 {
    font-size: 20px;
}

.f24 {
    font-size: 24px;
}

.f26{
    font-size: 26px;
}
.f30 {
    font-size: 30px;
}

/*------フォントカラー-------------------*/
.text_main {
    color: #bd2b4d;
}

.text_sub {
    color: #E2951D;
}

.text_sub2 {
    color: #2E3D8E;
}

.text_sub3 {
    color: #386E44;
}
.text_p_gry {
    color: #F0F1F5;
}
.badge-sub {
    color: #fff;
    background-color: #E2951D;
    padding: 0.3em 0.4em;
    font-weight: normal;
    margin-bottom: 5px;
    border-radius: 0.25rem;
}
.badge-sub2 {
    color: #fff;
    background-color: #2E3D8E;
    font-size: 13px;
    padding: 0.3em 0.4em;
    font-weight: normal;
    margin-bottom: 5px;
}

/*------テキストリンクカラー------------------*/
.text_link a {
    color: rgba(46, 61, 142, 1);
    text-decoration: none;
}
.text_link a:hover {
    color: rgba(46, 61, 142, 0.7);
    text-decoration: underline;
}
.table-kango a{
    color:#bd2b4d;
}
.table-kango a:hover{
    color:#e2951d;
}
/*-- PC版表示CSS  --*/
.pc {
    display: block;
}

.sp {
    display: none;
}


/*-- スマホ版表示CSS  --*/
@media screen and (max-width: 768px) {
    .pc {
        display: none;
    }

    .sp {
        display: block;
    }
}

/*----ナビバー-----------------------*/

.nav_back{
    background-color: rgba(240, 241, 245, 0.9);
    border-bottom: 2px solid #e2951d;
}
 
nav{
 width: 100%;
 height: 40px;
 position: relative;
 background-color: transparent;
}
 
.drawer{
 display: flex;
 flex-direction: row;
 align-items: center;
 justify-content: space-between;
 position: relative;
 height: 40px;
 padding: 0 0.5em;
}
 
/*----ナビゲーション部分-------------------*/
.menu ul{
    height: 100vh;
    padding: 0;
}
.menu ul li{
    list-style: none;
} 
.menu ul li a {
display:block;

padding: 0.8em 2em;
border-bottom: 1px dotted #CCC;
  color:#333;
  text-decoration:none;
}
 
 
.menu ul li a:hover
{background-color:rgba(240, 241, 245, 0.9);
color:orange;}
 
 
.menu{
  /*text-align:center;*/
  background-color:rgba(240, 241, 245, 0.9);
  transition: 0.5s ease;/*滑らかに表示*/
  -webkit-transform: translateX(120%);/*画面より100%外へ押し出し非表示にさせる*/
 
/*  transform: translateX(-100%);/*右から出す場合は、マイナス100%としてください*/
 
}
 
/*-----OPEN時の動き--------------------*/
.menu.open {
 -webkit-transform: translateX(0%);
 transform: translateX(20%);/*メニューを左から20%の位置へ戻す*/
 height: 100vh;
 
}
 
/*トグルボタンのスタイルを指定*/
.Toggle {
    display: block;
    /*position: fixed;*/    /* bodyに対しての絶対位置指定 */
    width: 30px;
    height: 30px;
    cursor: pointer;
    z-index: 3;
    padding-top: 5px;
  /*right:10px;*/
}
 
.Toggle span {
    display: block;
    position: absolute;
    width: 25px;
    border-bottom: solid 2px #333;
    -webkit-transition: .35s ease-in-out;   /*変化の速度を指定*/
    -moz-transition: .35s ease-in-out;      /*変化の速度を指定*/
    transition: .35s ease-in-out;           /*変化の速度を指定*/
 
}
 /*------各ボーダー少しずつずらす----------------*/
.Toggle span:nth-child(1) {
        top: 10px;
    }

    .Toggle span:nth-child(2) {
        top: 19px;
    }

    .Toggle span:nth-child(3) {
        top: 28px;
    }
.Toggle.active span:nth-child(1) {
    top: 18px;
/* ------1番目のspanをマイナス45度に----------- */
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
 
/* ------2番目と3番目のspanを45度に----------- */
.Toggle.active span:nth-child(2),
.Toggle.active span:nth-child(3) {
    top: 18px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
}
 
/*-------ここからPCモニターの記述------------------*/
@media screen and (min-width: 768px) {
 
nav{
 display: flex;
}
 
.Toggle{
 display: none;
}
.menu{
width: 100%;
font-size:0.9em;
background-color: transparent;
margin:0;
-webkit-transform: translateX(0);
transform: translateX(0);
}
.menu ul{
 height: 40px;
 display: flex;
 flex-wrap: wrap;
 justify-content: flex-end;
 align-items: center;
}
.menu ul li a{
 padding: 0 1em;
 border-bottom: none;
}
.menu ul li a:hover{
background-color:transparent;
}
}








/*----dropdown　hoverで開く----*/
.dropdown:hover .dropdown-menu {
    display: block;
    margin: 0;
}
/*-----NEWS タイトル--------*/
h3.title{
    color:#bd2b4d;
    border-bottom: 2px solid #e2951d;
    font-weight: 700;
    font-size: 26px;
    padding-bottom: 3px;
}


/*-----NEWS ストライプのバックの色--------*/
.table-striped-kango tbody tr:nth-of-type(odd) {
    background-color: #f0f1f5;
}
.table-kango td {
    border-top: 1px solid #f0f1f5;
}


/*-----開催概要 thの色と幅----------*/
th {
        min-width: 90px;
        background-color: #f0f1f5;
        font-weight: normal;
    }



/*-----各ページヘッダー部分------------------*/
.page_title{
  background-color: #bd2b4d;
  color: #fff;

}

/*-----各ページ共通-------------------*/
.enclosed{
 padding: 1em 1.5rem;
 text-align: center;
 width: 70%;
 /*color: #fff;*/
 /* border: 2px solid #E2951D;*/
  background-color: #F0F1F5;
  font-size: 16px;
  border-radius: 0.25rem;
  
}
@media screen and (max-width: 768px){
.enclosed{
  width: 100%;
   margin: 2em auto;
}
}

ol li{
  padding-bottom: 1rem;
    margin-left: 10px;
}

/*-------footer-----------------*/
.kango_footer {
  background: #bd2b4d;
 color: #fff;
  text-align: center;
  padding: 2px 0;
  font-size: 14px;
}

/*-----ページトップへ-------------------------*/
#page_top{
  width: 50px;
  height: 50px;
  position: fixed;
  right: 0;
  bottom: 0;
  background: #e2951d;
  opacity: 0.6;
  border-radius: 50%;
}
#page_top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f106';
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -10px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}

menu{
text-align: center;
}
menu ul{
margin: 0 ;
padding: 0 ;
}
menu ul li{
list-style: none;
display: inline-block;
padding: 0 15px;
margin-bottom: 10px;
border-right:1px solid #333;
}
menu ul li:first-child{
  padding-left: 0;
}
menu ul li:last-child{
  border-right: none;
}
menu ul li a{
text-decoration: none;
color: #333;
}

menu ul li a:hover{
color: #bd2b4d;
}

@media screen and (max-width: 576px){
  menu{
text-align: left;
padding-left: 0;
}
menu ul li{
list-style: none;
display: block;
padding: 0 0 10px;
border-right:none;
}

}
/*-----　参加登録ボタン　-------------------------*/
.btn-main-register {
    color: #bd2b4d;
    border: 2px solid #bd2b4d;
    background-color: #fff;
    background-image: url(../img/btn_back2.png);
    background-size: contain;
    background-repeat: no-repeat;
    font-size: 28px;
    font-weight: bold;
}
.btn-main-register:hover {
    color: #fff;
    background-color: #E2951D;
    background-repeat: no-repeat;
}
.btn-main-require {
    color: #bd2b4d;
    border: 2px solid #bd2b4d;
    background-color: #fff;
    font-size: 24px;
    font-weight: bold;
}
.btn-main-require:hover {
    color: #fff;
    background-color: #E2951D;
    background-repeat: no-repeat;
}
/*-----　loginボタン　-------------------------*/
.btn-login {
    color: #fff;
    border: 2px solid #bd2b4d;
    background-color: #bd2b4d;
    font-size: 24px;
    font-weight: bold;
}
.btn-login:hover {
    color: #fff;
    background-color: #E2951D;
    background-repeat: no-repeat;
}
/*-----　応募ボタン　-------------------------*/
.btn-lg.btn-main-big.btn-sub2-big {
  padding: 1rem 2.5rem;
  line-height: 2;
}
.btn-main-big {
    color: #fff;
    background-color: #bd2b4d;
    border-color: #bd2b4d;
    font-size: 24px;
}
.btn-main-big:hover {
    color: #fff;
    background-color: #e2951d;
    border-color: #e2951d;
    font-size: 24px;
}

.btn-sub2-big {
    color: #fff;
    background-color: #2E3D8E;
    border-color: #2E3D8E;
    font-size: 24px;
}
.btn-sub2-big:hover {
    color: #fff;
    background-color: #e2951d;
    border-color: #e2951d;
    font-size: 24px;
}


.btn-main.btn-sub2 {
  padding: 0rem 1.5rem;
  line-height: 0;
}
.btn-main{
    color: #fff;
    background-color: #bd2b4d;
    border-color: #bd2b4d;
    font-size: 18px;
}
.btn-main:hover {
    color: #fff;
    background-color: #e2951d;
    border-color: #e2951d;
    font-size: 18px;
}

.btn-sub2 {
    color: #fff;
    background-color: #2E3D8E;
    border-color: #2E3D8E;
   
}
.btn-sub2:hover {
    color: #fff;
    background-color: #e2951d;
    border-color: #e2951d;
   
}
/*--　プログラム詳細　------------------------------------*/


.btn_date_1st{
  display: block;
  width: 10%;
  background-color: #2E3D8E;
  color:#fff;
  
}
.btn_date_1st:hover{
  display: block;
  width: 10%;
  background-color: #6575cd;
  color:#fff;
  cursor: pointer;
}
.btn_date_2nd{
  display: block;
  width: 10%;
  background-color: #386E44;
  color:#fff;
}
.btn_date_2nd:hover{
  display: block;
  width: 10%;
  background-color: #56a968;
  color:#fff;
  cursor: pointer;
}

/*---- FAQ  ---------------*/

    menu ul li {
        list-style: none;
        display: inline-block;
        padding: 0 15px;
        margin: 20px 0;
        border-right: 1px solid #4974a5;
        line-height: 1;
        font-weight: normal;
        font-size: 16px;
    }

    @media screen and (max-width: 576px) {
        menu {
            text-align: left;
            padding-left: 0;
        }

        menu ul li {
            list-style: none;
            display: block;
            padding: 0 0 10px;
            border-right: none;
        }

    }

    .faq_card-header {
        padding: 0.75rem 1.25rem;
        margin-bottom: 0;
        background-color: rgba(226, 149, 29,0.8);
        color: #FFF;
        
        font-size: 18px;
    }
    .card{
        margin-top: 20px;
    }
    .card-body {
        border: none;

    }
.btn-goto-register {
    color: #fff;
    background-color: #BD2B4D;
    border-color: #BD2B4D;
}
.btn-goto-register:hover{
    color: #BD2B4D;
    background-color: rgba(189, 43, 77, 0.2);
    border-color: #BD2B4D;
}
.btn-goto-faq {
    color: #fff;
    background-color: #2E3D8E;
    border-color: #2E3D8E;
}
.btn-goto-faq:hover{
    color: #2E3D8E;
    background-color: rgba(46, 61, 142, 0.2);
    border-color:#2E3D8E;
}

