@charset "utf-8";
/*==============
TAB
===============*/
@media screen and (min-width:851px) and ( max-width:1380px){





/*========= ナビゲーションのためのCSS ===============*/

#g-nav{
    /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
    position:fixed;
    z-index: 999;
    /*ナビのスタート位置と形状*/
    top:0;
    right: -120%;
    width:100%;
    height: 100vh;/*ナビの高さ*/
    background: #322e2a;
    /*動き*/
    transition: all 0.6s;
}

/*アクティブクラスがついたら位置を0に*/
#g-nav.panelactive{
    right: 0;
}

/*ナビゲーションの縦スクロール*/
#g-nav.panelactive #g-nav-list{
    /*ナビの数が増えた場合縦スクロール*/
    position: fixed;
    z-index: 999; 
    width: 100%;
    height: 100vh;/*表示する高さ*/
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

/*リストのレイアウト設定*/

#g-nav li{
	list-style: none;
}

#g-nav li a{
	color: #ffffff;
	text-decoration: none;
	display: block;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-weight: bold;
}

/*========= ボタンのためのCSS ===============*/
.openbtn{
	position:fixed;
	z-index: 9999;/*ボタンを最前面に*/
	top: 20px;
	right: 20px;
	cursor: pointer;
	width: 80px;
	height: 80px;
	background: #fff;
	border-radius: 50%;
	box-shadow: 0px 0px 9px 0px #dddddd;
}
	
/*×に変化*/	
.openbtn span{
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 22px;
    height: 3px;
    border-radius: 2px;
    background-color: #939393;
    width: 45%;
  }

.openbtn span:nth-of-type(1) {
	top: 27px;
}

.openbtn span:nth-of-type(2) {
	top: 39px;
}

.openbtn span:nth-of-type(3) {
	top: 52px;
}

.openbtn.active span:nth-of-type(1) {
    top: 34px;
    left: 28px;
    transform: translateY(6px) rotate(-45deg);
    width: 30%;
}

.openbtn.active span:nth-of-type(2) {
	opacity: 0;
}

.openbtn.active span:nth-of-type(3){
    top: 46px;
    left: 28px;
    transform: translateY(-6px) rotate(45deg);
    width: 30%;
}







/* ===========以下レイアウト=========== */


#top {background: url(../images/top001.webp) no-repeat center;background-size:cover;height:100vh;width:100%;position: relative;}



div#top.top01 a.sp_logo {display: block;width: 200px;position: absolute;left: 2em;top: 2em;}
div#top.top01 a.sp_logo img {width: 100%;}


div#top.top01 nav#g-nav div#g-nav-list header#header {padding: 5em 5em 2em 5em;}
div#top.top01 nav#g-nav div#g-nav-list header#header h1 {width: 27%;display: block;margin: 0 0 3em 0;}
div#top.top01 nav#g-nav div#g-nav-list header#header h1 a img {width: 100%;}
div#top.top01 nav#g-nav div#g-nav-list header#header h1 img.pc{ display:none;}

div#top.top01 nav#g-nav div#g-nav-list header#header div.right ul#menu.menu.gnavi {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}
div#top.top01 nav#g-nav div#g-nav-list header#header div.right ul#menu.menu.gnavi li.menu_list {width: 100%;}
div#top.top01 nav#g-nav div#g-nav-list header#header div.right ul#menu.menu.gnavi li.child{
    width: 49%;
}	
div#top.top01 nav#g-nav div#g-nav-list header#header div.right ul#menu.menu.gnavi li.menu_list a {font-size: var(--fs-15);font-weight: 300;margin: 0.5em 0 0 0;}
div#top.top01 nav#g-nav div#g-nav-list header#header div.right ul#menu.menu.gnavi li.menu_list div.menu_contents ul li.content {padding: 0 0 0 0.5em;}
div#top.top01 nav#g-nav div#g-nav-list header#header div.right ul#menu.menu.gnavi li.menu_list div.menu_contents ul li.content a {font-size: 1.5em;padding: 0.5em 0 0 0;color: #a7a7a7;font-weight: 500;font-size: var(--fs-14);}
div#top.top01 nav#g-nav div#g-nav-list header#header div.right ul#menu.menu.gnavi li.menu_list div.menu_contents ul li.content a i {margin: 0 0.3em 0 0;}
div#top.top01 nav#g-nav div#g-nav-list header#header div.right div.tel {position: absolute;top: 9em;text-align: center;right: 8em;}
div#top.top01 nav#g-nav div#g-nav-list header#header div.right div.tel a {color: #fff;font-size: 2em;font-weight: 500;}
div#top.top01 nav#g-nav div#g-nav-list header#header div.right div.tel p {color: #fff;font-size: 1.1em;}
div#top.top01 nav#g-nav div#g-nav-list header#header div.right a.contact {border: 3px solid #fff;border-radius: 50px;position: absolute;top: 4.5em;color: #414141;right: 7em;padding: 0.7em 4em;font-weight: 700;font-size: 1.1em;}



div#top.top01 nav#g-nav div#g-nav-list header#header div.right ul#menu.menu.gnavi li:nth-child(6){
	order:8;
	}

nav#g-nav div#g-nav-list div.link.sp ul {display: flex;justify-content: flex-start;margin: 2em auto 0 auto;padding: 0 5em;}
nav#g-nav div#g-nav-list div.link.sp ul li {width: 23%;margin: 0 2% 0 0;}
nav#g-nav div#g-nav-list div.link.sp ul li a img {width: 90%;height: 6.5vw;object-fit: cover;background: #fff;padding: 2% 5%;}



div#g-nav-list div.sns.sp {padding: 0 5em;}
div#g-nav-list div.sns.sp ul {display: flex;}
div#g-nav-list div.sns.sp ul li {margin: 0 1em 0 0;}
div#g-nav-list div.sns.sp ul li a i {
    font-size: 1.5em;
}










div.top01 h2 {position: absolute;bottom: calc(6vw + 0.9rem);color: #fff;font-size: calc(4vw + 0.5rem);font-weight: 600;display: inline;left: 5vw;text-shadow: 0 0 14px #000000;}

[data-text-wrap] {
  display: inline-block;
}

[data-text-inner] {
  display: block;
  width: 0.001%;
  overflow-x: hidden;
}

@keyframes text {
  0% {
    width: 0.001%;
  }
  100% {
    width: 100%;
  }
  
    from {
        opacity: 0;
        transform: translateY(10px); /* 下から上にふわっと */
    }
    to {
        opacity: 1;
        transform: translateY(0); /* 元の位置 */
    } 
  
  
}



div.top02 {padding: 4vw 5%;background: url(../images/top02.webp) no-repeat 60vw center;background-size: 52%;}
div.top02 h2 {font-size: calc(4vw + 0.5rem);font-weight: 700;color: #000;}
div.top02 p {font-size: calc(0.7vw + 0.5rem);line-height: 2.5em;margin: 1em 0 0 0;width: 60%;font-weight: 500;}
div.top02 a {background: #0068b7;color: #fff;width: 34%;display: block;border-radius: 50px;padding: 1em 2em;font-size: 1.2em;margin: 2em 0 0 0;font-weight: 700;}

div.top02 a:hover{ background:#000; transition:0.5s;}
div.top03 {background: #e9e9e9;padding: 5vw 5%;}
div.top03 div.inner {
    margin: 0 0 2vw 0;
}
div.top03 div.inner div.title_wrap {display: flex;align-items: center;justify-content: space-between;}
div.title h2 {font-size: calc(0.6vw + 0.5rem);line-height: 0;}
div.title p.heebo {font-size: calc(6vw + 0.5rem);font-weight: 600;}
div.top03 div.inner div.title_wrap a {background: #000000;color: #fff;border-radius: 50px;text-align: center;padding: 0.8em 3em;display: block;}
div.top03 dl.news {display: flex;flex-wrap: wrap;align-items: stretch;padding: 0;background: none;gap: 0;width: 100%;margin: 0;max-width: unset;}
div.top03 dl.news dt {width: 14%;padding: 1.5em 2%;border-top: 1px solid #000;text-align: center;color: #141414;}
div.top03 dl.news dd {width: 88%;/* display: flex; */padding: 1.5em 0;border-top: 1px solid #a5a5a5;}
div.top03 dl.news dd.category {width: 12%;text-align: center;color: #0e8acb;font-weight: 600;}
div.top03 dl.news dd.news_title {width: 82%;font-weight: 600;color: #000;}
div.top03 a{ display:block;}
div.top03 a:hover{background: #d2d5d9;}
div.top03 div.inner div.title_wrap a:hover{background: #F44336;transition:0.5s;}
div.top03 div.news_link a:last-child dt{border-bottom: 1px solid #000}
div.top03 div.news_link a:last-child dd{border-bottom: 1px solid #a5a5a5;}

div.top04 {width: 90%;margin: 0 auto;padding: 8vw 0;}
div.top04 h3 {font-size: calc(1.4vw + 0.5rem);margin: 0 0 1em 0;font-weight: 600;}
div.top04 img {border: 1vw #dbdbdb solid;box-sizing: border-box;width: 100%;}
div.top04 a {background: #0068b7;color: #fff;border-radius: 50px;padding: 1em 4em;font-size: calc(0.6vw + 0.5rem);font-weight: 700;float: right;margin: 1em 0;}
div.top04 a:hover{ background:#000;}
div.top05 {width: 95%;padding: 8vw 0 8vw 5%;}
div.top05 dl {display: flex;}
div.top05 dl dt {width: 35%;padding: 0 5% 0 0px;}
div.top05 dl dt p.content {font-size: calc(0.6vw + 0.5rem);line-height: 2;margin: 0 0 3em 0;}
div.top05 dl dt div.link a {display: flex;align-items: center;justify-content: space-between;color: #000;font-weight: 600;border-bottom: 1px solid #000;padding: 1.5em 0;}
div.top05 dl dt div.link a p {font-size: calc(0.8vw + 0.5rem);}
div.top05 dl dt div.link a i.fa-solid.fa-angle-right {font-size: calc(1vw + 0.5rem);color: gray;margin: 0 0.5em 0 0;}
div.top05 dl dd {width: 60%;}
div.top05 dl dd img {width: 100%;height: 100%;object-fit: cover;}
div.top05 dl dt div.link a:first-child{ border-top:#000 solid 1px;}
div.top05 dl dt div.link a:hover{background: #ededed;}
footer {width: 90%;margin: 0 auto;}
footer div.footer01 {
    display: flex;
}
footer div.footer01 div.info {width: 28%;}
footer div.footer01 div.info img {
    width: 33%;
}

footer div.footer01 div.info p {font-size: calc(0.6vw + 0.5rem);}
footer div.footer01 div.info p b {font-size: calc(0.8vw + 0.5rem);margin: 0.3em 0;display: block;}
footer div.footer01 div.info ul {

display: flex;
}
footer div.footer01 div.info ul li {margin: 0 1.2em 0 0;}
footer div.footer01 div.info ul li a {font-size: calc(1.5vw + 0.5rem);color: #0a305d;}
footer div.footer01 div.link {width: 34%;padding: 0 0 0 2%;}
footer div.footer01 div.link a img {transition:0.5s;width: 100%;height: 9em;object-fit: cover;border: 0.5vw #d8d8d8 solid;box-sizing: border-box;}
footer div.footer01 div.link a img:hover{ opacity:0.8; transition:0.5s;}
footer div.footer01 div.link a p {color: #000;font-size: calc(0.5vw + 0.5rem);}
footer div.footer01 div.link a p b {font-size: calc(0.8vw + 0.5rem);color: #000;margin: 0.2em 0;display: block;}
footer div.footer02 {display: flex;justify-content: space-between;margin: 5em 0 0 0;}
footer div.footer02 div.menu {display: flex;}
footer div.footer02 div.menu ul li.bold a {font-weight: 600;}
footer div.footer02 div.menu ul li {margin: 1vw 3vw 1vw 0;}
footer div.footer02 div.menu ul li a {color: #000;}
footer div.footer02 div.link {width: 35%;}
footer div.footer02 div.link ul {display: flex;justify-content: flex-end;}
footer div.footer02 div.link ul li {width: 50%;margin: 0 0 0 1em;}
footer div.footer02 div.link ul li a {padding: 0.3vw 2.5vw;display: block;border: 2px solid #d3d3d3;}
footer div.footer02 div.link ul li a img {width: 100%;height: 4vw;object-fit: cover;}
footer p.c_r {font-weight: 100;margin: 1vw 0 5vw 0;}


div#top.top01.second {background: #edf4f7;padding: 13vw 0;height: auto;width: auto;position: relative;height: 0;}
div.h2 {display: flex;align-items: center;justify-content: flex-start;margin: 2em 0 1em 0;}
div.h2 h2 {position: relative;color: #000;text-shadow: none;bottom: 0;font-size: calc(2.5vw + 0.5rem);display: block;left: auto;margin: 0 1% 0 10%;}
div.h2 img {width: 40%;position: absolute;top: -7em;right: -5em;}



div.area.field div.field01 {width: 90%;}
div.area.field div.field01 img {height: 20rem;}
div.area.business div.business01 {width: 90%;}
div.area.business div.business01 h3.mnc {position: relative;color: #1e1e1e;top: 0;left: 0;margin: 1em 0;}
div.area.business div.business02 {width: 90%;}
div.area.business div.business03 div.wrap {width: 90%;max-width: unset;}

/*============================
#area
============================*/
section#area.sitemap {
}
section#area.sitemap div.menu {width: 90%;}
section#area.sitemap div.menu ul {
}
section#area.sitemap div.menu ul li.bold {
}
section#area.sitemap div.menu ul li.bold a {
}
section#area.sitemap div.menu ul li.bold a i.fa-solid.fa-caret-right {
}
section#area.sitemap div.menu ul li {
}
section#area.sitemap div.menu ul li a {
}
section#area.sitemap div.menu ul li a i.fa-solid.fa-angle-right {
}


/*============================
#area
============================*/
section#area.news {display: block;}
section#area.news div.main {width: 100%;}
section#area.news div.main ul {
}
section#area.news div.main ul li {
}
section#area.news div.main ul li a {
}
section#area.news div.main ul li a img {
}
section#area.news div.main ul li a span.date {
}
section#area.news div.main ul li a h3 {
}
section#area.news div.sub {
}
section#area.news div.sub div.sub_content.sub_search {
}
section#area.news div.sub div.sub_content.sub_search h4 {
}
section#area.news div.sub div.sub_content.sub_latest {
}
section#area.news div.sub div.sub_content.sub_latest h4 {
}
section#area.news div.sub div.sub_content.sub_latest ul {
}
section#area.news div.sub div.sub_content.sub_latest ul li {
}
section#area.news div.sub div.sub_content.sub_latest ul li a {
}
section#area.news div.sub div.sub_content.sub_latest ul li a span.date {
}
section#area.news div.sub div.sub_content.sub_latest ul li a h5 {
}
section#area.news div.sub div.sub_content.sub_tag {
}
section#area.news div.sub div.sub_content.sub_tag h4 {
}
section#area.news div.sub div.sub_content.sub_tag ul {
}
section#area.news div.sub div.sub_content.sub_tag ul li {
}
section#area.news div.sub div.sub_content.sub_tag ul li a {
}



section#area.equipment {
}
section#area.equipment h3 {width: 100%;}
section#area.equipment p.date {width: 100%;}
section#area.equipment table.equ01 {}
section#area.equipment table.equ01 thead {
}
section#area.equipment table.equ01 thead tr {
}
section#area.equipment table.equ01 thead tr th {
}
section#area.equipment table.equ01 tbody {
}
section#area.equipment table.equ01 tbody tr {
}
section#area.equipment table.equ01 tbody tr td {
}

section#area.access {
}
section#area.access div.office {width: 90%;}
section#area.access div.office div.h3 {margin: 0 0 1em 0;}
section#area.access div.office div.h3 h3 {
}
section#area.access div.office div.h3 p {
}
section#area.access div.office dl {
}
section#area.access div.office dl dt {
}
section#area.access div.office dl dt div.h4 {
}
section#area.access div.office dl dt div.h4 h4 {
}
section#area.access div.office dl dt div.h4 ul {
}
section#area.access div.office dl dt div.h4 ul li {
}
section#area.access div.office dl dd {
}
section#area.access div.office dl dd img {
}
section#area.access div.office iframe {
}

section#area.flow {
}
section#area.flow div {
}
section#area.flow div dl {flex-direction: column;}
section#area.flow div dl dt {width: 100%;}
section#area.flow div dl dt span.montserrat {
}
section#area.flow div dl dt h3 {font-size: var(--fs-16);}
section#area.flow div dl dd {width: auto;}
section#area.flow div dl dd p {
}
section#area.flow div dl dd p a {}
section#area.flow div dl dd p a.button {
}

div.ann60 {
}
div.ann60 dl {
}
div.ann60 dl dt {
}
div.ann60 dl dt img {
}
div.ann60 dl dd {
}
div.ann60 dl dd p.mnc {line-height: 1.2;white-space: unset;}


}