@charset "utf-8";
/* CSS Document */
@import url('https://fonts.googleapis.com/css2?family=Sawarabi+Mincho&display=swap');

img {
	/*width: 100%;*/
	max-width: 100%;
}

header {
	background-color: #ffffff;/*#efefef*/
}

.img-c {
	display: block;
	margin: 0 auto;
}
.blue {color: #2a51ce;}
.red {color: #FF0000;}
.txt16 {
	font-size: 16px;
}
.txt18 {
	font-size: 18px;
}
.txt20 {
	font-size: 20px;
}
.txt24 {
	font-size: 24px;
}
.content{
	max-width: 1080px;
	display: block;
	margin: 30px auto;
}
.cont_title-01 {
	font-size: 28px;
	margin: 0 0;
}
.cont_title-02 {
	font-size: 20px;
	margin: 0 0;
}
.content p {
	
}

/*-----------------------
    header title
-----------------------*/
.head-block {
  display: grid;
  grid-template-columns: 43% 57%;
  grid-template-rows: auto; 
  gap: 0; 
  grid-template-areas:
	  "hd1 hd2";
  padding: 80px 0 80px 0;
}
.hd-title-img {
	height:90px;
	width: auto;
}
.hd-block_1 {
	display:flex;
	align-items: flex-end;
}
.hd-block_1 h1 {
	margin:0;
}
.hd-bl_tbl-cell ul {
	margin: 0 0 3px 0;
	list-style: none;
}
.hd-bl_tbl-cell ul li {
	font-size:16px;
	font-weight: 400;
	line-height: 1em;
	margin-top: .5em;
}
.hd-bl_tbl-cell ul li:before{
	content:url("");
	margin-right:5px;
	display: inline-block;
	width: 10px;
	height: 12px;
	background-image: url(../images/allow-right-g.png);
	background-size: contain;
	vertical-align:middle;	
}
.hd-bl_tbl-cell ul li a{
	color:#808080;
}
.hd-bl_tbl-cell ul li a:hover{
	color:#333;
}
.head-img_1{
	
}
.head-img_2{
	
}
.head-block-s {
  display: grid;
  grid-template-columns: 18.5% 80.5%;
  grid-template-rows: auto; 
  gap: 0; 
  grid-template-areas:
	  "hd1 hd2";
  padding: 80px 0 80px 0;
}
.bread-box {
    width:100%;
    max-width: 1200px;
    display: block;
    margin:0 auto;
    background-color: #fff;
}
.breadcrumb2 a {
    color:#212121;
}
@media (max-width:820px) {
.head-block {
  grid-template-columns: 40% 60%;
}
.head-block-s {
  grid-template-columns: 5% 95%;
}
.hd-title-img {
	height:80px;
}
}
@media (max-width:520px) {
.head-block {
  grid-template-columns: 10% 90%;
}
.head-block-s {
  grid-template-columns: 1% 99%;
}
.hd-title-img {
	height:50px;
}
.cont_title-01 {
	font-size: 26px;
}
}
/*---- end ------*/
/*-----------------------
    contents title
-----------------------*/
.title-box {
    margin:0 0 50px 0;
}
.title-box  h1 {
    font-size: 32px;
    margin:0;
}
.title-box  p {
    padding: 0;
    margin:0;
    color: #666;
}
.cont-grid {
  display: grid; 
  grid-template-columns: 25% 75%; 
  grid-template-rows: auto; 
  gap: 5px; 
  grid-template-areas:
	  "box1 box2";
}
.cont-grid .left_menu {	
	margin: 0;
	padding: 10px 5px 30px;
}
.cont-grid .right_contents {
	margin: 0;
	padding: 40px 10px 30px;
}
.cont-grid2 {
  display: grid; 
  grid-template-columns: 25% 75%; 
  grid-template-rows: auto; 
  gap: 5px; 
  grid-template-areas:
	  "box1 box2";
}
.cont-grid2 .left_menu {	
	margin: 0;
	padding: 20px 10px 30px;
}
.cont-grid2 .right_contents {
	margin: 0;
	padding: 0px 10px 30px;
}

.l-menu-box {
	margin: 0px 30px ;
}
.left_menu-titlel {
	padding: 0 2em .3em 0;
	margin-top:20px;
	font-size: 24px;
	width:fit-content;
	line-height: 1.4em;
}

.menu_side-l {
	list-style: none;
	padding: 0;
	margin-top:20px; 
}
.menu_side-l li {
	margin-bottom: 1.3em;
	line-height: 1.2em;
	font-size: 14px;
	text-indent: 1em; 
}
.menu_side-l li a{
	color: #111; 
}
.menu_side-l li a:hover{
	color: #2a51ce; 
}
.menu_side-l .current {
	border-left:4px solid #2a51ce;
	padding-left: .6em;
	text-indent: 0; 
}

.sol_menu {
	
}
.sol_menu a {
	text-decoration: none;
	color: #111;
}
.sol_menu_header {
	border:1px solid #ccc;
	padding: 8px 10px;
	margin: 0;
	border-radius: 5px 5px 0 0;
}/*
.sol_menu_header:nth-child(1):before {
	content:url("../../solution/images/icon_car.svg");
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-right:8px;
	fill:currentColor;
}*/
.sol_menu_inner {
	border:1px solid #ccc;
	padding: 15px 10px;
	margin: 0 0 10px 0;
	border-radius: 0 0 5px 5px;
}

.sol_menu_head_curent {
	border:1px solid #ccc;
	padding: 8px 10px;
	margin: 0 0 10px 0;
	border-radius: 5px;
	background-color: #a0a0a0;color:#fff;
}
.sol_menu_head_link {
	border:1px solid #ccc;
	padding: 8px 10px 8px 8px;
	background-image: url("../../solution/images/allow-r.png");
	background-repeat: no-repeat;
	background-position: right 5px center;
	background-size: 12px;
	margin: 0 0 10px 0;
	border-radius: 5px;
}
.sol_menu_head_link:hover {
	opacity: 0.5;
}

@media (max-width:820px) {
.bread-box {
padding-left: 10px;
}
.title-box {
    margin:0 0 50px 10px;
}
}

@media (max-width:520px) {
.cont-grid .right_contents {
	padding: 50px 10px 30px;
}
}
/*-------------------------
        aboutus  
--------------------------*/
.about_tbl {
	width: 100%;
	border-collapse: collapse;
}
.about_tbl th,.about_tbl td{
	border-bottom: 1px solid #ccc;
	vertical-align: top;
}
.about_tbl tr:nth-child(1) th{
	border-top: 1px solid #ccc;
}
.about_tbl tr:nth-child(1) td{
	border-top: 1px solid #ccc;
}
.about_tbl th{
	width: 20%;
	font-weight: 500;
	text-align: left;
	padding: 15px 10px;
}
.about_tbl td{
	width: 80%;
	padding: 15px 0;
}
.about_tbl td img {
	max-width: 300px;
	display: block;
	margin: 5px 0;
}
.about_tbl ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
.about_tbl ul li{
	text-indent: -1.2em;
	padding-left: 1.3em;
	margin: 0 0 1em 0
}
.about_tbl ul li:before {
	content:"\025cf";
	color: #2a51ce;
	margin-right:.05em;
}
/*-------------------------
        history  
--------------------------*/
.his-grid2 {
	display: grid; 
  grid-template-columns: 40% 20% 40%; 
  grid-template-rows: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr; 
  gap: 0px 0px; 
  grid-template-areas: 
    ". . ."
    ". . ."
    ". . ."
    ". . ."
    ". . ."
    ". . ."	
    ". . ."
    ". . ."
    ". . ."
    ". . ."
    ". . ."
	  ; 
}
.his-grid2 div {
	vertical-align: bottom;
}
.his_cell_05,.his_cell_08,.his_cell_11,.his_cell_14,.his_cell_17,.his_cell_20,.his_cell_23,.his_cell_26,.his_cell_29,.his_cell_32 {
    text-align: center;
    vertical-align: bottom;
    background-image:url("../images/history_line.png");
    background-repeat:repeat-y;
	background-position: center;
	padding: 10px 10px;	
}


.his_area {
	margin: 0;
    padding: 0 15% 50px;
}
.his-grid {
    display: table; 
}
.his_row {
    display:table-row;
}
.his_cell {
    display:table-cell;
}
.his_cell:nth-child(1) {
    text-align: right;
    vertical-align: bottom;
	width:40%;
	padding: 10px 10px;
}
.his_cell:nth-child(1) > img{
	width: 90%;
	max-width:250px;
}
.his_cell:nth-child(1) p {
    float: right;
	text-align: left;
}
.his_cell:nth-child(2) {
    text-align: center;
    vertical-align: bottom;
    background-image:url("../images/history_line.png");
    background-repeat:repeat-y;
	background-position: center;
	width:20%;
	padding: 10px 10px;
}
.bg-img_none {
    background-image:none!important;
}
.his-p-top {
	vertical-align: top!important;
}
.his_cell:nth-child(3) {
    vertical-align: bottom;
	width:40%;
	padding: 10px 10px;
}
.his_cell:nth-child(3) > img{
	width: 90%;
	max-width:250px;
}
@media (min-width:520.1px) {
.his-sp {
	display: none;
}	
}
@media (max-width:520px) {
.his-grid {
    display: none;
}
.his_cell-sp {
    display:block;
	width:100%;
    background-image:url("../images/history_line.png");
    background-repeat:repeat-y;
	background-position: center;
	padding: 0 10px;
}
.his_cell-sp p {
    margin: 0!important;
	padding: 20px 0;
	font-size: 18px;
	text-align: center;
}
.his_cell-sp img {
    display:block;
	margin:0 auto;
}	
.his_cell:first-child {
    background-image:none!important;
}
.sp_pdb50{
	padding-bottom: 50px;
		
}
.sp_pdt50{
	padding-top: 50px;
		
}
.sp_pdb80{
	padding-bottom: 80px;
		
}
.sp_pdt80{
	padding-top: 80px;	
}
}
/*-------------------------
        お問い合わせ  
--------------------------*/
.contact-box {
	width: 100%;
	background-color: #2a51ce;
	color:#fff;
	padding: 30px 20px 40px;
	border-radius: 10px;
}
.contact-p {
	font-size: 18px;
	font-weight: 600;
}
.contact-box-title {
	text-align: center;
	font-size: 24px;
	font-weight: 600;
	margin: 0 0 0 0;
	letter-spacing: 0.02em;
}
.contact-box-tel {
	font-size: 36px;
	font-weight: 600;
	text-align: right;
	margin: 10px 20px 0 0;
	padding: 0;
}
.contact-box-tel:before {
	content:url("../images/phone.svg");
	display: inline-block;
	width: 28px;
	height: 28px;
	margin-right:10px;
}
.contact-tel-box2 {
	width:80%;
	margin: 0 10%;
	display: grid;
	grid-template-columns: 50% 50%;
	grid-template-rows: auto;
	gap: 0px;	
}

.contact-list {
	list-style: none;
	width:fit-content;
	display: block;
	margin: 20px auto 0;
}
.contact-list li {
	display: inline-block;
	width:fit-content;
	margin-right:3em;
	font-size: 16px;
}
.contact-list li a {
	color:#fff;
}
.contact-list li a:hover {
	color:#aaa;
}
.contact-list li:nth-child(1):before {
	content:url("../../support/images/email.svg");
	display: inline-block;
	width: 10px;
	height: 10px;
	margin:-25px 20px 0 0;
	vertical-align: middle;
}
.contact-list li:nth-child(2):before {
	content:url("../../support/images/pin.svg");
	display: inline-block;
	width: 10px;
	height: 10px;
	margin:-25px 15px 0 0;
	vertical-align: middle;
}
.inq-box {
	display: grid; 
    grid-template-rows: 1fr;
    grid-template-columns: 50% 50%;   
    gap: 20px;
    height: auto;
	margin: 10px 10px 10px 0px;
	color:#2a51ce;	
}

.inq-box-title {
	border-bottom:1px solid #2a51ce;
	font-size: 24px;
	background-image: url("../../company/images/play.svg");
	background-repeat: no-repeat;
	background-position: right;
	background-size: 22px;
}

.inq-box-list {
	list-style: none;
	padding: 0;
	margin: 0;
}
.inq-box-list li {
	margin-bottom: .8em;
	
}
.inq-box-list li:after {
	content: "\025b6";
	color:#aaa;
}
.inq-box-list li a {
	color: #111;
}
.inq-box-list li a:hover {
	color: #ccc;
}
.contact-menu {
	list-style: none;
	padding: 0;
	margin: 20px 0 30px;
	font-size: 0;
}
.contact-menu li {
	display: inline-block;
	width:49.6%;
	font-size: 16px;
	text-align: center;
	border:1px solid #2a51ce;
	border-radius: 5px;
	margin: 0 0 0 2px;
	padding: 8px 5px;
}
.contact-menu2 {
	list-style: none;
	padding: 0;
	margin: 20px 0 30px;
	font-size: 0;
}
.contact-menu2 li {
	display: inline-block;
	width:33%;
	font-size: 16px;
	text-align: center;
	border:1px solid #2a51ce;
	border-radius: 5px;
	margin: 0 0 0 2px;
	padding: 8px 5px;
}
/*
.contact-menu li:first-child {
	margin-right: 3px;
}*/
.contact-menu li:after {
	content: "\03e";
	margin-left:5px;
}
.contact-menu li a{
	color: #2a51ce;
}
.contact-menu li:hover {
	opacity: 0.5;
}
.contact-menu2 li:after {
	content: "\03e";
	margin-left:5px;
}
.contact-menu2 li a{
	color: #2a51ce;
}
.contact-menu2 li:hover {
	opacity: 0.5;
}
.contact-tab {
	list-style: none;
	padding: 0;
	margin: 20px 0 0;
	font-size: 0;
}
.contact-tab li {
	display:inline-block;
	width:33.33%;
	font-size: 17px;
	text-align: center;
	border:1px solid #2a51ce;
	border-radius: 5px 5px 0 0 ;
	margin: 0;
	padding: 20px 5px;
}
.contact-tab .current {
	background-color:#2a51ce;
	color:#fff;
}
.contact-tab .list_n1:before {
	content:url("../../support/images/form.svg");
	display: inline-block;
	width: 10px;
	height: 10px;
	margin:-17px 15px 0 0;
	vertical-align: middle;
	fill:currentColor;
}
.contact-tab .list_n2:before {
	content:url("../../support/images/monitor-cellphone.svg");
	display: inline-block;
	width: 10px;
	height: 10px;
	margin:-17px 20px 0 0;
	vertical-align: middle;
	fill:currentColor;
}
.contact-tab .list_n3:before{
	content:url("../../support/images/test-tube.svg");
	display: inline-block;
	width: 10px;
	height: 10px;
	margin:-17px 15px 0 0;
	vertical-align: middle;
	fill:currentColor;
}
.contact-tab a:visited,.contact-menu a:visited,.contact-list a:visited{
	color:#2a51ce;
}
.contact-tab a:hover {
	opacity: 0.5;
}

.form-box {
	padding:20px;
	border: 1px solid #2a51ce;
}
.form-box img {
	max-width: 100%;
}
.form-area {
	display: block;
	margin: 0 auto;
	max-width: 800px;
}

.area80 {
	width:80%;
	display: block;
	margin: 0 auto;
}
/*-------------------------
        資料ダウンロード  
--------------------------*/
.catalog-tab {
	list-style: none;
	padding: 0;
	margin: 20px 0 0;
	font-size: 0;
}
.catalog-tab li {
	display:inline-block;
	width:50%;
	font-size: 16px;
	text-align: center;
	border:1px solid #2a51ce;
	border-radius: 5px 5px 0 0 ;
	margin: 0;
	padding: 8px 5px;
}
.catalog-tab .current {
	background-color:#2a51ce;
	color:#fff;
}
.catalog-list {
	padding:20px 25px;
	border: 1px solid #2a51ce;
    border-radius: 5px;
}
.catalog-list ul {
    list-style: none;
    padding: 0;
}
.catalog-list ul li{
    display: inline-block;
    width:23%;
    text-indent: -1.2em;
    padding-left: 1.2em;
    margin:0 .5em 1em 0;
    vertical-align: top;
}
.catalog-list ul li a{
    color:#111;
}
.catalog-list ul li:hover{
    opacity: 0.5;
}
.catalog-list ul li:before {
    content:"\025bc";
    margin-right: .2em;
}
@media (max-width:1080px) {
.catalog-list ul li{
    width:30%;
}   
}
@media (max-width:820px) {
.catalog-list ul li{
    width:48%;
}   
}
@media (max-width:520px) {
.catalog-list ul li{
    width:98%;
}   
}
.catalog-box {
    list-style: none;
    padding: 0;
}
.catalog-box a {
    color:#111;
}
.catalog-box li {
    display: inline-block;
    width:33%;
    border:1px solid #ccc;
    padding:10px;
    border-radius: 5px;
}
.catalog-box li:hover {
    opacity: 0.6;
}
.catalog-box th {
    width:40%;
    padding:0 5px 0 0;
}
.catalog-box tr:nth-child(1) td {
    vertical-align: top;
}
.catalog-box tr:nth-child(2) td {
    vertical-align: bottom;
  /*  white-space: nowrap;*/
}
.ct-new {
    width:fit-content;
    color:#fff;
    background-color: #ce2a50;
    border-radius: 30px;
    padding:2px 10px;
} 
@media (max-width:820px) {
.catalog-box li {
    width:48%;
} 
}
@media (max-width:520px) {
.catalog-box li {
    width:98%;
}
 .contact-menu li {
	width:98%;
}
 .contact-menu2 li {
	width:98%;
} 
}
/*-------------------------
   資料ダウンロード 製品別
--------------------------*/
.catalog-pro {
  display: grid; 
  grid-template-columns: 35% 65%; 
  grid-template-rows: auto; 
  gap: 5px; 
  grid-template-areas:
	  "box1 box2";
}
.ct-pr_left {
    padding: 50px 20px;
}
.ct-pr_left h3 {
    margin: 20px 0 0.5em 0;
    font-size: 24px;
}
.ct-pr_left p {
    margin: 0 0 1em 0;
}
.ct-pr_left figure {
    margin: 20px 20px 20px 0;
}
.img70 {
    width: 70%;
}
.img80 {
    width: 80%;
}
.img90 {
    width: 90%;
}
.img100 {
    width: 100%;
}
.explain-box {
    background-color: #efefef;
    border-radius: 5px;
    padding: 10px 20px;
    font-size: 90%;
}
.explain-box ul {
    padding: 0 0 0 20px;
    margin: 0;
}
.ct-pr_right {
    padding: 50px 20px; 
}
.ct-new2 {
    width:fit-content;
    color:#333;
    background-color: #d3dcfb;
    border-radius: 30px;
    padding:2px 10px;
    margin-right: 5px;
} 

@media (max-width:520px) {
.catalog-pro {
  grid-template-columns: 100%; 
  grid-template-areas:
	  "box1"
      "box2";
}
.ct-pr_left {
    padding: 30px 20px 0;
}
}
/*---------------------------
  ソリューション
---------------------------*/
.sol_sub-head {
	background-repeat: no-repeat;
	background-size: cover;
    width:96%;
    max-width: 1220px;
    height: 120px;
    border-radius: 100px;
    padding: 25px 100px 0;
    margin: 0 0 50px 0;
    color:#fff;
}
.sol_sub-head h1 {
    font-size: 30px;
    font-weight: 300;
    margin: 0 0;
    letter-spacing: 0.1em;
    text-shadow: 1px 2px 2px rgba(0, 0, 0, 0.5);
	line-height: 1.1em;
}
.sol_sub-head p {
    font-size: 20px;
    margin: 0 0;
    letter-spacing: 0.08em;
    text-shadow: 1px 2px 2px rgba(0, 0, 0, 0.5);
}
@media (max-width:520px) {    
.sol_sub-head {
    width:100%;
    height: auto;
    padding: 20px 30px;
}
.sol_sub-head h1 {
    font-size: 26px;
    text-align: center;
    line-height: 1.2em;
}
.sol_sub-head p {
    text-align: center;
    font-size: 18px;
}     
}
@media (max-width:390px) {    
.sol_sub-head h1 {
    font-size: 24px;
}
}
/*.hd-bg-img {
	background-repeat: no-repeat;
	background-size: cover;
}*/
.sol_index {
    padding: 0;
	margin-bottom: 60px;
}
.sol_index-box {

}
.sol_index-btn {
    font-family: 'Sawarabi Mincho', serif;
	z-index: 10;
	margin: -10% 0 0 70px;
}
.sol_index-btn .sol-midasi {
	font-size:24px;
	color:#2463ab!important;
	margin: 0;	
}
.sol_index-btn .sol-midasi_sub {
	font-size:18px;
	color:#757575;
	margin: 0;
}

.sol_index-m {
    padding: 0;
	margin-bottom: 30px;
}
.sol_index-item img {
	width: 100%;
}
.sol_mobile {
	width:60%;
	display: block;
	margin: 0 auto;
}
.sol_mobile-btn  {
    font-family: 'Sawarabi Mincho', serif;
}
.sol_mobile-btn .sol-midasi {
	font-size:24px;
	color:#2463ab;
	margin: 0;
	text-align: center;
}
.sol_mobile-btn .sol-midasi_sub {
	font-size:18px;
	color:#757575;
	margin: 0;
	text-align: center;
}
@media (min-width:820.1px) {
.sol_mobile {
	display: none;	
}
}
@media (max-width:820px) {
.sol_pc {
	display: none;	
}
}
@media (max-width:520px) {
.sol_mobile {
	width:80%;
}
}
/*---------  end  ----------*/
/*---------------------------
   news
----------------------------*/
.news-top {
	width: 90%;
	margin-left: 5%;
}
.news {
	width: 90%;
	margin-left: 5%;
    margin-top:40px;
}
.filterDiv {
  width: 100%;
  line-height: 1.5em;
  margin: 2px;
  display: none;
}

.show {
  display: block;
}
.news dl {
            display: flex;
            flex-wrap: wrap;
         /*   border-top: 1px solid #ccc;*/
            padding-top: 10px;
        }
.news dl dt,.news dl dd {
            padding:5px;
            border-bottom: 1px solid #ccc;
            margin-bottom: 10px;
            padding-bottom: 15px;
        }
.news dl dt {
            width: 120px;

        }
.news dl dt span {
            background-color: #d3dcfb;
            color:#2a51ce;
            border-radius: 30px;
            font-size: 80%;
            padding:2px 20px;
            margin-left:10px;
        }
.news dl dd {
            margin-left: 0;
            flex-basis: calc(100% - 180px);
        }
.news dl dd a {
            text-decoration: none;
            color:#111;
        }
.news dl dd a:hover {
            text-decoration: none;
            color:#2a51ce;
        }
.mybtn {
  justify-content: center;
}
.mybtn ul {
  list-style: none;
}
.mybtn ul li {
  padding: 0 5px 0 0;
  margin: 0 5px 0 0;
}
.btn-n {
	border:1px solid #2a51ce;
	outline: none;
	padding: 6px 14px;
	width:120px;
	background-color: #fff;
	cursor: pointer;
	border-radius: 20px;
	font-size: 16px;
	margin-bottom: 15px;
    height: 38px;
}
.btn-n:hover {
	background-color: #ddd;
}
.btn-n.active-n {
	background-color: #63b2ee;
	color: white;
}
.news-tbl { 
    border-collapse: collapse;
}
.news-tbl th,.news-tbl td { 
    border: 1px solid #999;
    padding: 5px 5px 5px 10px;
}
.news-form-btn {
  background-color: #2a51ce;
  color: #fff;
  display: block;
  width: fit-content;
  font-size: 16px;
  text-align: center;
  border: 1px solid #2a51ce;
  border-radius: 5px 5px 0 0;
  margin: 0 auto;
  padding: 8px 40px;
}
.l-btn {
    display: flex;
 }
 .l-btn div{
    margin-right: 5px;
}
/*----- 製品仕様 table start -----------------*/

.spec-tbl table {
	width:100%;
	border-collapse: collapse;
	font-size:12px;
}
.spec-tbl th,.spec-tbl td{
	padding: 7px 5px 7px 10px;
	line-height:1.2em;
	border:1px solid #ccc;
}
.spec-tbl th {
	background:#666;
	color:#fff;
	font-weight:normal;
	word-break: break-all ;
}
.spec-tbl tr:nth-child(2n) {
	background: #efefef;
}
/*----- 製品仕様 table end   -----------------*/

@media (max-width: 480px) {
.l-btn {
    display: block;
}
.l-btn div{
    margin-bottom: 10px;
}   
}

@media (max-width:520px) {
.news dl {
	display: block;
}
.news dl dt {
	border-bottom: none;
	padding-bottom: 0;
}
}
/*---------  end  ----------*/
@media (max-width:980px) {
.contact-tel-box2  {
	width:90%;
	margin: 0 5%;
}
}
.tel-box-l2 {
	text-align: right;
	
}
.tel-box-r2 {
	
}

/*--------------------------*/
@media (max-width:768px) {
.cont-grid {
  grid-template-columns: 100%; 
  grid-template-areas:
	  "box1"
	  "box2";
}
.cont-grid .left_menu {	
	grid-area: box2;
}
.cont-grid .right_contents {
	grid-area: box1;
}	
}
@media (max-width:520px) {
.contact-tel-box2 {
	grid-template-columns: 100%;
}
.contact-list {
    padding-left: 15px;
}
.contact-list li{
    margin-right: 1em;
    margin-bottom: 10px;
} 
}

.title_left-bar {
	font-size:20px;
	border-left:4px solid #2a51ce;
	padding: 3px 0 3px 10px;
	margin: 0;
	line-height: 1.4em;
}

.title_under-bar {
	padding-bottom: .2em;
	position: relative;
	color:#121212;
	margin-bottom: 0.5em;
	border-bottom: 3px solid #dedede;
	font-size: 20px;
}
.title_under-bar:after {
	position: absolute;
	bottom: -2px;
	left: 0;
	z-index: 2;content: '';
	width: 100px;
	height: 2px;
	background-color: #4682B4;
}
.title_under-bar2 {
	padding-bottom: .2em;
	position: relative;
	color:#121212;
	margin-bottom: 0.5em;
	border-bottom: 2px solid #dedede;
	font-size: 18px;
}
.title_q {
	padding-bottom: .2em;
	position: relative;
	color:#F42A2A;
	margin-bottom: 0.5em;
	border-bottom: 3px solid #dedede;
	font-size: 20px;
	font-weight: 600;
}
.title_q:after {
	position: absolute;
	bottom: -2px;
	left: 0;
	z-index: 2;content: '';
	width: 100px;
	height: 2px;
	background-color: #FF1F1F;
}
.title_a {
	padding-bottom: .2em;
	position: relative;
	color:#2a51ce;
	margin-bottom: 0.5em;
	border-bottom: 3px solid #dedede;
	font-size: 20px; 
	font-weight: 600;
}
.title_a:after {
	position: absolute;
	bottom: -2px;
	left: 0;
	z-index: 2;content: '';
	width: 100px;
	height: 2px;
	background-color: #2a51ce;
}
/*------------------------------
    company 
-------------------------------*/
.features_area {
	background-color: #f3f6fe;
	margin: 0 5px 10px 5px;
	padding: 20px;
	border-radius: 5px;
}

.features_box {
	display:flex;
	margin-top: 20px;
}
.features_item {
	flex:1;
	border:1px solid #aaa;
	border-radius: 5px;
	padding: 10px;
	margin: 0 5px;
	background-color: #fff;
}
.features_content{
	display:flex;
}
.features_item img {
	width:100%;
	border-radius: 5px;
}
.features_item a{
	color:#111!important;
}
.features_cont_item:nth-child(1) {
	width: 40px;
	border-right:1px solid #ccc;
	font-size: 18px;
	font-weight: 600;
	padding:4px 0 0 5px;
}
.features_cont_item:nth-child(2) {
	width: 100%;
	padding:0 0 0 10px;
	line-height: 1.2em;
	background-image: url("../images/play_gray.png");
	background-repeat: no-repeat;
	background-position: right;
	background-size: 25px;
	margin-right: 5px;
}
.box-frame {
	border:1px solid #aaa;
	border-radius: 5px;
	padding: 10px;
	margin: 0 5px;
	background-color: #fff;
}
.box-frame_bl {
	border:1px solid #2a51ce;
	border-radius: 5px;
	padding: 10px;
	margin: 0 5px;
	background-color: #fff;
}
.cont_flow {
    display: flex;
}
.cont_flow-item {
	width: 100%;
}
.cont_flow-item img {
	width: 100%;
}
.cont_flow-item p {
	font-size: 16px;
}
.cont_flow-item a {
	color: #111;
}
.out_link_g:after {
	content:url("../images/out_link-g.svg");
	display: inline-block;
	width: 15px;
	height: 15px;
	margin-left:5px;
}
.list-box1 {
	list-style: none;
    padding: 0;
	margin-top:40px;
}
.list-box1 li {
	width:fit-content;
	background-color: #efefef;
    padding: 5px;
    border-radius: 8px;
	margin: 0 2px;
	border: 1px solid #E0E0E0;
	box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}
.list-box1-inner {
	/*background-color: #ffffff;*/
    padding: 2px 0;
	height: 100%;
}
.list-box1 li p {
	margin: 0;
	padding: 0;
	text-align: center;
	line-height: 1.2em;
}
.list-box2 {
	list-style: none;
    padding: 0;
	display: flex;
	margin-top:40px;
}
.list-box2 li {
	width:50%;
	background-color: #efefef;
    padding: 5px;
    border-radius: 8px;
	margin: 0 2px;
	border: 1px solid #E0E0E0;
	box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}
.list-box2-inner {
	/*background-color: #ffffff;*/
    padding: 2px 0;
	height: 100%;
}
.list-box2 li p {
	margin: 0;
	padding: 0;
	text-align: center;
	line-height: 1.2em;
}
.list-box4 {
	list-style: none;
    padding: 0;
	display: flex;
	margin-top:40px;
}
.list-box4 li {
	width:25%;
	background-color: #efefef;
    padding: 5px;
    border-radius: 8px;
	margin: 0 2px;
	border: 1px solid #E0E0E0;
	box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}
.list-box-ul {
	margin: 0;
	padding: 0 0 0 20px;
    width:100%;
}
.list-box-ul li {
	list-style: circle;
    width:100%;
    border:none;
    box-shadow:none;
    padding: 0;
    font-size: 95%;
}
.list-box4-inner {
	/*background-color: #ffffff;*/
    padding: 2px 0;
	height: 100%;
}
.list-box4 li p {
	margin: 0;
	padding: 0;
	text-align: center;
	line-height: 1.2em;
}
.explan_box {
	font-size: 80%;
    padding: 3px;
}
.block2_35-65 {
    display: grid; 
    grid-template-rows: 1fr;
    grid-template-columns: 35% 65%;   
    gap: 20px;
    height: auto;
	margin: 10px 20px 10px 0px;
}
.block2_35-65 div:nth-child(1) img{
    display: block;
    margin:0 auto;
    width:100%;
}
.block2_65-35 {
    display: grid; 
    grid-template-rows: 1fr;
    grid-template-columns: 65% 35%; 
    gap: 20px;
    height: auto;
	margin: 10px 20px 10px 0px;
	grid-template-areas:
		"box1 box2" ;
}
.block2_65-35 div:nth-child(2) img{
    display: block;
    margin:0 auto;
    width:100%;
}
.block2_50 {
    display: grid; 
    grid-template-rows: 1fr;
    grid-template-columns: 50% 50%;   
    gap: 20px;
    height: auto;
	margin: 10px 20px 10px 0px;
}

.block3_33 {
    display: grid; 
    grid-template-rows: 1fr;
    grid-template-columns: 33% 33% 33%;   
    gap: 20px;
    height: auto;
	margin: 10px 20px 10px 0px;
}
.block3_33 div {
    padding:10px;
}
.block3_33 img{
    display: block;
    margin:0 auto;
    width:100%;
}
.cont_ul {
	margin: 0;
	padding: 0 0 0 20px;
    width:100%;
}
.cont_ul li {
	list-style: circle;
    width:100%;
    border:none;
    box-shadow:none;
}
.siyo {
	background-color: #efefef;
	border-radius: 5px;
	padding:10px 15px;
	margin-bottom:20px;}
.siyo ul{
	margin: 0;
	padding: 0 0 0 20px;
}
.siyo li{
	list-style: disc;
}
.sol_btn {
  width: fit-content;
  padding: 5px 20px!important;
    text-align: center;
    color: #FFFFFF;
    border: none;
    border-radius: 5px;
    background: #2a51ce;
    line-height: 1.6em;
}
.sol_btn a{color: #FFFFFF!important;}
.sol_btn:hover{opacity: 0.5;}
.sol_btn:after{content: "\025b6";}
.in-img-left{
	width:25%;
	float: right;
}
.sepalate {
	clear: both;
	height: 10px;
}
/*------------------------------------
  動画集　start
------------------------------------*/  
.mov-select {
    margin:30px 0;
}
.mb--30 {
    margin-bottom: 30px;
}
.portfolio-card-title h3 {
    margin: 0;
}
/*------------------------------------
  動画集　end
------------------------------------*/
@media (max-width:820px) {
.list-box4 li {
	width:48%;
}
}
@media (max-width:520px) {
.cont-grid2 {
  grid-template-columns: 100%; 
  grid-template-areas:
	  "box2"
	  "box1";
}
.cont_flow {
    display: block;
}
.cont_flow-item {
	width: 95%;
	margin-bottom: 10px;
}
.list-box2 {
	display: block;
}
.list-box2 li {
	width:98%;
	display: block;
	margin-bottom:10px;
}
.list-box4 {
	display: block;
}
.list-box4 li {
	width:98%;
	display: block;
	margin-bottom:10px;
}
.about_tbl th,.about_tbl td{
	display: block;
	width:100%;
}
.about_tbl tr:nth-child(1) td{
	border-top: none;
}
.about_tbl th {
		border-bottom:1px dashed #ccc; 
	}
.about_tbl td{
	padding-left:10px;
}
.area80 {
	width:98%;
}
.block2_35-65 {
    grid-template-columns: 100%;
}
.block2_65-35 {
    grid-template-columns: 100%; 
	grid-template-areas:
		"box2"
		"box1" ;
}
}
/*----------------------------------*/
/*     add 023/11/20                */
/*----------------------------------*/
.pr-cont-1b {
	width:100%;
	margin: 10px 20px 20px;
}
.pr-cont-1b h2 {
	font-size:24px;
}
.pr-cont-1b h3 {
	font-size:20px; 
    font-weight: 300;/*20231030*/
}
.shiyo-t {
    font-weight: 300;
}
.pr-cont-1b .img-01 {
	width: 80%;
	display: block;
	margin:auto;
}

.yt-box {
  width: 90%;
  aspect-ratio: 16 / 9;
}
.yt-box iframe {
	display: block;
	margin: auto;
	width: 90%;
	height: 90%;
}
.container {
    max-width: 1100px;
    display: block;
    margin: 0 auto;
}
