F@charset "UTF-8";
.google-maps {
position: relative;
padding-bottom: 75%; // これが縦横比
height: 0;
overflow: hidden;
}
.google-maps iframe {
position: absolute;
top: 0;
left: 0;
width: 100% !important;
height: 100% !important;
}
/*	title
/* ------------------------------------- */
.rslides {
	display:none;
}
.rslides2 {
	display: block;
}
.main_l {
z-index: 1;
position: relative;
top: 0px;
width:60%;
height:250px;
}
.main_r {
z-index: 2;
position: absolute;
top: 90px;
right: 0px;
width:50%;
height:250px;
}
.main_c {
z-index: 3;
position: absolute;
top: 80px;
  left: 6%;
  margin: auto;
  color: #FFF;
  width:100%;
  text-align: left;
  font-size:180%;
  font-weight:bold;
  line-height: .5em;
  }
.main_c2 {
z-index: 3;
position: absolute;
top: 70px;
  left: 6%;
  margin: auto;
  color: #FFF;
  width:100%;
  text-align: left;
  font-size:140%;
  font-weight:bold;
  line-height: 1.3em;
  }
.main_c span {
  font-size:40%;
  font-weight:normal;
}
.main_c2 span {
  font-size:40%;
  font-weight:normal;
  line-height:.7em;
  display:block;
}
.main_l img,
.main_r img {
width:100%;
}
.parallax4 {
	display:block;
  right: 0px;
position: absolute;
  top: 0px;
  width: 55%;
  height: auto;
  z-index: 4;
  margin: 50px 0px 0px 0px;
}
/*	tex
/* ------------------------------------- */
.m_t {
  padding: 50px 0px 0px 0px;
}


.pan {
	display: none;
}
.tex,
.tex2 {
clear: both;
padding: 0px 6% 6% 6%;
font-size:90%;
line-height:1.8em;
}
.tex img,
.tex2 img {
	border: 0;
max-width: 100%;
height: auto;
margin: 0 auto 20px auto;
}
.tex a,
.tex2 a {
	text-decoration: underline;
	color: #06C;
}

.tex a:hover,
.tex2 a:hover  {
	color: #F90;
	text-decoration: underline;
}
.tex p {
line-height:2.1em;
margin: 0px 0px 6% 0px;
}
.tex2 p {
line-height:2.1em;
margin: 0px 0px 2% 0px;
}
.left,
.right,
.left2,
.right2,
.left3,
.right3 {
margin: 0px;
}
.sp {
	display: block;
}
.pc {
	display: none;
}
.left img,
.right img,
.left2 img,
.right2 img,
.left3 img,
.right3 img,
img.centered,
img.alignright,
img.alignleft,
img.alignnone {
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 4%;
    margin-top: 4%;
clear:both;
}
.alignright {
  float: none;
}
.alignleft {
  float: none;
}

.m {
	margin: 0px 0px 3% 0px;
	width: 100%;
	background: url(../img/blue.jpg) right;
position:relative;
}
.m h4 {
	font-size:130%;
	line-height:1.4em;
	font-weight: normal;
	padding: 15px 0px 15px 20px;
	color: #FFF;
}
.m h4 a {
	color: #FFF;
	text-decoration: none;
}
.m h4 a:hover {
	color: #D3E3F0;
	text-decoration: none;
}
.m2 {
	font-size:120%;
	line-height:1.6em;
	font-weight: normal;
	padding: 0px 0px 3% 0px;
	color: #005BAB;
}
.m2_2 {
	font-size:120%;
	line-height:1.6em;
	font-weight: normal;
	padding: 0px 0px 1% 0px;
	color: #005BAB;
}
.m3 {
	font-size:110%;
	line-height:1.4em;
	padding: 0px 0px 1% 0px;
	color: #005BAB;
}
.m4 {
	font-size:110%;
	line-height:1.4em;
	padding: 0px 0px 1% 0px;
}
.m5 {
	font-size:110%;
	line-height:1.4em;
	color: #F30;
	font-weight:bold;
	padding: 10px 0px 0px 0px;
display:inline-block;
}
.tex h3,
.tex2 h3 {
  color: #005BAB;
  font-size: 130%;
  line-height:1.7em;
  margin: 0px 0px 10% 0px;
  display: inline-block;
  position: relative;
  text-align:center;
  width:100%;
	}
.tex h3:before,
.tex2 h3:before {
  content: '';
  position: absolute;
  left: 50%;
  bottom: -10px; /*下線の上下位置調整*/
  display: inline-block;
  width: 60px; /*下線の幅*/
  height: 1px; /*下線の太さ*/
  -moz-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translate(-50%); /*位置調整*/
  background-color: #005BAB; /*下線の色*/
}



hr {
	border-width: 1px 0px 0px 0px; /* 太さ */
	border-style: dotted; /* 線種 */
	border-color: #005BAB; /* 線色 */
	height: 1px; /* 高さ */
    max-width: 100%;
clear:both;
margin: 30px 0px 15px 0px;
}

/*	about
/* ------------------------------------- */
.about_menu ul {
	list-style:none;
}
.about_menu ul li a {
	width:100%;
  display: inline-block;
  float:left;
  padding: 15px 0 10px 0;
  margin: 0px 0 10px 0px;
  box-sizing: border-box;
  text-align: center;
	background: url(../img/blue3.jpg) right;
	background-size: 200%;
	-webkit-filter: opacity(100%);
	filter: opacity(100%);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
	text-decoration:none;
	color:#FFF;
	font-size:110%;
}
.about_menu ul li:nth-child(3) a {
  margin: 0px 0 6% 0px;
}
.about_menu ul li a:hover {
	-webkit-filter: opacity(50%);
	filter: opacity(50%);
	text-decoration: none;
  color: #FFF;
}

.abouts_menu ul {
	list-style:none;
}
.abouts_menu ul li a {
	width:100%;
  display: inline-block;
  float:left;
  padding: 15px 0 10px 0;
  margin: 0px 0 10px 0px;
  box-sizing: border-box;
  text-align: center;
	background: url(../img/blue3.jpg) right;
	background-size: 200%;
	-webkit-filter: opacity(100%);
	filter: opacity(100%);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
	text-decoration:none;
	color:#FFF;
	font-size:110%;
}
.abouts_menu ul li:nth-child(3) a {
  margin: 0px 0 6% 0px;
}
.abouts_menu ul li a:hover {
	-webkit-filter: opacity(50%);
	filter: opacity(50%);
	text-decoration: none;
  color: #FFF;
}


.sdgs_l,
.sdgs_r {
	width: 100%;
}
.sdgs_i {
	width: 25%;
	float: left;
margin: 0px 2% 10px 0px;
}
.sdgs_i img {
	width: 100%;
	margin: 0 !important;
}
.sdgs_t {
	width: 73%;
	float: left;
margin: 0px 0px 0px 0px;
}
/*	business
/* ------------------------------------- */
.business_menu0,
.service_menu0 {
  padding: 0px 0 2% 0px;
}
.business_menu0 ul,
.service_menu0 ul,
.car_menu0 ul {
	list-style:none;
}
.business_menu0 ul li a,
.service_menu0 ul li a {
	width:100%;
	border: 1px solid #005BAB;
  display: inline-block;
border-radius: 100px;
background:#FFF;
  float:left;
  padding: 10px 0 10px 0;
  margin: 0px 0 10px 0px;
  box-sizing: border-box;
  text-align: center;
	-webkit-filter: opacity(100%);
	filter: opacity(100%);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
	text-decoration:none;
	color:#005BAB;
	font-size:110%;
	text-decoration: none;
}
.business_menu0 ul li a:hover,
.service_menu0 ul li a:hover {
	-webkit-filter: opacity(50%);
	filter: opacity(50%);
	text-decoration: none;
	color:#005BAB;
}
.car_menu0 {
  padding: 0px 0 20px 0px;
  margin: 10px 0px 0 0px;
}
.car_menu0 ul li a {
	width:100%;
	border: 1px solid #F60;
  display: inline-block;
border-radius: 100px;
background:#FFF;
  float:left;
  padding: 10px 0 10px 0;
  margin: 0px 0 10px 0px;
  box-sizing: border-box;
  text-align: center;
	-webkit-filter: opacity(100%);
	filter: opacity(100%);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
	text-decoration:none;
	color:#F60;
	font-size:110%;
	text-decoration: none;
}
.car_menu0 ul li a:hover {
	-webkit-filter: opacity(50%);
	filter: opacity(50%);
	text-decoration: none;
	color:#F60;
}
.car_b a {
	width:100%;
	box-sizing: border-box;
	border: #005BAB solid 1px;
	background-color: #DDE9FF;
	text-align: center;
	margin: 30px 0 0px 0;
	-webkit-filter: opacity(100%);
	filter: opacity(100%);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
	text-decoration:none;
display: block;
}
.car_b a:hover {
	-webkit-filter: opacity(50%);
	filter: opacity(50%);
	text-decoration: none;
	color:#F60;
}
.car_b a img {
	width:80%;
	margin: 30px auto;
}
.business_menu {
  padding: 0px 0 6% 0px;
}
.business_menu ul {
	list-style:none;
}
.business_menu ul li a {
	width:49%;
  display: inline-block;
  float:left;
  padding: 15px 0 10px 0;
  margin: 0px 2% 10px 0px;
  box-sizing: border-box;
  text-align: center;
	background: url(../img/blue3.jpg) right;
	background-size: 200%;
	-webkit-filter: opacity(100%);
	filter: opacity(100%);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
	text-decoration:none;
	color:#FFF;
	font-size:110%;
}
.business_menu ul li:nth-child(even) a {
  margin: 0px 0 10px 0px;
}
.business_menu ul li a:hover {
	-webkit-filter: opacity(50%);
	filter: opacity(50%);
	text-decoration: none;
  color: #FFF;
}
/*	service
/* ------------------------------------- */
.service_menu {
  padding: 0px 0 6% 0px;
}
.service_menu ul {
	list-style:none;
}
.service_menu ul li img {
	border: 0;
max-width: 100%;
height: auto;
margin: 0;
}
.service_menu ul li a {
	width:100%;
  display: inline-block;
  float:left;
  margin: 0px 0 10px 0px;
  box-sizing: border-box;
	text-decoration:none;
}
.service_menu ul li a:visited {
}
.service_menu ul li:nth-child(even) a {
  margin: 0px 0 10px 0px;
}
.right2 h3 {
  color: #005BAB;
  font-size: 140%;
  line-height:1.7em;
  margin: 0px 0px 10px 0px;
  display: inline-block;
  position: relative;
  text-align: left;
  width:100%;
}
.right2 h3:before {
  content: none;
}
.s_m01 {
	font-size:110%;
	line-height:1.8em;
	font-weight:normal;
	text-align: left;
	margin: 0 0 10px 0;
}
.s_m02 {
	font-size:130%;
	line-height:1.8em;
	font-weight:normal;
	text-align: center;
	margin: 0 0 10px 0;
color:#005BAB;
}
.s_c,
.s_c2 {
    position: relative;
    width: 32%;
height: 32%;
padding-top: 32%; 
    border-radius: 50%;
  display: inline-block;
background:#005BAB;
  float:left;
  margin: 0px 1% 20px 0px;
  box-sizing: border-box;
  text-align: center;
}
.s_c2 {
  margin: 0px 0 20px 0px;
}
.s_c span,
.s_c2 span {
    position: absolute;
    left: 0;
    top: 30%;
    width: 100%;
    text-align: center;
    color: #fff;
	line-height:1.5em;
}
.mt_s {
  margin: 7px 0 0px 0px;
}
.s_b {
	margin: -10px 0px 10% 0px;
}
.s_b a {
  display: inline-block;
  color: #005BAB;
  text-decoration: none;
  border: 1px solid #005BAB;
  position: relative;
  width:100%;
  box-sizing: border-box;
  text-align: center;
  padding: 10px 0px;
	-webkit-filter: opacity(100%);
	filter: opacity(100%);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
	margin: 0px auto;
}
.s_b a:hover {
background: rgba( 0, 91, 171, 0.55 );
-webkit-transition: all .3s;
transition: all .3s;
  color: #005BAB;
  text-decoration:none;
}
/* works
---------------------------------------------------- */
.w_b {
	margin: 5px 0px 0 0px;
}
.w_b a {
  display: inline-block;
  color: #FFF;
  text-decoration: none;
  border: 1px solid #005BAB;
  position: relative;
  width:100%;
  box-sizing: border-box;
  text-align: center;
  padding: 3px 0px;
	-webkit-filter: opacity(100%);
	filter: opacity(100%);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
	margin: 0px auto;
	background:#005BAB;
}
.w_b a:hover {
background: rgba( 0, 91, 171, 0.55 );
-webkit-transition: all .3s;
transition: all .3s;
  color: #005BAB;
  text-decoration:none;
}
/* table
---------------------------------------------------- */
table {
	border-collapse: collapse;
	border-color: #005BAB;
	border-style: solid;
	border-width: 0;
	text-align: left;
line-height:1.5em;
word-break: break-all;
}
table th {
	font-size: 100%;
	line-height: 170%;
	padding: 7px;
	border: 1px solid #005BAB;
	font-style: normal;
	color: #005BAB;
background-color: rgb(230,242,255,0.5);
}
table td {
	font-size: 100%;
	line-height: 170%;
	padding: 7px;
	border: 1px solid #005BAB;
	vertical-align: top;
}
.table2 td {
	font-size: 100%;
	line-height: 170%;
	padding: 7px;
	border: 1px solid #005BAB;
	vertical-align: middle;
}
/* table
---------------------------------------------------- */
 .no {
	padding: 15px;
	border: 0;
}
 .t80 {
	 font-size:80%;
}
/*	about
/* ------------------------------------- */
.message {
	font-size:150%;
	line-height:2em;
	font-weight:normal;
	color:#005BAB;
}
/*	style_a
/* ------------------------------------- */
.style_a {
	background:url(../img/page/style_a.jpg) no-repeat center;
	background-size:100%;
  width: 100%;
  text-align:center;
  margin: 0px 0px 6% 0px;
  }
.style_a h4 {
  color:#FFF;
  padding: 10% 0px;
  font-size:130%;
  line-height:1.5em;
text-shadow:0 0 10px #039;
  }
.ac-box{
	padding: 0px 0px 6% 0px;
}
.ac-box label{
font-size: 16px;
font-weight: bold;
text-align: center;
box-sizing: border-box;
border: 1px solid #005BAB;
margin: auto;
line-height: 50px;
position: relative;
display: block;
height: 50px;
cursor: pointer;
color: #005BAB;
transition: all 0.5s;
}
.ac-box label:hover{
background: rgba( 0, 91, 171, 0.55 );
-webkit-transition: all .3s;
transition: all .3s;
}
.ac-box input{
display: none;
}
.ac-box label:after{
color:  #005BAB;
font-family:"FontAwesome";
content:" \f107";
}
.ac-box input:checked ~ label::after {
color:  #005BAB;
font-family:"FontAwesome";
content:" \f106";
}
.ac-box div{
height: 0px;
padding: 0px;
overflow: hidden;
opacity: 0;
transition: 0.5s;
}
.ac-box input:checked ~ div{
height: auto;
padding: 5px;
opacity: 1;
}
.ac-box div p{
padding: 20px 0px;
text-align: justify;
}
.ac-small p{
margin-bottom: 0px;
}
.ac-small ul {
	margin: 10px 0 0px 0;
list-style:none;
}
.ac-small ul li a {
	width:100%;
  display: inline-block;
background:#005BAB;
  padding: 5px 15px;
  margin: 0px 0 7px 0px;
  box-sizing: border-box;
  text-align: center;
	-webkit-filter: opacity(100%);
	filter: opacity(100%);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
	text-decoration:none;
	color:#FFF;
	font-size:110%;
	text-decoration: none;
	text-align:left;
}
.ac-small ul li a:hover {
	-webkit-filter: opacity(50%);
	filter: opacity(50%);
	text-decoration: none;
	color:#FFF;
}
/*	style_b
/* ------------------------------------- */
.style_b01,
.style_b02 {
	width:100%;
  float:left;
  text-align:center;
}
.style_b01 img,
.style_b02 img {
	width:80%;
	margin: 2% auto;
}
.style_b01 p,
.style_b02 p {
line-height:1.6em;
}
.style_b_flow01,
.style_b_flow02,
.style_b_flow03,
.flow,
.flow2 {
	width:100%;
  float:left;
  text-align:center;
}
.style_b_flow01 h4,
.style_b_flow02 h4,
.style_b_flow03 h4,
.flow h4,
.flow2 h4 {
	width:100%;
	background: #005BAB;
	color:#FFF;
	padding: 10px 0;
	margin: 0 0 10px 0;
}
.style_b_flow01 p,
.style_b_flow02 p,
.style_b_flow03 p,
.flow p,
.flow2 p {
	margin: 0 0 10px 0;
line-height:1.6em;
  text-align:left;
}
.style_b_flow03 p {
	margin: 0 0 6% 0;
}

.flow_a {
	width:20%;
  float:inline-start;
  text-align:center;
 
}
.flow_a h4 {
	width:100%;
	background: #005BAB;
	color:#FFF;
	padding: 10px 0;
	margin: 0 0 10px 0;
}
.flow_a p {
	margin: 0 0 10px 10px;
	line-height:1.6em;
	text-align:left;
	width:max-content;
}

@media screen and (max-width: 940px) {
	.flow_a p {
	  font-size: 80%; /* フォントサイズの調整 */
	  margin: 0 0 8px 0; /* 上下の余白調整 */
	  text-align: center; /* テキストの左揃え */
	  width: 100%; /* 幅を100%に設定してテキストが親要素内に収まるようにする */
	  line-height: 1.4em; /* 行間をやや狭くする */
	}
  }

/*	faq
/* ------------------------------------- */
.faq-box{
	padding: 0px 0px 6% 0px;
}
.faq-box label{
font-size: 16px;
font-weight: bold;
text-align: left;
box-sizing: border-box;
border: 1px solid #005BAB;
margin: auto;
line-height: 2em;
position: relative;
display: block;
cursor: pointer;
color: #005BAB;
transition: all 0.5s;
padding: 6%;
}
.faq-box label:hover{
background: rgba( 0, 91, 171, 0.25 );
-webkit-transition: all .3s;
transition: all .3s;
}
.faq-box input{
display: none;
}
.faq-box label:after{
color:  #005BAB;
font-family:"FontAwesome";
content:" \f107";
}
.faq-box input:checked ~ label::after {
color:  #005BAB;
font-family:"FontAwesome";
content:" \f106";
}
.faq-box div{
height: 0px;
padding: 0px;
overflow: hidden;
opacity: 0;
transition: 0.5s;
}
.faq-box input:checked ~ div{
height: auto;
padding: 5px;
opacity: 1;
}
.faq-box div p{
padding: 20px 0px;
text-align: justify;
}
.faq-small {
margin-left: 20px;	
}
.faq-small p {
margin-bottom: 0px;
}
.icon_q {
	color:#39F;
}
.icon_a {
	color: #F60;
}

/*	arvhive
/* ------------------------------------- */
.info_box {
	border-bottom: #005BAB dotted 1px;
	margin: 0px 0px 15px 0px;
	padding: 0px 0px 15px 0px;
	width: 100%;
}
.info_box2{
	border-bottom: #666 dotted 1px;
	margin: 0px 0px 15px 0px;
	padding: 0px 0px 15px 0px;
	width: 100%;
}
.i_box{
	float:left;
width: 75%;
}
.i_date{
	color: #444;
	margin: 0px 10px 0px 0px;
}
.i_text {
	margin: 0px 0px 0px 0px;
	font-size:100%;
}
.i_m{
	color: #666;
	margin: 0px 10px 0px 0px;
	clear:both;
}
.i_text span {
	color: #333;
	font-weight: normal;
	font-size:80%;
}

.i_text a {
	color: #005BAB;
	text-decoration: underline;
	font-weight: normal;
}
.i_text a:visited {
	color: #F90;
	text-decoration: underline;
}
.i_text a:hover {
	color: #F90;
	text-decoration: underline;
}
.i_date2{
	color: #444;
}
.i_title{
	color: #005BAB;
	font-size: 120%;
	line-height: 150%;
	margin: 0px 0px 10px 0px;
	padding: 0px 0px 5px 0px;
	font-weight: normal;
	border-bottom: #005BAB dotted 1px;
}
.i_m2{
	color: #666;
	font-size: 110%;
	line-height: 170%;
	margin: 0px 0px 10px 0px;
	padding: 0px 0px 5px 0px;
	font-weight: normal;
	border-bottom: #F66 dotted 1px;
}
.i_text_box{
	border-bottom: #005BAB dotted 1px;
	margin: 0px 0px 10px 0px;
	padding: 0px 0px 30px 0px;
}
.back{
	color: #888;
width: 100%;
	font-size: 12px;
	line-height: 14px;
	margin: 20px 0px 20px 0px;
	clear:both;
}
.back a {
	text-decoration: none;
	color: #888;
}
.back a:visited {
	color: #888;
	text-decoration: underline;
}
.back a:hover {
	color: #999;
	text-decoration: underline;
}

/*	 pagination
/* ------------------------------------- */
.pagination {
	clear: both;
	padding: 20px 0;
	position: relative;
	font-size: 12px;
	line-height: 12px;
        text-align: center;
}
.pagination-box {
	display: inline-block;
}
.pagination span, .pagination a {
	display: block;
	float: left;
	margin: 2px 2px 2px 0;
	padding: 8px 10px 8px 10px;
	text-decoration: none;
	width: auto;
	color: #F66; /* 文字色 */
	background: #FFE8E7; /* 背景色 */
}
.pagination a:hover{
	color: #fff; /* マウスホバー時の文字色 */
	background: #F66; /* マウスホバー時の背景色 */
}
.pagination .current{
	padding: 8px 10px 8px 10px;
	background:#F66; /* 現在のページの文字色 */
	color: #fff; /* 現在のページの背景色 */
}

/* form
/* ------------------------------------- */
.screen-reader-response ul {
	display: none;
}
.form {
	width: 100%;
  background-color: #CBDDF5;
	padding: 5% 0px;
}
dl.fo {
	width: 90%;
	color: #333333;
	margin: 0px auto 0px auto;
	padding: 0px 0px 0px 0px;
	border-top: #CBDDF5 solid 1px;
}
.fo_box {
	width: 100%;
	border-bottom:  #CBDDF5 solid 1px;
	padding: 0px 0px 0px 0px;
  background-color: #FFF;
}
  

dl.fo2 {
	width: 100%;
	color: #333333;
	margin: 20px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
	border-top:  #CBDDF5 solid 1px;
}
.fo_box2 {
	width: 100%;
	border-bottom:  #CBDDF5 solid 1px;
	padding: 0px 0px 0px 0px;
}
dl.fo dt,
dl.fo2 dt {
	width: 100%;
	margin: 10px 0px 0px 0px;
	padding: 10px;
	float: left;
	color: #000;
	line-height: 120%;
	box-sizing: border-box;
}
dl.fo dd,
dl.fo2 dd {
	width: 100%;
	padding: 10px;
	float: left;
	margin: 0px 0px 10px 0px;
	box-sizing: border-box;
}
.fo2_2 {
	background-color: #FFF;
	height: 30px;
}
p.fo_tex01 {
	font-size: 12px;
	color: #333333;
	line-height: 19px;
	padding: 0px 0px 10px 0px;
}
.f_b {
	margin: 30px 0px 20px 0px;
	text-align: center;
}
.f_b p {
	margin: 5px 0px 0px 0px;
}
.er {
	font-size: 15px;
	color: #FF3300;
	line-height: 20px;
	margin: 0px 0px 10px 0px;
}
.f_t2 {
	font-size: 12px;
	color: #663300;
	line-height: 17px;
	padding: 2px;
}
.t_red_b {
	font-size: 110%;
	color: #FF3300;
}
.red {
	color: #FF3300;
}
.t_m {
	line-height: 160%;
}
span.cf7-list-item { display: block; }
.delivery{
	background: #FCF7EA;
	width: 100%;
	padding: 10px 0px;
}
input[type=checkbox] {
	float: left;
	margin: 7px 0px 0px 0px;
}
.cf7-not-valid-tip {
		color: #FF3300;
		margin: 0px 0px 0px 10px;
}

.cf7-text {
        height: 35px !important;
		font-size:100%;
}
.form-width { width: 93%;}
.cf7 textarea {
        height: 200px !important;
		 width: 93%;
		font-size:100%;
}
.cf7 select {
		font-size:100%;
        height: 35px !important;
}
.box_fo {
	padding: 2%;
box-sizing:border-box;
border: 1px #CCC solid;
background-color:#FFF;
margin: 20px 0px 30px 0px;
}

.f_bm {
margin: 0px 0px 10px 0px;
}

.button {
background-color: transparent;
border: none;
cursor: pointer;
outline: none;
appearance: none;
  display       : inline-block;
  border-radius : 10px;          /* 角丸       */
  font-size     : 110%;        /* 文字サイズ */
  text-align    : center;      /* 文字位置   */
  cursor        : pointer;     /* カーソル   */
  padding       : 20px;   /* 余白       */
  background    : #005BAB;     /* 背景色     */
  color         : #ffffff;     /* 文字色     */
  line-height   : 1em;         /* 1行の高さ  */
  transition    : .3s;         /* なめらか変化 */
}
.button:hover {
  box-shadow    : none;        /* カーソル時の影消去 */
  color         : #005BAB;     /* 背景色     */
  background: #CBDDF5;     /* 文字色     */
}

.pl {
	border: 1px solid #005BAB;
	padding: 20px 20px 20px 20px;
	margin: 0px 0px 30px 0px;
}
.pl ol {
	margin: 10px 0px 0px 0px;
}

/* privacy
/* ------------------------------------- */
.privacy {
background-color: rgb(230,242,255,0.5);
box-sizing:border-box;
padding: 6%;
	border: 1px solid #005BAB;
}

/*	car
/* ------------------------------------- */
.car {
  padding: 0px 0 15px 0;
  margin: 0px 0 25px 0px;
  border-bottom: 1px dotted #005BAB;
}
.car_menu ul {
	list-style:none;
}
.car_menu ul li a {
	width:100%;
  display: inline-block;
  float:left;
  padding: 15px 0 10px 0;
  margin: 0px 0 10px 0px;
  box-sizing: border-box;
  text-align: center;
	background: url(../img/blue3.jpg) right;
	background-size: 200%;
	-webkit-filter: opacity(100%);
	filter: opacity(100%);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
	text-decoration:none;
	color:#FFF;
	font-size:110%;
}
.car_menu ul li:nth-child(3) a,
.car_menu ul li:nth-child(6) a,
.car_menu ul li:nth-child(9) a{
  margin: 0px 0 10px 0px;
}
.car_menu ul li:nth-child(7) a {
  margin: 0px 0 6% 0px;
}
.car_menu ul li a:hover {
	-webkit-filter: opacity(50%);
	filter: opacity(50%);
	text-decoration: none;
  color: #FFF;
}

/* ------------------------------------- */
/*	 resposive480
/* ------------------------------------- */
@media screen and (min-width: 480px) {
.main_c {
top: 100px;
  left: 6%;
  margin: auto;
  color: #FFF;
  width:100%;
  text-align: left;
  font-size:200%;
  font-weight:bold;
  line-height: .5em;
  }
.main_c2 {
top: 100px;
  left: 6%;
  margin: auto;
  color: #FFF;
  width:100%;
  text-align: left;
  font-size:150%;
  font-weight:bold;
  line-height: 1.3em;
  }
.parallax4 {
  width: 50%;
  margin: 20px 0 0 0;
}
.tex,
.tex2 {
clear: both;
padding: 0px 6% 6% 6%;
line-height:1.8em;
}
.pan {
	display: block;
margin-top: 0;
clear: both;
padding: 0px 0px 5% 0px;
margin-top: -5%;
font-size:80%;
line-height:1.8em;
}
}

/* ------------------------------------- */
/*	 resposive768
/* ------------------------------------- */
@media screen and (min-width: 768px) {
.main_c {
top: 150px;
  left: 6%;
  margin: auto;
  color: #FFF;
  width:100%;
  text-align: left;
  font-size:200%;
  font-weight:bold;
  line-height: .5em;
  }
.main_c2 {
top: 150px;
  left: 6%;
  margin: auto;
  color: #FFF;
  width:100%;
  text-align: left;
  font-size:200%;
  font-weight:bold;
  line-height: 1.3em;
  }
.parallax4 {
  width: 50%;
  margin: 0;
}
.tex p,
.tex2 p {
padding: 0;
}
.pan {
margin-top: 3%;
}
.m2 {
	font-size:140%;
	line-height:1.8em;
}
.m2_2 {
	font-size:140%;
	line-height:1.8em;
}
.m3 {
	font-size:120%;
	line-height:1.6em;
}
.m4 {
	font-size:120%;
	line-height:1.6em;
}
.m5 {
	font-size:120%;
	line-height:1.4em;
	color: #F30;
	font-weight:bold;
	padding: 20px 0px 0px 0px;
display:inline-block;
}
.tex h3,
.tex2 h3 {
  font-size: 170%;
  line-height:1.7em;
  width:100%;
  margin: 0px 0px 6% 0px;
	}

.left {
	float: left;
	width:49%;
}
.right {
	float: right;
	width:49%;
}
.left2 {
	float: left;
	width:39%;
}
.right2 {
	float: right;
	width:59%;
	margin: 10px 0 0 0;
}
.i_title{
	font-size: 150%;
	line-height: 170%;
}
/*	about
/* ------------------------------------- */
.about_menu ul li a {
	width:33%;
  margin: 0px 1% 10px 0px;
}
.about_menu ul li:nth-child(3n) a {
	width:32%;
  margin: 0px 0 10px 0px;
}

.abouts_menu ul {
	font-size: 0; 
  }
  
  .abouts_menu ul li {
	display: inline-block;
	width: 24%;
	margin: 0 1% 10px 0;
	vertical-align: top;
	font-size: 16px; /* 必要に応じて元に戻す */
  }
  
  .abouts_menu ul li:nth-child(4n) {
	margin-right: 0;
  }


.sdgs_l {
	width: 40%;
	float: left;
}
.sdgs_r {
	width: 57%;
	float: right;
}

.sdgs_i {
	width: 15%;
	float: left;
margin: 0px 2% 10px 0px;
}
.sdgs_t {
	width: 83%;
	float: left;
margin: 7px 0px 0px 0px;
}
/*	business
/* ------------------------------------- */
.business_menu0 ul li a {
	width:33%;
  margin: 0px 1% 3% 0px;
}
.business_menu0 ul li:nth-child(3) a {
	width:32%;
  margin: 0px 0 3% 0px;
}
.business_menu ul li a {
	width:24%;
  margin: 0px 1% 10px 0px;
}
.business_menu ul li:nth-child(even) a {
  margin: 0px 1% 10px 0px;
}
.business_menu ul li:nth-child(4n) a {
	width:25%;
  margin: 0px 0 10px 0px;
}
/*	service
/* ------------------------------------- */
.service_menu0 ul li a {
	width:49%;
  margin: 0px 2% 3% 0px;
}
.service_menu0 ul li:nth-child(2) a {
	width:49%;
  margin: 0px 0 3% 0px;
}
.service_menu ul li a {
	width:49%;
  display: inline-block;
  float:left;
  margin: 0px 2% 2% 0px;
  box-sizing: border-box;
	text-decoration:none;
}
.service_menu ul li:nth-child(even) a {
	width:49%;
  margin: 0px 0 2% 0px;
}
.s_c span,
.s_c2 span {
    position: absolute;
    left: 0;
    top: 30%;
    width: 100%;
    text-align: center;
    color: #fff;
	line-height:1.5em;
	font-size:110%;
}
.s_b a {
  padding: 7px 40px;
  width: auto;
}
.right2 h3 {
  font-size: 170%;
  line-height:1.7em;
}
.s_m01 {
	font-size:120%;
}
/* works
---------------------------------------------------- */
.w_b a {
  padding: 3px 40px;
  width: auto;
}
/*	style_a
/* ------------------------------------- */
.style_a h4 {
  font-size:170%;
  padding: 20% 0px;
  }
.ac-box{
	padding: 0px 0px 3% 0px;
}
/*	style_b
/* ------------------------------------- */
.style_b01 {
	width:30%;
  margin: 0px 5% 6% 0px;
}
.style_b02 {
	width:30%;
  margin: 0px 0 6% 0px;
}
.style_b_flow01,
.style_b_flow03 {
	width:23%;
	height:150px;
  margin: 0px 2.5% 6% 0px;
}
.style_b_flow02 {
	width:23%;
  margin: 0px 0 6% 0px;
	height:150px;
}
.flow {
	width:19%;
  margin: 0px 1% 2% 0px;
}
.flow2 {
	width:19%;
  margin: 0px 0% 2% 0px;
}

/*	faq
/* ------------------------------------- */
.faq-box{
	padding: 0px 0px 3% 0px;
}
.faq-box label{
padding: 2%;
}
/*	sub
/* ------------------------------------- */
.sub ul li {
width: 33.33%;
  }
.sub ul li a {
	font-size:140%;
  padding: 40px 0;
}
/*	 pagination
/* ------------------------------------- */
.pagination {
	font-size: 14px;
	line-height: 14px;
}
.pagination span, .pagination a {
	padding: 10px 15px 10px 15px;
}
.pagination .current{
	padding: 10px 15px 10px 15px;
}

/* privacy
/* ------------------------------------- */
.privacy {
padding: 2%;
}
/*	car
/* ------------------------------------- */
.car_menu ul li a {
	width:33%;
  margin: 0px 1% 10px 0px;
}
.car_menu ul li:nth-child(3) a,
.car_menu ul li:nth-child(6) a,
.car_menu ul li:nth-child(9) a {
	width:32%;
  margin: 0px 0 10px 0px;
}
.car_menu ul li:nth-child(7) a {
	width:33%;
  margin: 0px 1% 6% 0px;
}

.car_b a img {
	width:50%;
	margin: 20px auto;
}
}

/* ------------------------------------- */
/*	 resposive980
/* ------------------------------------- */
@media screen and (min-width: 980px) {
.faq-small {
margin-left: 55px;	!important
}

.flow_a {
	width:19%;
	float:left;
	display:inline-block;
	margin: 0px 1% 2% 0px;
}
.flow_a h4 {
	width:100%;
	background: #005BAB;
	color:#FFF;
	padding: 10px 0;
	margin: 0 0 10px 0;
}
.flow_a p {
	margin: 0 0 10px 0;
	width:100%;
}

.rslides {
	display: block;
}
.rslides2 {
	display:none;
}
.main_l {
width:40%;
height:350px;
}
.main_r {
top: 130px;
width:65%;
height:350px;
}
.main_c {
top: 160px;
  margin: auto;
  color: #FFF;
  width:980px;
  text-align: left;
  font-size:230%;
  font-weight:bold;
  line-height: .5em;
left: 0;
  right: 0;
  }
.main_c2 {
top: 160px;
  margin: auto;
  color: #FFF;
  width:980px;
  text-align: left;
  font-size:200%;
  font-weight:bold;
  line-height: 1.3em;
left: 0;
  right: 0;
  }
.parallax4 {
  width: 30%;
  margin: 70px 0 0 0;
  right: 30%;
}
.tex,
.tex2 {
padding: 60px 0px;
width:980px;
margin:auto;
}
.tex p,
.tex2 p {
padding: 0;
}
.tex a img,
.tex2 a img {
	-webkit-filter: opacity(100%);
	filter: opacity(100%);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
.tex a:hover img,
.tex2 a:hover img {
	-webkit-filter: opacity(50%);
	filter: opacity(50%);
	text-decoration: none;
}
.pan {
margin-top: -3%;
}
.tex h3,
.tex2 h3 {
  margin: 0px 0px 4% 0px;
	}

.sp {
	display: none;
}
.pc {
	display: block;
}
.left,
.left3 {
	float: left;
	width:48%;
}
.right,
.right3 {
	float: right;
	width:48%;
}
/*	about
/* ------------------------------------- */
.sdgs_l {
	width: 44%;
	float: left;
}
.sdgs_r {
	width: 53%;
	float: right;
}
.sdgs_i {
	width: 15%;
	float: left;
margin: 0px 2% 10px 0px;
}
.sdgs_t {
	width: 83%;
	float: left;
margin: 7px 0px 0px 0px;
}
	
/*	service
/* ------------------------------------- */
.service_menu ul li a {
	width:49%;
  margin: 0px 2% 2% 0px;
}
.service_menu ul li:nth-child(even) a {
	width:49%;
  margin: 0px 0 2% 0px;
}
.s_c span,
.s_c2 span {
    position: absolute;
    left: 0;
    top: 35%;
    width: 100%;
    text-align: center;
    color: #fff;
	line-height:1.5em;
	font-size:120%;
}
/*	style_a
/* ------------------------------------- */
.style_a h4 {
  font-size:200%;
  }
/*	style_b
/* ------------------------------------- */
.style_b_flow01,
.style_b_flow02 {
	width:12%;
  margin: 0px 2.5% 6% 0px;
}
.style_b_flow03 {
	width:12%;
  margin: 0px 0 6% 0px;
}
/*	arvhive
/* ------------------------------------- */
.i_date,
.i_text{
	float: left;
}
.info_box img {
width: 70px;
height: 70px;
float: left;
padding: 1px;
margin: 0px 10px 0px 0px;
}

img.centered {
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 20px;
clear:none;
}
img.alignright {
    margin-left: 20px;
    margin-right: 0;
    margin-bottom: 20px;
    display: inline;
    margin-top: 0;
clear:none;
}
img.alignleft {
    margin-left: 0;
    margin-right: 20px;
    margin-bottom: 20px;
    display: inline;
clear:none;
}
img.alignnone {
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 20px;
clear:none;
}

@media screen and (min-width: 980px) {
    img.alignnone3 {
        margin-right: 4em;
        margin-bottom: 20px;
        clear: none;
    }
}
.alignright {
  float: right;
}
.alignleft {
  float: left;
}



/* form
/* ------------------------------------- */
.form {
	padding: 4% 0px;
}
dl.fo {
	width: 92%;
}
.fo_box {
  background-color: #FFF;
}
dl.fo2 {
}
.fo_box2 {
}
dl.fo dt,
dl.fo2 dt {
	width: 20%;
	border-bottom: none;
	box-sizing: border-box;
  background-color: #FFF;
}
dl.fo dd,
dl.fo2 dd {
	width: 80%;
	border-left: #CBDDF5 1px solid;
	box-sizing: border-box;
	margin: 0px 0px 0px 0px;
}


.ecosam_i {
	width:80%;
	margin: 0 auto;
}
.car_b a {
	margin: 0px;
}	
.car_b a img {
	width:90%;
	margin: 30px auto;
}
	@media all and (-ms-high-contrast: none) {
.car_b a img {
    margin: 35px auto;
  }
}
}
/* ------------------------------------- */
/*	 resposive1500
/* ------------------------------------- */
@media screen and (min-width: 1500px) {
.main_c {
top: 200px;
  margin: auto;
  color: #FFF;
  width:1500px;
  text-align: left;
  font-size:230%;
  font-weight:bold;
  line-height: .5em;
left: 0;
  right: 0;
  }
.main_c2 {
top: 200px;
  margin: auto;
  color: #FFF;
  width:1500px;
  text-align: left;
  font-size:230%;
  font-weight:bold;
  line-height: 1.3em;
left: 0;
  right: 0;
  }
  .parallax4 {
  width: 30%;
  margin: 20px 0 0 0;
  right: 40%;
}
}

/* 通常の設定 */
.c01, .c02, .c03 {
	margin-top: -3em; 
  }
  
  /* 画面幅が900px以下の時の調整 */
  @media screen and (max-width: 900px) {
	.c01, .c02, .c03 {
	  margin-top: -2em;  
	}
	#customer {
		margin-top: 1.5em; 
	  }
	#kenkou{
		margin-top: 1em;
	}
  }
  
   /* 画面幅が650px以下の時の調整 */
  @media screen and (max-width: 650px) {
	.c01, .c02, .c03 {
	  margin-bottom: 1em; 
	  margin-top: 0.5em;
	}
    
  }

/* 次世代デジタル開発の背景画像 */
.business_menu ul li:nth-child(9) a {
	background: url('../img/orange.jpg') right;
	background-size: 200%;
	-webkit-filter: opacity(100%);
	filter: opacity(100%);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
  }
  
  /* トータルソリューションの背景画像 */
  .business_menu ul li:nth-child(10) a {
	background: url('../img/orange.jpg') right;
	background-size: 200%;
	-webkit-filter: opacity(100%);
	filter: opacity(100%);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
  }
  
  /* MSC-AIソリューションの背景画像 */
  .business_menu ul li:nth-child(11) a {
	background: url('../img/orange.jpg') right;
	background-size: 200%;
	-webkit-filter: opacity(100%);
	filter: opacity(100%);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
  }


/* 次世代デジタル開発、トータルソリューション、MSC-AIソリューションのホバー効果 */
.business_menu ul li.orange a:hover::after {
	content: ''; /* 擬似要素を表示 */
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(255, 255, 255, 0.5); /* 半透明な白色 */
	z-index: 1; /* 背景画像の上に表示 */
	transition: background 2s ease-in-out, opacity 1s ease-in-out; /* 背景と透明度の遷移をふんわり */
	opacity: 1; /* デフォルトの透明度を1に設定 */
  }


    /* DX推進の取り組み */
	.abouts_menu ul li:nth-child(7) a {
		background: url('../img/blue2.jpg') right;
		background-size: 200%;
		-webkit-filter: opacity(100%);
		filter: opacity(100%);
		-webkit-transition: .3s ease-in-out;
		transition: .3s ease-in-out;
	  }
	
	
	/* DX推進の取り組み */
	.abouts_menu ul li.blue2 a:hover::after {
		content: ''; /* 擬似要素を表示 */
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: rgba(255, 255, 255, 0.5); /* 半透明な白色 */
		z-index: 1; /* 背景画像の上に表示 */
		transition: background 2s ease-in-out, opacity 1s ease-in-out; /* 背景と透明度の遷移をふんわり */
		opacity: 1; /* デフォルトの透明度を1に設定 */
	  }
	


	  