/* リセットcss */
html, body, div, span, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,b, i,dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video,main { margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; background:transparent;}
main{box-shadow:0 0 0;}
*{box-sizing:border-box;}
a{text-decoration:none;color:#000000;}
li{list-style:none;}
body{background:#FFFFFF;width:100%;height:auto;font-family: "myfont",'Noto Serif JP', serif;}
.Michroma{font-family: "Michroma", sans-serif;}
.rel{position:relative;}
.ab{position:absolute;}
.max{max-width:1300px;margin:0 auto;overflow:hidden;}
.bold{font-weight:bold;}.fl{display:flex;}
.ma-le2 {margin-left: 2%;}
.mi-he{min-height:60vh;}

p,summary,a,th,td,li{font-size:15px;letter-spacing:.1rem;font-weight:normal;line-height:1.5rem;}
h1{font-size:24px;letter-spacing:.1rem;font-weight:normal;}
h2{font-size:22px;letter-spacing:.1rem;font-weight:normal;}
h3{font-size:18px;letter-spacing:.1rem;font-weight:normal;}
h4,h5,h6{font-size:15px;letter-spacing:.1rem;font-weight:normal;}

@media screen and (max-width:950px){
	p,summary,a,th,td,li{font-size:14px;}
}
@media screen and (max-width:700px){
	p,summary,a,th,td,li{font-size:13px;}
}

/* ロードフェードイン */
.js-box{display:none;}
/* ロードフェードイン(下から) */
.js-box-under{opacity:0;visibility:hidden;transform:translateY(50px);transition:opacity 3s,visibility 3s, transform 3s;}
.js-box-under.load{opacity:1;visibility:visible;transform:translateY(0px);}
/* フェードイン */
.block{opacity:0;transition:all 2s;}
.fadeIn{opacity:1;}

/*------ ホバーアンダーライン ------*/
.a-hov{position:relative;}
.a-hov::after{position:absolute;left:0;content:'';width:100%;height:.4px;background:#3e3e3e;bottom:-10px;transform:scale(0, 1);transform-origin:left top;transition:transform 0.4s;}
.a-hov:hover::after{transform:scale(1, 1);}

.top-kaso{display:none;}
@media screen and (max-width:950px){
  .top-kaso{display:block;}
}

/*-------------------- header ----------------------*/
.header-top{width:100%;height:80px;box-shadow:2px 2px 2px rgba(0, 0, 0, 0.25);vertical-align:middle;display:flex;}
.top-co-logo{width:140px;margin:12px 40% 0 30px;}
.header-logo{width:140px;}
.header-top .top-sns{width:30px;}
.header-top .top-sns:hover{opacity:.7;}

.header-top .header-menu{margin:25px 0 0 40%;width:340px;justify-content:space-between;height:16px;}
.header-top .header-menu h2{font-size:16px;}
.header-top .header-sns{margin:25px 0 0 40px;width:140px;justify-content:space-between;height:16px;}

@media screen and (max-width:1300px){
  .header-top .header-menu{margin:25px 0 0 36%;}
}
@media screen and (max-width:1200px){
  .header-top .header-menu{margin:25px 0 0 32%;width:320px;}
  .header-top .header-menu h2{font-size:15px;}
  .header-top .header-logo{width:120px;}
  .header-top .top-sns{width:28px;}
}
@media screen and (max-width:1100px){
  .header-top .header-menu{margin:25px 0 0 29%;width:310px;}
  .header-top .header-sns{width:120px;}
}
@media screen and (max-width:950px){
  .header-top{display:none;}
}


/*-------------------- header-top ----------------------*/
.kaso-top{width:100%;height:120px;overflow:hidden;}
.kaso-top img{width:100%;z-index:-1;}
.kaso-top h1{bottom:15%;right:3%;color:#fff;font-size:40px;z-index:2;}
.kaso-top h2{bottom:0;right:2%;color:rgba(89, 89, 89, .15);font-size:90px;z-index:1;}
.kaso-top span{width:100%;height:220px;background-color:rgba(195, 26, 26, 0.6);z-index:0;top:0;left:0;}
.top-page{z-index:1;bottom:6%;left:3.5%;flex-wrap:wrap;}
.top-page-home{color:#fff;font-weight:bold;}
.top-page-home-bo{color:#fff;font-weight:bold;margin:1.6px 6px 0 6px;}
.top-page-home:hover{opacity:.7;}
.page-now{color:#BCBCBC;font-weight:bold;margin:1.6px 0 0 6px;}

@media screen and (max-width:1300px){
  .kaso-top h1{font-size:35px;}
}
@media screen and (max-width:1200px){
  .kaso-top h1{font-size:35px;}
}
@media screen and (max-width:950px){
  .kaso-top{height:160px;}
  .kaso-top h1{font-size:30px;}
  .kaso-top h2{font-size:85px;}
}
@media screen and (max-width:700px){
  .kaso-top h1{font-size:25px;bottom:30%;}
  .kaso-top h2{font-size:60px;bottom:15%;}
}
@media screen and (max-width:500px){
  .kaso-top h1{font-size:20px;bottom:23%;}
  .kaso-top h2{font-size:50px;bottom:12%;}
}
@media screen and (max-width:500px){
  .kaso-top h1{bottom:32%;}
  .kaso-top h2{font-size:45px;bottom:22%;letter-spacing:0;}
  .top-page-home{font-size:9px;}
  .top-page-home-bo{margin:1.6px 1px 0 1px;}
  .page-now{font-size:11px;margin:2.6px 6px 0 6px;}
}

/*--------------------------------------- bk-img ---------------------------------------*/
.bk-img{background-image:url(./img/news-back.png);background-position:center;background-repeat:no-repeat;background-size:cover;}
.f20c-ta {
  border-collapse: collapse;
  border: solid 1px #333;
  width: 100%;
}
.f20c-ta tr,
.f20c-ta td{
  border: solid 1px #777;
}

.f20c-ta td {
  padding:5px 15px;
	vertical-align:middle;
}

.k20c-vtec-main-box-top {
  margin: 3% auto;
  width: 100%;
}

/*-------------------- top ----------------------*/
/*------ アイコン関係 ------*/
.top{width:100%;height:100vh;overflow:hidden;}
.logo{top:24px;left:36px;display:none;z-index:9;}
.logo img{width:200px;}
.top-sns{width:30px;}
.top-sns:hover{opacity:.7;}
.yo{top:160px;left:36px;}
.fa{top:220px;left:36px;}
.in{top:280px;left:36px;}
.scrolldown1{position:absolute;left:4%;bottom:150px;height:50px;z-index:5;transform:translate(-50%,-50%);}
.scrolldown1::before{content:"";position:absolute;left:0%;top:0%;width:.5px;background:#8d8d8d;animation:pathmove 2s ease-in-out infinite;opacity:0;}

.archive-main-box{width:100%;margin:0 auto;}
@keyframes pathmove{
  0%{height:0;top:0;opacity:0;}
  20%{height:130px;opacity:1;}
  100%{height:0;top:190px;opacity:0;}
}
@media screen and (max-width:1200px){
  .logo img{width:160px;}
}
@media screen and (max-width:950px){
  .logo{top:10px;left:25px;display:block;}
  .logo img{width:130px;}
  .yo{left:30px;}
  .fa{left:30px;}
  .in{left:30px;}
}
@media screen and (max-width:800px){
  .logo img{width:110px;}
}
@media screen and (max-width:700px){
  .logo{left:15px;}
  .yo{top:130px;left:15px;}
  .fa{top:190px;left:15px;}
  .in{top:250px;left:15px;}
}
@media screen and (max-width:500px){
  .top{height:80vh;}
  .top-sns{width:25px;}
  .yo{top:130px;}
  .fa{top:180px;}
  .in{top:230px;}
  .scrolldown1{left:27px;}
}
@media screen and (max-width:430px){
  .top{height:70vh;}
  .logo img{width:90px;}
}
/*------ 背景 ------*/
.slant-bg{position:relative;width:30%;height:100%;background-color:rgba(0, 0, 0, 0.6);clip-path:polygon(0 0,85% 0,100% 100%, 60px 100%);top:0;left:21%;z-index:-5;background-image:url(./img/slideshow7-1.png);background-size:cover;background-position:top;}
.slant-bg::before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0, 0, 0, 0.6);}
.slant-bg2{width:54%;height:100%;background-color:#C31A1A;clip-path:polygon(0 0,100% 0,100% 100%, 60px 100%);top:0;right:0;z-index:-1;}
.top-back-font{font-size:160px;color:#fff;opacity:.05;right:0;z-index:0;}
.top-back-font-top{top:4%;}
.top-back-font-bot{top:32%;}
.top-main-font{font-size:50px;color:#fff;right:2%;font-weight:bold;z-index:0;}
.top-main-font-top{top:22%;}
.top-main-font-bot{top:36%;}
.top-car{bottom:-7%;width:102%;left:8%;}
.top-menu{top:25px;right:2%;z-index:9;}
.top-menu a{margin:0 20px;font-weight:bold;margin-bottom:5px;font-weight:bold;}
.top-menu a:hover{opacity:.8;}
@media screen and (max-width:1300px){
  .top-main-font{font-size:40px;}
  .top-main-font-top{top:26%;}
  .top-car{width:95%;left:12%;}
}
@media screen and (max-width:1200px){
  .slant-bg{width:35%;}
}
@media screen and (max-width:1100px){
  .top-main-font{font-size:35px;}
  .top-car{bottom:-5%;}
  .top-menu a{margin:0 10px;}
}
@media screen and (max-width:950px){
  .top-back-font-all{display:block;}
  .top-back-font-top,.top-back-font-bot{display:none;}
  .top-back-font{font-size:70px;color:#bfbfbf;writing-mode:vertical-lr;bottom:0;left:-27px;font-weight:bold;z-index:-1;opacity:.2;letter-spacing:0;}
  .top-main-font{font-size:28px;writing-mode:vertical-rl;z-index:9;}
  .top-main-font-top{top:15%;right:5%;}
  .top-main-font-bot{top:20%;right:12%;}
  .top-menu{top:15px;right:10%;}
  .top-menu-none{display:none;}
  .top-car{bottom:-40px;left:9%;}
  .top-menu a{color:#fff;margin:3px 30px;}
  .slant-bg{width:47%;}
  .slant-bg2{width:40%;}
}
@media screen and (max-width:750px){
  .slant-bg{width:49%;clip-path:polygon(0 0,80% 0,100% 100%, 60px 100%);}
}
@media screen and (max-width:700px){
  .top-main-font{font-size:21px;}
  .top-car{bottom:-31px;}
  .slant-bg{width:53%;left:25%;}
  .slant-bg2{width:37%;}
}
@media screen and (max-width:500px){
  .top-menu{right:15%;}
  .top-back-font{font-size:60px;left:-14px;}
  .top-main-font-bot{top:18%;right:14%;}
  .top-car{bottom:-19px;}
  .slant-bg{width:80%;left:0%;clip-path:polygon(0 0,80% 0,100% 100%, 0px 100%);}
}
@media screen and (max-width:430px){
  .top-back-font{font-size:60px;}
  .top-main-font{font-size:19px;}
  .top-car{bottom:-17px;width:120%;left:20%;}
  .slant-bg2{width:42%;clip-path:polygon(0 0,100% 0,100% 100%,70px 100%);}
}

/* ハンバーガー */
.hum{position:relative;z-index:9999;display:none;}
@media screen and (max-width:950px){
  .hum{display:block;}
  .header{display:none;}
}

/* Hamburger menu */
.nav-trigger{position:fixed;z-index:4;top:1.1rem;right:30px;width:44px;height:44px;overflow:hidden;color:transparent;white-space:nowrap;text-indent:100%;}
.nav-trigger span{position:relative;}
.nav-trigger span,
.nav-trigger span::before,
.nav-trigger span::after{position:absolute;width:40px;height:1.5px;background:#cccccc;z-index:999;}
.nav-trigger span{top:calc(50% - 2px);left:calc(50% - 18px);transition:background .3s;}
.nav-trigger span::before,
.nav-trigger span::after{content:'';top:0;left:0;transition:background .3s, transform .3s;}
.nav-trigger span::before{transform:translateY(-12px);}
.nav-trigger span::after{transform:translateY(12px);}
.nav-open .nav-trigger span::before,
.nav-open .nav-trigger span::after{background-color:rgb(255, 255, 255)}
.nav-open .nav-trigger span{background:transparent;}
.nav-open .nav-trigger span::before{transform:rotate(-45deg);top:0;}
.nav-open .nav-trigger span::after{transform:rotate(45deg);top:0;}
/* ナビ内 */
/* ナビ表示幅 */

.nav-container{position:fixed;z-index:3;width:40%;top:0;right:0;overflow:hidden;transform:translateZ(0);transform:translateX(100%);}
.nav-open .nav-container{transform:translateX(0);}
.nav-all{overflow:auto;height:100vh;background:linear-gradient(to right,rgba(228, 35, 35, 1),rgba(131, 15, 15, 1));}
.nav{padding:0;color:#fff;padding:17% 0 20%;}
.nav li{position:relative;border-bottom:1px solid #fff;}
.nav a{display:flex;font-weight:bold;justify-content:space-between;align-items:baseline;padding:2.3rem 0 .8rem 6%;color:#f6f8f8;transform:translateZ(0);width:95%;letter-spacing:.2rem;}
.nav a:hover{transition:all .1s;opacity:.6;}
.nav a h1{letter-spacing:.1rem;font-size:21px;opacity:.6;}
.nav-opa{opacity:.4;display:block;position:relative;}
.nav-opa::after{background-color:#fff;top:50%;left:30%;content:'';display:block;height:1px;position:absolute;width:30%;}
.nav-under{width:100%;position:absolute;bottom:0;left:0;display:flex;justify-content:left;flex-wrap:wrap;background:linear-gradient(to right,rgba(255, 255, 255, 1),rgba(132, 132, 132, 1));}
.nav-under li{padding:1rem 0 .5rem 6%;width:60px;}
.nav-under li a{display:inline-block;color:#fff;}
.nav-under li a:hover{transition:all .1s;opacity:.8;}
.nav-under li img{width:100%;}
.nav-open .nav-all{animation:slide-links .5s .2s backwards;}
@keyframes slide-links{
  0%{opacity:0;transform:translateX(100%);}
  100%{opacity:1;transform:translateX(0);}
}
/* .nav1{display:block;position:relative;}
.nav1::after{background-color:#fff;top:50%;left:30%;content:'';display:block;height:1px;position:absolute;transition:.5s all;width:0%;}
.nav1:hover::after{width:40%;} */

@media screen and (max-width:1100px){
  .nav-trigger a h6{width:120px;}
  .nav-trigger a h5{font-size:85%;right:72px;}
  .nav-trigger span,
  .nav-trigger span::before,
  .nav-trigger span::after{width:36px;}
  .nav-trigger span::before{top:2px;}
  .nav-trigger span::after{top:-2px;}
}
@media screen and (max-width:950px){
  .nav-container{width:50%;}
  .nav-trigger{top:.5rem;right:20px;}
  .nav-trigger a h6{width:100px;height:4.5rem;}
  .nav-trigger a h5{top:3rem;right:61px;}
  .nav a h1{position:absolute;top:7px;}
  .nav1 p{width:95%;text-align:right;}
}
@media screen and (max-width:900px){
  .nav-trigger a h5{top:2.7rem;right:63px;}
}
@media screen and (max-width:800px){
  .nav-container{width:50%;}
  .nav-img3 a{width:15%;margin:4% 2%;}
  .nav a h1{font-size:18px;}
  .nav a p{font-size:13px;}
  .nav-under li{width:50px;}
}
@media screen and (max-width:700px){
  .nav-container{width:60%;}
  .nav a{padding:1rem 0 .8rem 0%;}
  .nav-container{width:60%;}
  .nav li{padding:.5rem 0 0 6%;}
  .nav-trigger a h5{right:62px;}
  .nav a h1{opacity:.3;font-size:16px;}
  .nav a p{font-size:17px;}
}
@media screen and (max-width:600px){
  .nav{padding:25% 0 20%;}
  .nav a{display:block;}
  .nav a p{text-align:right;}
}
@media screen and (max-width:500px){
  .nav-container{width:100%;}
  .nav{padding:20% 0 20%;}
  .nav-trigger{right:16px;}
  .nav-trigger a h6{width:90px;height:4rem;}
  .nav-trigger a h5{top:2.6rem;right:57px;}
  .nav li{padding:1rem 0 0 0%;}
  .nav1::after{left:45%;}
  .nav a h1{font-size:17px;left:6%;top:-7px;}
  .nav-under li{width:60px;}
}
@media screen and (max-width:430px){
  .nav-under li{width:55px;}
}

/* 子メニューの基本スタイル */
.nav-child {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease-in-out; /* スムーズに開閉 */
    background: rgba(0, 0, 0, 0.1); /* 少し暗くして階層を表現 */
    list-style: none;
    padding: 0;
}

/* 開いた時の状態 */
.nav-child.is-open {
    max-height: 500px; /* 十分な高さを指定 */
}

/* 子メニュー内のリンク */
.nav-child li {
    border-bottom: 1px solid rgba(255,255,255,0.2) !important;
}

.nav-child li a {
    padding: 1rem 0 1rem 12% !important; /* 親より深くインデント */
    font-size: 14px !important;
    display: block !important;
}

/* 矢印アイコンなどの演出（任意） */
.has-child:after {
    content: '▼';
    font-size: 18px;
    margin-left: 10px;
    transition: transform .3s;
    opacity: .6;
    left: 2%;
    bottom: 4px;
    position: absolute;
}
.nav-open-sub .has-child::after {
    transform: rotate(180deg);
}
@media screen and (max-width:500px){
  .has-child:after{bottom:12px;}
}

/* サイドバー */
/* サイドバー全体のフォント設定（明朝体系にすると画像に近づきます） */
.sidebar2{display:none;}
/* 赤いタイトルバー */
.widget-title{background:#c93a3a;color:#ffffff;text-align:center;padding:15px 0;font-size:18px;letter-spacing:0.1em;margin-bottom:20px;font-weight:normal;}
/* 記事リストのスタイル */
.post-list{padding:0;margin-bottom:5%;}
.post-list li{border-bottom:1px solid #eeeeee; padding:20px 0;}
.post-list li:last-child{border-bottom:none;}
/* 記事リンクのテキスト */
.post-list li a{color:#000000;font-size:12px;line-height:1.8;display:block;transition:opacity 0.3s;font-weight:bold;}
.post-list li a:hover{opacity:0.7;}
/*  */
/*  */
.container{display:flex;max-width:1200px;margin:40px auto;width:90%;min-height:50vh;}
/* サイドバー */
.sidebar{width:25%;flex-shrink:0;}
.widget-title{background-color:#c93a3a;color:white;text-align:center;padding:10px;font-size:16px;margin-bottom:15px;}
.post-list{list-style:none;padding:0;font-size:13px;}
.post-list li{padding:10px 0;border-bottom:1px solid #eee;}
.archive-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:15px 10px;font-size:14px;text-align:center;}
/* メインコンテンツ - タブ部分 */
.main-content{width:70%;margin-left:5%;}
.tabs{display:flex;justify-content:center;margin-bottom:40px;}
/* 記事グリッド */
.article-grid{display:flex;flex-wrap:wrap;}
.card-img img{width:100%;height:130px;display:block;object-fit:cover;}
.card-meta{margin:10px 0;font-size:12px;color:#999;}
.badge-gray{background:#676767;color:#fff;padding:2px 8px;margin-left:10px;}
.badge-red{background:#d32f2f;color:#fff;padding:2px 8px;margin-left:10px;}
.card-text{font-size:13px;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.tab-btn{cursor:pointer;transition:all 0.3s;outline:none;border:1px solid #eee;background:#fff;padding:10px 40px;width:30%;margin:0 3%;font-family: "myfont",'Noto Serif JP', serif;}
.tab-btn:hover{transition:all .1s;border:1px solid #d32f2f;}
/* 選択されている時のスタイル */
.tab-btn.active{background-color:#d32f2f;color:#fff;border-color:#d32f2f;}
/* カードが表示される時のふわっとした動き */
.filter-item{display: block;width:27%;margin:2% 3%;}
.filter-item:hover{transition:all .2s;opacity:.7;}
/* 共通スタイル */
.category{padding:2px 8px;font-size:10px;margin-left:10px;border-radius:2px;color:#fff;display:inline-block;background:gray;}
/* アーカイブ全体のグリッド設定 */
.archive-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:15px 5px;padding:10px 0;text-align:center;}
/* 各年号ボタンのスタイル */
.year-btn{font-size:15px;color:#333;cursor:pointer;transition:color 0.3s;display:inline-block;}
/* ホバー時と選択時 */
.year-btn:hover,.year-btn.active{color:#ff1a1a;font-weight:bold;}
/* サイドバーの見出し（共通） */
.widget-title{background:#d32f2f;color:#fff;text-align:center;padding:10px;font-size:16px;letter-spacing:0.1em;margin-bottom:15px;}
.card-title{font-size:14px;}

/* 3列タイルレイアウト */
.post-tile-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px 20px;
    list-style: none;
    padding: 0;
}

.post-tile-item a { text-decoration: none; color: inherit; display: block; }
.post-img img { width: 100%; height: auto; border: 1px solid #ddd; }

.post-info { padding: 10px 0; }
.post-title { font-size: 14px; margin-top: 5px; line-height: 1.6; }

/* ページネーション：画像のデザイン再現 */
.pagination-area ul {
    display: flex;
    justify-content: center;
    gap: 8px;
    list-style: none;
    margin-top: 50px;
}

.pagination-area li a, .pagination-area li span {
    display: flex;
    align-items: center; justify-content: center;
    width: 35px; height: 35px;
    border: 1px solid #eee; border-radius: 3px;
    background: #fff; color: #666; font-size: 14px;
}

/* カレントページ（赤いグラデーション） */
.pagination-area li .current {
    background: linear-gradient(to bottom, #ff1a1a, #cc0000);
    color: #fff; border: none;
    box-shadow: 0 2px 4px rgba(0,0,0,0.2);
}

/* 前へ・次へ（グレーのグラデーション） */
.pagination-area li .prev, .pagination-area li .next {
    background: linear-gradient(to bottom, #999, #666);
    color: #fff; border: none;
}

@media screen and (max-width:950px){
	.container{display:block;}
	.sidebar{display:flex;margin:0 auto;width:100%;}
	.widget1{width:40%;margin:0 auto;}
	.main-content{width:100%;margin:0 auto;}
}
@media screen and (max-width:800px){
	.widget{width:45%;}
	.filter-item{width:29%;margin:2% 2.1%;}
}
@media screen and (max-width:700px){
	.container{width:95%;}
	.widget1{width:47%;}
	.widget-title{font-size:14px;}
	.tab-btn{width:31%;margin:0 auto;padding:10px;}
	.filter-item{width:40%;margin:2% 5%;}
	.card-img img{height:160px;}
}
@media screen and (max-width:600px){
	.card-img img{height:130px;}
}
@media screen and (max-width:500px){
	.filter-item{width:45%;margin:2% 2.5%;}
	.card-title{font-size:13px;}
}
@media screen and (max-width:430px){
	.category{padding:0 5px;}
	.date{font-size:11px;}
	.card-img img{height:110px;}
}

/* 投稿画面 */
.news-page{width:85%;margin-left:10%;}
/* 記事上部のメタ情報 */
.post-header-meta{font-size:14px;color:#000;margin-bottom:10px;display:flex;align-items:center;font-weight:bold;}
/* 記事タイトル */
.post-detail-title{font-size:24px;font-weight:normal;color:#000000;line-height:1.4;margin-bottom:20px;letter-spacing:0.05em;font-weight:bold;}
/* 区切り線 */
.post-divider{border:none;border-top:1px solid #ddd;margin:20px 0 40px;}
/* メイン画像（青い枠線があるように見える場合は追加） */
.post-main-visual{margin-bottom:30px;width:60%;}
.post-main-visual img{width:100%;height:auto;display:block;}
/* 本文のテキスト */
.post-body-text{font-size:15px;line-height:2;color:#000000;text-align:justify;font-weight:bold;}
.post-body-text p{letter-spacing:0;}

.badge-red { background-color:#d32f2f !important; }
.badge-gray { background-color:#676767 !important; }

.sidebar2{display:none;}

@media screen and (max-width:1050px){
	.news-page{margin-left:5%;}
}
@media screen and (max-width:950px){
	.news-page{margin-left:0;width:90%;}
	.sidebar1{display:none;}
	.sidebar2{display:block;}
	.widget2{width:50%;margin:5% 0;}
}
@media screen and (max-width:800px){
	.news-page{width:100%;}
}
@media screen and (max-width:700px){
	.news-page{width:95%;margin:0 auto;}
	.post-detail-title{font-size:20px;}
	.post-divider{margin:20px 0;}
}
@media screen and (max-width:500px){
	.news-page{width:90%;}
	.post-main-visual{width:80%;}
	.post-detail-title{font-size:17px;}
	.widget2{width:90%;margin:5% auto;}
}

.staff-card .plugin-img{width:80%;margin:0 10%;}
.co-bl{color:#142ef1;}
.co-bl:hover{color:#f09b11;}


/* お問い合わせフォーム */
.contact-form-sab{width:85%;margin:3% auto;}
.contact-form-title{text-align:center;width:70%;margin:0 auto;}
.contact-form-title h2{padding:10px;font-weight:bold;background:linear-gradient(45deg, rgba(255, 1, 1, 0.5) 25%, transparent 25%, transparent 75%, rgba(255, 0, 0, 0.4) 75%, rgba(255, 0, 0, 0.6)), linear-gradient(-45deg, rgba(0, 0, 0, 0.6) 25%, transparent 25%, transparent 75%, rgba(0, 0, 0, 0.6) 75%, rgba(0, 0, 0, 0.6)),linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3));}
.contact-form-com{width:70%;margin:3% auto;}
.contact-form-com p{font-weight:bold;}
.contact-form-com span{color:red;}

@media screen and (max-width:900px){
  .contact-form-sab{width:90%;margin:3% auto;}
  .contact-form-title,.contact-form-com{width:90%;}
}
@media screen and (max-width:700px){ 
  .contact-form-title h2{font-size:20px;}
}
@media screen and (max-width:500px){
  .contact-form-sab{width:100%;}
}

/*--------------------------------------------------------------------------------------------------------------------------------*/
/*-------------------------------- お問い合わせフォーム --------------------------------*/
/*--------------------------------------------------------------------------------------------------------------------------------*/
.contact-main{width:65%;margin:0 auto;}
.table-contactform{overflow:hidden;width:100%;border-collapse:collapse;border:1px solid #000;}
.table-contactform th,.table-contactform .contact-naiyo-title{width:45%;font-weight:bold;text-align:left;}
.table-contactform th,.table-contactform td{border:1px solid #000;padding:5px 10px;vertical-align:middle;font-weight:bold;}
.table-contactform th{background:#ffdada;}
.table-contactform .contact-naiyo-title{;vertical-align:top;} 
.contactform7,.contactform8{color:white;text-align:center;padding:0 .3vw;font-size:13px;}
/* 必須 */
.contactform7{color:#ff6e6e;font-weight:800;}
/* 任意 */
.contactform8{background:#575757;}
.contact-main .contact-naiyo-main input{width:100%;padding:1.5% 0 20% 0;}
.contact-main input{width:100%;padding:1.5%; }
.kibo-check input{width:7%;}
textarea{ width:100%;padding:1.5%;}
.submitform{text-align:center;margin:2% auto;}
.submitform input { width:20%;padding:1% 0; border-radius:25px; }
.submitform input:hover{ cursor:pointer; }
.wpcf7-response-output{text-align:center;}
.text-title{vertical-align:top;}
.screen-reader-response{display:none;}
.wpcf7-not-valid-tip{color:red;font-weight:bold;}

@media screen and (max-width: 900px){
  .contact-main{width:85%;}
  .table-contactform{border:none;}
  .table-contactform th,.table-contactform td{border:none;}
  .table-contactform tbody,
  .table-contactform tr{ display: block; width: 100%;}
  .table-contactform th{ width:100%; display:block; margin:1vw auto; padding:2%;}
  .table-contactform td{ display: list-item; list-style-type:none; margin:0;width:100%; background-color:white; }
  .contactform7,.contactform8{margin-right:2%;}
  .contact-main input{padding:2.5% 2%;width:100%;}
  .kibo-check input{width:7%;}
  .submitform input{ width:30%; margin:5% 35%; padding:1.5% 0; }
}
@media screen and (max-width:500px){
  .contact-main{width:90%;}
  .table-contactform th{padding:2% 2% 0;margin:2% auto 0;}
  .table-contactform th,.table-contactform td{padding:5px 0px;}
}
/* 保護内容 */
.hogo{width:70%;margin:5vw auto;}
.hogo p{text-align:center;line-height:25px;}
@media screen and (max-width: 900px){
	.hogo{width:80%;}
}
/* 同意（チェックボックス） */
.doui p {text-align:center;margin-top:5vw;}
/* 個人情報保護方針 */
.scroll-box { width:60%; margin:1% 20%; }
.scroll-box::-weblit-scrollbar{ width:10px; }
.scroll-box::-webkit-scrollbar-track{ background:#f1f1f1; }
.scroll-box::-webkit-scrollbar-thumb{ border-radius:6px; background:#c1c1c1; }
.bs{ margin-bottom:1em; padding-left:3%;}
.scroll-box h2{text-decoration:none; padding:1% 2%; font-weight:normal; margin-bottom:1em; }
.scroll-box h3 {border-bottom:solid 2px black; display:block; margin:1em;}
.scroll-box .olol,.scroll-box p::marker{ padding-left:3%; }
.scroll-box .lili,.scroll-box .no,.scroll-box p{line-height:25px;}
.scroll-box .no { margin-bottom:1em; list-style:auto;}
.scroll-box .lili { list-style:none; padding-left:3%; margin:0 0 1em 0; position:relative;padding:;0 }
.scroll-box .lili:before{position: absolute; top:33%; left:0%; display: block; content: ''; width: 8px; height: 8px; background-color: #6d9e41; }
@media screen and (max-width: 900px){
	.scroll-box{ width:90%; margin:1% 5%; }
	.scroll-box h2{text-align:center; }
	.bs{ font-size:2.3vw; }
}
@media screen and (max-width: 500px){
	.bs { font-size:13px; }
	.scroll-box .lili:before{ left:-5px; }
}

/*---------------------- footer ----------------------*/

footer{width:100%;margin:0 auto;background-color:#D7D7D7;height:280px;}
footer h2{font-size:18px;font-weight:bold;}
footer li a{font-size:14px;color:#515151;}
.fo-inner{margin:0 auto;width:100%;height:280px;}
.footer-menu-list{display:none;}
.fo-ttl img{width:200px;}
.fo-ttl{top:20px;left:30px;}
.fo-ttl:hover{opacity:.8;}
.fo-sns{width:30px;}
.fo-sns:hover{opacity:.8;}
.fo-sns1,.fo-sns2,.fo-sns3{left:30px;}
.fo-sns1{top:120px;}
.fo-sns2{top:170px;}
.fo-sns3{top:220px;}
.fo-left-box{top:155px;left:90px;}
.fo-right-box{justify-content:space-between;margin-left:22%;}
.fo-right-inner-box{margin:50px 0 0 0;}
footer p{bottom:0;right:0;font-size:12px;color:#6b6b6b;}

.top-back-bb{top:0;right:0;background-color:#8f0a0a;width:100px;height:100px;text-align:right;padding:10px;clip-path:polygon(0 0,100% 0,100% 100%, 0 0);color:#fff;}
.top-back-bb:hover{box-shadow:0 4px 4px inset rgba(0, 0, 0, 0.45);}
.fo-left-box li a:hover,.fo-right-box li a:hover{opacity:.6;}

/* レスポンシブメニュー */
.footer-menu-list{width:85%;padding-bottom:5%;margin:5% 0 0 3%;}
.footer-menu-list input{display:none;}
.footer-menu-list label,.footer-menu-list .menu-item{cursor:pointer;display:block;line-height:1;position:relative;padding:10px;outline:none;z-index:99;}

/* 開いたときに表示される部分 */
.footer-menu-list ul{margin-bottom:1px;}
.footer-menu-list li{height:0;overflow-y:hidden;transition:padding-bottom 0.5s, padding-top 0.5s;padding-top:0;padding-bottom:0;}
/* チェックボックスがチェックされた場合、またはフォーカスされた場合に開く */
#menu_bar01:checked ~ #links01 li,
#menu_bar02:checked ~ #links02 li,
#menu_bar03:checked ~ #links03 li,
#menu_bar04:checked ~ #links04 li,
#menu_bar05:checked ~ #links05 li,
#menu_bar06:checked ~ #links06 li
{height:auto;padding:1px 0 0 10px;}
/* 開いたときの下の余白 */
#menu_bar01:checked ~ #links01 li:last-child,
#menu_bar02:checked ~ #links02 li:last-child,
#menu_bar03:checked ~ #links03 li:last-child,
#menu_bar04:checked ~ #links04 li:last-child,
#menu_bar05:checked ~ #links05 li:last-child,
#menu_bar06:checked ~ #links06 li:last-child
{margin-bottom:20px;}
/* 閉じた状態の矢印描画 */
/* .footer-menu-list label:after{content:"";display:block;width:8px;height:8px;border-top:#8f0a0a 2px solid;border-right:#8f0a0a 2px solid;transform:rotate(135deg);position:absolute;right:2%;top:0;bottom:15%;margin:auto;}   */
/* 開いた状態の矢印描画 */
/* .footer-menu-list input[type=checkbox]:checked + label:after {transform: rotate(-45deg);}
.footer-menu-list a{text-decoration:none;}
.link a{color:#515151;} */

.fo-sns11,.fo-sns22,.fo-sns33{display:none;}
.foo-menu-sns{position:absolute;bottom:8%;right:5%;display:flex;justify-content:right;}
.foo-menu-sns a{margin:0 1%;width:5%;}
.foo-menu-sns .fo-sns{width:100%;}

@media screen and (max-width:1200px){
  footer h2{font-size:16px;}
  .fo-ttl img{width:150px;}
  .fo-sns{width:25px;}
  .fo-sns1{top:130px;}
  .fo-sns2{top:170px;}
  .fo-sns3{top:210px;}
  .fo-left-box{left:75px;}
}
@media screen and (max-width:950px){
  footer{height:100%;}
  .fo-right-box{display:none;}
  .footer-menu-list{display:block;}
  .fo-ttl{position:static;display:inline-block;margin:2% 0 0 3%;}
  .fo-sns1,.fo-sns2,.fo-sns3{display:none;}
  .fo-sns11,.fo-sns22,.fo-sns33{display:block;}
  .fo-inner{height:100%;}
  .fo-left-box{display:none;}
  .fo-right-inner-box{margin:0% 2% 7% 0;}
/*   .fo-right-box{justify-content:left;flex-wrap:wrap;margin-left:33%;padding-top:13%;} */
}
@media screen and (max-width:700px){
/*   .fo-left-box li{margin:0 1%;} */
/*   .fo-right-box{width:90%;margin:0 auto;justify-content:space-between;} */
}
@media screen and (max-width:600px){
  .fo-left-box{flex-wrap:wrap;}
  .fo-left-box li{width:32%;}
  .fo-right-box{padding-top:17%;}
  footer li a{font-size:13px;}
}
@media screen and (max-width:500px){
  .fo-ttl img{width:120px;}
  .fo-left-box li{width:37%;}
  .fo-right-box{padding-top:20%;}
  .footer-menu-list{width:57%;}
  .footer-menu-list label,.footer-menu-list .menu-item{font-size:13px;}
  .foo-menu-sns a{width:8%;}
}
@media screen and (max-width:430px){
  .fo-ttl{margin:5% 0 0 3%;}
  .fo-left-box li{width:42%;}
  .fo-right-box{padding-top:30%;}
  .footer-menu-list{padding-bottom:10%;width:70%;}
  footer p{font-size:10px;}	
}

/* RECRUIT */
.rec-ta{width:100%;margin:0 auto 3%;border-collapse: collapse;border:solid 1px #333;}
.rec-ta tr,.rec-ta td{border: dashed 1px #777;}

.camshaft-box {
  width: 100%;
  margin: 0 auto;
}

.cam-main-box {
  width: 80%;
  margin: 0 auto;
  max-width: 1200px;
}

.cam-main-box-top {
  margin: 3% auto;
  width: 100%;
}

.cam-main-box-top img {
  width: 80%;
  margin: 0 10%;
}

.cam-main-box-mid {
  width: 100%;
  margin: 0 auto;
}

.cam-main-box-mid h2 {
  font-weight: bold;
  background-image: linear-gradient(90deg, #3f3f3f, #6e737b);
  width: 100%;
  margin: 0 auto 2%;
  font-size: 24px;
  color: #fff;
  padding: 1% 0 1% 1.5%;
}

.cam-main-sec {
  width: 100%;
  margin: 3% auto;
}

.cam-main-sec h2 {
  font-weight: bold;
  background-image: linear-gradient(90deg, #3f3f3f, #6e737b);
  width: 100%;
  margin: 0 auto 2%;
  font-size: 24px;
  color: #fff;
  padding: 1% 0 1% 1.5%;
}

.cam-main-sec-box h3 {
  background-color: #a20606;
  padding: 5px 10px;
  color: #fff;
}

.ma-to2{
	margin-top:2%;
}

.bold{
	font-weight:bold;
}

.ma-bo2{
	margin-bottom:2%;
}

.f20c-vtec-main-box h2 {
  margin-top: 2%;
}

.pa-10{
	padding:5px 15px;
}

.f129-ta-ttl4{
	background-color:#2087c3;
	color:#fff;
}

.ve-mi{
	vertical-align:middle;
}

.w-2{
	width:20%;
	margin:0 auto;
}
.w-4{
	width:40%;
	margin:0 auto;
}

.w-6{
	width:60%;
	margin:0 auto;
}

.w-6m2{
	width:60%;
	margin:2% 20%;
}

.w-8{
	width:80%;
	margin:0 10%;
}

.w-8m2{
	width:80%;
	margin:2% auto;
}

.te-ce{
	text-align:center;
}

.w-10{
	width:100%;
	margin:0 auto;
}

.w-10m2{
	width:100%;
	margin:2% auto;
}

.st-red{
	color:#d30e0e;
}

.st-bl{
	color:#142ef1;
}
.fo-18{
	font-size:18px;
}
.fo-22{
	font-size:22px;
}

.img-fl {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  margin: 2% auto;
}

.img-fl4 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 80%;
  margin: 2% auto;
}

.img-fl4 div img{
	width:100%;
	margin:2% auto;
}
.googlemap iframe{width:100%;}

@media screen and (max-width:700px){
	 .img-fl4 {
	  display: block;
	  width: 100%;
	  margin: 2% auto;
	} 
	.img-fl4 div img{
	  width:40%;
      margin:2% 30%;
    }
	
}


.img-fl5 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  margin: 2% auto;
}
.img-fl5-in {
  width: 48%;
  margin: 2% auto;
}
.img-fl5-in p{
	height:100px;	
}

.img-fl5-in img{
	margin-right:4%;
}

.img-fl4 p{
  text-align:center;
}

.img-fl img {
  width: 100%;
  margin: 0 auto;
}

.img-fl-box{
  width: 48%;
  margin: 1% auto;
}


/* リンクページ */
.link-fl{
	width:100%;
	margin:2% auto;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}

.link-ttl{
	width:100%;
	background-color:#D7D7D7;
	margin:2% auto;
	padding:10px;
}

.link-fl-le{
	width:200px;
	margin:2% auto;
	vertical-align:middle;
}

.ma-bo1{
	margin-bottom:1%;
}

.ma-bo2{
	margin-bottom:2%;
}

.li-shi {
  position: relative;
  margin-left: 3%;
}

.li-shi::after {
  position: absolute;
  content: '';
  width: 4px;
  height: 4px;
  top: 9px;
  left: -17px;
  background-color: #D81212;
  border: 1.7px solid #D81212;
}

.link-fl-le:hover{
	opacity:.6;
}

.link-fl-le img{
	width:150px;
	margin:50px;
}

.link-fl-ri{
	width:60%;
	margin:2% auto;
}

.link-fl-ri h4{
	font-weight:bold;
	margin-bottom:2%;
	font-size:18px;
}

.li-shi-bl {
  position: relative;
  margin-left: 3%;
}

.li-shi-bl::after {
  position: absolute;
  content: '';
  width: 4px;
  height: 4px;
  top: 9px;
  left: -17px;
  background-color: #000000;
  border: 1.7px solid #000000;
}

.driver-li{
	margin-bottom:1%;
}

.driver-ye{
	opacity:.7;
	margin-left:5%;
}

.tech-fl {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  margin: 2% auto;
}


.m16a-fl video {
  width: 30%;
  margin: 0 auto;
}

.green {
  color: #43ae09;
}

.tech-r{
	width:50%;
	margin:0 auto;
}

.link-box{
	width:100%;
	margin:3% auto;
}

.his-in-box,.his-in-box2{
	width:100%;
	margin:2% auto;
}

.his-in-box p{
	margin:2% auto;
}

.his-in-box-r{
	border-bottom:1px solid rgb(185, 185, 185);
	margin-bottom:2%;
}

.his-in-box img{
	width:28%;
	margin:1%;
	box-shadow:0 4px 4px #0000005f;
}

.bo-sh{box-shadow:0 4px 4px #0000005f;}

@media screen and (max-width:700px){
	.his-in-box img{
	width:80%;
	height:auto;
	margin:2% 10%;
}
	.pc701{
		display:none;
	}
	.ph700{
		display:block;
	}
}
@media screen and (min-width:701px){
	.pc701{
		display:block;
	}
	.ph700{
		display:none;
	}
}


.staff-card{
	margin:2% auto;
}

.post-body-text a{
	color:#142ef1;
}

.post-body-text a:hover{
	color:#f09b11;
}

.topic-fl{
	width:90%;
	margin:2% auto;
	display:flex;
	flex-wrap:wrap;
}

.topic-fl p{
	width:75%;
	margin:2% 0 0 10%;
}


.topic-fl img{
	width:15%;
	object-fit:contain;
}

/* お問い合わせサンクスページ */
.contact-form-thanks{
	width: 85%;
	margin:0 auto;
    height: 250px;
    display: flex;
    align-items: center;
    justify-content: center;
}