@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Cabin:wght@100&display=swap');
/* CSS Document */
/* slicknav
==================================*/
.sp_logo,.slicknav,.slicknav_menu,.sp-lang-menu{
	display: none;
}
.top-container{
	margin-top: -26px;
	position: relative;
}
.top-lang-menu{
	width: 270px;
	overflow: hidden;
	position: absolute;
	top: 92%;
	z-index: 1;
	right: 100px;
}
.top-lang-menu li{
	float: right;
	margin-right: 10px;
}
.top-lang-menu li.last{
	margin-right: 0px;
}
/* slider
==================================*/
.slider img {
	width: 100%;
	height: auto;
	margin: 0 auto;
}
/* bx-wrap
==================================*/
.gnav{
  height: auto;
  overflow: visible;
}
.gnav ul{
  position: static;
}
.gnav_mega{
  display: none;
}
.gnav li:has(.gnav_mega):hover  {
  opacity: .7;
}
.main-visual{
	overflow: hidden;
}
.main-visual img{
	width: 100%;
	height: auto;
}

.bx-wrap {
	overflow: hidden;
}

.bx-viewport:before,
.bx-viewport:after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: -100%;
	background-color: rgba(0, 0, 0, 0.3);
	z-index: 1000;
}

.bx-wrapper .bx-viewport {
	overflow: visible !important;
	left: 0;
	border-width: 0;
	box-shadow: none;
}

.bx-viewport:before {
	right: 100%;
	left: -100%;
}

.bx-viewport:after {
	left: 100%;
	right: -100%;
}

.bx-wrapper .bx-controls-direction a {
	width: 46px;
	height: 46px;
	display: none;
}

.bx-wrapper .bx-prev {
	background: url(../img/slider_icon01.png);
}

.bx-wrapper .bx-next {
	background: url(../img/slider_icon02.png);
}
.bx-controls-direction{
	display:none;
}
/* box
==================================*/
.title {
  font-family: 'Cabin', sans-serif;
  text-align: center;
  margin-bottom: 30px;
  font-size: 32px;
  color: #fff;
  font-weight: inherit;
  letter-spacing: 2px;
  line-height: 1;
}
.title.news {
  color: #252858;
}
h2.title {
  background-color: inherit;
  padding: 0;
}
.box{
	overflow: hidden;
	padding: 35px 0;
}
/* box.category1,.category2
==================================*/
.box.category1{
	padding: 29px 0;
}
.box.category1 dl,.box.category2 dl{
	float: left;
	border: 2px solid #ffffff;
}
.box.category1 dl.last,.box.category2 dl.last{
	margin-right: 0px;
}
.box.category1 dd,.box.category2 dd{
	background-color:#001d59;
	color: #fff;
	padding: 10px 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
.box.category1 a dl:hover{
	background-color: #ffffff;
}
.box.category2 a dl:hover{
	background-color: #ffffff;
}

.category-inner dt {
  width: 212px;
  height: 113px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.category-inner dt {
  background: #334a7a;
}

.category-inner .even dt {
  background: #246c94;
}

.category-inner .last dt {
  background: #339999;
}
.category-inner .green dt {
  background: #339999;
}

/* box.category1
==================================*/
.box.category1 dl{
	border: 2px solid #ffffff;
	width: 212px;
	margin: 12px;
}
.container.category1{
	width: 948px;
}
/* box.category2
==================================*/
.container.category2{
	width: 951px;
}
.box.category2{
	padding: 50px 0 60px 0;
}
.box.category2 dl{
	border: 2px solid #c3ccd5;
	width: 293px;
	margin: 12px;
}
/* box.category1,2 list-icon
==================================*/
.list-icon{
	position: relative;
	display: inline-block;
	padding: 0 0 0 16px;
	color: #000;
	vertical-align: middle;
	text-decoration: none;
	font-size: 15px;
	width: auto;
	height: auto;
	margin-left: 0px;
	}
	.list-icon::before,.list-icon::after{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	}
.list-icon::before{
	width: 12px;
	height: 12px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background:#e12025;
}
.list-icon::after{
	left: 3px;
	width: 3px;
	height: 3px;
	border-top: 1px solid #001d59;
	border-right: 1px solid #001d59;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	}
/* bnews list-icon
==================================*/
.list-icon.news::before{
	width: 12px;
	height: 12px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background:#ffffff;
}
.list-icon.news::after{
	left: 3px;
	width: 3px;
	height: 3px;
	border-top: 1px solid #04063f;
	border-right: 1px solid #04063f;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	}

/* 強み・SDGsメニュー */
.sdst_flex{
    display: flex;
    justify-content: center;
    gap: 25px;
	margin-top: 15px;
}

.sdst_flex a{
    max-width: 455px;
    width: 100%;
    position: relative;
    border: 2px solid #c3ccd5;
}
.sdst_flex a .text{
    background: rgba(163, 24, 19, 0.75);
    max-width: 270px;
    width: 100%;
    color: #fff;
    font-size: 18px;
    height: 80px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    justify-content: center;
    align-items: center;
	text-align: center;
}

/* news
==================================*/
.title.news{
	margin-bottom: 20px;
}
.outer{
	background-color: #ffffff;
	padding: 15px 20px 25px 20px;
	width: 900px;
}
.inner{
	border-top: 2px solid #02073f;
	margin-bottom: 25px;
	max-height: 150px;
}

.new-btn{
	width: 335px;
	background-color:#04063f;
	color: #ffffff;
	text-align: center;
	margin: auto;
	padding: 12px 0;
}
.box.news dl{
	overflow: hidden;
	border-bottom: 1px dotted #04063f;
}
.box.news dt{
	width: 165px;
	padding: 10px;
	float: left;
}
.box.news dd{
	float: left;
	padding: 10px;
	width: 710px;
}
.new-icon{
	margin-left: 25px;
}
/* contact
==================================*/

.left-text p {
	font-size: 93%;
}
/* footer
==================================*/
.footer-left {
	float: left;
	width: 450px;
	margin-bottom: 48px;
}
.inner.news{
	width: 90%;
	margin: 0 5% 0 5%;
	padding: 15px 0 0 0;
	max-height: 440px;
	margin-bottom: 30px;
	overflow: auto;
  font-size: 16px;
}

@media screen and (max-width: 765px) {
  .main {
    margin-top: 70px !important;
  }
.box.news{
	background: #344a7b url(../img/news_bg01_sp.png) no-repeat top center;
}
.box.category2{
	background: #ffffff url(../img/category_bg02_sp.png) no-repeat top center;
}
.box.category1{
	background: #7b92c6 url(../img/category_bg01_sp.png) no-repeat top center;
  background-size: cover;
}
.title {
  font-size: 24px;
}
  /* 強み・SDGsメニュー */
.sdst_flex{
    flex-direction: column;
    width: 90%;
    margin: auto;
    margin-top: 25px;
    align-items: center;
}

.sdst_flex a{
    max-width: 455px;
    width: 100%;
    position: relative;
    overflow: hidden;
}
.sdst_flex a .img{
    width: 100%;
}
.sdst_flex a .text{
    background: rgba(163, 24, 19, 0.75);
    max-width: 270px;
    width: 100%;
    color: #fff;
    font-size: 18px;
    height: 80px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    justify-content: center;
    align-items: center;
}
}

@media screen and (min-width: 766px) {
.box.news{
	background: #344a7b url(../img/news_bg01.png) no-repeat top center;
}
.box.category2{
	background: #ffffff url(../img/category_bg02.png) no-repeat top center;
}
.box.category1{
	background: #7b92c6 url(../img/category_bg01.png) no-repeat top center;
}
}
@media print {
body{
	width:1120px;
	margin: 0 auto;
	}
.gnav ul {
	width:1120px;
	margin: auto;
	display: flex;
	justify-content: space-between;
	}
}