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

#area-2{
  position: absolute;
top:50vh;  
 }

#animation-canvas {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: black;  /* アニメーション後の背景色 */
    z-index: 9999;  /* フルスクリーン表示のためのz-index */
}


/*ローディングアニメーションのCSS */

#loading {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 1); /* 背景色 */
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
    opacity: 1; /* 初期状態: 表示 */
    visibility: visible;
    transition: opacity 1.5s ease, visibility 1.5s ease; /* フェードアウト */
}

#loading video {
    max-width: 50%; /* 動画サイズの調整 */
    max-height: 50%;
}

   


/*ScrollReveal　チラツキ防止*/
.load-hidden {
        visibility: hidden;
}





/*Gutenberg　装飾*/
.center-block{
  display: flex;
  justify-content: center;
  align-items: center;
   
    }


/*Gutenberg　装飾 TOP*/

.gut-flex{
display: flex;
    flex-wrap: wrap;
        
 overflow: hidden;
padding: 0%;
    

}

.gut-flex-row{
display: flex;
    flex-wrap: wrap;
        
 flex-direction: row-reverse;
    justify-content: flex-end;
padding: 0%;
 overflow: hidden;
}




.gut-margin-0{
   
margin: 10;
    padding: 0;

}

.gut-margin-0 img{
    margin: 10;

}


   
  /* 半分分割*/

.gut-box-50{
    width:50%;
   
   
   
    margin: 0;
   overflow: hidden;
   
   
}

.min-height-300{
  min-height:300px;  
}




.gut-box-50 p,h2{
    padding: 15px;
    
}

.gut-box-50 img{
    width: 100%;
    
}


.gut-box-50.padding100 img{
    
    padding: 100px;
}


/*テーブル装飾*/

.blue-table .table {
    border-collapse: collapse;
    margin: 0 auto;
    padding: 0;
    width: 650px;
    table-layout: fixed;
   
    border-width: 44px 0px 0px;
  
  }

.blue-table table tr {
  background-color: #e6f2f5;
  padding: .35em;
  border-bottom: 2px solid #fff;
      border-top-color: rgba(186,62,64,1.00);
}
.blue-table table th,
.blue-table table td {
  padding: 1em 10px 1em 1em;
  border-right: 2px solid #fff;
      border-top: 2px solid #fff;
       border-left: 0px solid #fff;
}
.blue-table table th {
  font-size: .85em;
}
.blue-table table thead tr{
  background-color: #167F92;
  color:#fff;
}
.blue-table table tbody th {
    background: #78bbc7;
    color: #fff;
}
.blue-table .txt{
   text-align: left;
   font-size: .85em;
}
.blue-table .price{
  text-align: right;
  color: #167F92;
  font-weight: bold;
}
.blue-table .non{
  background:#fff
}
@media screen and (max-width: 600px) {
  .blue-table table {
    border: 0;
    width:100%
  }
  .blue-table table th{
    background-color: #167F92;
    display: block;
    border-right: none;
  }
  .blue-table table thead {
    border: none;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
  }
  .blue-table table tr {
    display: block;
    margin-bottom: .625em;
  }
  .blue-table table td {
    border-bottom: 1px solid #bbb;
    display: block;
    font-size: .8em;
    text-align: right;
    position: relative;
    padding: .625em .625em .625em 4em;
    border-right: none;
  }
  
  .blue-table table td::before {
    content: attr(data-label);
    font-weight: bold;
    position: absolute;
    left: 10px;
    color: #167F92;
  }
  .blue-table table td:last-child {
    border-bottom: 0;
  }
  .blue-tabletable tbody th {
    color: #fff;
}
}






.wood-back{
    background-image:url("img/wood-back.jpg")
    
}

h2.fusen{
    background-image: url("img/form-background.png");
    background-repeat: no-repeat;
    padding-left: 32px;
    display: inline-block;
    max-width:500px;
    width: 100%;
    background-position: right 0%;  
    margin: 0 auto;
    
}

h2.block {
  position: relative;
  padding: 1rem 2rem calc(1rem + 10px);
  background: #F1F1F1;
}

h2.block:before {
  position: absolute;
  top: -7px;
  left: -7px;
  width: 100%;
  height: 100%;
  content: '';
  border: 1px solid #AAAAAA;
}






/*記事内のカレンダー制御*/
     table.calendar.cal100{
    max-width: 100%;
    margin-top: 25px;
     
    }















/*背景動画設定のCSS*/

/*========= 背景動画設定のCSS ===============*/


.vh{
    position: relative;/*h1の中央寄せ配置の起点とするためのrelative*/
    height: 100vh;/*高さを全画面にあわせる*/
    display: none;
} 



.vh-free{
    position: relative;/*h1の中央寄せ配置の起点とするためのrelative*/
    height: auto;/*高さを全画面にあわせる*/
}


.vh500{
    position: relative;/*h1の中央寄せ配置の起点とするためのrelative*/
    height: 500px;/*高さを全画面にあわせる*/
} 

#video-area{
    position:absolute;
    z-index: -10;/*最背面に設定*/
    top: 0;
    right:0;
    left:0;
    bottom:0;
    overflow: hidden;
}

#video {
    /*天地中央配置*/
    position: absolute;
    z-index: -1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    /*縦横幅指定*/
    width: 177.77777778vh; /* 16:9 の幅→16 ÷ 9＝ 177.77% */
    height: 56.25vw; /* 16:9の幅 → 9 ÷ 16 = 56.25% */
    min-height: 100%;
    min-width: 100%;
    background-image: url("mp4/Ora-1.png");
    background-size: cover;
   
}




@media screen and (max-width:700px) {
        /* Gutenberg */
       
      /* 半分分割*/

.gut-box-50{
width: 100%;
    height: auto;
}

}


/*Gutenberg　装飾終わり*/






/*========= アニメーションCSS ===============*/

/*フェードしながらアップ*/


.scale-up-top .black-box{
    
    z-index: -1;
    width: 502px;
    height: 273px;
    background-color: rgba(99,99,99,0.10);
    position: relative;
    top: -569px;
    
    /*a4 トップページスライドで使用*/
}



.scale-up-top{-webkit-animation:scale-up-top 4s cubic-bezier(.39,.575,.565,1.000) both;animation:scale-up-top 4s cubic-bezier(.39,.575,.565,1.000) both
}

@-webkit-keyframes scale-up-top{0%{-webkit-transform:scale(.5);transform:scale(.5);-webkit-transform-origin:50% 0;transform-origin:50% 0}100%{-webkit-transform:scale(1);transform:scale(1);-webkit-transform-origin:50% 0;transform-origin:50% 0}}@keyframes scale-up-top{0%{-webkit-transform:scale(.5);transform:scale(.5);-webkit-transform-origin:50% 0;transform-origin:50% 0}100%{-webkit-transform:scale(1);transform:scale(1);-webkit-transform-origin:50% 0;transform-origin:50% 0}}












/*========= スクロール途中でヘッダーが表示＆非表示するためのCSS ===============*/
#site-navigation{
    /*fixedで上部固定*/
	position: fixed;
 
}

/*　上に上がる動き　*/

#site-navigation.UpMove{
	animation: UpAnime 0.5s forwards;
}

@keyframes UpAnime{
  from {
    opacity: 1;
	transform: translateY(0);
  }
  to {
    opacity: 0;
	transform: translateY(-100px);
  }
}

/*　下に下がる動き　*/

#site-navigation.DownMove{
	animation: DownAnime 0.5s forwards;
}
@keyframes DownAnime{
  from {
  	opacity: 0;
	transform: translateY(-100px);
  }
  to {
  	opacity: 1;
	transform: translateY(0);
  }
}




/*参考ページスクロール途中でヘッダーが表示＆非表示するためのCSS 
https://coco-factory.jp/ugokuweb/move01/5-1-9/*/



body {
        background: none;
        /* [disabled]word-break: break-all; */
}
/*基本設定*/
a:hover {
        opacity: 0.5;
}
a:hover img {
        opacity: 0.5;
}
html {
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
      /*  font-family: "Helvetica Neue", Arial, "Hinggino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;*/
}
html {
    box-sizing: border-box;
    bottom: auto;
    background-color: #D1D1D1;
    font: 400 normal 1em/normal kozuka-gothic-pro, sans-serif;
    letter-spacing: 0.05em;
    padding-bottom: 0px;
    background-repeat: no-repeat;
    background-position: -53% 0%;
}



.block{
    display: block;
}


.red-button{
    background-color: #F1CFCF;
    padding-top: 9px;
    padding-bottom: 9px;
    border-radius: 9px;
}



/* 標準ボタン */
.button003 a {
    background: #eee;
    border-radius: 50px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    max-width: 260px;
    padding: 10px 64px 10px 62px!important;
    color: #313131;
    transition: 0.3s ease-in-out;
    font-weight: 500;
}
.button003 a:hover {
    background: #313131;
    color: #FFF;
}
.button003 a:after {
    content: '';
    width: 5px;
    height: 5px;
    border-top: 3px solid #313131;
    border-right: 3px solid #313131;
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 50%;
    right: 20px;
    border-radius: 1px;
    transition: 0.3s ease-in-out;
}
.button003 a:hover:after {
    border-color: #FFF;
}










/* Links
--------------------------------------------- */
a {
        color: #0293DA;
        text-decoration: none;
}
a:visited {
        color: #0293DA;
}
a:hover, a:focus, a:active {
        color: #808080;
}
a:focus {
        outline: thin dotted;
}
a:hover, a:active {
        outline: 0;
}




.footer-menu ul li a {
        color: #000000;
        text-decoration: none;
}

.footer-menu ul li a:visited {
        color: #000000;
    
      }
.footer-menu ul li a:active {
        color: #000000;
  
}
.footer-menu ul li a:hover {
        color: #000000;
   text-decoration: underline;
}
/*==================================================
メインナビゲーション
===================================*/

#site-navigation{
    
  
}

/*元のNAV　underscoresから修正*/
.main-navigation {
    width: 100%;
    /*QOLP追加要素*/
    text-align: left;
    font-size: 15px;
    font-weight: bold;
    background-color: rgba(0,0,0,0.11);
   
    height: 200px;
    position: absolute;
      z-index: 100;
   

}

.menu{
   z-index: 120; 
    
}

.main-navigation .menu ul {
    position: absolute;
    top: 161px;
    right: 40px;
}
.main-navigation li {
    padding-left: 20px;
    padding-right: 20px;
    padding-bottom: 0px;
    min-width: 111px;
    text-align: center;
}


.main-navigation .current-menu-item a {
        color: #0293DA;
}

/*QOLP追加要素*/
.main-navigation li + li {
        border-left: 1px solid #ffffff;
}
#menu-btn-check {
        display: none;
}



.container {
    background-color: #FFFFFF;
    position: relative;
    z-index: 0;

}

.container2 {
    background-color: #FFFFFF;
    position: relative;
    z-index: 0;
    padding-top: 200px;
}
/*位置指定*/
/*右下position*/
.bottom-right-position {
        position: absolute;
        right: 0px;
        bottom: 0px;
}
/*右上position ニュースすべて*/
.top-right-position {
        position: absolute;
        right: 0px;
    top:0px;
       font-weight: bolder;
}
.relative {
        position: relative
}
.relative-right {
        position: absolute;
        right: -159px;
}
.absolute {
        position: absolute;    
    
}

/*==================================================
　横固定ボタン
===================================*/

.side-link {
    z-index: 200;
    position: fixed;
    top: 25%;
    right: 0;
    display: block;
    width: 50px;
    margin-right: 87px;
}
.side-link_list{

}





.side-link ul li a{

     writing-mode: vertical-rl;
    color: #000000;
    display: block;
background-color: #FFFFFF;
   padding: 31px 54px 31px 15px; 
    -webkit-box-shadow: 1px 1px 3px;
    box-shadow: 1px 1px 3px;
    border-top-left-radius: 9px;
    border-bottom-left-radius: 9px;
   
}


.side-link ul li{
    list-style: none;
    background-color: #FFFFFF;
    
    margin-bottom: 20px;
    
    margin-right: 0px;
   
}


.cp_link{
    
}


/*==================================================
　基本　配置枠
===================================*/
/*横いっぱい表示*/
.all-width {
        width: 100%;
}
.all-width.topmamargin150 {
        padding-top: 150px;
}

/*1000px上限の真ん中表示*/
.relaxed-box {
        width: 100%;
        padding: 30px 15px;
        max-width: 1000px;
        /* [disabled]background-color: #FFFFFF; */
        margin: 0 auto;
        min-height: 200px;
}


 .relaxed-box-m {
    width: 100%;
padding: 0px 0px;
    /* [disabled]padding-bottom: xp; */
    max-width: 1000px;
    margin: 0 auto;
      
}

.site-main .relaxed-box-m h1{

     color: #0293DA!important }



.text-relaxed-box {
        margin-top: 50px;
        /* [disabled]margin-right: 35px; */
        /* [disabled]margin-left: 35px; */
        margin-bottom: 50px;
        padding: 0px;
}
.text-relaxed-box.text70 {
        width: 70%;
        margin: 0 auto;
        display: block;
        text-align: left;
        padding-top: 34px;
}



/*背景色*/
.white {
        background-color: #ffffff;
}
.grey {
        background-color: #E9E9E9;
}
.blue {
        background-color: #53B6E6;
}

.ochre{
        background-color:#FBE2D2;
}


/*ヘッダ要素*/
/*サイトのロゴや説明*/
/*ロゴ画像*/
img.custom-logo {

}

a.custom-logo-link {
    max-width: 579px;
    width: 35%;
    opacity: 1;
    top: 0px;
    left: 0px;
    padding-top: 0px;
    margin-left: 44px;
    z-index: -10;
    text-align: left;
    margin-top: 60px;
    display: block;
    }

footerimg.custom-logo {
    width: 100%;
margin: 0 auto;
    
    
}




.site-branding {
       
        /* [disabled]background-image: url(site-img/moku.png); */
       
}
header#masthead {
        /* トップのスライドイメージのずれ解消*/
      
    position: relative;
}





.site-info {
    width: 100%;
    margin: 164px auto 0;
    color: #707070;
    text-align: center;
    padding-top: 10px;
    bottom: 0;
    height: 100px;
    z-index: 200;
}
.r-box {
        width: 100%;
        height: 1px;
}



/*==================================================
カレンダー
===================================*/

.top-right-box{
    width: 50%;
    position: absolute;
    height: 100vh;
    right: 0;
    top: 0;
    z-index: 1;    
}

.calendar-box{
    background-color: #FFFFFF;
    position: absolute;
    padding: 39px 66px 0px;
    border-radius: 31px 0px 0px 31px;
    bottom: 106px;
    right: 0px;
         width:95%;
     
}

.calendar-button{
    background-color: rgba(47,82,120,0.48);
    text-align: center;
    padding: 9px 18px;
    border-radius: 8px;
    display: inline-block;
    margin-bottom: 21px;
color: white;
   
    
}





   table.calendar{
      border-collapse:  collapse; /* セルの線を重ねる */
        width:100%;
       max-width:700px;
        text-align: center;
       background-color: white;
       font-weight:bold;
       
    }
    
    
 tr.top {
    background-color: hsla(223,49%,64%,1.00);
    border-bottom: 1px solid hsla(0,0%,0%,1.00)
        
    }
    
tr.set{
 
  border-bottom: 1px solid hsla(0,0%,0%,1.00)
    }
    
tr.set2{

 border-bottom: 1px solid hsla(0,0%,0%,1.00)
    }
    
.calendar th{
        padding: 5px;
    }
    



/*==================================================
オープンカレッジ
===================================*/

.opencollege-box{
    background-color: rgba(153,153,153,0.56);
    position: absolute;
    border-radius: 24px;
    bottom: 54px;
    right: 10%;
    width: 500px;
    height: 300px;
   
    background-size: cover;
    color: white;
    padding: 3px 21px 21px;
    -webkit-box-shadow: 0px 0px #373737;
    box-shadow: 0px 0px #373737;
    z-index: 100;
}


  
.opencollege-box h1{
    margin: 0px;
    padding: 0;
}


.opencollege-box a{
color: white;
}
.opencollege-box dl a dt{
color: white;
}

.title-op
{
    font-size: 45px;
    line-height:45px;
    font-weight: bold;
}


.op-p{
   font-size: 20px; 
}

.op-day{
     font-size: 20px; 
 font-weight:400;
}
/*==================================================
テキスト装飾
===================================*/

.kozuka-gothic-pro400 {
        font-family: kozuka-gothic-pro, sans-serif;
        font-weight: 400;
        font-style: normal;
}
.kozuka-gothic-pro700 {
        font-family: kozuka-gothic-pro, sans-serif;
        font-weight: 700;
        font-style: normal;
}
h2.hexa {
        background-image: url(img/hexa.png);
        background-repeat: no-repeat;
        background-size: 23px auto;
        background-position: 0% 29%;
        padding-left: 35px;
        color: #02113C !important;
}
h1 {
        text-align: left;
}
h1.white-text {
        color: #FFFFFF;
}
.white-text {
        color: #FFFFFF;
}
h1.big-text {
        font-family: zen-old-mincho, serif, sans-serif;
        font-weight: 700;
        font-style: normal;
        font-size: 60px;
        color: #02113C !important;
}
h2.large-text40 {
        font-family: zen-old-mincho, serif, sans-serif;
        font-weight: 700;
        font-style: normal;
        font-size: 40px;
        color: #02113C !important;
}
h2.large-text27 {
        font-family: zen-old-mincho, serif, sans-serif;
        font-weight: 700;
        font-style: normal;
        font-size: 27px;
        color: #02113C !important;
}
h2.medium-text {
        font-family: zen-old-mincho, serif, sans-serif;
        font-weight: 700;
        font-style: normal;
        font-size: 20px;
        color: #02113C !important;
}



h2.big-text50 {
        font-family: zen-old-mincho, serif, sans-serif;
        font-weight: 700;
        font-style: normal;
        font-size: 50px;
        color: #02113C;
}


.big-text30 {
        font-family: kozuka-gothic-pro, sans-serif;
        font-weight: 700;
        font-style: normal;
        font-size: 30px;
       
}



.center-text.tel{
    background-image: url(img/tel-number.png);
    background-repeat: no-repeat;
    background-size: 260px auto;
    margin-left: 112px;
    height: 64px;
    margin-top: 44px;
}


.center-text.form-button{
    background-image: url(img/contact_butto2.png);
    background-repeat: no-repeat;
    background-size: 260px auto;
    margin-left: 112px;
    height: 64px;
  }


h2.dot {
    font-size: 25px;
    border-bottom: 4px dashed #FFB2B4;
    width: 90%;
    text-align: center;
    margin: 50px auto 50px auto;
    padding-bottom: 7px;
    max-width: 1000px;
    
}
.center-text {
        text-align: center;
  
}






.text-relaxed-box.text70.center-text {
        text-align: center;
}
.margin-botton-60 {
        margin-bottom: 60px;
}

h2.medium-text {
        font-family: zen-old-mincho, sans-serif;
        font-weight: 700;
        font-style: normal;
        font-size: 25px;
        color: #02113C !important;
        padding-top: 2px;
        margin-top: -12px;
}
.text-bald {
        font-weight: bolder;
}
.small-text {
        font-size: 20px;
}



/*見出しに横線　いらない場合は削除　*/
.head-border {
        display: flex;
        align-items: center;
        padding-left: 50px;
        padding-right: 50px;
}
.head-border:before, .head-border:after {
        content: "";
        height: 1px;
        flex-grow: 1;
        background-color: #666;
}
.head-border:before {
        margin-right: 1rem;
}
.head-border:after {
        margin-left: 1rem;
}






/*==================================================
/*記事ページ*/
/*コンタクトフォーム*/
/* 全幅指定 */
/*各フォームへのリンクボタン
===================================*/

.form-link {
        display: block;
        background-image: url("img/form-background.png");
        background-repeat: no-repeat;
        width: 500px;
        height: 60px;
        margin: 21px auto 52px;
        background-color: hsla(359, 66%, 87%, 1.00);
        background-size: 500px 61px;
        background-position: 0% 42%;
        line-height: 62px;
        text-indent: 25px;
}
.form-link:hover {
        opacity: .6;
}
/************************************
** お問い合わせフォームの入力
************************************/
#cf-tbl {
        width: 800px;
        margin: 0 auto;
}
#cf-tbl table {
        width: 100%;
        border-collapse: collapse;
        border: solid #CCC;
        border-width: 1px;
        color: #444;
}
#cf-tbl table tr th, #cf-tbl table tr td {
        padding: 0.5em;
        text-align: left;
        /*vertical-align: top;*/
        border: solid #CCC;
        border-width: 1px;
        vertical-align: middle;
        background-color:
                rgba(232, 232, 232, 1.00)
}
#cf-tbl table tr th {
        width: 35%;
        background: #FFFFFF;
        text-align: center;
}
@media screen and (max-width:768px) {
        #cf-tbl {
                width: 100%;
        }
        #cf-tbl table, #cf-tbl table tbody, #cf-tbl table tr, #cf-tbl table tr th, #cf-tbl table tr td {
                display: block;
        }
        #cf-tbl table {
                width: 100%;
                border-width: 0 0 1px 0;
        }
        #cf-tbl table tr th, #cf-tbl table tr td {
                width: 100%;
                padding: 3% 5%;
        }
        #cf-tbl table tr td {
                border-width: 0px 1px 0px 1px;
        }
}
/*「必須」文字デザイン*/
.required {
        font-size: .8em;
        padding: 5px 12px;
        background: #F57500;
        color: #fff;
        border-radius: 13px;
        margin-right: 5px;
        margin-left: 10px;
}
/*「任意」文字デザイン*/
.optional {
        font-size: .8em;
        padding: 5px;
        background: #000080;
        color: #fff;
        border-radius: 3px;
        margin-right: 5px;
}
/* 入力項目を見やすく */
input.wpcf7-form-control.wpcf7-text, textarea.wpcf7-form-control.wpcf7-textarea {
        width: 100%;
        padding: 8px 15px;
        margin-right: 10px;
        margin-top: 10px;
        border: 1px solid #d0d5d8;
        border-radius: 3px;
        background-color: #FFFFFF;
}
textarea.wpcf7-form-control.wpcf7-textarea {
        height: 200px;
        background-color: rgba(255, 255, 255, 1.00)
}
/* 「送信する」ボタン */
input.wpcf7-submit {
        display: block;
        padding: 15px;
        width: 272px;
        background-color: hsla(200, 98%, 43%, 1.00) !important;
        font-size: 53px;
        font-weight: 700;
        border-radius: 2px;
        margin: 0px auto;
}
.wpcf7-list-item input {
        width: 20px;
        height: 20px;
        position: relative;
        top: 3px;
        margin-right: 9px;
}
.soushin-check {
        margin: 0 auto;
        width: 100%;
        text-align: center;
}
input.wpcf7-submit:hover {
        box-shadow: 0 15px 30px -5px rgba(0, 0, 0, .15), 0 0 5px rgba(0, 0, 0, .1);
        transform: translateY(-4px);
        opacity: 0.7;
}
/* エラーメッセージを見やすく */
span.wpcf7-not-valid-tip, .wpcf7-response-output.wpcf7-validation-errors {
        color: red;
        font-weight: 600;
}
/*/コンタクトフォーム*/
input[type="submit"] {
  background: #C84772;
  border: 2px solid #ffffff;
  width: 50%;
  color: #ffffff;
  text-align: center;
  font-size: 1.5rem;
  line-height: 1.3;
  letter-spacing: .5em;
  text-indent: .5em;
  font-weight: bold;
  padding: 1rem 0 1.4rem;
  margin-top: 14px;
  cursor: pointer;
  border-radius: .3rem;
  transition: all .3s;
  margin-bottom: 15px;
}
/* ボタンにホバーした時 */
input[type="submit"]:hover {
        color: #C84772;
        background-color: #ffffff;
        border-color: #C84772;
}
/* ローダー */
.wpcf7 .ajax-loader {
        display: block;
        margin: 0 auto;
}
/* モバイル版 フォーム*/
@media screen and (max-width: 480px) {
        .contact_item {
                margin-bottom: 1.6rem;
        }
        .label {
                font-size: 1.5rem;
                margin-bottom: .4rem;
        }
        .label_tag {
                font-size: 1.1rem;
        }
        input[type="text"], input[type="email"] {
                padding: .4rem;
                font-size: 1.5rem;
        }
        textarea {
                padding: .4rem;
                font-size: 1.5rem;
        }
        input[type="submit"] {
                font-size: 1.5rem;
        }
}


.about {
        width: 80%;
        margin: 0 auto;
        padding-bottom: 22px;
}
.about .h-blue {
        border-left: 6px solid #0293DA;
        height: 30px;
        padding: 9px 9px 32px 22px;
        background-color: #F5F5F5;
        width: 150px;
        display: inline-block;
        margin-right: 35px;
}
.about .h-blue-en {
        border-left: 6px solid #0293DA;
        height: 30px;
        padding: 9px 9px 32px 22px;
        background-color: #F5F5F5;
        width: 250px;
        display: inline-block;
        margin-right: 35px;
}
.about span.h-en {
        margin-top: 22px;
        display: block;
        margin-left: 20px;
        margin-bottom: 6px;
}
h3.hist {
        margin-bottom: 4px;
}






/*==================================================
サイドバーの幅など
===================================*/

#secondary {
        max-width: 400px;
        width: 30%;
        background-color: #FFFFFF;
        padding-left: 11px;
        padding-right: 11px;
        padding-top: 10px;
        padding-bottom: 10px;
}
#secondary li {
        margin-left: -30px;
}


/*==================================================
サイト検索
===================================*/
.wp-block-search__button {
        width: 80px;
}
.widget.widget_block.widget_search {
        padding: 10px;
}
.widget-area h2 {
        padding-left: 109px;
        margin-left: -218px;
        margin-top: 150px;
        display: none;
}


/*==================================================
配置
===================================*/
/*横並び制御*/
.flexbox {
        display: flex;
}
.flexbox-wrap {
        display: flex;
        flex-wrap: wrap;
}
.clear {
        clear: both;
}


/*==================================================
footer
===================================*/
footer {
    width: 100%;
    height: auto;
    position: relative;
    /* [disabled]background-color: #FEFEFE; */
    margin-top: 0px;
    background-color: rgba(225,213,207,1.00);
    border-top: 6px solid hsla(212,44%,33%,1.00);
}
footer img {}


.footer-menu ul li {
        list-style: none; 
     }
.footer-menu ul li{
    position: relative;
    width: 100%;
    margin: 0 auto;
    text-align: right;
    padding-left: 0px;
    padding-right: 0px;
}
 
.footer-menu ul {
    margin-left: 0px;
    margin-right: 0px;
}
 

.center  {

    width: 300px;
    margin: 0 auto;
}





/*==================================================
ナビ固定
===================================*/
.fixed {
        position: fixed;
        width: 100%;
        top: 0;
        z-index: 80;
}
/* トップへ戻るボタン */
/* 上に戻るボタン */
.pagetop {
        color: #fff;
        background-color: rgba(0, 0, 0, 0.3);
        text-decoration: none;
        display: none;
        position: fixed;
        bottom: 1rem;
        right: 1rem;
        font-size: 1.5rem;
        width: 3.3rem;
        height: 3.3rem;
        line-height: 3.3rem;
        border-radius: 3.3rem;
        text-align: center;
        cursor: pointer;
        z-index: 10000;
}
.pagetop:hover {
        color: #fff !important;
        background-color: #ed702b;
        text-decoration: none;
}
/*---------------*/
/*==================================================
スライダーのためのcss
===================================*/
.slider {
    position: relative;
    z-index: -100;
    /*↑z-indexの値をh1のz-indexの値よりも小さくして背景に回す*/
    height: 100vh;
    /* [disabled]margin-top: -49px; */
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 0;
    overflow: hidden;
   
}

/* 背景画像設定 */
.slider2 {
    position: relative;
    z-index: -3;
    /*↑z-indexの値をh1のz-indexの値よりも小さくして背景に回す*/
    height: 158px;
    ; /*スライダー全体の縦幅を画面の高さいっぱい（100vh）にする*/
    overflow: hidden;
    /* [disabled]margin-bottom: -715px; */
    padding-bottom: 0px;
}
/* 背景画像設定 */
.slider-item01 {
    background-image: url(img/1.jpg);
   
   
}
.slider-item02 {
        background: url(img/2.jpg);
}
.slider-item03 {
        background: url(img/3.jpg);
}
.slider-item {
    width: 100%; /*各スライダー全体の横幅を画面の高さいっぱい（100%）にする*/
    height: 100vh;
    /*各スライダー全体の縦幅を画面の高さいっぱい（100vh）にする*/
    
    background-repeat: no-repeat; /*背景画像をリピートしない*/
    background-position: center; /*背景画像が.slider-item全体を覆い表示*/
    background-size: cover;
}






/* 左半分の影領域 */
.top-box {
    height: 100vh;
    /*background-color: rgba(0, 0, 0, 0.20);*/
    z-index: -1;
    position: absolute;
    width: 50%;
    padding-left: 39px;
    top: 0px;
     color: #FFFFFF;
}




.box-center{
    display: flex;
    justify-content: center;
    align-items: center;
        height: 100vh;
    

}


/* 左半分の影領域　文字*/
.top-box-text {
    text-align: left;
    width: 100%;
    margin-top: 239px;    
  

   
 
}

/*テキスト装飾 スライドトップ文字*/
h2.zen-old-minch {
    font-family: zen-old-mincho, sans-serif;
    font-size: min(5vw, 90px);
    line-height:min(6vw, 100px);
}

.top-box-text p {
    
    font-size: min(1.5vw,30px);
 line-height: min(3vw, 35px);
}






/*トップページパーツ*/
.mark{
    position: absolute;
    width: 20%;
min-width: 200px;
    max-width:400px;
    right: 20px;
    bottom: 67px;
    z-index: 11;
    display: none;
}


.irasuto{
    position: absolute;
    height: 142px;
    background-image: url("img/irasuto1.png");
    width: 100%;
    z-index: 0;
    background-size: 866px auto;
    background-repeat: repeat-x;
    background-position: 0% 142%;
    top: auto;
    bottom: 87px;
    display: none;
}


/*個別pageヘッダ用*/

.all-width .page-header{
    display: block;
    height: 175px;
    position: relative;
    padding-top: 37px;
    margin-bottom: -11px;
    z-index: -5;
}


.all-width .page-header h1{
    z-index: 0;
    padding-top: 14px;
    margin-top: 20px;
    text-shadow: 1px 1px 4px #000000;
}

.page-header .center-text{
        text-align: center;
    color: white;
}




.all-width.relative .irasuto{
    background-image: url("img/irasuto1.png");
    width: 100%;
    z-index: -1;
    background-size: 866px auto;
    background-repeat: repeat-x;
    background-position: 0% 54%;
    padding-top: 51px;
    height: 265px;
    padding-bottom: 14px;
    margin-bottom: 45px;
    top: 3px;
}


.irasuto2{
    position: absolute;
    height: 141px;
    background-image: url("img/background-machi.png");
    width: 100%;
    z-index: 10;
    background-size: 866px auto;
    background-repeat: repeat-x;
    background-position: 0% 65%;
    bottom: 91px;
}



/*矢印の設定*/
.slick-prev, .slick-next {
        position: absolute;
        z-index: 3;
        top: 42%;
        cursor: pointer; /*マウスカーソルを指マークに*/
        outline: none; /*クリックをしたら出てくる枠線を消す*/
        border-top: 2px solid #fff; /*矢印の色*/
        border-right: 2px solid #fff; /*矢印の色*/
        height: 25px;
        width: 25px;
}
.slick-prev { /*戻る矢印の位置と形状*/
        left: 2.5%;
        transform: rotate(-135deg);
}
.slick-next { /*次へ矢印の位置と形状*/
        right: 2.5%;
        transform: rotate(45deg);
}
/*ドットナビゲーションの設定*/
.slick-dots {
        position: relative;
        z-index: 3;
        text-align: center;
        margin: -94px 0 0; /*ドットの位置*/
}
.slick-dots li {
        display: inline-block;
        margin: 0 5px;
}
.slick-dots button {
        color: transparent;
        outline: none;
        width: 8px; /*ドットボタンのサイズ*/
        height: 8px; /*ドットボタンのサイズ*/
        display: block;
        border-radius: 50%;
        background: #fff; /*ドットボタンの色*/
}
.slick-dots .slick-active button {
        background: #ffffff; /*ドットボタンの現在地表示の色*/
}


/*==================================================
アニメーションCSS
===================================*/
/*拡大*/
.slide-animation {
        animation: fadezoom 8s 0s forwards;
}
@keyframes fadezoom {
        0% {
                transform: scale(1);
        }
        100% {
                transform: scale(1.05);
        }
}
/*アニメーション要素 横から出現*/
.anim-box.slidein.is-animated {
        animation: slideIn 1s cubic-bezier(0.25, 1, 0.5, 1) 1 forwards;
}
@keyframes slideIn {
        0% {
                transform: translateX(180px);
                opacity: 0;
        }
        100% {
                transform: translateX(0);
        }
        40%, 100% {
                opacity: 1;
        }
}
/*アニメーション要素 フェードアップ*/
.anim-box.fadeup.is-animated {
        animation: fadeup 1s cubic-bezier(0.33, 1, 0.68, 1) 1 forwards;
}
@keyframes fadeup {
        0% {
                transform: translateY(30px);
                opacity: 0;
        }
        80% {
                opacity: 1;
        }
        100% {
                opacity: 1;
                transform: translateY(0);
        }
}
/*囲み枠 シンプル黒枠 記事一覧用*/
.news-titlebox{
    width: 100%;
    max-width: 1000px;
    position: relative;
    margin: 36px auto 0;
    top: 27px;
}

.box-black {
    font-weight: bold;
    border: 1px solid #DFDFDF;
    /* [disabled]top: 22px; */
    bottom: 0px;
    width: 30%!important;
    height: auto;
    margin-bottom: 38px;
    margin-right: 3%;
    min-width: 200px;
    position: relative;
    background-color: #FFFFFF;
    padding-bottom: 0px;
}
.icatch {
        width: 100%;
        height: 200px;
        overflow: hidden;
       background-color:rgba(233,228,228,1.00);
        background-image: url("img/.png");
        background-position: 52% 42%;
        background-repeat: no-repeat;
        background-size: 205px auto;
}
.icatch img {
        height: 200px;
        object-fit: cover;
}
.box-black h2 {
    margin-top: -6px;
    margin-left: -4px;
    margin-bottom: -4px;
    font-size: 17px;
    padding-bottom: 3px;
}
.relaxed-box .box-black a {
        text-decoration: none;
        color: rgba(181, 181, 181, 1.00)
}

/*ニュース一覧*/
.all-title {
        margin-bottom: 3px;
}
.day {
    display: block;
    /* [disabled]height: 10px; */
    color: rgba(181, 181, 181, 1.00);
    font-size: 10px;
    right: 0px;
    top: 0px;
    margin-left: 11px;
    margin-top: 4px;
}
.box-black.notdecoration .flexbox {
    display: flex;
    bottom: 0pt;
  
}


.cat-box {
    margin: 2px 4px 7px 0px;
 
    position: absolute;
    right: 0px;
    top: -32px;    
}

/*
シングルページ*/
.cat-box2 {
    margin-bottom: 7px;
    width: 100%;
    text-align: right;
    margin-top: 2px;
    margin-right: 4px; 
}

.cat-box2 a {
    /* [disabled]height: 10px; */
    background-color: rgba(192, 192, 192, 1.00);
    padding: 5px 10px 6px;
    color: #FFFFFF;
    border-radius: 10px;
    font-size: 10px;
    line-height: 20px;
    text-decoration: none;
    margin-top: 35px;  
    
}


.cat-box a {
    /* [disabled]height: 10px; */
    background-color: rgba(192, 192, 192, 1.00);
    padding: 5px 10px 6px;
    color: #FFFFFF;
    border-radius: 10px;
    font-size: 10px;
    line-height: 20px;
    text-decoration: none;
    margin-top: 35px;  
    
}
.cat-box a:visited {
        color: #FFFFFF;
}
.cat-box2 a:visited {
        color: #FFFFFF;
        text-decoration: none;
}

.article-date{
    position: relative;
    top: -27px;
    margin-top: 45px;
    left: 17px;
}



/*文字記事一覧*/
.relaxed-box.news-set ul {
        list-style-type: none !important;
        margin: 0 auto;
        max-width: 800px;
        padding-left: 0px;
}
.relaxed-box.news-set li {
        padding: 8px 0;
        border-top: 1px solid #444;
}
.relaxed-box.news-set li:first-child {
        border: none;
}



.pagenavi {
        width: 80%;
        margin: 0 auto;
        padding-bottom: 50px;
        text-align: center;
}


/*==================================================
配置　横並び等　box-sub
===================================*/
/*横並び*/
.box-sub {
        width: 50%;
        min-width: 300px;
        margin-top: 50px;
        margin-bottom: 50px;
}

.box-sub img {
        display: block;
        width: 100%;
        height: auto;
}
.box-sub.img50 img {
        display: block;
        width: 50%;
        height: auto;
        padding-top: 30px;
        min-width: 300px;
}


.box-sub h2 {
        margin-top: 10px;
}
/*真ん中に一つ、あまり使わない*/
.box-main {
        width: 80%;
        margin: 0 auto;
        padding-bottom: 10px;
        padding-top: 10px;
        max-width: 1100px;
}



.box-main img {}
/*シングルページの画像サイズ制御*/
.post-thumbnail {
        margin: 0 auto;
        width: 80%;
        height: auto;
        padding-top: 0px;
        display: block;
}




footer .box-sub {
        width: 50%;
        min-width: 300px;
        margin-top: 0px;
        margin-bottom: 0px;

}
footer .box-sub-l {
        width: 100%;
        min-width: 300px;
        margin-top: 0px;
        margin-bottom: 0px;
}
footer .box-sub.img60 img {
        display: block;
        width: 60%;
        height: auto;
        padding-top: 0px;
    margin: 0 auto;
}

footer .box-sub.img100  {
    display: block;
    width: 100%!important;
    height: auto;
    padding-top: 0px;
}

footer .box-sub.map-img img  {
    display: block;
    width: 100%!important;
    height: auto;
    padding-top: 0px;
}





footer .box-sub h2 {
    text-align: center;
    color: #707070;
    font-size: 28px;
    margin-top: 33px;
}
footer .box-sub-l h2 {
        text-align: right;
        color: #707070;
        font-size: 18px;
}
footer .box-sub p {
           text-align: center;
        color: #707070;
        font-size: 14px;
}
footer .box-sub-l p {
        
        color: #707070;
        font-size: 14px;
}
.box-sub.img70 img {
        display: block;
        width: 70%;
        height: auto;
}
.box-sub.img90 img {
        display: block;
        width: 90%;
        height: auto;
}
.img-left img {
        float: right;
}
.box-sub.margin-top0 {
        margin-top: 0px;
}
.box-sub.margin-top0 h2 {
        margin-top: 0px;
}
.flexbox .text-margin {
        margin-top: 102px;
        padding-top: 43px;
        margin-left: 10%;
        margin-right: 10%;
}
.flexbox .text-margin2 {
        margin-top: 102px;
        padding-top: 43px;
        margin-left: 0%;
        margin-right: 0%;
}



/*==================================================
イメージサイズ調整
===================================*/
.relaxed-box.img50 img {
        display: block;
        margin: 0 auto;
        min-width: 300px;
        width: 50%;
}
.relaxed-box.img40 img {
        display: block;
        margin: 0 auto;
        min-width: 300px;
        width: 40%;
}
.relaxed-box.img40n {
        display: block;
        margin: 0 auto;
        width: 400px;
}
.relaxed-box.img50n img {
        display: block;
        margin: 0;
        width: 50%;
}
.relaxed-box.img60 img {
        display: block;
        margin: 0 auto;
        width: 60%;
}
.relaxed-box.img70 img {
        display: block;
        margin: 0 auto;
        width: 70%;
        max-width: 800px;
}
.relaxed-box.img90 img {
        display: block;
        margin: 0 auto;
        width: 90%;
}
.relaxed-box.img100 img {
        display: block;
        margin: 0 auto;
        width: 100%;
}
.text-relaxed-box.text0 {
        display: block;
        margin: 0 auto;
        min-width: 300px;
        width: 70%;
        padding-top: 50px;
}
.background-box {
        background-image: url(img/AdobeStock_508747183.png);
        background-size: 96% auto;
}

/*==================================================
背景付きボックス
===================================*/
.background-box-cad {
    background-image: url(img/circle-motion1-gif.gif);
    background-size: 100% auto;
    background-repeat: repeat-x;
    background-position: 0% 0%;
}
.background-box-heart  {
    background-image: url("img/Heart.png");
    background-position: 0% 49%;
    background-size: cover;
    
}



.background-box-blue-square-gif {
        background-image: url(img/blue-square-gif.gif);
       background-position: 0% 49%;
    background-size: cover;
}

.background-box-recruit-form {
        background-image: url(img/recruit-job-back.png);
        background-position: 48% 0%;
        background-size: cover;
        display: block;
        height: 200px;
        width: 100%;
}

.night-background {
        background-image: url(img/night-background.png);
        background-size: cover;
        background-position: -25% 0%;
}
/*コンタクトフォームへのリンクボタン　QOLP追加*/

.main-navigation .button-contact {
    position: absolute;
    top: 37px;
    right: 12px;
}


.button13 ul{
  
}


.button13{
    
}


.button-contact .button13 a {
    width: 202px;
    background-color: hsla(0,0%,100%,1.00);
    color: #000000;
    display: block;
    -webkit-box-shadow: 1px 1px 3px hsla(0,0%,0%,0.38);
    box-shadow: 1px 1px 3px hsla(0,0%,0%,0.38);
    padding: 39px 20px 36px 52px;
    border-radius: 19px;
    background-image: url("img/Icon feather-mail-b.png");
    background-repeat: no-repeat;
    background-position: 21% 52%;
    background-size: 28px auto;
}

.button-contact .button13 a:visited{
   color: #000000;
  
}


.top-explanation{
    color: white;
    margin-left: 49px;
    margin-top: 1px;
    
    
}
.main-navigation p.site-description{
    color: white;
    margin-left: 49px;
    margin-top: 1px;
     display: none;
}




/*電話番号装飾*/

.tel-box-set{
    position: absolute;
    right: 253px;
    text-align: right;
    top: 37px;
    color: white;
}

.text-a{}

.tel-box-set .number{
    font-size: 35px;
    background-image: url("img/tel-white-mark.png");
    background-repeat: no-repeat;
    background-size: 38px auto;
    background-position: 4px 0%;
    padding-left: 51px;
    padding-top: 6px;
}

.text-time{
    font-weight: lighter;    
    
}

/*==================================================
マージン調整
===================================*/

.relaxed-box.margin-top100 {
        margin-top: 100px
}
.relaxed-box.padding-top100 {
        padding-top: 100px;
        padding-bottom: 100px;
}

.margin-top-100 {
        display: block;
        position: relative;
        top: 100px;
}

.margin-top-50 {
        display: block;
        position: relative;
        top: 50px;
}
.margin-left-100 {
        margin-left: 100px;
}
.margin-top-botton-50 {
        margin-top: 50px;
        margin-bottom: 50px;
}
.margin-top-botton-100 {
        margin-top: 100px;
        margin-bottom: 100px;
}


.margin-all-10 {
    margin: 10px;       
}


/*言語切り替え*/
.main-navigation {
        font-family: kozuka-gothic-pro, sans-serif;
        font-weight: 700;
        font-style: normal;
   
}
.main-navigation .bogo-language-switcher li + li {
        border-left: 0px solid #333;
}
.bogo-language-switcher ul {
        position: absolute;
        right: 20px;
        top: -15px;
        color: hsla(0, 0%, 0%, 0.00);
}
.bogo-language-switcher li a {
        margin-left: 20px;
        font-family: kozuka-gothic-pro, sans-serif;
        font-weight: 400;
        font-style: normal;
        color: #6C6C6C;
        background-repeat: no-repeat;
        background-size: 21px auto;
        padding: 4px 14px 3px 36px;
        background-image: url(img/world.png);
        border: 1px solid hsla(0, 0%, 22%, 1.00);
        border-radius: 18px;
        background-position: 14% 42%;
        margin-top: 22px;
}
.bogo-language-switcher li .current {
        color: #000000;
        font-family: kozuka-gothic-pro, sans-serif;
        font-weight: 700;
        font-style: normal;
        display: none;
}
.bogo-language-switcher {
        font-weight: 400;
}

/*QOLP追加要素NAV*/
.main-navigation a {
        color: white;
}
.main-navigation a:visited {
        color: white;
}
.main-navigation a:hover, .main-navigation a:focus, .main-navigation a:active {
        color: #FF8000;
}
.main-navigation a:focus {
        outline: thin dotted;
}
.main-navigation a:hover, .main-navigation a:active {
        outline: 0;
}







/*QOLP追加要素NAV*/
.main-navigation .menu-content a {
        color: #FFFFFF;
}
.main-navigation .menu-content a:visited {
        color: #FFFFFF;
}
.main-navigation .menu-content a:hover, .main-navigation a:focus, .main-navigation a:active {
        color: #FF8000;
}
.main-navigation .menu-content a:focus {
        outline: thin dotted;
}
.main-navigation.menu-content  a:hover, .main-navigation .menu-content a:active {
        outline: 0;
}
/*========================================*/




@media screen and (min-width: 700px) {
        .menu-toggle {
                display: none;
        }
    .pc-none{
        display: none;
    }
        .main-navigation ul {
                display: flex;
        }
}



/*========================================*/



@media screen and (max-width:1000px) {
        /* QOLP追加要素 画面サイズが1000px以下はここを読み込む */
    
      img.custom-logo {
  
}

 a.custom-logo-link {
     
  
 
    
}   
    
    
    
    
    
    
footer img.custom-logo {
   
   
}
    
    
    .irasuto{
    height: 142px;
    background-image: url("img/irasuto1.png");
    width: 100%;
    z-index: 0;
    background-size: 670px auto;
    background-repeat: repeat-x;
    background-position: 0% 142%;
    top: auto;
    bottom: 84px;
}
}

/*========================================*/



@media screen and (max-width:700px) {
        /* QOLP追加要素 画面サイズが700px以下はここを読み込む */
        /*QOLP追加要素*/
        /*QOLP追加要素*メニューの縦線消し*/
        .smart-none {
                display: none;
        }
    
    
    
    
        .main-navigation li + li {
                border-left: 0px solid #333;
        }
        /*QOLP追加要素*メニューの行間設定*/
        .main-navigation li {
                padding-top: 10px;
        }
        /*QOLP追加要素メニュー背景を不透明に*/
        .main-navigation {}
        /*QOLP追加要素メニューの幅を狭く*/
        .main-navigation {
                min-width: 300px;
                width: 100%;
         
        }
 

    .container2 {
    background-color: #FFFFFF;
    position: relative;
    z-index: 0;
    padding-top: 114px;
}
    
    
/*==================================================
メインナビゲーション
===================================*/
  
    
    
    
    .site-navigation {
   
     
    }
    
.main-navigation {
  height: 72px;     
    }

    
    
    
      /* QOLP追加ハンバーガーメニュー*/
        .hamburger-menu {
           
    }
        
        .menu-btn {
    position: fixed;
    top: 0px;
    right: 0px;
    display: flex;
    height: 70px;
    width: 60px;
    justify-content: center;
    align-items: center;
    z-index: 101;
    background-color: #BACFA1;
    margin-top: 0px;
        }
        .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;
        }
       
    
    /*メニュー内容*/
.menu-content {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10;
    padding-top: 128px;
    background-color: #9CC2A9;
}
    
    

.menu-content ul {
    z-index: 80;
    display: inline;
    width: 100%;
    margin-right: -45px;
    margin-top: 31px;
}
.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: 17px 15px 25px 35px;
  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: 28px;
}
 
    .menu-content {
    width: 100%;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 100%;/*leftの値を変更してメニューを画面外へ*/
    z-index: 10;
    background-color: #9CC2A9;
    transition: all 0.5s;/*アニメーション設定*/
}  
    
#menu-btn-check:checked ~ .menu-content {
        left: 0; /*メニューを画面内へ*/
} 
    
    
    
    
/* QOLP追加ハンバーガーメニュー
開いた時にXマークに変える説明
https://www.asobou.co.jp/blog/web/css-menu

*/
  
    /*テキスト装飾 スライドトップ文字*/
h2.zen-old-minch {
  
    font-size: max(9vw, 30px);
    line-height: max(11vw, 40px);
}

    
.top-box-text p {
    
    font-size: max(1.2vw,20px);
 line-height: max(3vw, 35px);
}
    
    
    
    
/*==================================================
　横固定ボタン
===================================*/   
    
    
    .side-link{
        display: none;
    }
    
    
    
/*---------------*/
/*==================================================
スライダーのためのcss
===================================*/
.slider {
    position: relative;
    z-index: -10;
    /*↑z-indexの値をh1のz-indexの値よりも小さくして背景に回す*/
    height: 100vh;
    ;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 0;
    top: 0px;
    overflow: hidden;   
}
    
    .slider-item {
    width: 100%; /*各スライダー全体の横幅を画面の高さいっぱい（100%）にする*/
    height: 100vh;
    /*各スライダー全体の縦幅を画面の高さいっぱい（100vh）にする*/
    
    background-repeat: no-repeat; /*背景画像をリピートしない*/
    background-position: center; /*背景画像が.slider-item全体を覆い表示*/
    background-size: cover;
}

    
/*スライド文字部分*/
.top-box {
  width: 100%;
  background-color: hsla(0,0%,24%,0.28);
  padding-left: 12px;
  padding-right: 13px;
}
    
    .top-right-box{
    width: 100%;
    position: relative;
    height: auto;
    margin-top: 1px;
    
}
    
/* 左半分の影領域　文字*/
.top-box-text {
  margin-top: 123px;


}
  
.top-box-text p{
font-size:16px;


}  
  
.button-contact {
        display: none;
}
/*  サイドバーの制御*/
#secondary {
        display: none;
}
/*ボックスのスマホでの折り返しを削除*/
.flexbox-wrap {
        display: block;
}

    
.relaxed-box {
        width: 100%;
        padding-bottom: 50px;
        margin: 0 auto;
}
.box-main {
        width: 100%;
        margin: 0 auto;
}
    
    
    
    
    
    /*==================================================
カレンダー
===================================*/


.calendar-box{
    background-color: #FFFFFF;
    position: relative;
    padding: 39px 11px 6px;
    border-radius: 0px;
    width: 100%;
    bottom: 0px;
    top: 0px;
    margin-top: -290px;
}

.calendar-button{
    background-color: rgba(47,82,120,0.48);
    text-align: center;
    padding: 9px 18px;
    border-radius: 8px;
    display: inline-block;
    margin-bottom: 25px;
    color: white;
}

   table.calendar{
      border-collapse:  collapse; /* セルの線を重ねる */
        width:100%;
        text-align: center;
       background-color: white;
       font-weight:bold;
       
    }
    
    
 tr.top {
    background-color: hsla(223,49%,64%,1.00);
    border-bottom: 1px solid hsla(0,0%,0%,1.00)
        
    }
    
tr.set{
 
  border-bottom: 1px solid hsla(0,0%,0%,1.00)
    }
    
tr.set2{

 border-bottom: 1px solid hsla(0,0%,0%,1.00)
    }
    
.calendar th{
        padding: 5px;
    }
    
    
    
    
    .top-explanation{
    font-size: 14px;
    margin-left: 13px;
}

    
    
    
 /*==================================================
オープンカレッジ
===================================*/

.opencollege-box{
    border-radius: 0px;
    bottom: 0px;
    right: auto;
    width: 100%;
    height: 353px;
    background-size: cover;
    padding: 19px;
    min-width: auto;
    position: relative;    
}

    
 .title-op
{
    font-size: 34px;
    line-height: 34px;
    font-weight: bold;
}


.op-p{
   font-size: 18px; 
}

.op-day{
     font-size: 20px; 
 font-weight:400;
}   
    
    
    
    
    
/*スマホ用調整*/
.relaxed-box.img70 img {
        min-width: 260px;
        width: 100%;
        margin: 0 auto;
}
.flexbox {
        display: block;
}
.box-sub {
        width: 100%;
        min-width: 250px;
        margin-top: 50px;
        margin-bottom: 50px;
        margin: 0 auto;
}
.text-relaxed-box.text70 {
        width: 100%;
}
/*囲み枠 シンプル黒枠 一覧用*/
.box-black {
        width: 100%;
        margin: 10 auto;
}
.relaxed-box.img40n {
        display: block;
        margin: 0 auto;
        width: 95%;
}
.flexbox .text-margin {
        margin-left: auto;
        margin-right: auto;
}


ul#primary-menu.menu li {
        width: 50%;
}

.bogo-language-switcher {
        position: absolute;
        z-index: 20;
        right: 0px;
        margin-top: 52px;
        display: inline;
}
footer .box-sub-l {
        min-width: 200px;
        font-size: 14px;
}
footer .box-sub {
        min-width: 200px;
        font-size: 14px;
        width: 100%
}
.site-info {
        font-size: 10px;
        ;
}
.relaxed-box.img50 img {
        display: block;
        margin: 0 auto;
        min-width: 25px;
        width: 100%;
}
/*ロゴ画像*/
img.custom-logo {
width: 100%;
}
    
 a.custom-logo-link {
  margin-top: 14px;
  margin-left: 5px;
  width: auto;
}       
    
   a.custom-logo-link img {
  width: auto;
  height: 40px!important;
   
}    
    
    .tel-button{
    
    }
    
    
      
.tel-button a{
  text-align: left;
  font-size: 30px;
  margin-top: 79px;
  border-radius: 0px;
  padding-top: 24px;
  padding-bottom: 37px;
  background-image: url(img/tel.png);
  background-repeat: no-repeat;
  background-position: 46px 9px;
  padding-left: 86px;
  bottom: 184px!important;
  margin-bottom: 66px;
  background-size: 38px auto;
  margin-left: -10px;
    }
    
    
.center-text.tel{
    background-image: url(img/tel-number.png);
    background-repeat: no-repeat;
    height: 64px;
    width: 100%;
    margin: -19px auto 36px;
    background-size: contain;
    background-position: center 0%;
}


.center-text.form-button{
    background-image: url(img/contact_butto2.png);
    background-repeat: no-repeat;
    margin-left: auto;
    height: 64px;
    width: 100%;
    margin: -42px auto 0;
    background-size: contain;
    background-position: center 0%;
  }    
    
    
    
/*右上position*/
.top-right-position {
        right: 0px;
}
/*各フォームへのリンクボタン*/
.form-link {
        display: block;
        background-image: url("img/form-background.png");
        background-repeat: no-repeat;
        width: 90%;
        height: 60px;
        margin: 21px auto 52px;
        background-color: hsla(359, 66%, 87%, 1.00);
        background-size: 500px 61px;
        background-position: 0% 42%;
        line-height: 62px;
        text-indent: 25px;
        overflow: hidden;
        font-size: 2.8vw;
}
.text-box {
        width: 80%;
}
/*フォームの選択リストの幅*/
.wpcf7-select {
        width: 100%;
}
.wpcf7-list-item input {
        width: 20px;
        height: 20px;
        position: relative;
        top: 3px;
}
    /*個別pageヘッダ用*/

.all-width .page-header{
    display: block;
    height: 175px;
    position: relative;
    padding-top: 27px;
    margin-bottom: -36px;
    z-index: -5;
    top: -2px;
}

    
    /*トップページパーツ*/
.mark{
    position: absolute;
    width: 20%;
    min-width: 200px;
    max-width: 400px;
    right: -20px;
    bottom: 24px;
    z-index: 11;
}

}
