/*
Theme Name: Lightning Child
Theme URI: 
Template: lightning
Description: 
Author: 
Tags: 
Version: 0.6.0
*/

body{
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 500;
  font-style: normal;
	color:#3f4c9c;
}
li a, p a {
    text-decoration:none;
		color:#3f4c9c;
}
.orange{
	color:#ff6700;
}
.red{
	color:#cc0000;
}
.blue{
	color:#3f4c9c;
}
.site-body{
	padding:0;
}
.main-section--margin-bottom--on {
    margin-bottom: 0;
}
.site-header-logo img {
/*width: 280px;*/
height: 80px;
max-height: 80px;
}
.page-header {
   background:#fff;
}

/*.page-header{
	display:none;
}*/

.breadcrumb{
	border:none;
}

/*top*/
.top{
	display:flex;
	justify-content: flex-start;
	position:relative;
}
.top_txt{
	writing-mode: vertical-rl;
	font-size:2.5vw;
	letter-spacing:7px;
	color:#3f4c9c;
    padding-top:1.5rem;
    line-height: 180%;
   /* height: calc(1em * 1.8 * 5.5);*/
	min-height:350px;
	letter-spacing: 0.8rem;
}

.top_underline { 
	text-decoration-line: underline; 
	text-decoration-thickness: 1px;

}

.eachTextAnime span{opacity: 0;}
.eachTextAnime.appeartext span{ animation:text_anime_on 1s ease-out forwards; }
@keyframes text_anime_on {
  0% {opacity:0;}
  100% {opacity:1;}
}


.top1,.top2 {
	max-width:40%;
	padding-top:3rem;
}

.top_sub_txt{
	width:33vw;
	font-size:100%;
	margin-top:-8rem;
	z-index:999999;
	position:absolute;
	left:62vw;
background:rgba(255, 255, 255, 0.7);
  padding: 25px 20px;
	letter-spacing: 0.3rem;
}
.top_space{
	padding-top:25rem;	
}
.home h1.title{
	 left: calc(50% - 100px);
}
h1.title{
    position: relative;
    padding: 0.25em 1em;
    display: inline-block;
    text-align: center;
    line-height: 1.3;
    font-size: 1.7rem;
    color: #3f4c9c;
    top: calc(50% - 50px);
  /* left: calc(50% - 100px);*/
	letter-spacing: 0.2rem;
}
h1.title span{
	font-size:70%;
}
h1.title:before, h1.title:after { 
  position: absolute;
  top: 0;
  content:'';
  width: 8px;
  height: 100%;
  display: inline-block;
}
h1.title:before {
  border-left: solid 1px #3f4c9c;
  border-top: solid 1px #3f4c9c;
  border-bottom: solid 1px #3f4c9c;
  left: -10px;
}
h1.title:after {
  content: '';
  border-top: solid 1px #3f4c9c;
  border-right: solid 1px #3f4c9c;
  border-bottom: solid 1px #3f4c9c;
  right: -10px;
}
h2{
	color:#3f4c9c;
	font-size:1.4rem;
	border:none;
}
.sec01{
	background:#e1f4ff;
	padding:30px;
	width:85%;
	margin:5rem auto;

}

.sec01_1{
	background:#3f4c9c;
	padding:5px 30px;
	border-radius:10px;
	display:inline-block;
}
.sec01_1 a{
color:#fff;
} 
.sec02{
	background:#e1f4ff;
	padding:5rem 0;
	 width:100vw;
 margin-left:calc( ( 100% - 100vw ) / 2 );

}
.sec02 p{
text-align:center;
	letter-spacing: 0.2rem;
}
.sec02 p span{
	color:#ff6700;
}
.sec02_1{
	display:flex;
	    justify-content: center;
}
.sec02_2,.sec02_3{
	background:#fff;
	padding:15px 30px 0 30px;
	width:15%;
	border-radius:10px;
	margin:0 10px;
	text-align: center;
}
.sec02_2 img,.sec02_3 img{
width:125px;	
}
.sec02_4{
	padding:1rem 0;
}
.sec03{
	background:url(https://c3-support.com/215/images/top_bg.png)no-repeat;
	background-size:cover;
		 width:100vw;
 margin-left:calc( ( 100% - 100vw ) / 2 );
	padding:6rem 0;
}
.sec03_1{
background:#fff;
	border-radius:10px;
	width:65vw;
	margin:auto;
   padding:4rem;
}
.sec03_1 img{

}
.sec03 h2{
	color:#3f4c9c;
	font-size:1.4rem;
	border:none;
	text-align:center;
}
.b_logo{
	margin:auto;
	width:300px;
}
.sec03_2{
	display:flex;
	align-items: flex-start;
	 justify-content: space-between;
	max-width: 800px;
    margin: auto;
	
}
.sec03_2 img{
max-width:144px;
}
.sec03_3{
	display:flex;
	flex-direction: column;
	padding-right:0.5rem;
	align-items: flex-start;
}
.sec03_3 p{
max-width:250px;
	font-size:90%;
	line-height:1.4;
}
.sec03_3_0{
	display:flex;
width: 522px;
    margin: 1rem auto;
    gap: 2rem;

}
.sec03_4{
	margin-left:3rem;
color:#3f4c9c;
	font-size:105%;
	max-width: 30%;
}
.sec03_4 span{
color:#aa8d00;
}
.sec04{
	background:#fff;
   padding:5rem 0;
}
.sec04_sub_t{
	font-size:120%;

}
.sec04_0{
	display:flex;
}
.sec04_1,.sec04_2{
    min-width: 42%;
	
}
.sec04 p,.sec04_2 p{
    font-size: 95%;
    line-height: 1.9;
	max-width:90%;
}
.sec04_3 img{
	min-width:385px;
	
}
.sec04_3{
font-size:85%;
	
}
.sec04_4{
	margin:0;
}
.sec04_4 img{
	
}
.sec04_5{
	display: flex;
    justify-content: center;
	    align-items: flex-end;

}
.sec04_6{
		margin:0;
	display: flex;
    flex-direction: column;
	align-items: center;
	width:30%;
	
	padding-left:5%;
}
.sec04_7{
text-align:center;
	padding-left:15%;
}
/* その場で */
.fadeIn{
animation-name:fadeInAnime;
animation-duration:1s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeInAnime{
  0% {
    opacity: 0;
  }
	50%{
		 opacity: 0.5;
	}
  100% {
    opacity: 1;
  }
}
/* 左から */

.fadeLeft{
animation-name:fadeLeftAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeLeftAnime{
  from {
    opacity: 0;
	transform: translateX(-100px);
  }

  to {
    opacity: 1;
	transform: translateX(0);
  }
}
/* 下から */

.fadeUp{
animation-name:fadeUpAnime;
animation-duration:1s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeUpAnime{
  from {
    opacity: 0;
	transform: translateY(150px);
  }

  to {
    opacity: 1;
	transform: translateY(0);
  }
}
.fadeUpTrigger{
    opacity: 0;
}
.delay-time02{
animation-delay: 0.2s;
}

.delay-time04{
animation-delay: 0.4s;
}
.delay-time06{
animation-delay: 0.6s;
}
.delay-time08{
animation-delay: 0.8s;
}
/*WhtasNew*/
div.whatsnew{

}
div.whatsnew h1{
text-align:center;
}
div.whatsnew dt{
color:#3f4c9c;
	width:10rem;
}
div.whatsnew dd{
color:#3f4c9c;
}

.site-footer {
       margin-top: -2rem;
    background: #3f4c9c;
	color: #fff;
}
.site-footer a{
	color: #fff;
}


/*Technology*/
.page-id-5488 .site-body{
	background:#e1f4ff;
	padding-top:1rem;
 position: relative;
}

.page-id-5488 .site-body::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
   /* background-color: rgba(255, 255, 255,1);*/
	height:100px;
}
.tec_sec01{
	display:flex;
	justify-content: space-around;
	background:#fff;
	border-radius:15px;
	padding:3rem;
	margin-top: 6rem;
}
.tec_sec01_2{
	width:52%;
	text-align:center;
	font-size:90%;
	padding-top: 3rem;
}
.tec_sec01_3{
	width:42%;
}
.tec_sec02{
	display:flex;
	justify-content: space-between;
	background:#fff;
	border-radius:15px;
	padding:3rem;
	margin-top: 6rem;
}
.tec_sec02_1{
	width:40%;
	
}
.tec_sec02_2{
	padding-top:5rem;
	    text-align: center;
}
.tec_sec02_2 img{
	width:60%;
	max-width:450px;
}
.tec_sec03{
		background:#fff;
	border-radius:15px;
	padding:3rem;
	margin-top: 6rem;
}

.tec_sec03_1{
	display:flex;
    justify-content: space-between;

}	
.tec_sec03_2{
	width:40%;

}
.flex_colum{
	display:flex;
    flex-direction: column;
}
.tec_sec03_3{
font-size:85%;
	color:#000;
	display:flex;

	    justify-content: space-between;
}
.tec_sec03_3_1{
	 position: relative;
	 display: inline-block;
	    margin-top: 1.5rem;
}



.tec_sec03_3_1:before { 
  position: absolute;
  top: 1rem;
  content:'';
  width: 8px;
  height: 5.8rem;
  display: inline-block;
  border-left: solid 1px #3f4c9c;
  border-top: solid 1px #3f4c9c;
  border-bottom: solid 1px #3f4c9c;
  left: -10px;
}
.tec_sec03_3_1:after {
position: absolute;
    top: 0.8rem;
    content: '';
    width: 2rem;
    height: 0;
    display: inline-block;
    border-top: solid 1px #3f4c9c;
    right: -37px;
}
.tec_sec03_3_2{
	padding-top:3rem;
}
.tec_sec03_4,.tec_sec03_5{
	 display: flex;
	    padding-left: 3.5rem;
}
.tec_sec03_4 dt,.tec_sec03_5 dt{
font-weight:400;

}
.tec_sec03_4{
	 position: relative;
}

.tec_sec03_4:before { 
position: absolute;
    top: 0.5rem;
    content: '';
    width: 8px;
    height: 2rem;
    display: inline-block;
    border-left: solid 1px #3f4c9c;
    border-top: solid 1px #3f4c9c;
    border-bottom: solid 1px #3f4c9c;
    left: 38px;
}

.tec_sec03_6{
	padding-top:1rem;
}
.tec_sec03_7 {
    width: 35%;
    margin-left: auto;
    text-align: center;
    font-size: 85%;
    color: #000;
}
.tec_sec04{
		background:#fff;
	border-radius:15px;
	padding:3rem;
	margin-top: 6rem;
}

.tec_sec04_1{
	display:flex;
    justify-content: space-between;

}
.tec_sec04_2{
	width:40%;
}
.tec_sec04_2 img{
	padding-top:3rem;
}
.tec_sec04_3{
	width:50%;
}
.tec_sec05{
		background:#fff;
	border-radius:15px;
	padding:3rem;
	margin: 6rem 0;
}

.tec_sec05_1{
	display:flex;
    justify-content: space-between;

}
.tec_sec05_2{
	width:40%;
}
.tec_sec05_3 {
display: flex;
    align-items: center;
    width: 50%;

	justify-content: space-around;
}
.tec_sec05_3 img{
	width:200px;
	max-height:78px;
}

/*専門家*/
.page-id-5616 .site-body{
	background:#e1f4ff;
 position: relative;
	padding-bottom:6rem;
	padding-top:1rem;
	
}

.page-id-5616 .site-body::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    /*background-color: rgba(255, 255, 255,1);*/
	height:100px;
}
.ex01{
	background:#fff;
	border-radius:15px;
	padding:3rem;
	margin: 6rem 0;
    display: flex;
    flex-direction: column;
    align-items: center;
	text-align:center;
}
.ex01_1{
margin-top:3rem;
	background: #3f4c9c;
    padding: 5px 30px;
    border-radius: 10px;
    display: inline-block;
}
.ex01_1 a{
	color:#fff;
}
.ex02{
	background:#fff;
	border-radius:15px;
	padding:3rem;
	margin: 6rem auto;
    display: flex;
    flex-direction: column;
    align-items: center;
	text-align:center;
	width:40%;

}
.ex02 img{
width:200px;
	padding-bottom:2rem;
}
.ex02 span{
	font-size:120%;
	font-weight:600;
	padding-left:10px;
}

/*aboutus*/
.page-id-25 .site-body{
	background:#e1f4ff;
 position: relative;
	padding-bottom:6rem;
	padding-top:1rem;

}

.page-id-25 .site-body::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
   /*background-color: rgba(255, 255, 255,1);*/
	height:100px;
}

.slideConts{
    opacity: 0;
}
.slide{
  animation: slideAnime 2s ease forwards;
}
@keyframes slideAnime {
  from {
  opacity: 0;
  }

  to {
  opacity: 1;
  }
}
.txt1 {animation-delay: 0.2s;}
.txt2 {animation-delay: 0.8s;}
.txt3 {animation-delay: 1.4s;}

.about01{
	background:#fff;
	border-radius:15px;
	padding:3rem 8rem;
	margin: 6rem 0;

}
.about01_1{
	display:flex;
    justify-content: space-between;
	padding-top:3rem;
}
.about01 h2{
	font-size: 2.5rem;
    margin: 0;
    padding: 0.3rem;

}
.about01_2{
width: 40%;
    padding-left: 3rem;
}
.about01_3{
width: 53%;
    padding-left: 3rem;
}
.about01_3 img{
	width:280px;
}

.about02{
	background:#fff;
	border-radius:15px;
	padding:3rem 10rem;
	margin: 6rem 0;
}
.about02 h2{
text-align:center;
padding-top: 5rem;
}
.about02_2 img{
max-width:170px;	
}
.about02_1{
	display:flex;
    justify-content: space-between;
	margin-bottom:6rem;
}
.about02_2 p{
    line-height: 1.4;
}
.about02_3{
width:72%;	
}
.about02_5{
	padding-bottom:2rem;
	font-size:90%;
}
.about02_5 img{
max-width:170px;

}
.about02_5 p{
	line-height:1.3;
}
.big{
	font-size: 150%;
    font-weight: 600;
}
.small{
	font-size:85%;
}
.about02_4{
    display: flex;
    justify-content: flex-start;
	flex-wrap: wrap;
	
}
.about02_4_1{
    display: flex;
    justify-content: space-around;
	flex-wrap: wrap;

}
.about02_6{
	 background: #384D98;
    padding: 10px 10px 1px 10px;
	color:#fff;
}
 .about02_7 table, .about02_7 table  td, .about02_7 table  th  {
	border:0px!important;
}
.about02_7 table  td{
		vertical-align:top;
}
.about02_7{
text-align:left;
}
.about02_7_2{
width:20%;

}

.about02_7_3{
width:80%;
	
}
/*モーダル*/
.modal-wrapper {
  z-index: 999;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 60px 10px;
  text-align: center
}
.modal-wrapper p{
	text-align:left;
}
.modal-wrapper:not(:target) {
  opacity: 0;
  visibility: hidden;
  transition: opacity .3s, visibility .3s;
}

.modal-wrapper:target {
  opacity: 1;
  visibility: visible;
  transition: opacity .4s, visibility .4s;
}

.modal-wrapper::after {
  display: inline-block;
  height: 100%;
  margin-left: -.05em;
  vertical-align: middle;
  content: ""
}

.modal-wrapper .modal-window {
  box-sizing: border-box;
  display: inline-block;
  z-index: 20;
  position: relative;
  width: 60%;
 max-width:760px;
  padding: 30px 30px 15px;
  border-radius: 2px;
  background: #fff;
  box-shadow: 0 0 30px rgba(0, 0, 0, .6);
  vertical-align: middle
}

.modal-wrapper .modal-window .modal-content {
  max-height: 80vh;
  overflow-y: auto;
}

.modal-overlay {
  z-index: 10;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, .8)
}

.modal-wrapper .modal-close {
  z-index: 20;
  position: absolute;
  top: 0;
  right: 0;
  width: 35px;
  color: #95979c !important;
  font-size: 20px;
  font-weight: 700;
  line-height: 35px;
  text-align: center;
  text-decoration: none;
  text-indent: 0
}

.modal-wrapper .modal-close:hover {
  color: #2b2e38 !important
}
/*モーダルここまで*/
/*マウスオーバー*/
.over {
	width:			170px;
	height:			294px;
	overflow:		hidden;
	margin:			10px 9px 18px 18px;
	position:		relative;
}
.over .caption {
	
	color:			#fff;
	padding-top:		10px;
	text-align: 		center;
}
.over .mask {
	width:			100%;
	height:			80px;
	position:		absolute;
	bottom:			-80px;	/* 枠の上に置いて表示しない */
	left:			0;
	background-color:	rgba(0,0,0,0.4);
	-webkit-transition:	all 0.4s ease;
	transition:		all 0.4s ease;
}
.over:hover .mask {
	bottom:		0px;	
}
.over img {
	-webkit-transition:	all 0.4s ease;
	transition:		all 0.4s ease;
	-webkit-transform:	scale(1.1);	/* 1.1倍の大きさで表示 */
	transform:		scale(1.1);
}
.over:hover img {
	margin-bottom:		50px;			/* 画像の絵を下にずらす */
	-webkit-transform:	scale(1);	/* 元の大きさに戻す */
	transform:		scale(1);
}

.about03{
	background:#fff;
	border-radius:15px;
	padding:3rem 12rem;
	margin: 6rem 0;
}
.about03 h2{
text-align:center;	
}

.about03_1 dl {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
.about03_1 dt {
  width: 35%;
  padding-bottom: 20px;
  margin-bottom: 10px;
border-bottom:1px solid #ccc;
	padding-left:2rem;
}

.about03_1 dd {
  width: 65%;
  padding-bottom: 20px;
  margin-bottom: 10px;
	border-bottom:1px solid #ccc;
}
.about03_2{
	text-align:center;
}
.about03_2_1{
	margin-top:5rem;

}
.about03_2_2{
	border-radius:10px;
	border:2px solid #3f4c9c;
	padding:20px 50px;
	font-size:135%;
	display:inline-block;
}
/*株主*/
.about05{
	background:#384d98;
	padding:20px;
	border-radius: 15px;
}
.about05_1{
	display:grid;
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    column-gap: 10px;
    row-gap: 10px;
}
.about05 img{
max-width:200px;
	height:120px;
}
.mouse_over{
	-webkit-transition:	all 0.4s ease;
	transition:		all 0.4s ease;

}
.mouse_over:hover  {
	-webkit-transform:	scale(1.1);	
	transform:		scale(1.1);
}
.about05 h2 {
    text-align: center;
	color:#fff;
}
.about04{
	background:#fff;
	border-radius:15px;
	padding:3rem 12rem;
	margin: 6rem 0;
	
}
.about04_2{
	text-align:center;
	padding:2rem;
}
.about04_2 img{
width:300px;	
}
.about04 h2{
text-align:center;	
}
.about06{
	padding-top:5rem;
	
}
 .about06 table, .about06 table  th  {
	border:0px!important;
}
.about06 table th{
	color:#fff;
	background:#384D98;
	text-align:left;
}
.about06 table td{
	border-bottom:1px dashed #e1e3e9;
	border-top:0px!important;
	border-left:0px!important;
	border-right:0px!important;
	
}
.about06_1{
	width:20%;
}
.about06_2{
	width:20%;
}
.about06_3{
	width:60%;
}
.about07_0 h2 {
    text-align: center;
	position: relative;
}
.about07_0 h2:before{
    position: absolute;
    border-bottom: 2px solid;
    bottom: 9px;
    width: 32%;
    height: 1px;
    content: '';
    left: 50%;
    transform: translateX(-50%);
}
.about07_0{
	margin-top:5rem;
	padding:2rem;
}
.about07{
	display:flex;
	flex-wrap: wrap;
	justify-content: space-between;

}

.about07 img,.about07_9 img{
	box-shadow:2px 2px 2px #ccc;
	    border: 1px solid #ccc;
}
.about07_1{
	width:30%;
}
.about07_2{
	width:30%;
}
.about07_3{
	width:30%;
}
.about07_4{
	width:25%;
}
.about07_5{
	width:35%;
}
.about07_6{
	width:30%;
}
.about07_9{
	display:flex;
    margin-top: -12rem;
}
.about07_7{
	width:30%;
	 margin-right: 5%;
}
.about07_8{
	width:30%;
}

/*スクロールで伸びる線*/
.timeline li{
    position: relative;
	list-style: none;
	padding:0 0 20px 0;
}
.timeline li.red{
    position: relative;
	list-style: none;
	padding:0 0 20px 0;
}
.timeline dl{
	margin:0 0 20px 3em;
	position: relative;
	font-size:1rem;
	    line-height: 1.8;
	
}
.timeline dt{
position: absolute;
    left: -10rem;
	font-size:1.4rem;
	top:-15px;
}
/*絶対配置で線を設定*/
.border-line {
    /*線の位置*/
	position: absolute;
	left:0.5em;
	top:0;
	width:2px;/*線の太さ*/
	height:0;/*はじめは高さを0に*/
	background: #3f4c9c;
}
.border-line .last{
	   position: relative;
}
.border-line.last:before{
 content: '';
  /*width: 0.65em;*/
  height: 1em;
  border: 0.1em solid currentColor;
  border-top: 0;
  border-right: 0;
  transform: rotate(-30deg);
  transform-origin: bottom left;
  position: absolute;
  left: 50%;
  bottom: -0.05em;
  box-sizing: border-box;
    color: #3f4c9c;
}


/*タイムラインの見出し横の丸の位置と形状*/
.timeline li::after{
	content:'';
	position: absolute;
	top:10px;
	left:0;
	width:18px;
	height: 18px;
	background:#3f4c9c;
	border-radius: 50%;
}
.timeline li.red::after{
	content:'';
	position: absolute;
	top:10px;
	left:0;
	width:18px;
	height: 18px;
	background:#cc0000;
	border-radius: 50%;
}
.fadein_text,
.fadein_text span {
  opacity: 0;
}
@media (max-width: 440px) {
	.top{
		    flex-wrap: wrap;
	}
	.top1, .top2 {
		max-width: 50%;
	}
  .top_txt {
    writing-mode: horizontal-tb;
	      font-size: 5vw;
    letter-spacing: 7px;

    line-height: 180%;
    /* height: calc(1em* 1.8* 5.5); */
    min-height: 10px;
    padding: 1rem;
	}
	.top_space {
    padding-top: 36rem;
}
	.space{
		padding-left:5rem;
	}
	.top_sub_txt {
    width: 100vw;
    font-size: 103%;
    margin-top: -3rem;

    left: 0;
     background: none;
    padding: 25px 20px;
	}
	.home h1.title {
   left: calc(50% - 90px);
	}
	.sec01 {
	width:95%;	
	}
  .sec02_2, .sec02_3 {
    width: 45%;
	}

	.sec03{
		padding:0;
    background:none;
	}
	.sec03_1{
		width:95vw;
		padding:1rem;
	}
	.sec03_2 {
    flex-wrap: wrap;
	}
	.sec03_3_0{
		width:100%;
		gap:1rem;
	}
	.sec03_3{
		width:32%;
		
	}
	.sec03_2 img {
    max-width: 100px;
}
	.sec03_4 {
    max-width: 100%;
	}
	.sec04_0 {
    flex-direction: column-reverse;
}
	.sec04_3 {
		padding-bottom:1rem;
	}
	.sec04_3 img {
    min-width: 353px;
    padding-left: 0;
}
	.sec04_6{
		width:50%;
		
	}
	.about01 {
    padding: 3rem 1rem;
    margin: 0;
	}
	.about01_1 {
    padding-top: 3rem;
    flex-direction: column-reverse;
}
	.about01_2 {
    width: 80%;
	}
	.about01_3 {
    width: 100%;
   padding-left: 0; 
}
	.about02 {
    padding: 3rem 1rem;
    margin: 0;
}
	.about02_1 {
    flex-direction: column;
	align-items: center;
}
	.about02_3 {
    width: 100%;
}
	.about02_4 {
    justify-content: space-between;
	}
	.about02_5 {
    font-size: 100%;
}
	.about02_5 img{
		max-width:155px;
		
	}
	.over .caption span {
		font-size:85%;
	}
	.over {
    width: 155px;
    height: 290px;
    margin: 10px 0px 10px 0px;
}
	.about02_2 img{
		
		
	}

	.about03 {
    padding: 3rem 1rem;
    margin: 0;
}
	.about04 {
    padding: 3rem 1rem 3rem 6rem;
    margin: 0;
}
	
	.about05_1 {
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 24px 6%;
}
	.about05 img {
    max-width: 155px;
    height: 102px;
}
	.about06_1 {
    width: 26%;
}
	.about06_2 {
    width: 32%;
}
	.about07 {
		align-items: center;
	}
	.about07_0 {
 padding: 2rem 1rem 0rem 1rem;
	}
	
	.about07_1,.about07_2, .about07_3,.about07_4,.about07_5,.about07_6,.about07_9 {
	width:46%;	
	}
	.about07_7,.about07_8{
		width:100%;
	}
		.about07_5 {
	    margin-top: -8rem;
	}
	.about07_9 {
    flex-direction: column;
		margin-top:-8rem;
	}
	.tec_sec01 {

    padding: 1rem;
    margin-top:0;
    flex-direction: column-reverse;
}
	.tec_sec01_2 ,.tec_sec01_3{
		width:100%;
	}
	.tec_sec02,.tec_sec03 ,.tec_sec04  {
    padding: 1rem;
    margin-top: 3rem;
    flex-direction: column;
}
	.tec_sec02_1,.tec_sec03_2 {
    width: 100%;
}
	.tec_sec03_1,.tec_sec04_1 {
    flex-direction: column;
}
	.tec_sec04_2,.tec_sec04_3,.tec_sec05_2{
		width:100%;
	}
	.tec_sec05_1{
		flex-direction: column;
		    align-items: center;
	}
	.ex02 {
    width: 100%;
	}
}

.contact_banner{
	background:#fff;
	padding:8px 40px;
	border-radius:8px;
	display:inline-block;
	text-align:center;
	font-size:120%;
}
.contact_banner a{
color:#3f4c9c;
	font-weight:600;
}

.widget p{
	font-size:130%;
}
.row {
    width: 100%;
    margin: auto;
	align-items: center;
}
#block-10{

}
/*linkedin*/
.floating-linkedin{
  position: fixed; /* バナーを追従させる */
  z-index: 99999; /* 他の要素の下に隠れないように */
  top: 30vh; /* バナーの上下の位置 */
  right: 0; /* バナーの左右の位置 */
  width: 100px; /* バナーの横幅 */
}
.floating-linkedin_image {
 /* max-width: 100%;*/
}
@media screen and (max-width: 990px) { /* タブレット用のブレイクポイントを指定 */
  .floating-linkedin {

  }
}
@media screen and (max-width: 560px) { /* スマホ用のブレイクポイントを指定 */
  .floating-linkedin {
 
    width: 20vw; 
  }
}

/* 親要素：Pinterest風（3列・上揃え） */
.logo-grid {
  column-count: 3;         /* 3列 */
  column-gap: 16px;        /* 列と列の間隔 */
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
}

/* 各要素（aタグ） */
.logo-grid > a {
  display: block;
  margin-bottom: 16px;     /* 上下の画像同士の間隔 */
  break-inside: avoid;     /* 画像が途中で途切れるのを防ぐ */
  width: 100%;
}

/* 1行目（1〜3個目）のaタグだけ、1行目の上端をピッタリ揃えるための指定 */
.logo-grid > a:nth-child(1),
.logo-grid > a:nth-child(2),
.logo-grid > a:nth-child(3) {
  margin-top: 0;           /* 一番上の余白をゼロにして上端を揃える */
}

/* 画像の設定（比率は維持したまま枠幅いっぱいに拡大） */
.logo-grid img {
  width: 100%;
  height: auto;            /* 文字が潰れないよう自動調整 */
  display: block;
	box-shadow: 2px 6px 5px #ccc;
}
.logo-grid br {
  display: none !important;
}